亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? tcp協議規范.htm

?? internet協議集
?? HTM
?? 第 1 頁 / 共 5 頁
字號:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0043)http://www.longen.org/S-Z/details~z/TCP.htm -->
<HTML><HEAD><TITLE>TCP協議規范</TITLE>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<META content="MSHTML 6.00.2800.1400" name=GENERATOR></HEAD>
<BODY>
<TABLE width="100%" border=0>
  <TBODY>
  <TR>
    <TD width="100%"><FONT face=宋體 size=3>
      <P align=justify><STRONG>傳輸控制協議(Transmission Control Protocol, 
      TCP)</STRONG></P>
      <P 
      align=justify>TCP協議主為了在主機間實現高可靠性的包交換傳輸協議。本文將描述協議標準和實現的一些方法。因為計算機網絡在現代社會中已經是不可缺少的了,TCP協議主要在網絡不可靠的時候完成通信,對軍方可能特別有用,但是對于政府和商用部門也適用。TCP是面向連接的端到端的可靠協議。它支持多種網絡應用程序。TCP對下層服務沒有多少要求,它假定下層只能提供不可靠的數據報服務,它可以在多種硬件構成的網絡上運行。下面的圖是TCP在層次式結構中的位置,它的下層是IP協議,TCP可以根據IP協議提供的服務傳送大小不定的數據,IP協議負責對數據進行分段,重組,在多種網絡中傳送。</P>
      <P align=center><IMG height=198 alt=網絡層次 
      src="TCP協議規范.files/TCPDetail-1.gif" width=186></P>
      <P 
      align=justify>TCP的上面就是應用程序,下面是IP協議,上層接口包括一系列類似于操作系統中斷的調用。對于上層應用程序來說,TCP應該能夠異步傳送數據。下層接口我們假定為IP協議接口。為了在并不可靠的網絡上實現面向連接的可靠的傳送數據,TCP必須解決可靠性,流量控制的問題,必須能夠為上層應用程序提供多個接口,同時為多個應用程序提供數據,同時TCP必須解決連接問題,這樣TCP才能稱得上是面向連接的,最后,TCP也必須能夠解決通信安全性的問題。</P>
      <P 
      align=justify>網絡環境包括由網關(或其它設備)連接的網絡,網絡可以是局域網也可以是一些城域網或廣域網,但無論它們是什么,它們必須是基于包交換的。主機上不同的協議有不同的端口號,一對進程通過這個端口號進行通信。這個通信不包括計算機內的I/O操作,只包括在網絡上進行的操作。網絡上的計算機被看作包傳送的源和目的結點。特別應該注意的是:計算機中的不同進程可能同時進行通信,這時它們會用端口號進行區別,不會把發向A進程的數據由B進程接收的。</P>
      <P 
      align=justify>進程為了傳送數據會調用TCP,將數據和相應的參數傳送給TCP,于是TCP會將數據傳送到目的TCP那里,當然這是通過將TCP包打包在IP包內在網絡上傳送達到的。接收方TCP在接收到數據后會通信上層應用程序,TCP會保證接收數據順序的正確性。雖然下層協議可能不會保證順序是正確的。這里需要說明的是網關在接收到這個包后,會將包解開,看看是不是已經到目的地了,如果沒有到,應該走什么路由達到目的地,在決定后,網關會根據下一個網絡內的協議情況再次將TCP包打包傳送,如果需要,還要把這個包再次分成幾段再傳送。這個落地檢查的過程是一個耗時的過程。從上面,我們可以看出TCP傳送的基本過程,當然具體過程可能要復雜得多。</P>
      <P 
      align=justify>在實現TCP的主機上,TCP可以被看成是一個模塊,和文件系統區別不大,TCP也可以調用一些操作系統的功能,TCP不直接和網絡打交道,控制網絡的任務由專門的設備驅動模塊完成。TCP只是調用IP接口,IP向TCP提供所有TCP需要的服務。通過下圖我們可以更清楚地看到TCP協議的結構。</P>
      <P align=center><IMG height=309 alt=網絡層次聯系 
      src="TCP協議規范.files/TCPDetail-2.gif" width=339></P>
      <P 
      align=justify>上面已經說過了,TCP連接是可靠的,而且保證了傳送數據包的順序,保證順序是用一個序號來保證的。響應包內也包括一個序列號,表示接收方準備好這個序號的包。在TCP傳送一個數據包時,它同時把這個數據包放入重發隊列中,同時啟動記數器,如果收到了關于這個包的確認信息,將此包從隊列中刪除,如果計時超時則需要重新發送此包。請注意,從TCP返回的確認信息并不保證最終接收者接收到數據,這個責任由接收方負責。</P>
      <P 
      align=justify>每個用于傳送TCP的通道都有一個端口標記,因為這個標記是由每個TCP終端確定的,因此TCP可能不唯一,為了保證這個數值的唯一,要使用網絡地址和端口號的組合達到唯一標識的目的,我們稱這個為了套接字(Socket),一個連接由連接兩端的套接字標識,本地的套接字可能和不同的外部套接字通信,這種通信是全雙工的。</P>
      <P 
      align=justify>通過向本地端口發送OPEN命令及外部套接字參數建立連接,TCP返回一個標記這個連接的名稱,以后如果用戶需要使用這個名稱標記這個連接。為了保存這個連接的信息,我們假設有一個稱為傳輸控制塊(Transmission 
      Control 
      Block,TCB)的東西來保存。OPEN命令還指定這個連接的建立是主動請求還是被動等待請求。下面我們要涉及具體的功能了,TCP段以internet數據報的形式傳送。IP包頭傳送不同的信息域,包括源地址和目的地址。TCP頭跟在internet包頭后面,提供了一些專用于TCP協議的信息。下圖是TCP包頭格式圖:</P>
      <P align=center><IMG height=382 alt=TCP包頭格式 
      src="TCP協議規范.files/TCPDetail-3.gif" width=474></P>
      <P align=justify>源端口:16位;</P>
      <P align=justify>目的端口:16位</P>
      <P align=justify>序列碼:32位,當SYN出現,序列碼實際上是初始序列碼(ISN),而第一個數據字節是ISN+1; </P>
      <P align=justify>確認碼:32位,如果設置了ACK控制位,這個值表示一個準備接收的包的序列碼;</P>
      <P align=justify>數據偏移量:4位,指示何處數據開始;</P>
      <P align=justify>保留:6位,這些位必須是0;</P>
      <P align=justify>控制位:6位;</P>
      <P align=justify>窗口:16位; </P>
      <P align=justify>校驗位:16位;</P>
      <P align=justify>優先指針:16位,指向后面是優先數據的字節;</P>
      <P align=justify>選項:長度不定;但長度必須以字節記;選項的具體內容我們結合具體命令來看;</P>
      <P align=justify>填充:不定長,填充的內容必須為0,它是為了保證包頭的結合和數據的開始處偏移量能夠被32整除;</P>
      <P align=justify> </P>
      <P 
      align=justify>我們前面已經說過有一個TCB的東西了,TCB里有存儲了包括發送方,接收方的套接字,用戶的發送和接收的緩沖區指針等變量。除了這些還有一些變量和發送接收序列號有關:</P>
      <P align=justify>發送序列變量</P>
      <P align=justify>SND.UNA - 發送未確認</P>
      <P align=justify>SND.NXT - 發送下一個</P>
      <P align=justify>SND.WND - 發送窗口</P>
      <P align=justify>SND.UP - 發送優先指針</P>
      <P align=justify>SND.WL1 - 用于最后窗口更新的段序列號</P>
      <P align=justify>SND.WL2 - 用于最后窗口更新的段確認號</P>
      <P align=justify>ISS - 初始發送序列號</P>
      <P align=justify> </P>
      <P align=justify>接收序列號</P>
      <P align=justify>RCV.NXT - 接收下一個</P>
      <P align=justify>RCV.WND - 接收下一個</P>
      <P align=justify>RCV.UP - 接收優先指針</P>
      <P align=justify>IRS - 初始接收序列號</P>
      <P align=justify>下圖會幫助您了解發送序列變量間的關系:</P>
      <DIV align=center>
      <CENTER>
      <TABLE cellSpacing=0 cellPadding=0 width=300 border=1>
        <TBODY>
        <TR>
          <TD><IMG height=224 alt=發送序列空間 src="TCP協議規范.files/TCPDetail-4.gif" 
            width=402></TD>
          <TD><IMG height=204 alt=接收序列空間 src="TCP協議規范.files/TCPDetail-5.gif" 
            width=353></TD></TR></TBODY></TABLE></CENTER></DIV>
      <P align=justify>當前段變量</P>
      <P align=justify>SEG.SEQ - 段序列號</P>
      <P align=justify>SEG.ACK - 段確認標記</P>
      <P align=justify>SEG.LEN - 段長</P>
      <P align=justify>SEG.WND - 段窗口</P>
      <P align=justify>SEG.UP - 段緊急指針</P>
      <P align=justify>SEG.PRC - 段優先級</P>
      <P 
      align=justify>連接進程是通過一系列狀態表示的,這些狀態有:LISTEN,SYN-SENT,SYN-RECEIVED,ESTABLISHED,FIN-WAIT-1,FIN-WAIT-2,CLOSE-WAIT,CLOSING,LAST-ACK,TIME-WAIT和 
      CLOSED。CLOSED表示沒有連接,各個狀態的意義如下:</P>
      <P align=justify>LISTEN - 偵聽來自遠方TCP端口的連接請求;</P>
      <P align=justify>SYN-SENT - 在發送連接請求后等待匹配的連接請求; </P>
      <P align=justify>SYN-RECEIVED - 在收到和發送一個連接請求后等待對連接請求的確認; </P>
      <P align=justify>ESTABLISHED - 代表一個打開的連接,數據可以傳送給用戶;</P>
      <P align=justify>FIN-WAIT-1 - 等待遠程TCP的連接中斷請求,或先前的連接中斷請求的確認;</P>
      <P align=justify>FIN-WAIT-2 - 從遠程TCP等待連接中斷請求;</P>
      <P align=justify>CLOSE-WAIT - 等待從本地用戶發來的連接中斷請求;</P>
      <P align=justify>CLOSING - 等待遠程TCP對連接中斷的確認;</P>
      <P align=justify>LAST-ACK - 等待原來發向遠程TCP的連接中斷請求的確認;</P>
      <P align=justify>TIME-WAIT - 等待足夠的時間以確保遠程TCP接收到連接中斷請求的確認; </P>
      <P align=justify>CLOSED - 沒有任何連接狀態;</P>
      <P 
      align=justify>TCP連接過程是狀態的轉換,促使發生狀態轉換的是用戶調用:OPEN,SEND,RECEIVE,CLOSE,ABORT和STATUS;傳送過來的數據段,特別那些包括以下標記的數據段SYN,ACK,RST和FIN;還有超時,上面所說的都會時TCP狀態發生變化。</P>
      <P align=justify> </P>
      <P align=justify>下面的圖表示了TCP狀態的轉換,但這圖中沒有包括錯誤的情況和錯誤處理,不要把這幅圖看成是總說明了。</P>
      <P align=center><IMG height=826 alt=TCP連接狀態圖 
      src="TCP協議規范.files/TCPDetail-6.gif" width=517></P>
      <P align=justify> </P>
      <P align=justify>3.3. 序列號</P>
      <P 
      align=justify>請注意,我們在TCP連接中發送的字節都有一個序列號。因為編了號,所以可以確認它們的收到。對序列號的確認是累積性的,也就是說,如果用戶收到對X的確認信息,這表示在X以前的數據(不包括X)都收到了。在每個段中字節是這樣安排的:第一個字節在包頭后面,按這個順序排列。我們需要認記實際的序列空間是有限的,雖然很大,但是還是有限的,它的范圍是0到2的32次方減1。我想熟悉編程的一定知道為什么要在計算兩個段是不是相繼的時候要使用2的32次方為模了。TCP必須進行的序列號比較操作種類包括以下幾種:</P>
      <P align=justify>(a) 決定一些發送了的但未確認的序列號; </P>
      <P align=justify>(b) 決定所有的序列號都已經收到了;</P>
      <P align=justify>(c) 決定下一個段中應該包括的序列號。</P>
      <P align=justify>對于發送的數據TCP要接收確認,處理確認時必須進行下面的比較操作:</P>
      <P align=justify>SND.UNA = 最老的確認了的序列號;</P>
      <P align=justify>SND.NXT = 下一個要發送的序列號;</P>
      <P align=justify>SEG.ACK = 接收TCP的確認,接收TCP期待的下一個序列號; </P>

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
午夜精品久久久久久久久久| 国产精品久久影院| 色综合天天综合狠狠| 国产精品一区专区| 国产精品一区二区无线| 黄色精品一二区| 国产成人自拍网| 成人性生交大片免费看中文网站| 国产成人夜色高潮福利影视| 国产成人综合网| 91在线观看免费视频| 色播五月激情综合网| 欧美视频中文字幕| 51精品视频一区二区三区| 欧美大黄免费观看| 国产日韩欧美高清在线| 亚洲欧美国产三级| 亚洲国产wwwccc36天堂| 美女网站色91| 国产成人在线视频免费播放| 成人av手机在线观看| 欧洲人成人精品| 欧美zozozo| 中文字幕一区二区三| 亚洲国产精品自拍| 国产自产2019最新不卡| 99久久99久久综合| 欧美一区二区久久| 国产精品免费aⅴ片在线观看| 亚洲人成人一区二区在线观看 | 狠狠色丁香婷婷综合久久片| 国产麻豆一精品一av一免费| 成人免费毛片片v| 欧美三级视频在线| 欧美精品一区二区三区很污很色的 | 毛片基地黄久久久久久天堂| 国产成a人亚洲| 欧美日韩另类国产亚洲欧美一级| 精品免费日韩av| 亚洲激情中文1区| 蜜臀va亚洲va欧美va天堂| av亚洲精华国产精华精| 欧美一级在线免费| 成人免费视频在线观看| 麻豆国产一区二区| 欧美亚洲另类激情小说| 久久久久久久综合狠狠综合| 亚洲成人福利片| 成人av电影在线网| 久久影院午夜论| 视频精品一区二区| 色综合咪咪久久| 国产农村妇女精品| 久久精品久久综合| 欧美日韩高清一区二区不卡| 国产精品免费视频观看| 国产一区二区三区免费播放| 欧美三级日韩在线| 亚洲激情五月婷婷| 99久久99久久精品国产片果冻| 精品国产乱子伦一区| 奇米色一区二区| 欧美老人xxxx18| 亚洲午夜电影在线| 欧美优质美女网站| 亚洲激情校园春色| 欧美在线免费观看亚洲| 亚洲图片激情小说| 91视频国产观看| 亚洲日本中文字幕区| 成人动漫一区二区在线| 国产精品视频免费看| 国产久卡久卡久卡久卡视频精品| 欧美成人欧美edvon| 日韩精品高清不卡| 日韩一区二区三区电影| 青青草一区二区三区| 9191国产精品| 亚洲国产精品影院| 69精品人人人人| 蜜桃av一区二区三区电影| 日韩欧美在线网站| 精品无码三级在线观看视频| 欧美xxxxx裸体时装秀| 国产原创一区二区三区| 国产女人aaa级久久久级| 成人黄色a**站在线观看| 一区二区三区小说| 欧美日韩精品欧美日韩精品 | 日韩视频在线一区二区| 蜜臀久久99精品久久久画质超高清| 欧美肥妇毛茸茸| 极品少妇xxxx偷拍精品少妇| 久久女同性恋中文字幕| 成人h动漫精品一区二区| 亚洲精品ww久久久久久p站| 欧美亚洲日本一区| 麻豆精品国产91久久久久久| 久久久久久麻豆| 色综合久久88色综合天天6| 亚洲国产视频直播| 精品国产免费视频| av资源网一区| 日韩av一区二区在线影视| 精品久久久网站| 91在线一区二区三区| 亚洲一区二区在线免费观看视频| 日韩一区二区在线看片| 国产成人av福利| 午夜精品福利一区二区三区av| 精品福利在线导航| 91福利国产成人精品照片| 久久成人久久鬼色| 亚洲精品中文在线观看| 精品国产伦理网| 欧美日韩综合不卡| 国产精品香蕉一区二区三区| 亚洲一区在线观看视频| 久久精品欧美日韩精品| 欧美自拍丝袜亚洲| 成人一区二区三区视频 | 3751色影院一区二区三区| 国产91对白在线观看九色| 日韩黄色片在线观看| 国产精品乱码妇女bbbb| 日韩亚洲欧美在线观看| 一本在线高清不卡dvd| 国产一区二区女| 秋霞电影网一区二区| 亚洲精选免费视频| 亚洲国产精品激情在线观看| 91精品国产色综合久久ai换脸| 成+人+亚洲+综合天堂| 韩国成人在线视频| 美国欧美日韩国产在线播放| 夜夜亚洲天天久久| 亚洲欧美中日韩| 亚洲国产成人午夜在线一区| 精品少妇一区二区三区免费观看| 在线日韩国产精品| 波多野结衣亚洲| 懂色av中文一区二区三区| 激情都市一区二区| 国内精品不卡在线| 久久精品国产久精国产| 美女国产一区二区三区| 日韩精品亚洲专区| 亚洲va欧美va人人爽午夜| 夜夜嗨av一区二区三区四季av| ...av二区三区久久精品| 国产欧美一二三区| 国产精品毛片大码女人| 久久精品视频一区| 日本一区二区免费在线观看视频| 欧美精品一区二区三区一线天视频| 日韩情涩欧美日韩视频| 日韩一区二区三区高清免费看看 | 青青草原综合久久大伊人精品优势| 亚洲午夜av在线| 视频精品一区二区| 六月丁香婷婷色狠狠久久| 狠狠色狠狠色综合系列| 国产一区福利在线| 成人免费毛片嘿嘿连载视频| 波多野结衣在线aⅴ中文字幕不卡 波多野结衣在线一区 | 久久精品欧美一区二区三区麻豆| 久久香蕉国产线看观看99| 久久久久久久久久看片| 国产偷国产偷精品高清尤物| 国产精品每日更新| 亚洲国产一区二区在线播放| 日韩精品一区第一页| 国产呦精品一区二区三区网站| 国产.精品.日韩.另类.中文.在线.播放 | 在线观看91精品国产麻豆| 欧美一区二区在线不卡| 久久久久久亚洲综合影院红桃 | 欧美性大战久久久久久久| 91麻豆精品国产自产在线 | 欧美高清在线视频| 亚洲专区一二三| 老色鬼精品视频在线观看播放| 国产大片一区二区| 欧美无乱码久久久免费午夜一区 | 成人美女视频在线观看18| 色综合久久中文字幕| 欧美一级一级性生活免费录像| 国产日韩综合av| 亚洲mv在线观看| 高清不卡一区二区| 在线不卡免费欧美| 国产精品久久99| 免费观看成人鲁鲁鲁鲁鲁视频| av在线一区二区三区| 91精品久久久久久蜜臀| 中文字幕视频一区二区三区久| 午夜精品福利一区二区蜜股av| 国产精品亚洲视频| 91精品国产综合久久久久久漫画| 欧美激情一区二区三区蜜桃视频|