【问题标题】:What approach do I need to take (see explanation)? TCP or UDP我需要采取什么方法(见解释)? TCP 或 UDP
【发布时间】:2014-04-03 20:30:24
【问题描述】:

我正在考虑创建一个处理音频/视频/聊天通信的特定应用。 现在矛盾的是,我需要确定要传输的数据(在服务器端到达其他任何地方之前)。除了这个问题之外,我还需要服务器在尝试发送消息时了解客户端的连接性。

那么我是否要在服务器和客户端之间为消息以及需要不断更新的非用户控制数据维护 TCP 连接,并使用 UDP 进行视频/音频通信和下载(有数据丢失/损坏的风险)?

提前致谢。

【问题讨论】:

    标签: .net tcp udp


    【解决方案1】:

    您所描述的是一种非常常见的方法。你可以有一个基于 TCP 的“控制”通道,它处理需要 TCP 特性(重传、数据排序等)的数据,以及一个基于 UDP 的“数据”通道,它可能是有损的。

    另一种方法是在 UDP 通道上定义您自己的协议来实现重新传输等,但使用控制通道可能最符合您的利益。

    【讨论】:

    • 感谢您的回复,但您有任何提示或提示吗?这几乎就是我发帖的原因。
    【解决方案2】:

    首先,我建议:仅使用TCP(有两个 TCP 连接;就像 FTP 使用了 30 年一样)并将 TCP 缓冲区和帧大小调整为适合您的最佳值。如果您(稍后)想要获得更好的性能,您仍然可以切换到UDP(使用您自己的专用协议),并使用有效的 TCP 变体作为备用替代方案,以防有人/某事无法使用 UDP。

    【讨论】:

      猜你喜欢
      • 2015-04-30
      • 1970-01-01
      • 2013-04-10
      • 1970-01-01
      • 2010-12-11
      • 1970-01-01
      • 1970-01-01
      • 2016-02-09
      • 1970-01-01
      相关资源
      最近更新 更多