国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 網絡通信 > 正文

TCP的首部的詳細剖析

2019-11-04 20:45:19
字體:
來源:轉載
供稿:網友

  TCP的首部
  TCP數據被封裝在一個I P數據報中如下圖:
  
 TCP的首部的具體剖析(圖一)

  TCP數據在ip數據報中的封裝
  
  顯示T C P首部的數據格式。假如不計任選字段,它通常是2 0個字節。
  
TCP的首部的具體剖析(圖二)

  TCP包首部
  每個T C P段都包含源端和目的端的端口號,用于尋找發端和收端應用進程。這兩個值加上I P首部中的源端I P地址和目的端I P地址唯一確定一個T C P連接。
  
  有時,一個I P地址和一個端口號也稱為一個插口(s o c k e t)。這個術語出現在最早的T C P 規范(R F C 7 9 3)中,后來它也作為表示伯克利版的編程接口。插口對(s o c k e t p a i r)(包含客戶I P地址、客戶端口號、服務器I P地址和服務器端口號的四元組)可唯一確定互聯網絡中每個T C P連接的雙方。
  
  序號用來標識從T C P發端向T C P收端發送的數據字節流,它表示在這個報文段中的的第一個數據字節。假如將字節流看作在兩個應用程序間的單向流動,則T C P用序號對每個字節進行計數。序號是32 bit的無符號數,序號到達23 2-1后又從0開始。
  
  當建立一個新的連接時,S Y N標志變1。序號字段包含由這個主機選擇的該連接的初始序號I S N(Initial Sequence Number)。該主機要發送數據的第一個字節序號為這個I S N加1,因為S Y N標志消耗了一個序號(將在下章具體介紹如何建立和終止連接,屆時我們將看到F I N標志也要占用一個序號)。
  
  既然每個傳輸的字節都被計數,確認序號包含發送確認的一端所期望收到的下一個序號。因此,確認序號應當是上次已成功收到數據字節序號加1。只有A C K標志(下面介紹)為1時確認序號字段才有效。
  
  發送A C K無需任何代價,因為32 bit的確認序號字段和A C K標志一樣,總是T C P首部的一部分。因此,我們看到一旦一個連接建立起來,這個字段總是被設置,A C K標志也總是被設置為1。
  
  T C P為應用層提供全雙工服務。這意味數據能在兩個方向上獨立地進行傳輸。因此,連接的每一端必須保持每個方向上的傳輸數據序號。
  
  T C P可以表述為一個沒有選擇確認或否認的滑動窗口協議(滑動窗口協議用于數據傳輸將在2 0 . 3節介紹)。我們說T C P缺少選擇確認是因為T C P首部中的確認序號表示發方已成功收到字節,但還不包含確認序號所指的字節。當前還無法對數據流中選定的部分進行確認。例如,假如1~1 0 2 4字節已經成功收到,下一報文段中包含序號從2 0 4 9~3 0 7 2的字節,收端并不能確認這個新的報文段。它所能做的就是發回一個確認序號為1 0 2 5的A C K。它也無法對一個報文段進行否認。例如,假如收到包含1 0 2 5~2 0 4 8字節的報文段,但它的檢驗和錯,T C P接收端所能做的就是發回一個確認序號為1 0 2 5的A C K。
  
  首部長度給出首部中32 bit字的數目。需要這個值是因為任選字段的長度是可變的。這個字段占4 bit ,因此T C P最多有6 0字節的首部。然而,沒有任選字段,正常的長度是2 0字節。在T C P首部中有6個標志比特。它們中的多個可同時被設置為1。我們在這兒簡單介紹它們的用法。
  
  U R G 緊急指針(u rgent pointer )有效
  A C K 確認序號有效。
  P S H 接收方應該盡快將這個報文段交給應用層。
  R S T 重建連接。
  S Y N 同步序號用來發起一個連接。這個標志和下一個標志將在第1 8章介紹。
  F I N 發端完成發送任務。
  
  T C P的流量控制由連接的每一端通過聲明的窗口大小來提供。窗口大小為字節數,起始于確認序號字段指明的值,這個值是接收端正期望接收的字節。窗口大小是一個16 bit 字段,因而窗口大小最大為6 5 5 3 5字節。在2 4 . 4節我們將看到新的窗口刻度選項,它答應這個值按比例變化以提供更大的窗口。
  
  檢驗和覆蓋了整個的T C P報文段:T C P首部和T C P數據。這是一個強制性的字段,一定是由發端計算和存儲,并由收端進行驗證。T C P檢驗和的計算和U D P檢驗和的計算相似。
  
  只有當U R G標志置1時緊急指針才有效。緊急指針是一個正的偏移量,和序號字段中的值相加表示緊急數據最后一個字節的序號。T C P的緊急方式是發送端向另一端發送緊急數據的一種方式。
  
  最常見的可選字段是最長報文大小,又稱為MSS (Maximum Segment Size) 。每個連接方通常都在通信的第一個報文段(為建立連接而設置S Y N標志的那個段)中指明這個選項。它指明本端所能接收的最大長度的報文段。
  
  從上圖中我們注重到T C P報文段中的數據部分是可選的。我們將在1 8章中看到在一個連接建立和一個連接終止時,雙方交換的報文段僅有T C P首部。假如一方沒有數據要發送,也使用沒有任何數據的首部來確認收到的數據。在處理超時的許多情況中,也會發送不帶任何數據的報文段。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 勃利县| 玉树县| 磴口县| 祥云县| 金昌市| 扬中市| 介休市| 微山县| 重庆市| 湘潭县| 齐齐哈尔市| 光山县| 宁阳县| 云林县| 土默特左旗| 资溪县| 赤峰市| 社旗县| 金秀| 卢湾区| 沂南县| 留坝县| 萍乡市| 清原| 延吉市| 霍山县| 肥东县| 邵武市| 齐齐哈尔市| 镇江市| 西乌珠穆沁旗| 从化市| 汉源县| 建瓯市| 贡嘎县| 东台市| 海口市| 拉萨市| 淮北市| 曲沃县| 滨州市|