全双工和半双工的区别

最近在面试一些候选人时,有些所谓电子背景的求职者,却连全双工和半双工都解释不清。

分享一些基本知识:

全双工和半双工的区别是:1、全双工允许数据在两个方向上同时传输;2、半双工允许数据在两个方向上传输,但是同一时间数据只能在一个方向上传输,实际上是切换的单工。

什么是单工,半双工,全双工

单工、半双工和全双工是电信计算机网络中的三种通信信道。这些通信信道可以提供信息传达的途径。通信信道可以是物理传输介质或通过多路复用介质的逻辑连接。

物理传输介质是指比如“导线”这类能够传播能量波的材料物质。逻辑连接通常指电路交换连接或分组模式虚拟电路连接比如无线电信通道。

单工模式一般用在只是向一个方向传输数据的场合。例如传统的计算机与打印机之间的通信是单工模式。只有计算机发送数据给打印机,通知打印机工作,而打印机不会给电脑回传数据。不过现在比较高级的打印机,也可以回传信息给到计算机做监控。

半双工虽然也是允许两个方向上都有数据传输,但是在同一时间,数据只能在一个方向上传输,其本质还是单工,不是是组合在一起,可以切换的单工。比较经典的例子就是对讲机:

张三:能不能听到我说话,over

李四:可以可以,over

打开百度APP看高清图片

两个人都能说,能听,但是同一时间只能一个说,一个听。

全双工是真正的

两个方向同时

都有数据传输。重点就在同时,同一时刻都可以收和发数据。比较经典的例子就是电话,两个人都可以同时说,也同时在听。

全双工、半双工的特点

全双工因为不需要进行方向的切换,因此,没有切换操作所产生的时间延迟,这对那些不能有时间延误的交互式应用(例如远程监测和控制系统)十分有利。这种方式要求通讯双方均有发送器和接收器,同时,

需要 2 根数据线传送数据信号

。(可能还需要控制线和状态线,以及地线)。

半双工使用

同一根传输线既作接收又作发送

,虽然数据可以在两个方向上传送,但通信双方不能同时收发数据,这样的传送方式就是半双工制。采用半双工方式时,通信系统每一端的发送器和接收器,通过收 / 发开关转接到通信线上,进行方向的切换,因此,会产生时间延迟。收 / 发开关实际上是由软件控制的电子开关。

写在最后

在实际应用场景中,到底是选择单工、半双工还是全双工,根据具体的情况而定:如果需要实行交互,同步控制,那么选择全双工;而如果不需要通信双方同时既发送又接收,或者是异步控制,那么就可以选择半双工;而像打印机这类的单向传送设备,单工就能胜任。

全双工和半双工的区别