中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當前位置: 首頁 > news >正文

青島百度網(wǎng)站排名濟南做seo排名

青島百度網(wǎng)站排名,濟南做seo排名,做淘寶客網(wǎng)站哪個好用,中國最著名網(wǎng)站建設公司目錄 一、兩種傳輸模式: 二、數(shù)據(jù)方向: 三、端口的作用: 四、端口類型: 五、三次握手: 六、四次斷開 常見面試題 TCP(Transfer control protocol)傳輸控制協(xié)議 一、兩種傳輸模式&#x…

目錄

一、兩種傳輸模式:

二、數(shù)據(jù)方向:

三、端口的作用:

四、端口類型:

五、三次握手:

六、四次斷開

常見面試題


TCP(Transfer control protocol)傳輸控制協(xié)議

一、兩種傳輸模式:

TCP面向有連接

可靠

常用于點對點

微信

UDP面向無連接

高速

常用于點對面

直播

二、數(shù)據(jù)方向:

  在互聯(lián)網(wǎng)的通信中,永遠是客戶端主動連接到服務端

三、端口的作用:

  計算機用于數(shù)據(jù)通信的虛擬接口

四、端口類型:

物理端口

用于連接物理設備,例如網(wǎng)線、USB等

虛擬端口

用于數(shù)據(jù)傳輸,例如:80/21/22等

補充:虛擬端口范圍是:1-65535

五、三次握手:

  • 序列號seq:占4個字節(jié),用來標記數(shù)據(jù)段的順序,TCP把連接中發(fā)送的所有數(shù)據(jù)字節(jié)都編上一個序號,第一個字節(jié)的編號由本地隨機產(chǎn)生;給字節(jié)編上序號后,就給每一個報文段指派一個序號;序列號seq就是這個報文段中的第一個字節(jié)的數(shù)據(jù)編號。
  • 確認號ack:占4個字節(jié),期待收到對方下一個報文段的第一個數(shù)據(jù)字節(jié)的序號;序列號表示報文段攜帶數(shù)據(jù)的第一個字節(jié)的編號;而確認號指的是期望接收到下一個字節(jié)的編號;因此當前報文段最后一個字節(jié)的編號+1即為確認號。
  • 確認ACK:占1位,僅當ACK=1時,確認號字段才有效。ACK=0時,確認號無效。
  • 同步SYN:連接建立時用于同步序號。當SYN=1,ACK=0時表示:這是一個連接請求報文段。若同意連接,則在響應報文段中使得SYN=1,ACK=1。因此,SYN=1表示這是一個連接請求,或連接接受報文。SYN這個標志位只有在TCP建產(chǎn)連接時才會被置1,握手完成后SYN標志位被置0。
  • 終止FIN:用來釋放一個連接。FIN=1表示:此報文段的發(fā)送方的數(shù)據(jù)已經(jīng)發(fā)送完畢,并要求釋放運輸連接。
  • 注意:ACK、SYN和FIN這些大寫的單詞表示標志位,其值要么是1,要么是0;ack、seq小寫的單詞表示序號。

1、握手過程:

00

SYN=0,ACK=O

簡寫

沒有操作

10

SYN=1,ACK=0

SYN=1

連接請求

11

SYN=1,ACK=1

SYN=1,ACK=1

請求確認

01

SYN=0,ACK=1

ACK=1

連接確認

  • 第一次握手:建立連接時,客戶端發(fā)送syn包(syn=j)到服務器,并進入SYN_SENT狀態(tài),等待服務器確認;SYN:同步序列編號(Synchronize Sequence Numbers)。
  • 第二次握手:服務器收到syn包,必須確認客戶的SYN(ack=j+1),同時自己也發(fā)送一個SYN包(syn=k),即SYN+ACK包,此時服務器進入SYN_RECV狀態(tài)。
  • 第三次握手:客戶端收到服務器的SYN+ACK包,向服務器發(fā)送確認包ACK(ack=k+1),此包發(fā)送完畢,客戶端和服務器進入ESTABLISHED(TCP連接成功)狀態(tài),完成三次握手。

2、字段含義:

字段

含義

URG

緊急指針是否有效。為1,表示某一位需要被優(yōu)先處理

ACK

表示響應,確認號是否有效,一般置為1。

PSH

表示有DATA數(shù)據(jù)傳輸,提示接收端應用程序立即從TCP緩沖區(qū)把數(shù)據(jù)讀走。

RST

對方要求重新建立連接,復位。

SYN

請求建立連接,并在其序列號的字段進行序列號的初始值設定。建立連接,設置為1。

FIN

希望斷開連接,表示關閉連接

3、為何需要三次握手:

一次握手

打破TCP可靠性

二次握手

服務器需等待

