【计算机网络】异步传输与同步传输

0.前言

  • 在网络通信过程中,通信双方要交换数据,需要高度的协同工作。为了正确的解释信号,接收方必须确切地知道信号应当何时接收和处理,因此定时是至关重要的。
  • 在计算机网络中,定时的因素称为位同步。同步是要接收方按照发送方发送的每个位的起止时刻和速率来接收数据,否则会产生误差。通常可以采用同步或异步的传输方式对位进行同步处理。

下面介绍异步传输和同步传输

1. 异步传输(Asynchronous Transmission)

1.1 定义

  • 异步传输将比特分成小组进行传送,小组可以是8位的1个字符或更长。发送方可以在任何时刻发送这些比特组,而接收方从不知道它们会在什么时候到达。
  • 例子:
    计算机键盘与主机的通信。按下一个字母键、数字键或特殊字符键,就发送一个8比特位的ASCII代码。键盘可以在任何时刻发送代码,这取决于用户的输入速度,内部的硬件必须能够在任何时刻接收一个键入的字符。

1.2 异步传输要解决的问题

1.2.1 异步传输的问题

  • 异步传输存在一个潜在的问题,即接收方并不知道数据会在什么时候到达。在它检测到数据并做出响应之前,第一个比特已经过去了

1.2.2 解决问题的方法

  • 每次异步传输的信息都以一个起始位开头,它通知接收方数据已经到达了,这就给了接收方响应、接收和缓存数据比特的时间
    在传输结束时,一个停止位表示该次传输信息的终止

  • 具体做法:
    按照惯例,空闲(没有传送数据)的线路实际携带着一个代表二进制1的信号,异步传输的开始位使信号变成0,其他的比特位使信号随传输的数据信息而变化。最后,停止位使信号重新变回1,该信号一直保持到下一个开始位到达。例如在键盘上数字“1”,按照8比特位的扩展ASCII编码,将发送“00110001”,同时需要在8比特位的前面加一个起始位,后面一个停止位。

1.3 异步传输的优缺点

1.3.1 异步传输的优点

  • 异步传输的实现比较容易,由于每个信息都加上了“同步”信息,因此计时的漂移不会产生大的积累。
  • 通信设备简单、便宜,但传输效率较低(因为开始位和停止位的开销所占比例较大)

1.3.2 异步传输的缺点

  • 产生了较多的开销。在上面的例子,每8个比特要多传送两个比特,总的传输负载就增加25%。对于数据传输量很小的低速设备来说问题不大,但对于那些数据传输量很大的高速设备来说,25%的负载增值就相当严重了。因此,异步传输常用于低速设备。

2. 同步传输(Synchronous Transmission)

2.1 定义

  • 同步传输的传送的是数据帧,或简称为帧。

2.2 数据帧的简单介绍

2.2.1 数据帧的首部

  • 数据帧的第一部分包含一组同步字符,它是一个独特的比特组合,类似于前面提到的起始位,用于通知接收方一个帧已经到达,它同时还能确保接收方的采样速度和比特的到达速度保持一致,使收发双方进入同步

2.2.2 数据帧的尾部

  • 帧的最后一部分是一个帧结束标记。与同步字符一样,它也是一个独特的比特串,类似于前面提到的停止位,用于表示在下一帧开始之前没有别的即将到达的数据了

2.3 同步传输的优缺点

2.3.1 同步传输的优点

  • 同步传输通常要比异步传输快速得多。接收方不必对每个字符进行开始和停止的操作。一旦检测到帧同步字符,它就在接下来的数据到达时接收它们。
  • 同步传输的开销也比较少。例如,一个典型的帧可能有500字节(即4000比特)的数据,其中可能只包含100比特的开销。这时,增加的比特位使传输的比特总数增加2.5%,这与异步传输中25 %的增值要小得多。随着数据帧中实际数据比特位的增加,开销比特所占的百分比将相应地减少。

2.3.2 同步传输的缺点

  • 数据比特位越长,缓存数据所需要的缓冲区也越大,这就限制了一个帧的大小。
  • 帧越大,它占据传输媒体的连续时间也越长。在极端的情况下,这将导致其他用户等得太久。

