数据链路层协议:异步与同步通信详解
5 浏览量
更新于2024-06-29
收藏 2.82MB PPTX 举报
"数据链路层协议也称链路通信规程分类异步协议-同步协议"
在计算机网络中,数据链路层是OSI模型的第二层,负责在两个相邻节点间建立物理连接,并通过该连接进行可靠的数据传输。数据链路层协议包括了多种通信规程,主要分为异步协议和同步协议。
异步协议,如描述中提到的起-止式协议,是一种相对宽松的时钟同步方式。在这种协议中,每一个字符独立发送,字符之间的间隔可以任意。每个字符由以下几个部分组成:起始位(1位),数据位(通常为5到8位,最低位在前),奇偶检验位(可选,用于简单的错误检测),以及停止位(1、1.5或2位,表示字符的结束)。异步协议的通信效率相对较低,因为额外的起始位和停止位占据了数据传输的一部分,例如,7位数据位、1位校验位、1位停止位的配置下,数据传输效率仅为70%。尽管如此,异步协议的优点在于对收发双方的时钟同步要求不高,设备简单且成本较低,适用于低速通信场景。
同步协议,例如面向字符的同步协议,如IBM的二进制同步通信规程(BSC),则要求字符以固定时钟频率传输,确保字符间的同步。BSC协议采用了一种特殊的同步字符(如SYN)来确保数据流的同步。然而,这种协议有一些缺点,例如它只能处理特定字符集的数据,控制信息也受限于特定的控制字符,这可能导致兼容性问题。此外,BSC协议对数据部分进行差错控制,但不处理控制部分的错误,可能会降低可靠性。它采用停等协议,即每次只发送一个数据帧并等待确认,这样虽然需要的缓冲区小,但通信线路利用率不高,不易扩展。尽管存在这些缺点,BSC协议因其简单的机制在点对点和点对多点通信中仍然有应用,特别是在面向终端的网络系统中。
在BSC数据帧的结构中,包含了数据、同步字符、标题(可选,包含发送者和接收者的地址以及帧编号)、控制字符(如SOH、STX、ETX、BCC等,用于帧的标识和校验)以及可能的附加信息。例如,ENQ用于请求响应,SYN用于同步,ACK表示确认接收到帧,NAK表示接收错误,EOT表示数据传输完毕。这些控制字符构成了BSC协议通信过程中的交互基础。
数据链路层协议的选择取决于具体的应用需求,如速度、成本、可靠性和兼容性等因素。异步协议适合低速、简单设备的环境,而同步协议如BSC则适用于需要较高数据传输效率和一定可靠性的通信场景。
2020-12-20 上传
2021-10-09 上传
2021-09-25 上传
2021-10-11 上传
2021-10-20 上传
2021-10-05 上传
2021-09-29 上传
智慧安全方案
- 粉丝: 3818
- 资源: 59万+
最新资源
- Raspberry Pi OpenCL驱动程序安装与QEMU仿真指南
- Apache RocketMQ Go客户端:全面支持与消息处理功能
- WStage平台:无线传感器网络阶段数据交互技术
- 基于Java SpringBoot和微信小程序的ssm智能仓储系统开发
- CorrectMe项目:自动更正与建议API的开发与应用
- IdeaBiz请求处理程序JAVA:自动化API调用与令牌管理
- 墨西哥面包店研讨会:介绍关键业绩指标(KPI)与评估标准
- 2014年Android音乐播放器源码学习分享
- CleverRecyclerView扩展库:滑动效果与特性增强
- 利用Python和SURF特征识别斑点猫图像
- Wurpr开源PHP MySQL包装器:安全易用且高效
- Scratch少儿编程:Kanon妹系闹钟音效素材包
- 食品分享社交应用的开发教程与功能介绍
- Cookies by lfj.io: 浏览数据智能管理与同步工具
- 掌握SSH框架与SpringMVC Hibernate集成教程
- C语言实现FFT算法及互相关性能优化指南