networking - TCP可以通过UDP实现吗?

标签 networking tcp udp

我有一个奇怪的想法。据我所知,我听说有一种软件使用 UDP 来传输文件,从而减少了 TCP 数据包中的开销。

如果我的应用程序需要 TCP,并且我的 LAN 已设置软件以与海岸另一侧的另一个数据中心进行通信,并在其端设置了软件。是否可以通过 UDP 发送实际数据而不是在两端模拟 TCP?

有没有人对此类项目有任何想法或信息?

最佳答案

如果您询问是否可以将 UDP 用作 Layer 2 ,那么答案是肯定的,有点。有多种协议(protocol)允许您使用 UDP 传输创建到另一个网络的隧道,例如 L2TP甚至 IPsec (with NAT traversal) .您也可以在 application layer .

如果您问 TCP 是否可以在 UDP 中实现,答案是否定的。一、TCP packetsUDP packets格式不兼容。其次,TCP 和 UDP 具有不同的协议(protocol)号(见 IP header ),这意味着发往 UDP 端口的 TCP 流量不会传递到正确的上层协议(protocol)。

关于networking - TCP可以通过UDP实现吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10680592/

相关文章:

linux - SNMP 管理树莓派

python - 通过 UDP 数据包发送字节,无需进一步转换

c# - 为什么我不能得到所有的 UDP 数据包?

android - 无法连接到 tcp :5037: cannot connect to 127. 0.0.1 :5037: No connection could be made because the target machine actively refused it. (10061)

java - 如何向 x 次 TCP 客户端请求 TCP 服务器数据?

没有协议(protocol)的 C# SuperSocket

c - socket()中 "protocol"为SOCK_DGRAM或SOCK_STREAM时是否需要指定 "type"?

Java nio套接字通信位于一台机器或两台机器上的两个进程

c# - NetServerEnum 从哪里获取机器列表?

套接字和多个 IP 地址