我试图使p2p网络在tcp
I am trying to make p2p network over tcp
我使用Indy组件包。实际上,我成功地使p2p网络通过udp,它现在还在工作,但与udp我需要发送一些ping包每次,否则路由器将删除映射端口列表中的虚拟端口!对于视频或声音或游戏项目,udp是最好的方式,但对于我的项目,我需要它通过tcp。
我是怎么做的:我有一台服务器机器拥有一个真实的ip,所有客户端在切换到p2p模式之前都需要向服务器发送数据包,现在服务器知道所有客户端在路由器上创建的虚拟端口(出端口),如果一些客户端想向另一个客户端发送数据,他只需要将数据发送到另一个客户端ip和路由器上的虚拟端口。路由器可以自动映射。
我在tcp中尝试同样的方式,客户端将数据发送到另一个客户端ip和虚拟端口(在路由器上),但tcp客户端组件无法接收它!使用udp可以接收
为什么over tcp的p2p拓扑结构不同于udp
或者我如何使用idtcpserver组件在路由器上创建虚拟端口来发送数据到服务器机器
将sockets
与TCP绑定。UDP不以相同的方式绑定。
TCP和UDP的区别
在您拥有的包中(如果您提供它的名称,您可能会得到更多帮助)应该有某种connection / socket / binding
到连接到服务器的客户端。您需要向该连接发送数据。
相关文章:
- 是否有一种标准化的方法通过TCP/IP网络发送JPG图像
- 在多台计算机上运行SFML tcp 网络程序
- C++ SFML 网络:无法建立 TCP 连接
- 为什么我的网络 TCP/UDP 实现不起作用?
- Winsock客户端 - 通过TCP/IP4连接到网络摄像机
- "Strange"内存泄漏 - TCP 网络
- 网络传输时间从TCP/IP堆栈
- 使用Boost.ASIO与服务器进行简单的网络tcp通信
- 网络tcp套接字应用程序重试方法
- iOS 上的 TCP 流不会显示在无线网络上
- 用c++实现TCP/Ip网络通信
- Qt TCP/IP通信只能在本地工作,但在网络中会丢失
- 网络游戏的防作弊技术(TCP)
- 我试图使p2p网络在tcp
- TCP套接字能注意到网络中断的异常吗?
- TCP聊天不能在不同的网络中工作
- Qt5绑定多宿主网络TCP套接字
- 使用c++ TCP客户端套接字在特定的网络接口Linux/Unix
- 需要帮助阅读/解析TCP网络代码c++
- C/ c++ Posix tcp/ip网络客户端,只连接到本地主机