青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

山寨:不是最好的,是最適合我們的!歡迎體驗山寨 中文版MSDN

Blog @ Blog

當華美的葉片落盡,生命的脈絡才歷歷可見。 -- 聶魯達

常用鏈接

統計

積分與排名

BBS

Blog

Web

最新評論

TCP頭結構

TCP頭結構
TCP頭結構
   TCP協議頭最少20個字節,包括以下的區域(由于翻譯不禁相同,文章中給出相應的英文單詞):
   TCP源端口(Source Port):16位的源端口其中包含初始化通信的端口。源端口和源IP地址的作用是標示報問的返回地址。
   TCP目的端口(Destination port):16位的目的端口域定義傳輸的目的。這個端口指明報文接收計算機上的應用程序地址接口。
   TCP序列號(序列碼,Sequence Number):32位的序列號由接收端計算機使用,重新分段的報文成最初形式。當SYN出現,序列碼實際上是初始序列碼(ISN),而第一個數據字節是ISN+1。這個序列號(序列碼)是可以補償傳輸中的不一致。
   TCP應答號(Acknowledgment   Number):32位的序列號由接收端計算機使用,重組分段的報文成最初形式。,如果設置了ACK控制位,這個值表示一個準備接收的包的序列碼。
   數據偏移量(HLEN):4位包括TCP頭大小,指示何處數據開始。
   保留(Reserved):6位值域,這些位必須是0。為了將來定義新的用途所保留。
   標志(Code Bits):6位標志域。表示為:緊急標志、有意義的應答標志、推、重置連接標志、同步序列號標志、完成發送數據標志。按照順序排列是:URG、ACK、PSH、RST、SYN、FIN。
   窗口(Window):16位,用來表示想收到的每個TCP數據段的大小。
   校驗位(Checksum):16位TCP頭。源機器基于數據內容計算一個數值,收信息機要與源機器數值 結果完全一樣,從而證明數據的有效性。
   優先指針(緊急,Urgent  Pointer):16位,指向后面是優先數據的字節,在URG標志設置了時才有效。如果URG標志沒有被設置,緊急域作為填充。加快處理標示為緊急的數據段。
   選項(Option):長度不定,但長度必須以字節。如果 沒有 選項就表示這個一字節的域等于0。
   填充:不定長,填充的內容必須為0,它是為了數學目的而存在。目的是確保空間的可預測性。保證包頭的結合和數據的開始處偏移量能夠被32整除,一般額外的零以保證TCP頭是32位的整數倍。
<附圖是用SNIFFER抓的一個包頭結構>

        00 50 07 45 9b d6 43        3c 47 fd 37 50 50 18
        ff 1f 05 a5 00 00 48         54 54 50 2f 31 2e 31
        20 32 30 30 20 4f 4b         0d 0a 53 65 72 76 65
        72 3a 20 4d 69 63 72         6f 73 6f 66 74 2d 49
        49 53 2f 35 2e 30 0d         0a 44 61 74 65 3a 20
        57 65 64 2c 20 31 32         20 4e 6f 76 20 32 30
        30 33 20 30 33 3a 33         37 3a 35 35 20 47 4d
        54 0d 0a 43 6f 6e 6e         65 63 74 69 6f 6e 3a
        20 63 6c 6f 73 65 0d         0a 48 54 54 50 2f 31
        2e 31 20 32 30 30 20         4f 4b 0d 0a 53 65 72
        76 65 72 3a 20 4d 69         63 72 6f 73 6f 66 74
        2d 49 49 53 2f 35 2e         30 0d 0a 50 72 61 67
        6d 61 3a 20 6e 6f 2d         63 61 63 68 65 0d 0a
        43 6f 6e 74 65 6e 74         2d 74 79 70 65 3a 20
        74 65 78 74 2f 70 6c         61 69 6e 3b 63 68 61
        72 73 65 74 3d 67 62         32 33 31 32 0d 0a 0d
        0a

