TCP-IP數(shù)據(jù)包結(jié)構(gòu)詳解_第1頁
TCP-IP數(shù)據(jù)包結(jié)構(gòu)詳解_第2頁
TCP-IP數(shù)據(jù)包結(jié)構(gòu)詳解_第3頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、一般來說,網(wǎng)絡(luò)編程我們只需要調(diào)用一些封裝好的函數(shù)或者組件就能完成大部分的工作,但是一些特殊的情況下,就需要深入的理解網(wǎng)絡(luò)數(shù)據(jù)包的結(jié)構(gòu),以及協(xié)議分析。如:網(wǎng)絡(luò)監(jiān)控,故障排查等IP 包是不安全的,但是它是互聯(lián)網(wǎng)的基礎(chǔ),在各方面都有廣泛的應(yīng)用。由 IP 協(xié)議衍生的協(xié)議族有 10 數(shù)種(據(jù)我所知),以后還會出現(xiàn)更多的基于 IP 的協(xié)議先從實際出發(fā)吧!一般我們在談上網(wǎng)速度的時候,專業(yè)上用帶寬來描述,其實無論說網(wǎng)速或者帶寬都是不準(zhǔn)確的,呵呵。比如:1兆,512K有些在學(xué)校的學(xué)生,也許會有疑問,明明我的業(yè)務(wù)是 1M,為什么下載速度到 100K 就飆不上去了?512K 的為什么 50 多 K 就封頂了?這里所

2、說的 1M 是指 1Mbps=1MillionBitsPerSecond,也就是 1M 比特每秒,即一秒鐘傳輸 1048576 個二進(jìn)制位。我們知道一個字節(jié)是 8 個二進(jìn)制位。好,又來問題了。即便這樣子,1M=104875&8=131072+1024=128K。那也應(yīng)該有 128K 啊,為什么下載速度還是很少到 120K,110K 都謝天謝地了??赐瓯疚模愕膸ぞ蛯α薎P 數(shù)據(jù)包結(jié)構(gòu):8152432版本頭長服務(wù)類型包曼總長重組標(biāo)識標(biāo)志段偏移垃生存時間協(xié)議代碼頭校驗和32 位源好地址32 位目的地址可您選第用戶數(shù)據(jù)如圖,一個刻度表示 1 個二進(jìn)制位(比特)。1-1.版本 4 位,表示版本

3、號,目前最廣泛的是 4=B1000,即常說的 IPv4;相信 IPv6 以后會廣泛應(yīng)用,它能給世界上每個紐扣都分配一個 IP 地址。1-2.頭長 4 位,數(shù)據(jù)包頭部長度。它表示數(shù)據(jù)包頭部包括多少個 32 位長整型,也就是多少個 4 字節(jié)的數(shù)據(jù)。無選項則為 5(紅色部分)。1-3.服務(wù)類型,包括 8 個二進(jìn)制位,每個位的意義如下:過程字段:3 位,設(shè)置了數(shù)據(jù)包的重要性,取值越大數(shù)據(jù)越重要,取值范圍為:0(正常)7(網(wǎng)絡(luò)控制)延遲字段:1 位,取值:0(正常)、1(期特低的延遲)流量字段:1 位,取值:0(正常)、1(期特高的流量)可靠性字段:1 位,取值:0(正常)、1(期特高的可靠性)成本字段

4、:1 位,取值:0(正常)、1(期特最小成本)保留字段:1 位,未使用1-4.包裹總長 16 位,當(dāng)前數(shù)據(jù)包的總長度,單位是字節(jié)。當(dāng)然最大只能是 65535,及 64KB。2-1.重組標(biāo)識 16 位,發(fā)送主機(jī)賦予的標(biāo)識,以便接收方進(jìn)行分片重組。2-2.標(biāo)志 3 位,他們各自的意義如下:保留段位(2):1 位,未使用不分段位(1):1 位,取值:0(允許數(shù)據(jù)報分段)、1(數(shù)據(jù)報不能分段)更多段位(0):1 位,取值:0(數(shù)據(jù)包后面沒有包,該包為最后的包)、1(數(shù)據(jù)包后面有更多的包)2-3.段偏移量 13 位,與更多段位組合,幫助接收方組合分段的報文,以字節(jié)為單位。3-1.生存時間 8 位,經(jīng)常

