当前位置:网站首页>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
边栏推荐
- Idea configuration 360zip open by default -- external tools
- Katalon uses script to query list size
- Two sides of the evening: tell me about the bloom filter and cuckoo filter? Application scenario? I'm confused..
- How to dynamically cache components in Vue multi-level route nesting
- Graduation project: design seckill e-commerce system
- 程序员远程办公喜忧参半| 社区征文
- Flink learning 6: programming model
- Msgraphmailbag - search only driveitems of file types
- 毕业三年,远程半年 | 社区征文
- Support the first triggered go ticker
猜你喜欢

指针数组和数组指针

Two sides of the evening: tell me about the bloom filter and cuckoo filter? Application scenario? I'm confused..

量子力学习题

leetcode刷题:二叉树07(二叉树的最大深度)

Graduation project: design seckill e-commerce system

北漂程序员,月薪20K,一年攒15W,正常吗?

Idea configuration 360zip open by default -- external tools

Idea modify body color

Exercises in quantum mechanics

DP83848+网线热拔插
随机推荐
STM32 external DHT11 display temperature and humidity
RHCSA 06 - suid, sgid, sticky bit(待补充)
Katalon framework tests web (XXI) to obtain element attribute assertions
I Build a simple microservice project
postgresql 用户不能自己创建表格配置
User defined path and file name of Baidu editor in laravel admin
JDBC 进阶
One click compilation and deployment of MySQL
2020 Bioinformatics | TransformerCPI
Idea modify body color
Is it safe to buy insurance for your children online? Do you want to buy a million dollar medical insurance for your children?
【读书会第十三期】视频文件的封装格式
Evolution of MySQL database architecture
Epidemic strikes -- Thinking about telecommuting | community essay solicitation
毕业设计:设计秒杀电商系统
Penetration practice - sqlserver empowerment
"Implement both software and hardware" to help build a new cloud computing data center
leetcode刷题:二叉树09(二叉树的最小深度)
Pytest multi process / multi thread execution test case
毕业三年,远程半年 | 社区征文