最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

TCP如何建立/拆除連接的方法

  發(fā)布時間:2012-10-25 16:23:02   作者:佚名   我要評論
本文詳細(xì)來探討TCP建立拆除連接的知識

 
TCP如何建立連接
圖 1TCP 首部格式中SYN 標(biāo)志位僅使用在建立TCP 連接的過程中,TCP 建立連接的過程被稱為“三路握手“連接,即一般通信雙方共需要傳輸三個數(shù)據(jù)包方能成功建立一個TCP 連接。我們通常將建立連接作為使用TCP 協(xié)議理所當(dāng)然的前導(dǎo)過程,但很少去質(zhì)疑這樣一個建立連接過程的必要性。

實(shí)際上,使用TCP 協(xié)議必須首先建立一個連接是保證TCP 協(xié)議可靠性數(shù)據(jù)傳輸?shù)幕厩疤幔ó?dāng)然由于TCP 協(xié)議是一個有狀態(tài)協(xié)議,必須通過某種機(jī)制進(jìn)行通信雙方狀態(tài)上的同步,而建立連接就是這樣一種機(jī)制)。    
至于為何需要三個數(shù)據(jù)包,原因是建立連接過程中信息的交換必須至少使用三個數(shù)據(jù)包,從下文的分析來看,建立連接最多需要使用四個數(shù)據(jù)包。需要再次提到的是:SYN 標(biāo)志位只是用在建立連接的三個(或者四個)數(shù)據(jù)包中,一旦連接建立完成后,之后發(fā)送的所有數(shù)據(jù)包不可設(shè)置SYN 標(biāo)志位。單從保證數(shù)據(jù)可靠性傳輸角度而言,TCP 協(xié)議需要在正式數(shù)據(jù)傳輸之前首先進(jìn)行某些信息的交換,這個信息即是雙方的初始序列號(另外的一些信息包括最大報文長度通報等)。
 
誠如前文所述,序列號的使用對于 TCP 協(xié)議而言至關(guān)重要,在正式數(shù)據(jù)傳輸之前,雙方必須得到對方的初始字節(jié)數(shù)據(jù)的編號,這樣才有可能對其所接收數(shù)據(jù)的合法性進(jìn)行判斷,才有其它的對數(shù)據(jù)重復(fù),數(shù)據(jù)重疊等一系列問題的進(jìn)一步判別和解決。故交換各自的初始序列號必須在正式數(shù)據(jù)傳輸之前完成,我們美其名曰這個過程為連接建立過程。至于雙方TCP 協(xié)議各自狀態(tài)的更新主要是軟件設(shè)計上可靠性保證的一個輔助,并非這個所謂的建立過程所主要關(guān)注的問題。
     
初始序列號的交換從最直接的角度來說需要四個數(shù)據(jù)包:
1> 主機(jī) A 向主機(jī)B 發(fā)送其初始序列號。
2> 主機(jī) B 向主機(jī)A 確認(rèn)其發(fā)送的初始序列號。
3> 主機(jī) B 向主機(jī)A 發(fā)送其初始序列號。
4> 主機(jī) A 向主機(jī)B 確認(rèn)其發(fā)送的初始序列號。
 
我們將<2><3>兩步合為一步,即B 向A 確認(rèn)其(A 之前發(fā)送的)初始序列號的同時發(fā)送其(即B 自己的)初始序列號。所謂確認(rèn)數(shù)據(jù)包即將數(shù)據(jù)包的ACK 標(biāo)志位設(shè)置為1 即可。注意這三個(或四個)數(shù)據(jù)包中SYN 標(biāo)志位設(shè)置為1,而且SYN 標(biāo)志位也僅在這三個(或四個)數(shù)據(jù)包中被設(shè)置為1。
 
此處有一個問題:即A,B 主機(jī)在通報各自初始序列號的同時能否傳輸一些正常數(shù)據(jù),原理上可以(TCP 協(xié)議規(guī)范上并沒有說不可以),但是大多數(shù)實(shí)現(xiàn)在通報初始序列號時都不附帶正常數(shù)據(jù),而是將其作為一個單獨(dú)的過程,由此正式確立建立連接一說。
     
TCP如何拆除連接
當(dāng)前連接的雙方都可以發(fā)起拆除連接操作,但簡單的拆除連接可能會造成數(shù)據(jù)丟失。為此,TCP采用四次握手的方式拆除連接。
 
四次握手與三次握手類似:
①1發(fā)拆除請求
②2收到請求,并發(fā)確認(rèn),1收到該確認(rèn)后,不再發(fā)送數(shù)據(jù),但任然會接收數(shù)據(jù)(半連接)
③2發(fā)拆除請求
④1收到請求,并確認(rèn),到此拆除完成

相關(guān)文章

最新評論

兴隆县| 道孚县| 江阴市| 布尔津县| 蓬安县| 深水埗区| 秭归县| 临澧县| 澎湖县| 泰宁县| 广州市| 汨罗市| 伊宁市| 郧西县| 紫金县| 长宁县| 普安县| 昌宁县| 蒙城县| 万安县| 成武县| 德惠市| 陵水| 绥宁县| 淳安县| 财经| 加查县| 佛冈县| 伊金霍洛旗| 迁安市| 普定县| 天门市| 睢宁县| 且末县| 揭东县| 扎赉特旗| 深水埗区| 昌吉市| 旌德县| 焉耆| 龙南县|