日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

TCP和UDP的不同之處 tcp和udp概念和區(qū)別( 三 )


可以通過序列號(seq)來實現(xiàn),序列號是按照順序給發(fā)送數(shù)據(jù)的每一個字節(jié)都標上號碼的編號 。接收端通過查詢 TCP 首部中的序列號和數(shù)據(jù)的長度,將自己下一步應該接收的序列號作為確認應答返送回去 。通過序列號和確認應答號,TCP 能夠識別是否已經(jīng)接收數(shù)據(jù),又能夠判斷是否需要接收,從而實現(xiàn)可靠傳輸 。

TCP和UDP的不同之處 tcp和udp概念和區(qū)別


如上圖所示,請求按照順序發(fā)送的話是 seq = 1 ,這個請求會把第 1 字節(jié)到第 n 字節(jié)的數(shù)據(jù)一起發(fā)送過去,等待目標主機一次確認每個字節(jié)后,再發(fā)送 seq = n + 1 的請求,確認完成后再發(fā)送 seq = m + 1 的請求,這樣能夠保證序列號不會重復 。
UDP 沒有所謂的序列號和確認號,所以不會對數(shù)據(jù)進行確認,數(shù)據(jù)丟失后也不會進行重傳,所以 UDP 是一種不可靠的協(xié)議 。
如果使用 TCP 和 UDP 來比喻開發(fā)人員:TCP 就是那種凡事都要設計好,沒設計不會進行開發(fā)的工程師,需要把一切因素考慮在內后再開干!所以非??孔V;而 UDP 就是那種上來直接干干干,接到項目需求馬上就開干,也不管設計,也不管技術選型,就是干,這種開發(fā)人員非常不靠譜,但是適合快速迭代開發(fā),因為可以馬上上手!
有序性差異我們上面說到,TCP 會對請求分開發(fā)送,每次請求所攜帶的數(shù)據(jù)都會被目標主機進行確認,目標主機依次確認每個請求后,就會對請求中的數(shù)據(jù)進行重組,由于請求是由 seq 的,所以 TCP 在重組這些數(shù)據(jù)時,也會按照順序進行重組,而 UDP 沒有有序性的這種保證 。
報文段的差異TCP 和 UDP 同屬于傳輸層協(xié)議,傳輸層協(xié)議傳輸?shù)臄?shù)據(jù)統(tǒng)稱為報文段,TCP 和 UDP 的報文段的主要差異如下 。
UDP 報文段結構
TCP和UDP的不同之處 tcp和udp概念和區(qū)別


  • 源端口號(Source Port) :這個字段占據(jù) UDP 報文頭的前 16 位,通常包含發(fā)送數(shù)據(jù)報的應用程序所使用的 UDP 端口 。接收端的應用程序利用這個字段的值作為發(fā)送響應的目的地址 。這個字段是可選項,有時不會設置源端口號 。沒有源端口號就默認為 0 ,通常用于不需要返回消息的通信中 。
  • 目標端口號(Destination Port): 表示接收端端口,字段長為 16 位 。
  • 長度(Length): 該字段占據(jù) 16 位,表示 UDP 數(shù)據(jù)報長度,包含 UDP 報文頭和 UDP 數(shù)據(jù)長度 。因為 UDP 報文頭長度是 8 個字節(jié),所以這個值最小為 8,最大長度為 2 ^ 16 = 65535 字節(jié) 。
  • 校驗和(Checksum):UDP 使用校驗和來保證數(shù)據(jù)安全性,UDP 的校驗和也提供了差錯檢測功能,差錯檢測用于校驗報文段從源到目標主機的過程中,數(shù)據(jù)的完整性是否發(fā)生了改變 。
TCP 報文段結構
TCP和UDP的不同之處 tcp和udp概念和區(qū)別


TCP 報文段結構相比 UDP 報文結構多了很多內容 。但是前兩個 32 比特的字段是一樣的 。它們是 源端口號 和 目標端口號 。另外,和 UDP 一樣,TCP 也包含校驗和(checksum field) ,除此之外,TCP 報文段首部還有下面這些