4

我正在将在线语音聊天添加到 Silverlight 应用程序。我一直在审查通过在线搜索和论坛找到的当前应用程序、服务和 SDK。我发现其中大多数实现了客户端-服务器 (C/S) 模型,我试图理解为什么该模型与对等 (PTP) 模型相比。对我来说,PTP 更可取,因为直接在对等点之间进行会更有效(更少的 IP 跃点,并且服务器计算机在此过程中无需处理)并且不需要服务器及其成本和依赖性。我发现如果 PTP 证明不足,一些产品提供从 PTP 切换到 C/S 的能力。

当我想得更多时,我可以看到如果对话中涉及两个以上的对等点,C/S 可能会更好,然后服务器(据说具有更多带宽)可以更好地将每个对等点的传出流量中继到多个其他同行。在 C/S 多对多语音聊天中,每个对等方的上行宽带(这就是瓶颈所在)只需承载每项语音流量一次,然后服务器将使用其优越的带宽将消息中继到多个其他同行。

但是,在一对一语音聊天的情况下,PTP 似乎是最好的。服务器不会减少两个对等点的带宽需求,只会增加不必要的开销、依赖性和成本。

一对一语音聊天中

  • 我在上面的任何事情上都错了吗?
  • 点对点是最好的吗?
  • 服务器会提供任何仅客户端程序无法提供的有价值的东西吗?
  • 还有什么我应该考虑的吗?

最后,您能推荐任何 Silverlight PTP 或 C/S 语音聊天产品吗?

在此先感谢您的任何信息。

4

2 回答 2

1

• 点对点是最好的吗?

不,如果您在 LAN 环境中工作,但在 Internet 上您需要 C/S 模型来处理客户端请求(客户端将在 NAT 之后)(服务器将在公共 IP 上),这很好。

• 服务器会提供任何仅客户端程序无法提供的有价值的东西吗?

是的,您无法与存在于 NAT 后面的客户端进行通信,并且如果他的 IP 不是静态的或未知的,因此最好的解决方案是 C/S 模型

你能推荐任何 Silverlight PTP 或 C/S 语音聊天产品吗?

是 检查这个项目:http ://www.socketcoder.com/ArticleFile.aspx?index=2&ArticleID=70作为 C/S 模型

于 2010-04-05T12:05:03.900 回答
0

好吧,我无法说出为什么某些工具使用 CS 模型而不是 PTP 模型的一般原因。

但是 PTP 需要一个或两个对等方打开一个端口进行侦听,以便其他对等方可以连接。据我所知,Silverlight 不支持侦听传入连接请求的能力。

因此,Silverlight CS 是唯一可用的解决方案。

于 2010-04-02T20:51:41.723 回答