解析:
源端口:00 50    目的端口:07 45  序列號:9b d6 43 3c
應答號:47 fd 37 50   數據偏移量:50   保留:
標志位:18       窗口:ff 1f             校驗位:05 a5
優先指針:00 00    選項:       填充:(余下的205字節為TCP數據)

      標志控制功能 URG:緊急標志
      緊急(The urgent pointer) 標志有效。緊急標志置位,
    ACK:確認標志 確認編號(Acknowledgement  Number)欄有效。大多數情況下該標志位是置位的。TCP報頭內的確認編號欄內包含的確認編號(w+1,Figure:1)為下一個預期的序列編號,同時提示遠端系統已經成功接收所有數據。
  PSH:推標志
      該標志置位時,接收端不將該數據進行隊列處理,而是盡可能快將數據轉由應用處理。在處理 telnet 或 rlogin 等交互模式的連接時,該標志總是置位的。
    RST:復位標志 復位標志有效。用于復位相應的TCP連接。
    SYN:同步標志 同步序列編號(Synchronize Sequence Numbers)欄有效。該標志僅在三次握手建立TCP連接時有效。它提示TCP連接的服務端檢查序列編號,該序列編號為TCP連接初始端(一般是客戶端)的初始序列編號。在這里,可以把TCP序列編號看作是一個范圍從0到4,294,967,295的32位計數器。通過TCP連接交換的數據中每一個字節都經過序列編號。在TCP報頭中的序列編號欄包括了TCP分段中第一個字節的序列編號。
  FIN:結束標志
    帶有該標志置位的數據包用來結束一個TCP回話,但對應端口仍處于開放狀態,準備接收后續數據。服務端處于監聽狀態,客戶端用于建立連接請求的數據包(IP packet)按照TCP/IP協議堆棧組合成為TCP處理的分段(segment)。
    分析報頭信息: TCP層接收到相應的TCP和IP報頭,將這些信息存儲到內存中。
    檢查TCP校驗和(checksum):標準的校驗和位于分段之中(Figure:2)。如果檢驗失敗,不返回確認,該分段丟棄,并等待客戶端進行重傳。
  查找協議控制塊(PCB{}):TCP查找與該連接相關聯的協議控制塊。如果沒有找到,TCP將該分段丟棄并返回RST。(這就是TCP處理沒有端口監聽情況下的機制)
       如果該協議控制塊存在,但狀態為關閉,服務端不調用connect()或listen()。該分段丟棄,但不返回RST。客戶端會嘗試重新建立連接請求。
  建立新的socket:當處于監聽狀態的socket收到該分段時,會建立一個子socket,同時還有socket{},tcpcb{}和pub{}建立。這時如果有錯誤發生,會通過標志位來拆除相應的socket和釋放內存,TCP連接失敗。如果緩存隊列處于填滿狀態,TCP認為有錯誤發生,所有的后續連接請求會被拒絕。這里可以看出SYN Flood攻擊是如何起作用的。
     丟棄:如果該分段中的標志為RST或ACK,或者沒有SYN標志,則該分段丟棄。并釋放相應的內存。
     發送序列變量
       SND.UNA : 發送未確認
       SND.NXT : 發送下一個
       SND.WND : 發送窗口
       SND.UP : 發送優先指針
       SND.WL1 : 用于最后窗口更新的段序列號
       SND.WL2 : 用于最后窗口更新的段確認號
       ISS : 初始發送序列號
    接收序列號
       RCV.NXT : 接收下一個
       RCV.WND : 接收下一個
       RCV.UP : 接收優先指針
       IRS : 初始接收序列號
     當前段變量
        SEG.SEQ : 段序列號
        SEG.ACK : 段確認標記
        SEG.LEN : 段長
        SEG.WND : 段窗口
        SEG.UP : 段緊急指針
        SEG.PRC : 段優先級
     CLOSED表示沒有連接,各個狀態的意義如下:
        LISTEN : 監聽來自遠方TCP端口的連接請求。
        SYN-SENT : 在發送連接請求后等待匹配的連接請求。
        SYN-RECEIVED : 在收到和發送一個連接請求后等待對連接請求的確認。
        ESTABLISHED : 代表一個打開的連接,數據可以傳送給用戶。
        FIN-WAIT-1 : 等待遠程TCP的連接中斷請求,或先前的連接中斷請求的確認。
        FIN-WAIT-2 : 從遠程TCP等待連接中斷請求。
        CLOSE-WAIT : 等待從本地用戶發來的連接中斷請求。
        CLOSING : 等待遠程TCP對連接中斷的確認。
        LAST-ACK : 等待原來發向遠程TCP的連接中斷請求的確認。
        TIME-WAIT : 等待足夠的時間以確保遠程TCP接收到連接中斷請求的確認。
        CLOSED : 沒有任何連接狀態。
        TCP連接過程是狀態的轉換,促使發生狀態轉換的是用戶調用:OPEN,SEND,RECEIVE,CLOSE,ABORT和STATUS。傳送過來的數據段,特別那些包括以下標記的數據段SYN,ACK,RST和FIN。還有超時,上面所說的都會時TCP狀態發生變化。
   序列號:請注意,我們在TCP連接中發送的字節都有一個序列號。因為編了號,所以可以確認它們的收到。對序列號的確認是累積性的。TCP必須進行的序列號比較操作種類包括以下幾種:
      ①決定一些發送了的但未確認的序列號。
      ②決定所有的序列號都已經收到了。
       ③決定下一個段中應該包括的序列號。
     對于發送的數據TCP要接收確認,確認時必須進行的:
        SND.UNA = 最老的確認了的序列號。
        SND.NXT = 下一個要發送的序列號。
        SEG.ACK = 接收TCP的確認,接收TCP期待的下一個序列號。
        SEG.SEQ = 一個數據段的第一個序列號。
        SEG.LEN = 數據段中包括的字節數。
        SEG.SEQ+SEG.LEN-1 = 數據段的最后一個序列號。
     如果一個數據段的序列號小于等于確認號的值,那么整個數據段就被確認了。而在接收數據時下面的比較操作是必須的:
        RCV.NXT = 期待的序列號和接收窗口的最低沿。
        RCV.NXT+RCV.WND:1 = 最后一個序列號和接收窗口的最高沿。
        SEG.SEQ = 接收到的第一個序列號。
        SEG.SEQ+SEG.LEN:1 = 接收到的最后一個序列號

