快速提问:大多数聊天应用程序(即AIM,Skype,Oovoo)是否使用点对点UDP交换机与其他用户交谈或与服务器建立回应TCP连接?或者介于两者之间?
答案 0 :(得分:0)
当您需要小数据片段(例如短信)时,不需要使用P2P。数据可以从client1传输到服务器,从服务器传回客户端。
当您需要在客户端之间快速传输数据时,在VoIP(IP语音)或文件传输等情况下,您将使用P2P。
答案 1 :(得分:0)
一个非常标准的IM协议是XMPP。我知道Google Talk使用它,以及聊天中的其他一些大牌。
答案 2 :(得分:0)
传统上,大多数应用程序使用类似TURN的解决方案(即,通过服务器进行通信)来克服NAT遍历问题。由于聊天不会消耗太多带宽,因此服务器可以支持数千次通信。
但是现在P2P已经发展并且现在很好地理解了NAT遍历问题,一些人使用直接UDP通信,前提是用户的NAT允许这种情况(即类似STUN的通信)。他们仍然需要一个中央服务器来打洞。当需要传输大量数据时,直接通信也很有用。
我认为可以公平地说,大多数现代框架都使用两者的组合。