【发布时间】:2015-09-01 17:13:57
【问题描述】:
我为我的在线游戏制作了一个服务器(python,twisted)。从 TCP 开始,然后使用 UDP 添加了不断更新(看到了很大的速度提升)。但是现在,我需要将每个 UDP 套接字客户端与每个 TCP 客户端连接起来。
我通过让每个客户端首先连接到 TCP 服务器并获得一个唯一 ID 来做到这一点。然后客户端将此 ID 发送到 UDP 服务器,同时连接它。然后我有一个 TCP 客户端的主列表(按唯一 ID 排序)。
我的目标是能够通过 TCP 和 UDP 向同一个客户端发送消息。
将 UDP 和 TCP 套接字链接到同一个客户端的最佳方法是什么?
我可以只获取一个新 TCP 客户端的 IP 地址,然后通过 UDP 向该 IP 发送数据吗? 或者客户端是否需要连接两次,一次用于 TCP,一次用于UDP(通过发送“连接”消息)?
最后,如果有了解 TCP/UDP 的人可以告诉我(我是新人!),通过 UDP 与 TCP(来自同一台机器)连接时,同一个客户端是否具有相同的 IP 地址?(我需要知道这一点,以保护我的服务器,但我不想意外阻止一些公平的用户)
【问题讨论】:
标签: python sockets networking tcp udp