Nwlapcug.com


Calcolo del Checksum UDP

Calcolo del Checksum UDP


L'User Datagram Protocol o UDP, pacchetti di dati in pacchetti per il trasporto di tutte le reti. Un pacchetto di dati contiene i dati nel corpo del pacchetto e ha una serie di intestazioni di fronte i dati che aiutano il pacchetto arriva a destinazione. L'intestazione UDP è breve, ma contiene un metodo complicato per calcolare un checksum. Il checksum consente al ricevitore di verificare che il pacchetto di dati è arrivato intatto.

Funzione

UDP è un protocollo di trasporto e fa parte della suite di protocolli di rete denominata TCP/IP. TCP/IP corrisponde per Transmission Control Protocol/Internet Protocol. Il protocollo più conosciuto di questa suite è il protocollo di Internet, che definisce l'indirizzo IP. L'intestazione IP è posta nella parte anteriore di un pacchetto di dati. Dietro questo e prima che i dati è l'intestazione UDP. Considerando che l'intestazione IP contiene l'indirizzo di origine e di destinazione dei due computer nella transazione di rete, l'intestazione UDP identifica le applicazioni mittente e ricevente. Queste applicazioni sono registrate non dal nome, ma da un numero di riferimento, chiamato un numero di porta.

Intestazione UDP

Un'intestazione UDP contiene solo due parole. Una "parola" è un numero binario a 32 bit, che copre 4 byte di dati. Il primo lavoro contiene il numero di porta di origine e di destinazione. Ognuno di questi campi è di 16 bit. La seconda parola contiene anche due campi, ogni 16 bit di lunghezza. Questi sono il campo lunghezza UDP e il campo Checksum. Il campo lunghezza UDP registra la dimensione dell'intestazione UDP e il corpo di dati del pacchetto in byte. Il campo checksum UDP è facoltativo.

Calcolo del checksum

Il valore di checksum nell'intestazione UDP è la somma di "quelli complimento" di parole a sedici bit dell'intestazione UDP e il corpo di dati del pacchetto. La formula non può far fronte con un numero dispari di byte e quindi se il numero di byte nella sezione dati del pacchetto è dispari, il programma di calcolo aggiunge un byte di spaziatura interna di tutti i-zero alla fine dei dati. Questo assicura che il pacchetto contiene parole complete di 16 bit. Il byte di spaziatura interna è solo ai fini del calcolo del checksum. Non si trasmette con il pacchetto. Successivamente, il programma crea un'intestazione di"pseudo", che va sulla parte anteriore dell'intestazione UDP. Questo contiene informazioni di indirizzo prelevati dall'intestazione IP. Successivamente, il numero di blocchi di 16 bit di dati è contato e il numero risultante, espresso come binario è capovolta affinché quelli diventano zeri e zeri diventano quelli.

Conferma

Il programma di ricezione esegue lo stesso calcolo. Se i risultati non corrispondono, il pacchetto viene scartato, anche se nessun messaggio di errore viene inviato al mittente.