关于一个聊天程序的疑问

heguo 2003-06-11 10:47:08
请教疑问:
现有一聊天程序,局域网内任何机器登录,就会在所有用户的在线列表里添加,请问他是怎么实现的?
这个程序登录时没有提示要输入服务器IP,也不需要指定端口号,就直接登录到聊天界面了.看上去像是不需要服务器的.也没有数据库.
方案1.遍历网段内所有IP的默认端口,获取已登录此聊天程序的用户列表,逐个发送消息,通知:我登录啦.然后打开自己的端口,把在线用户添加到自己的在线列表中.
方案2.类似于net send * msg之类的原理,向网段内所有IP广播一条消息:我登录啦.如果收到回应,就确定在线.

我对协议,网络没什么概念,我不知道我在说些什么.但我想了解这个程序工作的浅显的原理.登录过程序消息是怎么传递的,希望有高人指点一二.
方案一,方案二估计都不是什么切实可地的方案.:)
...全文
96 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
goodok12345 2003-06-12
  • 打赏
  • 举报
回复
up!
heguo 2003-06-11
  • 打赏
  • 举报
回复
我还测试过:第一个登录者退出后,第二个第三个还是可以继续正常的聊天通讯的.
heguo 2003-06-11
  • 打赏
  • 举报
回复
我知道他用winsock实现,用到udp协议.
我在192.168.0.XXX网段测试的.
再问:udp是不是只能在局域网内广播消息?

6,185

社区成员

发帖
与我相关
我的任务
社区描述
windows网络管理与配置
社区管理员
  • 网络管理与配置社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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