请教大家一个socket通信的问题

shi_hang_nk 2010-07-03 05:29:53
大家好,一个socket通信的问题,看看大家有没有好的思路

我正在设计一个数据接收软件,这个软件装在一台PC上,要和10台外围设备通信。外围设备是别人开发的,接口协议如下:

外设为服务器端,pc为客户端。在未建立连接时由pc向外设发出连接请求,外设在接收连接请求后进行一定的预处理,决定是否允许建立连接。

如果可以建立连接,存在二类接口:

1.外设成为数据发送的主动方,开始逐条发送消息包,发送每个消息后等待应答;pc接收到消息后进行处理,然后返回外设一个应答。

2.pc定期向各个外设发送心跳检测请求,接收各个外设的应答。

上述过程中,双方使用TCP协议,端口号均为10000。

基于上述需求,pc端如何设计呢?想请教一下大家的思路。
...全文
113 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
jenf 2010-07-05
  • 打赏
  • 举报
回复
服务器提供的意思是你在同一时刻必须两选一吧
shi_hang_nk 2010-07-05
  • 打赏
  • 举报
回复
二个业务方法都走同一个port会有问题吗?
lzh3ng 2010-07-03
  • 打赏
  • 举报
回复
上面都都说的不错
cattycat 2010-07-03
  • 打赏
  • 举报
回复
可以创建线程,每个线程连接各个外设,然后线程中可以再创建线程专门接收数据。注意数据格式要一致。
jiuchang 2010-07-03
  • 打赏
  • 举报
回复
这个难度不大,因为要不要建立连接是服务器来决定的。PC只要建立连接后等待就可以了
关键是要把协议搞明白,把数据结构设计好就可以了
连接外设是通过IP列表啊,还是广播的形式
  • 打赏
  • 举报
回复
首先,服务器要先打开.然后PC广播,收到你广播的信号向PC发出连接请求...

70,024

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