社区
C语言
帖子详情
linux socket, 两台主机同时向对方发包
ROCK
2012-01-02 10:29:37
两台主机定时(也可以看做是同时)向对方发包,结果要么是两个主机一直发,都没有收。要么是一个主机发,一个主机收。
不知道是什么问题。就是没有我想要的有收,有发。请高手解答。
还有我一直怀疑是不是我发的包大小太小的问题,大约100B。请解答。谢谢
...全文
204
7
打赏
收藏
linux socket, 两台主机同时向对方发包
两台主机定时(也可以看做是同时)向对方发包,结果要么是两个主机一直发,都没有收。要么是一个主机发,一个主机收。 不知道是什么问题。就是没有我想要的有收,有发。请高手解答。 还有我一直怀疑是不是我发的包大小太小的问题,大约100B。请解答。谢谢
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
nanjingnew4
2012-01-06
打赏
举报
回复
你的socket是tcp还是udp?
ROCK
2012-01-03
打赏
举报
回复
木有人回答吗?
ROCK
2012-01-03
打赏
举报
回复
一个发,一个收是没有问题的。再开一个收进程。
我试试吧。刚学socket,也是刚学会select。
所以进程这块还得现学。谢谢你。但是搞不懂到底
用select问题出现在哪。呵呵……
zxl541221943
2012-01-03
打赏
举报
回复
先试试让select只收数据看看行不行,不行的话可能哪个地方出错了,如果可以你创建一个进程专门用于发数据来实现全双工。我记得我以前做网络编程时可以实现多台机子全双工通信的
ROCK
2012-01-02
打赏
举报
回复
(同时开始运行)首先,每个节点只知道邻接节点的IP地址,
然后就会先用60s和邻接节点建立socket。
然后每个节点向定时(每30s)向邻接节点发送
自己的ID(打包),然后其他节点收到这个ID
后,开始在AS内洪泛。
现在遇到的问题是发包可以,但是不知道为什么
收包就不行。select一直是0.
select只监控readfd。请高手解答。谢谢
ROCK
2012-01-02
打赏
举报
回复
while(1)
{
获取本地时间
ret=select(maxfd+1,readfds,null,null,time_out)
ret=-1
{
……
}
ret=0
{
在相同时间
发送数据包
}
ret>0
{
接收数据包
}
}
很多台主机同时运行,现在遇到的问题是主机一直发包,却不见收到数据包。不知道为什么。socket是全双工的,应该不会出现只能发不能收的问题。
我怀疑是不是因为很多主机同时发包,没办法收数据包。可是不确定。
希望大家能指点一下。因为程序太多了,没办法一一的贴上去。
我主要是想实现路由的洪泛。就是主机向AS内发送自己的ID。
qq120848369
2012-01-02
打赏
举报
回复
太抽象了... 具体点.
linux
socket
默认超时时间设置,
linux
下
socket
connect超时设置
今天发现自己的系统存在很严重缺陷,当前台关闭的时候后台就无法正常工作,原因很好定位,后台的
socket
连接超时时间过长,系统默认时间好像是75秒,于是找资料,根据下边文章中的内容解决了,把超时时间设为5秒后,感觉好多了。看来还有好多东西需要慢慢挖掘阿!如何设置
socket
的Connect超时(
linux
)[From]http://dev.cbw.com/c/c/200510195601_42925...
Linux
网络设置
本文讲解了查看网络配置的几种方式,如何测试网络连接以及设置网络地址的参数。查看网络配置测试网络连接设置网络地址参数临时配置、永久配置s。
Linux
socket
文件系统体现“一切皆文件”
来自《实例演绎Unix/
Linux
的"一切皆文件"思想》 大家习惯了使用
socket
来编写网络程序,
socket
是网络编程事实上的标准。 我们知道,在Unix/
Linux
系统中“一切皆文件”,
socket
也被认为是一种文件,
socket
被表示成文件描述符。 但
socket
的行为并不很像文件。比如: 无法用 “open一个路径” 的方式打开一个
socket
,必须用
socket
系统调用来创建。 文件...
【
Linux
】
Socket
编程接口 | 实现简单的UDP网络程序
socket
API是一层抽象的网络编程接口,适用于各种底层网络协议,如IPv4、IPv6,以及后面要讲的UNIX Domain
Socket
。然而,各种网络协议的地址格式并不相同。
linux
下
socket
connect超时设置
今天发现自己的系统存在很严重缺陷,当前台关闭的时候后台就无法正常工作,原因很好定位,后台的
socket
连接超时时间过长,系统默认时间好像是75秒,于是找资料,根据下边文章中的内容解决了,把超时时间设为5秒后,感觉好多了。看来还有好多东西需要慢慢挖掘阿! 如何设置
socket
的Connect超时(
linux
) [From]http://dev.cbw.com/c/c/20051019
C语言
70,035
社区成员
243,244
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章