4、英文術語:

LISTEN

監(jiān)聽

SYN-SENT

SYN已發(fā)送

SYN-RCVD

SYN已接收

ESTABLISHED

已經(jīng)連接

六、四次斷開

斷開過程:

00

FIN=0,ACK=0

簡寫

沒有操作

10

FIN=1,ACK=0

FIN=1

斷開請求

11

FIN=1,ACK=1

FIN=1,ACK=1

請求確認

01

FIN=0,ACK=1

ACK=1

斷開確認

1)客戶端進程發(fā)出連接釋放報文,并且停止發(fā)送數(shù)據(jù)。釋放數(shù)據(jù)報文首部,FIN=1,其序列號為seq=u(等于前面已經(jīng)傳送過來的數(shù)據(jù)的最后一個字節(jié)的序號加1),此時,客戶端進入FIN-WAIT-1(終止等待1)狀態(tài)。?TCP規(guī)定,FIN報文段即使不攜帶數(shù)據(jù),也要消耗一個序號。

2)服務器收到連接釋放報文,發(fā)出確認報文,ACK=1,ack=u+1,并且?guī)献约旱男蛄刑杝eq=v,此時,服務端就進入了CLOSE-WAIT(關閉等待)狀態(tài)。TCP服務器通知高層的應用進程,客戶端向服務器的方向就釋放了,這時候處于半關閉狀態(tài),即客戶端已經(jīng)沒有數(shù)據(jù)要發(fā)送了,但是服務器若發(fā)送數(shù)據(jù),客戶端依然要接受。這個狀態(tài)還要持續(xù)一段時間,也就是整個CLOSE-WAIT狀態(tài)持續(xù)的時間。

3)客戶端收到服務器的確認請求后,此時,客戶端就進入FIN-WAIT-2(終止等待2)狀態(tài),等待服務器發(fā)送連接釋放報文(在這之前還需要接受服務器發(fā)送的最后的數(shù)據(jù))。

4)服務器將最后的數(shù)據(jù)發(fā)送完畢后,就向客戶端發(fā)送連接釋放報文,FIN=1,ack=u+1,由于在半關閉狀態(tài),服務器很可能又發(fā)送了一些數(shù)據(jù),假定此時的序列號為seq=w,此時,服務器就進入了LAST-ACK(最后確認)狀態(tài),等待客戶端的確認。

5)客戶端收到服務器的連接釋放報文后,必須發(fā)出確認,ACK=1,ack=w+1,而自己的序列號是seq=u+1,此時,客戶端就進入了TIME-WAIT(時間等待)狀態(tài)。注意此時TCP連接還沒有釋放,必須經(jīng)過2??MSL(最長報文段壽命)的時間后,當客戶端撤銷相應的TCB后,才進入CLOSED狀態(tài)。

6)服務器只要收到了客戶端發(fā)出的確認,立即進入CLOSED狀態(tài)。同樣,撤銷TCB后,就結束了這次的TCP連接。可以看到,服務器結束TCP連接的時間要比客戶端早一些。

常見面試題

【問題1】為什么連接的時候是三次握手,關閉的時候卻是四次握手?

答:因為當Server端收到Client端的SYN連接請求報文后,可以直接發(fā)送SYN+ACK報文。其中ACK報文是用來應答的,SYN報文是用來同步的。但是關閉連接時,當Server端收到FIN報文時,很可能并不會立即關閉SOCKET,所以只能先回復一個ACK報文,告訴Client端,"你發(fā)的FIN報文我收到了"。只有等到我Server端所有的報文都發(fā)送完了,我才能發(fā)送FIN報文,因此不能一起發(fā)送。故需要四步握手。

【問題2】為什么TIME_WAIT狀態(tài)需要經(jīng)過2MSL(最大報文段生存時間)才能返回到CLOSE狀態(tài)?

答:雖然按道理,四個報文都發(fā)送完畢,我們可以直接進入CLOSE狀態(tài)了,但是我們必須假象網(wǎng)絡是不可靠的,有可以最后一個ACK丟失。所以TIME_WAIT狀態(tài)就是用來重發(fā)可能丟失的ACK報文。在Client發(fā)送出最后的ACK回復,但該ACK可能丟失。Server如果沒有收到ACK,將不斷重復發(fā)送FIN片段。所以Client不能立即關閉,它必須確認Server接收到了該ACK。Client會在發(fā)送出ACK之后進入到TIME_WAIT狀態(tài)。Client會設置一個計時器,等待2MSL的時間。如果在該時間內(nèi)再次收到FIN,那么Client會重發(fā)ACK并再次等待2MSL。所謂的2MSL是兩倍的MSL(Maximum Segment Lifetime)。MSL指一個片段在網(wǎng)絡中最大的存活時間,2MSL就是一個發(fā)送和一個回復所需的最大時間。如果直到2MSL,Client都沒有再次收到FIN,那么Client推斷ACK已經(jīng)被成功接收,則結束TCP連接。

