TCP vs UDP,哪个更简单?
TCP vs UDP, which is easier?
我对编程很陌生,尤其是网络。我可以制作基本的应用程序等,但现在我在玩网络。对于想要掌握和体验一些知识的初学者来说,UDP 和 TCP 中的哪一个更容易在基础层面上实施和维护?
它们都使用相同的通用接口发送数据。您将使用某种形式的发送功能。详细信息将取决于您使用的语言。
UDP 更容易开始试验,因为每个 UDP 发送都会导致发送一个数据包(不是真的,但逻辑上就是它所代表的)。这将使您可以进行如下实验:
客户
- 从用户那里获取消息
- 打开到服务器的套接字
- 通过 UDP 发送消息
- 关闭套接字
服务器
- 打开监听套接字
- 等待消息
- 收到来自客户端的消息
- 打印消息
使用上述客户端和服务器对多个客户端进行试验会非常简单。
如果数据完整性很重要(数据顺序很重要。丢失数据是个问题),那么您将要使用 TCP。 TCP 没有 "messages" 的概念,所以如果离散 "messages" 是你想要的东西,那么你需要将它构建到你发送的数据中
在这里或那里丢了一条消息可以吗?消息乱序不是问题吗? UDP 应该可以正常工作。
您需要深入了解协议详细信息以确定 UDP 或 TCP 是否适合您的应用程序。有许多关于 TCP 和 UDP 的详细信息远远超出了我上面给出的(非常)简短的描述。您至少需要了解其中的一部分,才能有效地决定哪一个适合您的应用程序。
我对编程很陌生,尤其是网络。我可以制作基本的应用程序等,但现在我在玩网络。对于想要掌握和体验一些知识的初学者来说,UDP 和 TCP 中的哪一个更容易在基础层面上实施和维护?
它们都使用相同的通用接口发送数据。您将使用某种形式的发送功能。详细信息将取决于您使用的语言。
UDP 更容易开始试验,因为每个 UDP 发送都会导致发送一个数据包(不是真的,但逻辑上就是它所代表的)。这将使您可以进行如下实验:
客户
- 从用户那里获取消息
- 打开到服务器的套接字
- 通过 UDP 发送消息
- 关闭套接字
服务器
- 打开监听套接字
- 等待消息
- 收到来自客户端的消息
- 打印消息
使用上述客户端和服务器对多个客户端进行试验会非常简单。
如果数据完整性很重要(数据顺序很重要。丢失数据是个问题),那么您将要使用 TCP。 TCP 没有 "messages" 的概念,所以如果离散 "messages" 是你想要的东西,那么你需要将它构建到你发送的数据中
在这里或那里丢了一条消息可以吗?消息乱序不是问题吗? UDP 应该可以正常工作。
您需要深入了解协议详细信息以确定 UDP 或 TCP 是否适合您的应用程序。有许多关于 TCP 和 UDP 的详细信息远远超出了我上面给出的(非常)简短的描述。您至少需要了解其中的一部分,才能有效地决定哪一个适合您的应用程序。