网络编程
yourwonder
这个作者很懒,什么都没留下…
展开
-
select写的UDP/TCP测试服务器
比较简单,只是把接收的数据长度打印一下。#include #include #include #include #include #include #include #include #include #include #include #include #include #include #define MODE(a) (a==0?"tcp":"udp")#d原创 2013-09-11 10:00:14 · 793 阅读 · 2 评论 -
UDP端口复用测试代码
具体不多说,看注释。// udp.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include #include #pragma comment(lib,"ws2_32.lib")int _tmain(int argc, _TCHAR* argv[]){ WORD ver = MAKEWORD(2,2); WSAData data;原创 2013-09-11 14:45:39 · 2765 阅读 · 1 评论 -
UDP的send、sendto和sendmsg测试代码
// mode: 0 call sendto// 1 call sendmsg// 2 call connect and send/sendmsg/writevoid udp_test(int mode, const char* addr, unsigned short port, const char* text){ int s = socket(AF_INET,SOCK_DG原创 2013-09-17 16:33:39 · 1363 阅读 · 0 评论 -
一个SOCKET选项导致的UDP通信问题
场景:两台服务器,在不同路由器下,我们称之为服务器A和B,现在C向A发送UDP包,A可以收到;同样的程序,C向B发送成UDP包,B却只能收到一个包,后面全部没有到达网卡(tcpdump抓包显示)。然后就是紧张的排查了,尝试用自己写的程序替换C的程序,结果发送到A和B都成功;这时候意识到一个问题,C原来的程序肯定有问题,于是去查看代码,最终发现唯一区别是socket选项,于是我们把那些选项一个个原创 2013-09-17 19:13:05 · 1954 阅读 · 0 评论