【問題3】為什么不能用兩次握手進行連接?

答:3次握手完成兩個重要的功能,既要雙方做好發(fā)送數(shù)據(jù)的準備工作(雙方都知道彼此已準備好),也要允許雙方就初始序列號進行協(xié)商,這個序列號在握手過程中被發(fā)送和確認。

???????現(xiàn)在把三次握手改成僅需要兩次握手,死鎖是可能發(fā)生的。作為例子,考慮計算機S和C之間的通信,假定C給S發(fā)送一個連接請求分組,S收到了這個分組,并發(fā)?送了確認應答分組。按照兩次握手的協(xié)定,S認為連接已經(jīng)成功地建立了,可以開始發(fā)送數(shù)據(jù)分組??墒?#xff0c;C在S的應答分組在傳輸中被丟失的情況下,將不知道S?是否已準備好,不知道S建立什么樣的序列號,C甚至懷疑S是否收到自己的連接請求分組。在這種情況下,C認為連接還未建立成功,將忽略S發(fā)來的任何數(shù)據(jù)分?組,只等待連接確認應答分組。而S在發(fā)出的分組超時后,重復發(fā)送同樣的分組。這樣就形成了死鎖。

【問題4】如果已經(jīng)建立了連接,但是客戶端突然出現(xiàn)故障了怎么辦?

TCP還設有一個保活計時器,顯然,客戶端如果出現(xiàn)故障,服務器不能一直等下去,白白浪費資源。服務器每收到一次客戶端的請求后都會重新復位這個計時器,時間通常是設置為2小時,若兩小時還沒有收到客戶端的任何數(shù)據(jù),服務器就會發(fā)送一個探測報文段,以后每隔75秒鐘發(fā)送一次。若一連發(fā)送10個探測報文仍然沒反應,服務器就認為客戶端出了故障,接著就關閉連接。

http://www.risenshineclean.com/news/21995.html

相關文章:

  • 請人做網(wǎng)站要多少錢福州百度快速優(yōu)化排名
  • 從化網(wǎng)站建設公司種子搜索神器下載
  • 做網(wǎng)站專題頁的字大小是多少seo前景
  • 廣州做企業(yè)網(wǎng)站域名注冊哪個平臺比較好
  • 石家莊上門足療杭州小周seo
  • 響應式網(wǎng)站建設個人網(wǎng)站推廣怎么做
  • 網(wǎng)頁制作和網(wǎng)站制作有什么區(qū)別淘寶代運營1個月多少錢
  • 邯鄲專業(yè)做網(wǎng)站哪里有網(wǎng)站收錄查詢網(wǎng)
  • 網(wǎng)站開發(fā)的標準流程seo外鏈自動群發(fā)工具
  • 科技網(wǎng)站設計公司網(wǎng)站推廣的工作內(nèi)容
  • wordpress 遷站網(wǎng)站外鏈發(fā)布平臺
  • 網(wǎng)站建設北京海淀seo全網(wǎng)營銷公司
  • 最新國內(nèi)新聞重大事件關鍵詞優(yōu)化軟件有哪些
  • 臨沂做網(wǎng)站選盛譽快速提升排名seo
  • 微信里面如何做網(wǎng)站百度競價廣告推廣
  • 如何對上傳的網(wǎng)站做代碼修改跨國網(wǎng)站瀏覽器
  • 建行手機app下載安裝seo的基本步驟包括哪些
  • php個人網(wǎng)站源碼2345網(wǎng)址導航怎么卸載
  • 做網(wǎng)站UI說不會寫文案系統(tǒng)優(yōu)化大師
  • 泰州做網(wǎng)站哪家好2024年的新聞
  • 長春網(wǎng)站建設工作seo搜索優(yōu)化培訓
  • 用php做網(wǎng)站用什么框架產(chǎn)品推廣文案
  • 中央兩學一做專題網(wǎng)站一鍵建站
  • 蘇州做公司網(wǎng)站設計的公司最新熱搜新聞
  • 免費下載建設銀行官方網(wǎng)站下載百度優(yōu)化
  • 日本做仿牌網(wǎng)站怎樣做好銷售和客戶交流
  • 美食網(wǎng)站建設多少錢營銷型網(wǎng)站分為哪幾種
  • 360網(wǎng)站推廣官網(wǎng)網(wǎng)址app推廣引流
  • 律師事務所網(wǎng)站建設企業(yè)網(wǎng)站類型有哪些
  • 有哪些好的做兼職網(wǎng)站百度2022年版本下載