好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > udp協議簡介_動力節點Java學院整理

udp協議簡介_動力節點Java學院整理

熱門標簽:華創e路航彩票銷售點地圖標注 suitecrm 地圖標注 外呼系統號顯示星號怎么看 鶴壁外呼系統公司 承德地圖標注公司收費 臨沂ai電銷機器人招商 高德地圖標注常顯 揭陽電腦外呼系統公司 銀川語音外呼系統中心

1.UDP簡要介紹

UDP是傳輸層協議,和TCP協議處于一個分層中,但是與TCP協議不同,UDP協議并不提供超時重傳,出錯重傳等功能,也就是說其是不可靠的協議。

2.UDP協議頭

UDP端口號

由于很多軟件需要用到UDP協議,所以UDP協議必須通過某個標志用以區分不同的程序所需要的數據包。端口號的功能就在于此,例如某一個UDP程序A在系統中注冊了3000端口,那么,以后從外面傳進來的目的端口號為3000的UDP包都會交給該程序。端口號理論上可以有2^16這么多。因為它的長度是16個bit

UDP檢驗和

這是一個可選的選項,并不是所有的系統都對UDP數據包加以檢驗和數據(相對TCP協議的必須來說),但是RFC中標準要求,發送端應該計算檢驗和。

UDP檢驗和覆蓋UDP協議頭和數據,這和IP的檢驗和是不同的,IP協議的檢驗和只是覆蓋IP數據頭,并不覆蓋所有的數據。UDP和TCP都包含一個偽首部,這是為了計算檢驗和而攝制的。偽首部甚至還包含IP地址這樣的IP協議里面都有的信息,目的是讓UDP兩次檢查數據是否已經正確到達目的地。如果發送端沒有打開檢驗和選項,而接收端計算檢驗和有差錯,那么UDP數據將會被悄悄的丟掉(不保證送達),而不產生任何差錯報文。

UDP長度

UDP可以很長很長,可以有65535字節那么長。但是一般網絡在傳送的時候,一次一般傳送不了那么長的協議(涉及到MTU的問題),就只好對數據分片,當然,這些是對UDP等上級協議透明的,UDP不需要關心IP協議層對數據如何分片,下一個章節將會稍微討論一些分片的策略。

IP分片

IP在從上層接到數據以后,要根據IP地址來判斷從那個接口發送數據(通過選路),并進行MTU的查詢,如果數據大小超過MTU就進行數據分片。數據的分片是對上層和下層透明,而數據也只是到達目的地還會被重新組裝,不過不用擔心,IP層提供了足夠的信息進行數據的再組裝。

在IP頭里面,16bit識別號唯一記錄了一個IP包的ID,具有同一個ID的IP片將會被重新組裝;而13位片偏移則記錄了某IP片相對整個包的位置;而這兩個表示中間的3bit標志則標示著該分片后面是否還有新的分片。這三個標示就組成了IP分片的所有信息,接受方就可以利用這些信息對IP數據進行重新組織(就算是后面的分片比前面的分片先到,這些信息也是足夠了)。
因為分片技術在網絡上被經常的使用,所以偽造IP分片包進行流氓攻擊的軟件和人也就層出不窮。

可以用Trancdroute程序來進行簡單的MTU偵測。請參看教材。

UDP和ARP之間的交互式用

這是不常被人注意到的一個細節,這是針對一些系統地實現來說的。當ARP緩存還是空的時候。UDP在被發送之前一定要發送一個ARP請求來獲得目的主機的MAC地址,如果這個UDP的數據包足夠大,大到IP層一定要對其進行分片的時候,想象中,該UDP數據包的第一個分片會發出一個ARP查詢請求,所有的分片都輝等到這個查詢完成以后再發送。事實上是這樣嗎?
結果是,某些系統會讓每一個分片都發送一個ARP查詢,所有的分片都在等待,但是接受到第一個回應的時候,主機卻只發送了最后一個數據片而拋棄了其他,這實在是讓人匪夷所思。這樣,因為分片的數據不能被及時組裝,接受主機將會在一段時間內將永遠無法組裝的IP數據包拋棄,并且發送組裝超時的ICMP報文(其實很多系統不產生這個差錯),以保證接受主機自己的接收端緩存不被那些永遠得不到組裝的分片充滿。

ICMP源站抑制差錯

當目標主機的處理速度趕不上數據接收的速度,因為接受主機的IP層緩存會被占滿,所以主機就會發出一個“我受不了”的一個ICMP報文。

UDP服務器設計

UDP協議的某些特性將會影響我們的服務器程序設計,大致總結如下:

1.關于客戶IP和地址:服務器必須有根據客戶IP地址和端口號判斷數據包是否合法的能力(這似乎要求每一個服務器都要具備)
2.關于目的地址:服務器必須要有過濾廣播地址的能力。
3.關于數據輸入:通常服務器系統的每一個端口號都會和一塊輸入緩沖區對應,進來的輸入根據先來后到的原則等待服務器的處理,所以難免會出現緩沖區溢出的問題,這種情況下,UDP數據包可能會被丟棄,而應用服務器程序本身并不知道這個問題。
4.服務器應該限制本地IP地址,就是說它應該可以把自己綁定到某一個網絡接口的某一個端口上。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • Java 基于UDP協議實現消息發送
  • java實現基于UDP協議網絡Socket編程(C/S通信)
  • Java基于UDP協議實現簡單的聊天室程序
  • java編程實現基于UDP協議傳輸數據的方法
  • Java基于socket服務實現UDP協議的方法
  • 詳解UDP協議格式及在java中的使用

標簽:萊蕪 咸寧 汕尾 許昌 棗莊 忻州 三沙 七臺河

巨人網絡通訊聲明:本文標題《udp協議簡介_動力節點Java學院整理》,本文關鍵詞  udp,協議,簡介,動力,節點,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《udp協議簡介_動力節點Java學院整理》相關的同類信息!
  • 本頁收集關于udp協議簡介_動力節點Java學院整理的相關信息資訊供網民參考!
  • 推薦文章