高分,类似QQ的TCP或UDP通讯模式如何实现?

cellblue 2005-03-17 03:46:51
项目背景:
可以提供一台公网的服务器,里头运行一个服务器端软件,用于记录各个客户端的信息

如何完成两台处于不同局域网的客户端,通过UDP或者TCP直接通讯,而无需通过服务器。


给代码,或者提架构均可


Mail:cellblue@163.com
...全文
1522 69 打赏 收藏 转发到动态 举报
写回复
用AI写文章
69 条回复
切换为时间正序
请发表友善的回复…
发表回复
cellblue 2005-03-25
  • 打赏
  • 举报
回复
thanks
cnming 2005-03-24
  • 打赏
  • 举报
回复
看了些资料,我理解为如下,没有具体测试过

当你的Client A跟Server通了之后,NAT A上会有一个PortA
当你的Client B跟Server通了之后,NAT B上会有一个PortB

Client A从Server要回NAT B上的IP和Port

Client B就可以发送消息到Client A了,Client A也可以发送消息到Client B了

cnming 2005-03-24
  • 打赏
  • 举报
回复
帮顶again
singleflower 2005-03-24
  • 打赏
  • 举报
回复
P2P技术的基础是能够穿透NAT,这方面的例子源码都有,但是QQ的通信采用的是自己的协议(TCPF),你可以研究一下一些网上关于QQ的分析
心情解码 2005-03-24
  • 打赏
  • 举报
回复
:)

-
cc79 2005-03-24
  • 打赏
  • 举报
回复
看看这个吧,先声博客-Dipper-P2P之UDP穿透NAT的原理与实现
http://herald.seu.edu.cn/blog/dipper/articles/7781.aspx
kong19 2005-03-24
  • 打赏
  • 举报
回复
mark
lovelxj 2005-03-24
  • 打赏
  • 举报
回复
看起来复杂啊 应该就是和P2P的软件构架相似吧。

帮你UP
terryshi 2005-03-24
  • 打赏
  • 举报
回复
cc
yangjundeng 2005-03-24
  • 打赏
  • 举报
回复
使用P2P技术,就能满足楼主的要求
健者天行 2005-03-24
  • 打赏
  • 举报
回复
mark
ligaru 2005-03-24
  • 打赏
  • 举报
回复
mark
cellblue 2005-03-24
  • 打赏
  • 举报
回复
up
ycy589 2005-03-24
  • 打赏
  • 举报
回复
顶!!!
Aallonlin 2005-03-24
  • 打赏
  • 举报
回复
mark
暗石绿 2005-03-23
  • 打赏
  • 举报
回复
mark 一下。
cellblue 2005-03-23
  • 打赏
  • 举报
回复
测试SendTo之中


老板总是干扰我的进程安排,郁闷
snakebite2008 2005-03-22
  • 打赏
  • 举报
回复
关注...
hanyaocsdn 2005-03-22
  • 打赏
  • 举报
回复
学习
up
WillSmart 2005-03-22
  • 打赏
  • 举报
回复
不同局域网的没试过
加载更多回复(49)

110,535

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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