UDP/TCP
大梦先生
爱编程,爱游戏,更爱生活,我就是一个喜欢宅的程序猿。
展开
-
使用UDP多播是setsockopt时失败返回-1,错误代码10042的解决办法
昨天在写一个接收多播消息的程序时发现了一个错误原创 2014-10-09 14:10:28 · 7200 阅读 · 0 评论 -
win32/linux下网络编程十点需要注意的地方(转)
书上看到的,有几点觉得还是值得注意。1、头文件win32: #includelinux: #include2、关闭win32: closeScoket(s);linux: close(fd);3、在NONBLOCKING模式下调用connect,大部分返回win32: WSAEWOULDBLOCKlinux: EINPROGR转载 2014-10-21 10:44:36 · 514 阅读 · 0 评论 -
UDP大批量传输数据时的丢包问题优化
最近在研究linux下的UDP的传输,但是由于UDP协议本身的一些原因,在数据量非常大的时候会造成一定数量的丢包,数量越大,丢包率越高.为了解决丢包这个问题,我从网上查到了一些资料,大致可以从三个方面来解决这个问题.1. 从发送端解决(推荐)适用条件: ①发送端是可以控制的.②微秒数量级的延迟可以接受.解决方法:发送时使用usleep(1)延迟1微秒发送,即发送频率不要过快,延迟1原创 2015-04-08 15:27:39 · 17751 阅读 · 1 评论 -
Linux下高并发socket最大连接数所受的限制问题
1、修改用户进程可打开文件数限制在Linux平台上,无论编写客户端程序还是服务端程序,在进行高并发TCP连接处理时,最高的并发数量都要受到系统对用户单一进程同时可打开文件数量的限制(这是因为系统为每个TCP连接都要创建一个socket句柄,每个socket句柄同时也是一个文件句柄)。可使用ulimit命令查看系统允许当前用户进程打开的文件数限制:[speng@as4 ~]$ uli转载 2015-11-21 17:26:25 · 983 阅读 · 0 评论 -
UDP多网卡广播问题解决方案
楼主最近遇到了一个多网卡广播的问题,问题描述如下:服务器上安装了多个网卡,当程序广播到255.255.255.255这个地址上时,只有主网卡网段上的机子可以收到UDP数据,其他网段并不能收到数据.针对这个问题,解决方案为:发送时绑定网卡的ip地址,比如两个网卡的ip地址为:192.168.23.2(主)和10.20.30.4 广播时需要用两个socket分别绑定这两个ip,再进行发送.如果两个原创 2015-04-08 16:15:52 · 9632 阅读 · 0 评论