虽然交换机对网络协议和用户应用程序是透明的,但它们在网络中转发以太网帧时可以以不同模式运行,会同时产生正面和负面影响。 交换机的一项最基本设置就是每个端口连接到每台主机设备的双工设置。 必须配置交换机的端口以匹配介质类型的双工设置。 用于以太网络通信的双工设置有两种类型:半双工和全双工。

半双工

半双工通信依赖单向数据流。在单向数据流中,数据的发送和接收不会同时执行。 这种形式类似于步话机或对讲机的工作方式,因为任何时候只能有一个人说话。 如果一个人在另一个人准备开口时说话,则会发生冲突。 因此,半双工通信实施 CSMA/CD 以帮助降低冲突的可能性,并在冲突发生时检测到冲突。 因为数据每次只能沿一个方向流动,半双工通信存在由于持续等待而引起的性能问题。 半双工连接常见于一些老式硬件(如集线器)。 当多个节点连接到集线器,共享集线器与交换机端口的连接时,这些节点必须以半双工模式工作,因为终端计算机必须能够检测冲突。 如果网卡无法配置为全双工工作,则节点可采用半双工模式工作。 在此情况下,交换机上的端口默认也为半双工模式。 由于存在这些限制,因此在新型硬件中全双工通信已经替代了半双工。

全双工

在全双工通信中,数据流为双向,因此可以同时发送数据和接收数据。 双向支持减少了传输间的等待时间,从而提高了性能。 目前市场上销售的大部分以太网网卡、快速以太网网卡和千兆以太网网卡都提供了全双工功能。 在全双工模式下,冲突检测电路处于禁用。 两个相连的端点由于使用了网络电缆中两条不同的电路,因此它们发送的帧不可能发生冲突。 每一全双工连接仅使用一个端口。 为实现全双工连接,交换机必须能支持全双工;或者如果两个节点之间采用直接连接,则两个节点都必须支持全双工。 当节点通过全双工网卡直接连接到一个交换机端口,而无需与其它设备共享端口时,交换机端口应配置为全双工模式。

图中显示了现代网络设备中提供的两种双工设置。

Cisco Catalyst 交换机支持三种双工设置:

对于快速以太网和 10/100/1000 端口,默认为 auto。 对于 100BASE-FX 端口,默认为 full。 当 10/100/1000 端口设置为 10Mb/s 或 100Mb/s 时,它们可在半双工或全双工模式下工作,而当设置为 1,000Mb/s 时,它们只能以全双工模式工作。