ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

网络分析纪录

2020-01-28 14:04:45  阅读:290  来源: 互联网

标签:状态 ACK 纪录 syn server 发送 client 网络分析


 查看端口状态数

netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'

 

tcp三次握手和四次挥手

client发送syn(SYN=x)请求到server,client状态syn_send状态;

server收到syn包,确认client的syn(ACK=x+1),同时发送自己的syn包(SYN=y),即SYN+ACK包,此时server进入syn_recv状态;

client收到server的包,向server发送确认包(ACK=y+1),此包发送完毕,client进入ESTABLISHED状态,server收到确认包,进入ESTABLISHED,三次握手完成;

 

 

 

client发出连接释放,且停止发送数据,FIN=1,seq=u;此时,客户端进入FIN_WAIT_1状态;

server收到连接释放报文,发出确认报文,ACK=1,ack=u+1,带上自己的序列号seq=v,server进入close_wait状态;此时数据半关闭状态,client没有数据发送了;

此时server发送数据,client还是接收;

client收到server的确认请求后,此时client进入FIN_WAIT_2状态,等待server发送连接中断报文;此时server还能发送数据

server将数据发送完毕,像client发送释放连接报文,FIN=1,ack=u+1,此时是假死状态,假定此时序列号seq=w,server进入last_ack状态,等待client确认;

client收到server释放连接报文,必须进行确认,ACK=w+1,ACK=1,自己的序列号seq=u+1,此时client进入time_wait状态,此时client连接还没有释放,经过2*MSL时间,客户端关闭;

server收到client消息,进入close

 

标签:状态,ACK,纪录,syn,server,发送,client,网络分析
来源: https://www.cnblogs.com/Shoudler/p/12205806.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有