5、ping 命令看到的 TTL(TimeToLive)就是這個,每經(jīng)過一個路由器,該值就減一,到零丟棄。3-2.協(xié)議代碼 8 位,表明使用該包裹的上層協(xié)議,如 TCP=6,ICMP=1,UDP=17 等。3-3.頭檢驗和 16 位,是 IPv4 數(shù)據(jù)包頭部的校驗和。4-1.源始地址,32 位 4 字節(jié),我們常看到的 IP 是將每個字節(jié)用點(.)分開,如此而已。5-1.目的地址,32 位,同上。6-1.可選選項,主要是給一些特殊的情況使用,往往安全路由會當(dāng)作攻擊而過濾掉,普聯(lián)(TP_LINK 白向TL-ER5110 路由就能這么做。7-1.用戶數(shù)據(jù)。TCP 數(shù)據(jù)包結(jié)構(gòu):8152432源蛤蠟口目的端

6、口數(shù)據(jù)序號確認(rèn)序號偏移保留 uAPRSF窗口字段包校驗和緊急指計可您選項填充用戶數(shù)據(jù)1-1.源始端口 16 位,范圍當(dāng)然是 0-65535 啦。1-2.目的端口,同上。2-1.數(shù)據(jù)序號 32 位,TCP 為發(fā)送的每個字節(jié)都編一個號碼,這里存儲當(dāng)前數(shù)據(jù)包數(shù)據(jù)第一個字節(jié)的序號。3-1.確認(rèn)序號 32 位,為了安全,TC 艱訴接受者希望他下次接到數(shù)據(jù)包的第一個字節(jié)的序號。4-1.偏移 4 位,類似 IP,表明數(shù)據(jù)距包頭有多少個 32 位。4-2.保留 6 位,未使用,應(yīng)置零。4-3.緊急比特 URG1 當(dāng) UR 氏 1 時, 表明緊急指針字段有效。 它告訴系統(tǒng)此報文段中有緊急數(shù)據(jù), 應(yīng)盡快傳送 (相

7、當(dāng)于高優(yōu)先級的數(shù)據(jù))。4-3.確認(rèn)比特 ACK-只有當(dāng) ACK=1 時確認(rèn)號字段才有效。當(dāng) ACK=0 時,確認(rèn)號無效。參考TCP 三次握手4-4.復(fù)位比特 RST(ResetL 當(dāng) RST=1 時,表明 TCP 連接中出現(xiàn)嚴(yán)重差錯(如由于主機(jī)崩潰或其他原因),必須釋放連接,然后再重新建立運輸連接。參考 TCP 三次握手4-5.同步比特 SYNH 同步比特 SYN 置為 1,就表示這是一個連接請求或連接接受報文。參考TCP 三次握手4-6.終止比特 FIN(FINalL 用來釋放一個連接。當(dāng) FIN=1 時,表明此報文段的發(fā)送端的數(shù)據(jù)已發(fā)送完畢,并要求釋放運輸連接。4-7.窗口字段 16 位,

8、窗口字段用來控制對方發(fā)送的數(shù)據(jù)量,單位為字節(jié)。TCP 連接的一端根據(jù)設(shè)置的緩存空間大小確定自己的接收窗口大小,然后通知對方以確定對方的發(fā)送窗口的上限。5-1.包校 3和 16 位,包括首部和數(shù)據(jù)這兩部分。在計算檢驗和時,要在 TCP 報文段的前面加上 12 字節(jié)的偽首部。5-2.緊急指針 16 位,緊急指針指出在本報文段中的緊急數(shù)據(jù)的最后一個字節(jié)的序號。6-1.可選選項 24 位,類似 IP,是可選選項。6-2.填充 8 位,使選項湊足 32 位。7-1.用戶數(shù)據(jù)可以看出,每個 IP 包至少要 20 字節(jié)的頭部長度,這些與下載內(nèi)容無關(guān),加上目前多數(shù)傳輸,包才 http 協(xié)議(就是 IE 直接下載)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論