2017-02-22 37 views
0

在創建兩個將通過UDP進行通信的應用程序的過程中。這兩個應用程序都需要異步發送和檢索數據。UDP:在網絡兩端使用相同的端口號以異步發送和接收

我的問題是:我應該定義單獨的端口來偵聽和發送或兩個應用程序可以在同一個端口上發送和接收嗎?

實施例:
App1的上端口發送6060 < ----------->應用2偵聽6060
App1的端口上偵聽6060 < ---------> App2的發送關於6060

App1的端口6060發送< ------------>應用2偵聽6060
App1的監聽端口7070 < ------ ----> App2發送7070

謝謝

+1

請注意。對於這種方案(點對點連接),您至少需要一個公共IP地址(在app1或app2上),或者您需要一些NAT穿越機制。 –

回答

1

沒有理由以這種方式浪費一個港口。 UDP是全雙工的;套接字是全雙工的;並且發送回原始端口比發送到不同端口要容易得多,該端口必須在兩端進行配置。

+0

也具有相同的端口有助於在兩者之間存在狀態防火牆 – Alnitak

相關問題