首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 操作系统 > UNIXLINUX >

linux下UDP socket通信有关问题

2013-12-13 
linux下UDP socket通信问题感觉好头疼啊,大家帮帮忙最近做一个项目,一个client端,一个服务器端client端向s

linux下UDP socket通信问题
感觉好头疼啊,大家帮帮忙
最近做一个项目,一个client端,一个服务器端
client端向serve端发送数据请求,然后serve在把数据传过来
client端的程序也比较简单:
int main{
.......
......
gettimeofday()
sendto
......
}
void fun(){ //这个是单独开的线程来接受
whil(1){
.......
recvform()
gettimeofday()
........
}
情况就是说 sendto 与recvfrom之间的时间如果用软件监测端口的话就20ms左右的时间,但是
我在程序宏用gettimeofday取得时间差值居然有的在70ms,甚至有的在1s左右,这是为什么啊???补充说明: ①每次sendto之前都之前gettimeofday一次
          ②recvform之后肯定接着就gettimeofday一次
          ③sendto的频率是20ms左右,就是client端20ms左右会向服务器端发一次请求
          ④我直接用一个软件去监视客户端的发送端口跟接受端口,直接能看出来时间差在20ms
           说明client从端口发送请求和从server端接受数据之间的时间在20ms左右(这个是不会错的)
          ⑤在程序中我sendto记一下时间,recvfrom之后(没做任何处理)记一下时间
大家帮帮忙,给我点思路吧linux下UDP socket通信有关问题
[解决办法]
你这测试好像不能说明什么问题啊,一个是sendto
一个是recvform这个和网络,以及服务器处理都有关啊。

热点排行