我想開發簡單的無服務器局域網聊天程序只是爲了好玩。我怎樣才能做到這一點 ?我應該使用什麼類型的建築?開發無服務器局域網聊天程序幫助!
去年我從事TCP,UDP客戶端/服務器應用程序Project.It很簡單(服務器偵聽某些端口/套接字和客戶端連接到服務器的端口等..)但我不知道如何開發「無服務器「局域網聊天程序。我怎樣才能做到這一點? UDP,TCP,多播,廣播?或程序應該像服務器和客戶端一樣行事?
我想開發簡單的無服務器局域網聊天程序只是爲了好玩。我怎樣才能做到這一點 ?我應該使用什麼類型的建築?開發無服務器局域網聊天程序幫助!
去年我從事TCP,UDP客戶端/服務器應用程序Project.It很簡單(服務器偵聽某些端口/套接字和客戶端連接到服務器的端口等..)但我不知道如何開發「無服務器「局域網聊天程序。我怎樣才能做到這一點? UDP,TCP,多播,廣播?或程序應該像服務器和客戶端一樣行事?
最簡單的方法是使用UDP和簡單的廣播郵件都通過網絡進行。 稍微更高級的版本將僅使用廣播來發現網絡中的其他節點。
你還必須考慮處理掉節點而不通知網絡的其餘部分。
的spread toolkit可能是你想要的東西有點大材小用,但一個有趣的起點。
從書籍說明:
傳播是一個開源工具包,提供一種高性能的消息服務是彈性的,以跨本地和廣域網故障。將功能擴展爲分佈式應用程序的統一消息總線,並提供高度調優的應用程序級組播,組通信和點對點支持。傳播服務的範圍從可靠消息傳遞到具有傳遞保證的完全訂購消息。
傳播可以在需要高可靠性,高性能,和成員的各種子集之間魯棒的通信許多分佈式應用中使用。該工具包旨在封裝異步網絡的挑戰性方面,並支持構建可靠和可擴展的分佈式應用程序。
傳播由該用戶應用程序與,它運行即處理器組的一部分的每個計算機上的二進制守護程序,和各種公用和示範程序鏈接的庫。
一些通過傳播所提供的服務和優惠:
傳播做任何事情來解決NAT的問題? – 2008-12-20 22:40:23
蘋果iChat是您設想的產品的一個例子。它使用Bonjour(蘋果的零配置網絡協議)來識別LAN上的對等設備。然後,您可以與他們聊天或進行音頻/視頻聊天。
我不完全確定Bonjour是如何工作的,但我知道它使用多播。客戶端在局域網上「註冊」服務,並且Bonjour協議允許每臺主機爲特定服務提供一個主機目錄(全部沒有集中管理)。
如果有人來到這裏尋找工作解決方案,請檢查此,pidgin(多平臺)與bonjour/zeroconf。 http://www.blog.highub.com/linux/use-bonjour-to-chat-on-ubuntu/ – 2013-04-24 13:13:24