从服务器向客户端发送UDP / TCP数据包

时间:2015-08-25 14:19:05

标签: tcp network-programming udp firewall nat

我建立了一个本地多人游戏(多人游戏在wlan网络上)。现在,我想添加一个在线多人游戏功能.. 目前,网络通信主要包括"信号" (从游戏主机对等体发送到游戏客户端对等体的tcp / udp数据包)。我想在我的在线多人游戏中使用这种主要基于信号的通信(因为性能和效率)。但是,由于主机对等设备现在被服务器取代,因此发送信号(NAT,防火墙等)会出现很多问题。 那么实施这些信号有很好的解决方案吗?

问候

2 个答案:

答案 0 :(得分:0)

  

发送信号会遇到很多问题(NAT,防火墙......)_

到底有什么问题?

通常,客户端与服务器建立TCP连接,服务器使用此TCP连接与客户端通信。

对于基于UDP的通信,客户端使用Internet Gateway Device Protocol转发路由器上的端口,以便服务器可以将UDP数据报发送给客户端。

答案 1 :(得分:0)

假设您的服务器位于公共互联网中,而不是任何NAT后面。所有客户端都必须启动连接。否则,服务器无法知道客户端凭据,无法连接。由于服务器没有NAT,它将接受来自客户端的连接。这个连接客户端必须保持活力。因此,当服务器需要发送一些数据时,应该没有问题。

这适用于UDP和TCP。