Truth Asked: 2021-05-03 04:41:04 +0800 CST2021-05-03 04:41:04 +0800 CST 2021-05-03 04:41:04 +0800 CST 为什么要使用半双工? 772 我知道全双工和半双工是什么,但从各方面来说全双工都有更多的优势,那为什么要使用半双工呢,换句话说:在全双工连接中,带宽翻倍并且不会发生冲突,那么为什么会有半双工呢?完全双工,它并没有消失? networking router 4 个回答 Voted Best Answer Mokubai 2021-05-03T05:30:55+08:002021-05-03T05:30:55+08:00 全双工需要多于半双工。 通常,全双工是通过具有两个单独的数据路径来实现的。这意味着两组电线、一组独立的传输和接收电子设备以及一个具有输入和输出缓冲器以及电子设备的控制器。 半双工更简单,要求更低,只需要你有某种形式的协议来处理或避免冲突。如果所有的传输大部分都在一个方向上,那么全双工与半双工相比几乎没有什么好处,而且成本更高。此外,如果大多数传输都很小(鼠标、键盘等),那么全双工又是一种浪费。 USB1 和 USB2 是半双工的。它只有一个双向信号对。虽然我们已经将硬盘和 USB 记忆棒连接到它们,但硬盘是我们唯一一次接近饱和连接。USB 记忆棒通常具有 5-15MB/s 的传输速度,为其他设备留下了足够的带宽。直到最近,更典型的高速设备才变得更加普遍。 USB3 具有独立的 TX 和 RX 对,旨在实现更快的传输,因此集成全双工控制更有意义。我们将它用于多千兆位数据传输和显示以及其他设备。在更高的速度下,冲突会花费更多的停机时间,并且在需要重新传输事务的情况下需要越来越大的缓冲区,因此集成全双工更有意义。 一般来说,您需要问的问题不是“为什么不是每个人都使用全双工?” 但是“我是否需要全双工以及额外的设计成本、额外的电子设备、带有更多电线的电缆等等?” manassehkatz-Moving 2 Codidact 2021-05-03T18:49:25+08:002021-05-03T18:49:25+08:00 除了一些网络连接(例如,路由器到互联网、服务器到本地网络)之外,大多数使用——无论是旧的串行还是并行、USB、以太网或几乎任何其他东西,无论是一直还是大部分时间都是一个方向。在低速和高速(相对)速度连接中的一些示例: 键盘、鼠标、其他用户输入 - 几乎完全从设备到主机,在另一个方向几乎没有(例如,一些配置、设置键盘灯) 相机 - 静态或视频 - 几乎所有主机设备 打印机 - 几乎所有主机到设备 扫描仪 - 几乎所有主机设备 多功能打印机/扫描仪 - 在几乎所有情况下,任何时候都只有一个功能真正在进行 - 打印(主机到设备)或扫描(设备到主机) 网络——除了一些例外,大多数普通用户计算机的网络使用在任何时间点大多是在一个方向上——例如,将视频从路由器/互联网传输到计算机,将文件从计算机上传到路由器/互联网。存在一些重叠,特别是如果大量使用共享文件或任何类型的服务器(Web 服务器、文件服务器等)并且这些情况真正受益于全双工连接。 现在有一些更加对称的常规用法 - Zoom 和其他视频会议,既有视频流输出又有视频流输入。但典型用法是每个方向几兆比特,甚至 100 兆. 半双工连接应该能够处理并留出足够的空间。 最终结果:出于竞争原因,每一分钱都在小东西(USB 设备)上,每一美元都在大东西(计算机)上,制造商将尽可能使用半双工连接,前提是它对可用性没有明显影响。 CSM 2021-05-05T00:45:12+08:002021-05-05T00:45:12+08:00 一些协议本质上是发送和等待的,其中包括 USB 2(及以下)、Modbus 和 1-wire 协议。在这些协议中,有一个控制器和多个设备。控制器询问设备,并等待回复。在设备回复(或超时)之前,控制器无法询问其他设备。使用这些协议,拥有不同的回复路径几乎没有优势。 John Meacham 2021-05-05T07:25:00+08:002021-05-05T07:25:00+08:00 半双工几乎总是更高效、更快。 对于带宽有限的任何数据通道,声明“全双工”并不会改变这一点。您的 DSL 线路必须将其带宽的不同部分分配给上传和下载。Wifi 信号在开始干扰之前只能传输这么多。通常,如果您为上传分配更多带宽,则下载的带宽更少,反之亦然。几乎所有媒体都是如此。 您可以将两条线路由到某个地方以实现全双工,但是每个方向只使用一半的全部带宽,因为如果一侧更健谈,您可以让两条线传输相同的方向。 除非您期望在两个方向上始终具有完全相同的恒定数据量,否则全双工没有多大意义。将您的全部带宽用于在给定时间需要讲话的人更有意义,这样他们就可以快速完成他们必须说的话并让其他人讲话。如果您还记得调制解调器和 V.92 标准发生的速度跳跃,那是因为能够从全双工切换到允许这种情况发生的半双工模式。因此它可以将全部带宽用于下载,而不是不断地保留一些用于上传。半双工使事情变得更快。 此外,实现多点协议全双工要困难得多。当您有十几个设备连接到相同的 I2C、CAN-BUS、RS485 或其他线路时,那么谁是全双工连接?每个人都听到每个人在说什么。 有时全双工在有限的情况下确实有意义,有时您实际上拥有额外的带宽,因此可以在未使用的通道上浪费一些带宽,因为吞吐量的提高是值得的,或者它所用的特性使双工更自然。我想到了短距离大容量存储接口,例如 SATA。您预计双向都有大量流量,而闲置铜线的成本并不是什么大问题,因为它只需要走几英尺。
全双工需要多于半双工。
通常,全双工是通过具有两个单独的数据路径来实现的。这意味着两组电线、一组独立的传输和接收电子设备以及一个具有输入和输出缓冲器以及电子设备的控制器。
半双工更简单,要求更低,只需要你有某种形式的协议来处理或避免冲突。如果所有的传输大部分都在一个方向上,那么全双工与半双工相比几乎没有什么好处,而且成本更高。此外,如果大多数传输都很小(鼠标、键盘等),那么全双工又是一种浪费。
USB1 和 USB2 是半双工的。它只有一个双向信号对。虽然我们已经将硬盘和 USB 记忆棒连接到它们,但硬盘是我们唯一一次接近饱和连接。USB 记忆棒通常具有 5-15MB/s 的传输速度,为其他设备留下了足够的带宽。直到最近,更典型的高速设备才变得更加普遍。
USB3 具有独立的 TX 和 RX 对,旨在实现更快的传输,因此集成全双工控制更有意义。我们将它用于多千兆位数据传输和显示以及其他设备。在更高的速度下,冲突会花费更多的停机时间,并且在需要重新传输事务的情况下需要越来越大的缓冲区,因此集成全双工更有意义。
一般来说,您需要问的问题不是“为什么不是每个人都使用全双工?” 但是“我是否需要全双工以及额外的设计成本、额外的电子设备、带有更多电线的电缆等等?”
除了一些网络连接(例如,路由器到互联网、服务器到本地网络)之外,大多数使用——无论是旧的串行还是并行、USB、以太网或几乎任何其他东西,无论是一直还是大部分时间都是一个方向。在低速和高速(相对)速度连接中的一些示例:
现在有一些更加对称的常规用法 - Zoom 和其他视频会议,既有视频流输出又有视频流输入。但典型用法是每个方向几兆比特,甚至 100 兆. 半双工连接应该能够处理并留出足够的空间。
最终结果:出于竞争原因,每一分钱都在小东西(USB 设备)上,每一美元都在大东西(计算机)上,制造商将尽可能使用半双工连接,前提是它对可用性没有明显影响。
一些协议本质上是发送和等待的,其中包括 USB 2(及以下)、Modbus 和 1-wire 协议。在这些协议中,有一个控制器和多个设备。控制器询问设备,并等待回复。在设备回复(或超时)之前,控制器无法询问其他设备。使用这些协议,拥有不同的回复路径几乎没有优势。
半双工几乎总是更高效、更快。
对于带宽有限的任何数据通道,声明“全双工”并不会改变这一点。您的 DSL 线路必须将其带宽的不同部分分配给上传和下载。Wifi 信号在开始干扰之前只能传输这么多。通常,如果您为上传分配更多带宽,则下载的带宽更少,反之亦然。几乎所有媒体都是如此。
您可以将两条线路由到某个地方以实现全双工,但是每个方向只使用一半的全部带宽,因为如果一侧更健谈,您可以让两条线传输相同的方向。
除非您期望在两个方向上始终具有完全相同的恒定数据量,否则全双工没有多大意义。将您的全部带宽用于在给定时间需要讲话的人更有意义,这样他们就可以快速完成他们必须说的话并让其他人讲话。如果您还记得调制解调器和 V.92 标准发生的速度跳跃,那是因为能够从全双工切换到允许这种情况发生的半双工模式。因此它可以将全部带宽用于下载,而不是不断地保留一些用于上传。半双工使事情变得更快。
此外,实现多点协议全双工要困难得多。当您有十几个设备连接到相同的 I2C、CAN-BUS、RS485 或其他线路时,那么谁是全双工连接?每个人都听到每个人在说什么。
有时全双工在有限的情况下确实有意义,有时您实际上拥有额外的带宽,因此可以在未使用的通道上浪费一些带宽,因为吞吐量的提高是值得的,或者它所用的特性使双工更自然。我想到了短距离大容量存储接口,例如 SATA。您预计双向都有大量流量,而闲置铜线的成本并不是什么大问题,因为它只需要走几英尺。