1. 程式人生 > >3次握手4次揮手

3次握手4次揮手

 

 

  為了準確無誤的吧資料送達目標處,TCP協議採用握手策略。用TCP協議把資料包送出去後,TCP不會對傳送後的情況置之不理,它一定會向對方確認是否成功送達 。握手過程中使用了TCP的標誌:SYN和ACK。

 傳送端首先送一個帶SYN標誌的資料包給對方。就收端收到後,回傳一個帶有SYN/ACK標誌的資料包以示傳達確認資訊。

最後,傳送端再回傳一個帶ACK標誌的資料包,代表“握手”結束。

若在握手過程中某個階段莫名中斷,TCP協議會再次以相同的順序傳送相同的資料包。

斷開一個TCP連線則需要“四次揮手”:

第一次揮手:主動關閉放傳送一個FIN,用來關閉主動方到被動方的資料傳送,也就是主動關閉方告訴關閉方:我已經不會再發資料了(當然,在fin包之前傳送出去的資料,如果沒有收到對應的ack確認報文,主動關閉方依然會重發這些資料),但是,此時主動關閉方還可以接受資料。

第二次揮手:被動關閉方收到FIN包後,傳送一個ACK給對方,確認序號為收到序號+1(與SYN相同,一個FIN佔用一個序號)。

第三次揮手:被動關閉方傳送一個FIN,應來關閉被動關閉到主動關閉方的資料傳送,也就是告訴主動關閉方,我的資料也傳送完了,不會再給你傳送資料了。

第四次握手:主動關閉方收到FIN後,傳送一個ACK給被動關閉方,確認序號為收到序號+1,至此,完成四次揮手。

  為了準確無誤的吧資料送達目標處,TCP協議採用握手策略。用TCP協議把資料包送出去後,TCP不會對傳送後的情況置之不理,它一定會向對方確認是否成功送達 。握手過程中使用了TCP的標誌:SYN和ACK。

 傳送端首先送一個帶SYN標誌的資料包給對方。就收端收到後,回傳一個帶有SYN/ACK標誌的資料包以示傳達確認資訊。

最後,傳送端再回傳一個帶ACK標誌的資料包,代表“握手”結束。

若在握手過程中某個階段莫名中斷,TCP協議會再次以相同的順序傳送相同的資料包。

斷開一個TCP連線則需要“四次揮手”:

第一次揮手:主動關閉放傳送一個FIN,用來關閉主動方到被動方的資料傳送,也就是主動關閉方告訴關閉方:我已經不會再發資料了(當然,在fin包之前傳送出去的資料,如果沒有收到對應的ack確認報文,主動關閉方依然會重發這些資料),但是,此時主動關閉方還可以接受資料。

第二次揮手:被動關閉方收到FIN包後,傳送一個ACK給對方,確認序號為收到序號+1(與SYN相同,一個FIN佔用一個序號)。

第三次揮手:被動關閉方傳送一個FIN,應來關閉被動關閉到主動關閉方的資料傳送,也就是告訴主動關閉方,我的資料也傳送完了,不會再給你傳送資料了。

第四次握手:主動關閉方收到FIN後,傳送一個ACK給被動關閉方,確認序號為收到序號+1,至此,完成四次揮手。