3.同步与异步传输的区别

3.1 传输的单位

  • 异步传输的单位是字符或者帧
  • 同步传输的单位是帧

3.2 同步方式

  • 异步传输通过字符起止的开始和停止码抓住再同步的机会,而同步传输则是从数据中抽取同步信息
  • 同步解释:
           同步是要接收方按照发送方发送的每个位的起止时刻和速率来接收数据,否则会产生误差

3.3 对时序的要求

  • 异步传输对时序的要求较低,同步传输往往通过特定的时钟线路协调时序。
  • 时序解析:
           计算机时序是指CPU执行各种操作时引脚信号随时钟变化的顺序和时间长短的安排

3.4 时钟要求

3.4.1 同步传输

  • 同步传输方式中发送方和接收方的时钟是统一的、字符与字符间的传输是同步无间隔的

3.4.2 异步传输

  • 异步传输方式并不要求发送方和接收方的时钟完全一样,字符与字符间的传输是异步的

以上为楼主对网上的资料的整理,若出现错误敬请指出,谢谢!
参考文章:
https://baike.baidu.com/item/%E5%BC%82%E6%AD%A5%E4%BC%A0%E8%BE%93/2007138?fr=aladdin
https://baike.baidu.com/item/%E5%90%8C%E6%AD%A5%E4%BC%A0%E8%BE%93/2007281?fr=aladdin#3
https://www.cnblogs.com/Eleanore/archive/2012/01/06/2314684.html

  • 29
    点赞
  • 199
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
### 回答1: libusb是一个用户态的通用USB驱动程序库,用于在操作系统中进行USB设备的访问和控制。异步传输是指在进行USB数据传输时,不需要等待传输完成再进行下一步操作,而是可以同时进行其他操作。 对于摄像头来说,使用libusb进行异步传输可以带来一些好处。首先,异步传输可以提高摄像头的数据传输效率。传统的同步传输会等待每一帧数据传输完成后再进行下一帧的传输,而异步传输可以在当前传输进行的同时开始下一帧的传输,极大地提高了数据传输速度和帧率。 其次,异步传输还可以降低摄像头与计算机之间的延迟。由于异步传输不需要等待传输完成才能进行下一步操作,因此可以更早地对接收到的数据进行处理和分析,从而减少处理延迟。 另外,使用libusb进行异步传输还可以提高对摄像头的控制灵活性。通过异步传输,可以同时进行数据传输和控制命令的发送,例如对摄像头进行设置或调整参数。这样可以实现更加复杂的场景和功能,例如实时调节摄像头的焦距、曝光等参数。 总之,libusb的异步传输可以提高摄像头的数据传输效率和控制灵活性,并降低延迟,对于需要高效地传输和控制摄像头数据的应用场景来说,是一个非常有用的工具。 ### 回答2: libusb是一个开源的跨平台的USB访问库,它允许开发人员通过USB接口与USB设备进行通信。摄像头通常通过USB接口与计算机连接,因此可以使用libusb来异步传输摄像头数据。 异步传输意味着在进行数据传输时,计算机可以同时执行其他任务,而不必等待传输完成。在摄像头应用中,异步传输能够提高数据传输的效率和响应速度,使得图像和视频流可以更加流畅地展示。 当使用libusb进行异步传输时,首先需要打开摄像头设备并初始化libusb库。然后,可以使用libusb提供的接口函数将传输任务添加到传输队列中,并指定回调函数来处理传输完成后的数据。 在传输过程中,libusb会负责与摄像头设备进行通信,并在数据传输完成后调用回调函数来处理接收到的数据。开发人员可以在回调函数中对数据进行处理,比如解码、显示、保存等操作。 使用libusb进行摄像头数据的异步传输可以提高系统的性能和响应速度,特别适用于需要实时展示摄像头图像或者进行实时图像处理的应用。另外,libusb提供了丰富的接口函数和示例代码,使得开发人员可以轻松实现对摄像头数据的异步传输,并根据自身需求进行二次开发。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值