当前位置:网站首页>Tcp- simple understanding of three handshakes and four waves
Tcp- simple understanding of three handshakes and four waves
2022-07-04 04:20:00 【I'm not Xiao Haiwa~~~~】
Three handshakes (three-way handshaking)
1. background :TCP On the transport layer , The function is to provide reliable byte stream service , In order to accurately deliver the data to the destination ,TCP The protocol adopts the strategy of three handshakes .
2. principle :
1) The sender first sends a message with SYN(synchronize) Flag packet to receiver .
2) After receiving , Send back one with SYN/ACK The packet of the flag passes the confirmation message , Means I received .
3) Last , The sender sends back another one with ACK Packets for flags , On behalf of me , Express ’ handshake ‘ end .
In popular parlance
1)Client: well , Li Si , Is my , Do you hear me ?
2)Server: I heard , Can you hear me ?
3)Client: well , We can all hear each other , Our correspondence can begin .
Four waves (Four-Way-Wavehand)
1. significance : When the passive party receives the FIN Message notification , It just means that the active party has no data to send to the passive party . But not all the data of the passive party is completely sent to the active party , So the passive side won't shut down immediately SOCKET, It may also need to send some data to the active party , Send again FIN Message to the active party , Tell the active party to agree to close the connection , So here ACK Message and FIN In most cases, messages are sent separately .
2. principle :
1) First wave :Client Send a FIN, Used to close Client To Server Data transfer of ,Client Get into FIN_WAIT_1 state .
2) Second wave :Server received FIN after , Send a ACK to Client, Confirmation No. is receipt No +1( And SYN identical , One FIN Occupy a sequence number ),Server Get into CLOSE_WAIT state .
3) Third wave :Server Send a FIN, Used to close Server To Client Data transfer of ,Server Get into LAST_ACK state .
4) Fourth wave :Client received FIN after ,Client Get into TIME_WAIT state , And then send a ACK to Server, Confirmation No. is receipt No +1,Server Get into CLOSED state , Finish four waves
In popular parlance
1)Client: I'm done with everything
2)Server: I've heard all about , But wait for me , I haven't finished
3)Server: Okay , I have finished
4)Client: well , Then our correspondence is over l
link :https://www.jianshu.com/p/d3725391af59
边栏推荐
- Go 语言入门很简单:Go 实现凯撒密码
- 【愚公系列】2022年7月 Go教学课程 002-Go语言环境安装
- Katalon uses script to query list size
- 如何有效远程办公之我见 | 社区征文
- Balance between picture performance of unity mobile game performance optimization spectrum and GPU pressure
- Flink learning 6: programming model
- RHCSA 07 - 用户与群组管理
- 【微服务|openfeign】使用openfeign远程调用文件上传接口
- Redis cluster uses Lua script. Lua script can also be used for different slots
- Database SQL statement summary, continuous update
猜你喜欢
The difference between bagging and boosting in machine learning
【罗技】m720
Parameterization of controls in katalon
Lnk2038 detected a mismatch of "runtimelibrary": the value "md_dynamicrelease" does not match the value "mdd_dynamicdebug" (in main.obj)
Select sorting and bubble sorting template
Balance between picture performance of unity mobile game performance optimization spectrum and GPU pressure
leetcode刷题:二叉树08(N叉树的最大深度)
Flink learning 7: application structure
leetcode刷题:二叉树05(翻转二叉树)
Katalon中控件的参数化
随机推荐
还原窗口位置的微妙之处
DP83848+网线热拔插
Idea configuration 360zip open by default -- external tools
One click compilation and deployment of MySQL
Pytest multi process / multi thread execution test case
Idea modify body color
Go 语言入门很简单:Go 实现凯撒密码
2022-07-03: there are 0 and 1 in the array. Be sure to flip an interval. Flip: 0 becomes 1, 1 becomes 0. What is the maximum number of 1 after turning? From little red book. 3.13 written examination.
The three-year revenue is 3.531 billion, and this Jiangxi old watch is going to IPO
[Logitech] m720
Katalon使用script实现查询List大小
[book club issue 13] multimedia processing tool ffmpeg tool set
JS实现文字滚动 跑马灯效果
LevelDB源码解读-SkipList
STM32 external DHT11 display temperature and humidity
idea修改主体颜色
[book club issue 13] packaging format of video files
ctf-pikachu-CSRF
Katalon中控件的参数化
(指针)编写函数void fun(int x,int *pp,int *n)