当前位置:网站首页>7. Eleven state sets of TCP
7. Eleven state sets of TCP
2022-07-02 05:17:00 【Wangjiachenga】
TCP Eleven states of
TCP Five states in the process of three handshakes
Three handshake process (5 States )
client and Server side The initial state : closed
The first course : The state of the server changes
closed --> listen Creating networks socket
The second course : The client state changes
closed --> syn_sent Completed the first handshake process Sent syn
The third course : The state of the server changes
listen --> syn_rcvd Receive the first handshake request , And reply send out syn ack
The fourth course : The client state changes
syn_sent --> established Receive the message of the second handshake reply , And send the final confirmation message ack
The fifth course : The state of the server changes
syn_rcvd --> established Receive the confirmation message of the third handshake reply
syn Flood attack :
SYN The attack used TCP Three times mobile phone system , The attack side uses forged IP Address sends a request to the attacked end ,
And the response from the attacked end The message will never reach its destination , Then the attacked end consumes resources while waiting for the connection to be closed ,
If there are thousands of such connections , Host resources will be exhausted , So as to achieve the purpose of attack .
Is to keep the state of the server in syn_rcvd The state of , Consume the resources of the server
TCP Six states in the process of four waves
The normal situation is the following five states :
A special case :
Four waves (6 States )
client and Server side The initial state is : established
The first course : The state of the server changes
established --> fin_wait1 Complete the first wave process send out fin ack
The second course : The client state changes
established --> close_wait Receive the first wave message And send the ack Information
The third course : The state of the server changes
fin_wait1 --> fin_wait2 Receive the second wave message
====================================================
Add : A special case
The server directly received fin and ack Third wave information , Directly by the closing Status replacement fin_wait2 state , The transition to time_wait state
fin_wait1 --> closing
====================================================
The fourth course : The client state changes
close_wait --> last_ack Complete the third wave process send out fin ack
The fifth course : The state of the server changes
fin_wait2 --> time_wait Complete the fourth wave process send out ack
The sixth course : The client state changes
last_ack --> closed Receive the fourth wave message
The seventh course : The state of the server changes
time_wait --> closed Wait for a while (60s 90s 120s)
Add : Optimization can be targeted at time_wait To optimize , prevent time_wait Too many connections in state , The new connection can't get in .
边栏推荐
- ansible安装与使用
- Mathematical knowledge (Euler function)
- Ansible installation and use
- LS1046nfs挂载文件系统
- C# 基于MQTTNet的服务端与客户端通信案例
- Briefly introduce chown command
- 将光盘中的cda保存到电脑中
- Fabric.js 自由绘制矩形
- LeetCode 1175. Prime number arrangement (prime number judgment + Combinatorial Mathematics)
- Lay the foundation for children's programming to become a basic discipline
猜你喜欢
黑马笔记---Set系列集合
paddle: ValueError:quality setting only supported for ‘jpeg‘ compression
The El cascader echo only selects the questions that are not displayed
Gee series: Unit 1 Introduction to Google Earth engine
Simple and practical accounting software, so that accounts can be checked
Collectors. Groupingby sort
Fabric.js 将本地图像上传到画布背景
Collectors.groupingBy 排序
数据的储存
4. Flask cooperates with a tag to link internal routes
随机推荐
2022 Alibaba global mathematics competition, question 4, huhushengwei (blind box problem, truck problem) solution ideas
Fabric.js 基础笔刷
Using Kube bench and Kube hunter to evaluate the risk of kubernetes cluster
函数中使用sizeof(arr) / sizeof(arr[0])求数组长度不正确的原因
Essence and physical meaning of convolution (deep and brief understanding)
Fabric.js 激活输入框
4. Flask cooperates with a tag to link internal routes
函数栈帧的创建和销毁
将光盘中的cda保存到电脑中
Basic differences between Oracle and MySQL (entry level)
Collectors. Groupingby sort
Gee: use of common mask functions in remote sensing image processing [updatemask]
Fabric.js 圆形笔刷
Knowledge arrangement about steam Education
C case of communication between server and client based on mqttnet
[common error] the DDR type of FPGA device is selected incorrectly
go实现leetcode旋转数组
Gee: create a new feature and set corresponding attributes
黑马笔记---Map集合体系
Implementation of go language for deleting duplicate items in sorting array