<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
<title><![CDATA[向东博客 专注WEB应用 构架之美 --- 构架之美，在于尽态极妍 | 应用之美，在于药到病除]]></title> 
<link>http://jackxiang.com/index.php</link> 
<description><![CDATA[赢在IT，Playin' with IT,Focus on Killer Application,Marketing Meets Technology.]]></description> 
<language>zh-cn</language> 
<copyright><![CDATA[向东博客 专注WEB应用 构架之美 --- 构架之美，在于尽态极妍 | 应用之美，在于药到病除]]></copyright>
<item>
<link>http://jackxiang.com/post/4399/</link>
<title><![CDATA[经典的”服务器最多65536个连接”误解]]></title> 
<author>jack &lt;xdy108@126.com&gt;</author>
<category><![CDATA[WEB2.0]]></category>
<pubDate>Tue, 21 Jun 2011 06:44:46 +0000</pubDate> 
<guid>http://jackxiang.com/post/4399/</guid> 
<description>
<![CDATA[ 
	“因为TCP端口号是16位无符号整数, 最大65535, 所以一台服务器最多支持65536个TCP socket连接.” – 一个非常经典的误解! 即使是有多年网络编程经验的人, 也会持有这个错误结论.<br/><br/>要戳破这个错误结论, 可以从理论和实践两方面来.<br/>理论<br/><br/>系统通过一个四元组来唯一标识一条TCP连接. 这个四元组的结构是&#123;local ip, local port, remote ip, remote port&#125;, 对于IPv4, 系统理论上最多可以管理2^(32+16+32+16), 2的96次方个连接. 如果不仅仅考虑TCP, 则是一个五元组, 加上协议号(TCP, UDP或者其它).<br/>实践<br/><br/>服务器绑定一个ip:port, 然后accept连接, 所有accept的连接使用的本地地址也是同样的ip:port.<br/>扩展内容<br/><br/>如果某个客户端向同一个TCP端点(ip:port)发起主动连接, 那么每一条连接都必须使用不同的本地TCP端点, 如果客户端只有一个IP则是使用不同的本地端口, 该端口的范围在*nix系统上的一个例子是32768到61000, 可以通过如下命令查看:<br/><br/>[root@benegg.com ~]# cat /proc/sys/net/ipv4/ip_local_port_range<br/>32768&nbsp;&nbsp; 61000<br/><br/>也就是说, 一个客户端连接同一个服务器(比如进行压力测试), 最多可以发起30000个左右的连接.<br/><br/>TCP客户端(TCP的主动发起者)可以在同一ip:port上向不同的服务器发起主动连接, 只需在bind之前对socket设置SO_REUSEADDR选项.<br/><br/>系统支持的最大打开文件描述符数(包括socket连接):<br/><br/>[root@benegg.com ~]# cat /proc/sys/fs/file-max<br/>580382<br/><br/>单个进程所能打开的最大文件描述符数:<br/><br/>[root@benegg.com ~]# ulimit -n<br/>1024<br/><br/>结论<br/><br/>无论是对于服务器还是客户端, 认为”一台机器最多建立65536个TCP连接”是没有根据的, 理论上远远超过这个值.<br/><br/>来源：http://www.ideawu.net/blog/2010/07/%E7%BB%8F%E5%85%B8%E7%9A%84%E6%9C%8D%E5%8A%A1%E5%99%A8%E6%9C%80%E5%A4%9A65536%E4%B8%AA%E8%BF%9E%E6%8E%A5%E8%AF%AF%E8%A7%A3.html
]]>
</description>
</item><item>
<link>http://jackxiang.com/post/4399/#blogcomment63274</link>
<title><![CDATA[[评论] 经典的”服务器最多65536个连接”误解]]></title> 
<author>naimeicun61 &lt;vxk438@mx8168.net&gt;</author>
<category><![CDATA[评论]]></category>
<pubDate>Thu, 28 Jul 2011 21:17:45 +0000</pubDate> 
<guid>http://jackxiang.com/post/4399/#blogcomment63274</guid> 
<description>
<![CDATA[ 
	博主的文章很不错，转载了。
]]>
</description>
</item>
</channel>
</rss>