2018-01-22

只是自說自話的學習筆記,各路看官繞路~

UDP協議:

1、udp協議只是在ip協議的基礎之上增加了分用和複用功能以及差錯檢測,主要特點有:

  • udp是面向無連接的,也就是說udp協議在發送數據的時候不需要建立連接,因此減少了開銷。
  • udp使用盡最大努力交付,即不保證可靠交付。
  • udp是面向報文的,udp有個特性,對於應用層交下來的數據會原封不動的交付給ip層, 也就是說,udp原封不動的發送數據,這點和tcp有很大的區別,tcp有個滑動窗口機制,會進行流量控制,udp是不會的,這樣數據的大小就交由應用層的應用控制了,可是並不是說這樣性能就高了,ip層是有進行分片處理的,這樣如果udp的數據包大的話ip層這裏就會做大量的工作去分層了,而如果小的話又會導致多次發送,所以如果使用udp協議,數據包的大小要做好一定的衡量。
  • udp沒有擁塞控制,tcp的擁塞控制指的是在網絡出現阻塞的時候tcp的處理機制,包括:慢開始、擁塞避開、快重傳、快恢復。具體的算法沒有研究太多,只是知道而已,==,突然感覺還是得花時間看看這幾個機制才行,由於udp沒有擁塞控制,所以會導致一種情況,那就是無論網絡差還是好,udp都是照發不誤,這樣就會導致數據包丟失的情況出現,這種機制對於一些要求網絡以恆定的速率發送數據包的應用很實用,比如實時視頻會議等,雖然會造成數據包丟失,不過並不影響太大的效果。
  • udp的首部開銷很小,這個可以從功能上看出來,tcp又是保證穩定又是建立連接又是流量控制的,頭部肯定得多發幾個字段了,而udp只需要8個字節,比tcp少了20個字節。
    2、udp的頭部佔據8個字節,4個字段,那麼udp的頭部字段又是什麼呢?
  • 源端口 當需要對方回信時使用,不用時爲0。
  • 目的端口 在交付報文時使用,因爲udp的數據包最後到達的是目的機器應用層上的應用,如果端口不存在則目的機器上icmp會返回端口不可達的信息。
  • 長度 udp數據包的大小,最小爲8啦,即只有頭部。
  • 校驗和 用戶檢測udp數據包傳送過程中是否出錯,如果出錯則丟棄。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章