tcpip协议的11种状态

传智扫地僧课程学习笔记。



很多操作,是在应用底层操作的,


为什么三次握手,

因此全双工通信,两端都要确认。


学socket编程,关键是理解tcp/ip内部的状态机理,

学指针使用,关键是理解内存布局使用,


执行主动关闭的那一端,进入TIME_WAIT状态,


之前服务器关闭后,再次启动,提示端口占用,

是因为仍然处于TIME_WAIT状态,


为什么要主动关闭close两次,

来做个实验先,

比如主动关闭服务器,则服务器会进入FIN_WAIT_2,

而客户端进入CLOSE_WAIT状态,

再次强调,全双工,即我们看来的一次互相通信,在内核建立中维护着两条链接,

那为什么,客户端,没有close掉呢?在我们的代码中,阻塞在了接收键盘输入的地方,

你没有搞清楚这里,

后面就会出错,

为什么发送不了信息,

为什么进程越启动越多,

因为全部卡在了半通信状态,



TIME_WAIT 时间是多长2MSL (2倍的最大生命期时间)

原因:(ACK y+1)如果发送失败可以重发。

服务器端处于closed状态,不等于客户端也处于closed状态,

这也同时在解释,为什么让先关闭的处于TIME_WAIT状态,

确保双方都真的进入CLOSED状态,



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值