posted on 2008-05-19 23:09 isabc 閱讀(5651) 評論(3)  編輯 收藏 引用 所屬分類: 網絡編程

評論

# re: TCP頭結構 2008-11-20 11:19 bamboo1122

謝謝你的這篇文章,最近正在研究網絡數據流..

忽然看到你的簽名:

當華美的葉片落盡,生命的脈絡才歷歷可見。 -- 聶魯達

這句話我第一次聽到是在《似水年華》里,超級喜歡里面的那種唯美的意境。
或許這句話就是文和英之間的秘密吧..

呵呵,非常感謝  回復  更多評論   

# re: TCP頭結構 2010-12-14 18:05 sdner

同樣謝謝你了。我也在看網絡相關協議。  回復  更多評論   

# re: TCP頭結構 2011-12-14 14:45 wu

感謝分享。  回復  更多評論   

廣告信息(免費廣告聯系)

中文版MSDN:
歡迎體驗

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            久久久福利视频| 久久久一区二区| 欧美午夜片在线免费观看| 日韩视频专区| 一区二区高清视频| 欧美亚日韩国产aⅴ精品中极品| 亚洲在线成人精品| 亚洲欧美日韩国产中文| 永久91嫩草亚洲精品人人| 欧美成人网在线| 欧美日韩国产精品| 欧美伊人久久| 另类亚洲自拍| 亚洲午夜精品一区二区三区他趣| 亚洲一区二区精品在线| 黄色资源网久久资源365| 亚洲福利视频二区| 国产精品国产精品| 蜜臀av国产精品久久久久| 欧美日韩精品免费看| 国产精品美女主播| 久久一二三四| 欧美日韩在线三区| 久久综合久久综合这里只有精品| 蜜乳av另类精品一区二区| 亚洲午夜在线观看| 久久精品人人做人人综合| 一本不卡影院| 久久人人爽人人爽| 欧美一级播放| 欧美国产日韩一区二区| 欧美中文字幕视频| 欧美理论电影在线播放| 久久久精品一区二区三区| 欧美日韩精品伦理作品在线免费观看| 久久九九电影| 国产精品久久久久久久午夜片 | 国产精品毛片| 亚洲国产视频一区| 国精品一区二区三区| 日韩一区二区精品| 亚洲黄色片网站| 久久久精品国产99久久精品芒果| 亚洲午夜av在线| 欧美另类专区| 亚洲高清久久网| 在线日韩电影| 久久精品亚洲精品国产欧美kt∨| 亚洲一二三区在线观看| 欧美激情精品| 亚洲第一精品在线| 亚洲电影免费观看高清完整版在线| 亚洲欧美日韩国产一区二区| 亚洲视频1区2区| 欧美另类一区二区三区| 亚洲日本久久| 亚洲美女黄色片| 欧美人与禽性xxxxx杂性| 亚洲高清在线观看一区| 亚洲大片精品永久免费| 久久美女艺术照精彩视频福利播放| 欧美在线免费观看视频| 国产情侣久久| 亚洲欧美成人在线| 亚洲免费影视| 国产精品区一区| 亚洲欧美日韩国产一区二区三区| 欧美一区二区三区电影在线观看| 国产精品亚洲综合天堂夜夜| 亚洲视频免费看| 欧美一区二区三区免费视| 国产欧美一区视频| 久久国产主播| 欧美黄污视频| 在线视频你懂得一区二区三区| 欧美日韩一区二区在线观看| 一本久道久久综合狠狠爱| 亚洲一区视频在线| 国产情侣久久| 久久中文字幕一区| 亚洲美女黄色片| 亚洲女人天堂av| 国内精品久久久久久久果冻传媒 | 亚洲综合精品自拍| 久久精品国产亚洲a| 欧美成人久久| 欧美激情免费在线| 亚洲精品国产精品国产自| 中日韩美女免费视频网址在线观看 | 亚洲午夜精品久久| 国产欧美在线视频| 久久综合色8888| 99re视频这里只有精品| 欧美亚洲免费在线| 亚洲日本免费| 国产精品一区二区久久国产| 久久频这里精品99香蕉| 亚洲狼人精品一区二区三区| 久久激五月天综合精品| 亚洲精品综合久久中文字幕| 国产女主播一区二区| 欧美+亚洲+精品+三区| 中文欧美字幕免费| 欧美二区在线播放| 欧美一区二区三区免费看| 亚洲精品久久久久久下一站| 国产精品国色综合久久| 久久躁狠狠躁夜夜爽| 亚洲一区二区影院| 亚洲高清在线精品| 久久午夜影视| 性做久久久久久免费观看欧美 | 国产精品午夜在线观看| 欧美激情久久久久久| 午夜欧美大尺度福利影院在线看| 亚洲国产精品小视频| 久久久久久伊人| 亚洲综合三区| 亚洲天天影视| 91久久精品视频| 国产综合色产在线精品| 欧美午夜免费影院| 欧美日韩成人网| 欧美大片免费| 美女日韩在线中文字幕| 久久9热精品视频| 欧美一进一出视频| 亚洲综合日韩| 亚洲小说欧美另类社区| 99精品视频免费观看| 亚洲国产日韩一区二区| 欧美成人性网| 欧美成年人视频网站| 久久综合五月天婷婷伊人| 久久激情视频免费观看| 久久精品国产亚洲精品| 性欧美精品高清| 欧美在线二区| 久久久久成人网| 久久久久久久成人| 久久综合久久美利坚合众国| 久久久天天操| 欧美freesex交免费视频| 美女网站久久| 欧美xxxx在线观看| 亚洲国产综合在线看不卡| 亚洲国产精品美女| 日韩图片一区| 亚洲视频免费看| 午夜一区二区三视频在线观看 | 久久国产加勒比精品无码| 午夜精品国产精品大乳美女| 午夜免费在线观看精品视频| 久久精品网址| 欧美黄色成人网| 欧美性视频网站| 国产欧美精品一区二区色综合| 亚洲一区图片| 另类激情亚洲| 欧美福利在线观看| 亚洲美女中出| 性做久久久久久免费观看欧美| 欧美一区二区三区四区高清| 久久久久久久久久看片| 欧美成人精品在线| 欧美亚日韩国产aⅴ精品中极品| 国产嫩草一区二区三区在线观看| 国产视频一区在线观看一区免费 | 欧美视频在线看| 国产视频久久| 亚洲精品久久久久| 午夜精品网站| 欧美大片免费观看| 在线一区免费观看| 久久精品亚洲精品国产欧美kt∨| 欧美激情免费在线| 国产日韩欧美在线观看| 91久久线看在观草草青青| 亚洲影视九九影院在线观看| 久久久欧美精品| 一区二区三区精品国产| 欧美一区二区三区四区在线观看 | 国产视频欧美视频| 亚洲免费观看高清完整版在线观看熊| 亚洲欧美福利一区二区| 男女av一区三区二区色多| 一本色道久久综合亚洲二区三区| 久久精品综合| 国产精品盗摄久久久| 亚洲精品一品区二品区三品区| 欧美中文在线免费| 99国产精品久久久久久久| 美女日韩欧美| 国一区二区在线观看| 亚洲欧美日韩精品久久| 亚洲三级视频| 欧美国产高潮xxxx1819| 国内不卡一区二区三区| 午夜激情一区| 日韩午夜在线观看视频|