UDP协议格式
? ?UDP協議在IP協議上增加了復用、分用和差錯檢測功能。UDP的特點:
?????? A)是無連接的。相比于TCP協議,UDP協議在傳送數據前不需要建立連接,當然也就沒有釋放連接。
?????? B)是盡最大努力交付的。也就是說UDP協議無法保證數據能夠準確的交付到目的主機。也不需要對接收到的UDP報文進行確認。
?????? C)是面向報文的。也就是說UDP協議將應用層傳輸下來的數據封裝在一個UDP包中,不進行拆分或合并。因此,運輸層在收到對方的UDP包后,會去掉首部后,將數據原封不動的交給應用進程。
???????D)沒有擁塞控制。因此UDP協議的發送速率不送網絡的擁塞度影響。
?????? E)UDP支持一對一、一對多、多對一和多對多的交互通信。
???????F)UDP的頭部占用較小,只占用8個字節。
UDP報文格式
?????? ?UDP協議分為首部字段和數據字段,其中首部字段只占用8個字節,分別是個占用兩個字節的源端口、目的端口、長度和檢驗和。
??????? 長度:UDP報文的整個大小,最小為8個字節(僅為首部)。
??????? 檢驗和:在進行檢驗和計算時,會添加一個偽首部一起進行運算。偽首部(占用12個字節)為:4個字節的源IP地址、4個字節的目的IP地址、1個字節的0、一個字節的數字17、以及占用2個字節UDP長度。這個偽首部不是報文的真正首部,只是引入為了計算校驗和。相對于IP協議的只計算首部,UDP檢驗和會把首部和數據一起進行校驗。接收端進行的校驗和與UDP報文中的校驗和相與,如果無差錯應該全為1。如果有誤,則將報文丟棄或者發給應用層、并附上差錯警告。
總結
- 上一篇: ruby语言学习-开启篇
- 下一篇: java ireport 打印_irep