TCP/IP TIME_WAIT状态原理: 常用的三个状态是:ESTABLISHED 表示正在通信,TIME_WAIT 表示主动关闭,CLOSE_WAIT 表示被动关闭。 服务器出现导常都是下需的两种状态: 因为linux分配给一个用户的文件句柄是有限的,而TIME_WAIT和CLOSE_WAIT两 ...
分类:
其他好文 时间:
2016-08-22 12:33:41
阅读次数:
175
公司最近需要进行短信推广,需要发送大批量带有连接地址的短信给用户,并且需要统计短信的点击量。因为需要考虑短信成本问题,需要将长连接地址生成比较短的连接。因为公司本身没有短的一级域名,所以考虑到使用第三方的短连接生成器。经过对比选择了新浪短连接生成器。 新浪接口文档地址: http://open.we ...
想使用 Scut 做的是一个短连接项目,所以先直接看 GameWebSocketHost 了。 先来看下 GameWebSocketHost 的成员: 由之前的分析可知:SocketListener 搞定了监听、底层IO,那么ActionDispatcher 应该负责上层消息的分发了。 构造函数做了 ...
分类:
Web程序 时间:
2016-08-16 13:14:03
阅读次数:
215
MSL(最大分段生存期)指明TCP报文在Internet上最长生存时间,每个具体的TCP实现都必须选择一个确定的MSL值。RFC 1122建议是2分钟。 TIME_WAIT 状态最大保持时间是2 * MSL,也就是1-4分钟。 IP头部有一个TTL,最大值255。尽管TTL的单位不是秒(根本和时间无 ...
分类:
其他好文 时间:
2016-08-16 10:28:04
阅读次数:
299
http://wiki.apache.org/HttpComponents/FrequentlyAskedConnectionManagementQuestions 1. Connections in TIME_WAIT State After running your HTTP applicati ...
分类:
Web程序 时间:
2016-08-14 12:51:31
阅读次数:
978
1. HTTP协议与TCP/IP协议的关系 HTTP的长连接和短连接本质上是TCP长连接和短连接。HTTP属于应用层协议,在传输层使用TCP协议,在网络层使用IP协议。IP协议主要解决网络路由和寻址问题,TCP协议主要解决如何在IP层之上可靠的传递数据包,使在网络上的另一端收到发端发出的所有包,并且 ...
分类:
Web程序 时间:
2016-08-11 06:23:15
阅读次数:
127
为什么要有TIME_WAIT? 主动关闭端发送完ACK后等2MSL(最长分节生命期),防止对端没有收到ACK这种情况,重发。 官方点,再官方点...... (1) 可靠地实现TCP全双工连接的终止; (2) 允许老的重复分节在网络中消逝。TCP将不给处于TIME_WAIT状态的连接发起新的化身。 ...
分类:
其他好文 时间:
2016-08-10 16:05:40
阅读次数:
137
time_wait状态 可靠地实现tcp全双工连接的终止;(假设客户端先关闭).服务端再关闭,服务端将发送fin ,客户端此时进入time_wait状态.客户端接收到fin.将回一个ack.如果这个ack一旦丢失..time_wait这段时间,会使得服务端重新发送fin(2)使得老的重复分节在网络中... ...
分类:
其他好文 时间:
2016-08-10 06:23:17
阅读次数:
163
之前一直以为time_wait状态就是主动关闭的那一方产生.然后这个端口一直不可以用.实际我发现服务端监听一个端口.客户端发来连接后.传输数据后.服务端关闭客户端套接字后.用netstat -nat | grep 端口 查看了产生了time_wait.但客户端依然可以不断连接服务端.然后服务端不断关... ...
分类:
其他好文 时间:
2016-08-10 06:22:02
阅读次数:
148
TCP报文格式一、6个控制位中URG和PSH的区别:(1)紧急URG(URGent),当URG=1时,表明紧急指针字段有效。它告诉操作系统此报文中有紧急数据,应尽快传输(相当于高优先级数据),而不要按照原来的排队顺序来传送。例如,已经发送了很长的一个程序要在远地的主机上运行,但后来发..
分类:
其他好文 时间:
2016-08-10 01:07:08
阅读次数:
161