如果以太网是半双工的,那么 TCP 是如何双工的?

网络工程 以太网 通讯协议 双工
2021-07-15 21:15:20

如果我理解正确的话,TCP 是一种全双工双向协议。但是,以太网是半双工的。

这是否意味着即使 TCP 支持全双工,它在以太网上也只能以半双工模式运行?

谢谢!

4个回答

实际上,TCP 和以太网是 OSI 模型不同层的示例。TCP 工作在第 4 层(传输层),用于在网络上的节点之间建立连接。TCP 确实是双向的,有时也称为面向连接。

以太网是第 2 层(数据链路层)协议,它规定了如何在物理层(第 1 层)中解释信号。第 2 层有许多子层,但总的来说,以太网是最受欢迎的。

如果以太网以半双工方式运行,则节点不能同时发送和接收。但这并不意味着节点不能使用 TCP。TCP 仍然运行在以太网之上,此外,还在 IP(第 3 层)之上运行以创建 TCP 需要进行通信的双向连接。因此,当谈到以太网和 TCP 时,它们作为不同的层运行。

即使以太网网卡不能同时接收和发送,TCP 仍然进行双向连接。

史蒂文斯的经典著作是有关其工作原理的一个很好的参考:http : //books.google.com/books/about/TCP_IP_Illustrated_Volume_1.html?id=a23OAn5i8R0C

以太网是一种半双工协议,然而,它是在大约 30 年前的 1980 年代创建的。此时,以太网段在使用集线器的设备之间共享,并且所有 PC 共享相同的冲突域。因此,他们不得不轮流发送数据,并倾听以确保没有人同时进行传输。

在普通/现代网络中,冲突域仅限于每个交换机端口一个设备。所以我们没有这个冲突问题。此后,IEEE 802.3 标准被引入,支持全双工接口和高于原始 10Base-T 标准的各种速度。

对我来说,以下类比有效:

想想你和你的朋友通过发送信件相互交流。您和您的朋友以全双工方式发送/接收,但假设邮局以半双工方式工作。

您和您的朋友的行为类似于 TCP(全双工),但信件(邮局)的投递是半双工的。

以太网支持半双工和全双工模式。请看这里

也请在这里查看https://stackoverflow.com/questions/28494850/is-tcp-bidirectional-or-full-duplex它解决了同样的问题。