udp - 客户端到多个服务器

时间:2011-12-04 21:59:40

标签: c udp

我浏览了很多页面和论坛,但仍然不确定这一点。我正在编写一个项目,客户端读取数字的txt文件并将数字发送给服务器,服务器将进行一些计算并将结果发送回客户端。是否可以使用udp将客户端连接到多个服务器?如果是这样,解释会很好。我不认为我完全理解udp。我也是用c写的。从一个客户端连接到多个服务器的原因是因为我需要使用1,2,4和8个服务器运行客户端(将数字分配给每个服务器,直到没有剩余)并比较运行时间。任何快速帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

您可以将UDP用于具有相同套接字的多个服务器。可能最简单的方法是让客户端为每个连接分配会话ID,在它发送的每个数据报中包含会话ID,并让服务器在它发送的每个应答数据报中返回该会话ID。不要使用IP地址来区分数据包来自哪个服务器,因为服务器可能有多个IP地址,使其不可靠。

请记住,如果使用UDP,则不会获得TCP添加的任何内容。如果您需要其中任何一种,您需要自己完成。如果您需要全部或大部分,TCP是很多更好的选择。 TCP确实:

  • 会话建立

  • 会话拆解

  • 重传

  • 传输节奏

  • 退避并重试

  • 乱序检测和重新排列

  • 滑动窗户

  • 致谢

如果你需要这些东西并选择使用UDP,你需要自己做。