Sockets UDP:在网络两侧使用相同的端口号进行异步发送和接收

Sockets UDP:在网络两侧使用相同的端口号进行异步发送和接收,sockets,asynchronous,udp,client-server,ports,Sockets,Asynchronous,Udp,Client Server,Ports,Im正在创建两个通过UDP通信的应用程序。这两个应用程序都需要异步发送和检索数据 我的问题是:我应该定义单独的端口来监听和发送,还是两个应用程序可以在同一个端口上发送和接收 例如: 端口6060上的App1发送应用程序2侦听端口6060 App1侦听端口6060 App2发送端口6060 或 端口6060上的App1发送应用程序2侦听端口6060 App1在端口7070上侦听App2在端口7070上发送 谢谢这样浪费一个端口是没有理由的。UDP是全双工的;插座是全双工的;发送回源端口要比发送到另

Im正在创建两个通过UDP通信的应用程序。这两个应用程序都需要异步发送和检索数据

我的问题是:我应该定义单独的端口来监听和发送,还是两个应用程序可以在同一个端口上发送和接收

例如: 端口6060上的App1发送应用程序2侦听端口6060 App1侦听端口6060 App2发送端口6060

端口6060上的App1发送应用程序2侦听端口6060 App1在端口7070上侦听App2在端口7070上发送


谢谢

这样浪费一个端口是没有理由的。UDP是全双工的;插座是全双工的;发送回源端口要比发送到另一个端口容易得多,而另一个端口必须在两端进行配置。

此外,如果中间有一个有状态防火墙,则使用相同的端口也会有所帮助。

请注意。对于这种对等连接方案,您需要在app1或app2上至少有一个公共IP地址,或者需要某种NAT遍历机制。