无服务器P2P UDP聊天



Boost Asio中无服务器P2P UDP聊天最简单直接的方法是什么?聊天将在互联网上运行。有现成的UDP示例,但它们都维护客户端-服务器方法!

我假设你所说的无服务器是指没有中央控制服务器的P2P网络

在我看来,你的问题与boost-asio关系不大。Asio是一个跨平台的网络库。你似乎问的更多是网络工程类型的问题,而asio只是你可以用来实现的工具之一。

示例是客户机-服务器,因为示例应用程序可能属于客户机-服务器体系结构。然而,无论客户端-服务器还是P2P应用程序,用于发送和接收消息的套接字代码(或asio用法)看起来都是一样的,也就是说,你发送消息到一个地址,你在一个指定的端口上接收消息。差异将在协议层出现,但这与asio本身无关。

以下内容你可能感兴趣,也可能不感兴趣:没有简单的方式IMO:位于防火墙和NAT后面的用户意味着你需要使用诸如STUN, TURN和ICE之类的技术来解析地址,或者在最坏的情况下中继数据。所有这些设计都需要一个服务器

最新更新