hdlc协议

HDLC协议

扶醉桌前 提交于 2020-03-19 14:09:49
HDLC简介 HDLC(High-level Data Link Control,高级数据链路控制)是一种 面向比特的链路层协议 ,其最大特点是对任何一种比特流,均可以实现 透明传输 。 HDLC协议只支持 点到点链路,不支持点到多点 。 HDLC 不支持IP地址协商,不支持认证 。协议内部 通过Keepalive报文来检测链路状态 。 HDLC协议只能封装在 同步链路上 ,如果是同异步串口的话,只有当同异步串口工作在同步模式下才可以应用HDLC协议。目前应用的接口为:工作在同步模式下的Serial接口和POS接口等。 HDLC的帧类型和帧格式 HDLC有信息帧(I帧)、监控帧(S帧)和无编号帧(U帧)3种不同类型的帧。 信息帧用于传送有效信息或数据,通常简称为 I帧 。 监控帧用于差错控制和流量控制,通常称为 S帧 。 无编号帧用于提供对链路的建立、拆除以及多种控制功能,简称 U帧 。 HDLC帧由标志、地址、控制、信息和帧校验序列等字段组成。 标志字段为0111110,标志一个HDLC帧的开始和结束,所有的帧必须以F开头,并以F结束;在邻近两帧之间的F,即作为前面帧的结束,又作为后续帧的开头; 地址字段是8比特,用于标识接收或发送HDLC帧的地址; 控制字段是8比特,用来实现HDLC协议的各种控制信息,并标识是否是数据; 信息字段可以是任意的二进制比特串,长度未作限定

网络原理考点之HDLC协议

最后都变了- 提交于 2020-03-16 19:51:31
对于连续两年考到的知识点,得重视起来。虽然不明白为什么,这个知识点有什么用,但总归是有要考的理由。 但大概是有关于网络分析问题的思考方法吧,所以比较重要,不见得些技术是否已经过时,关键是解决思路。 如题:2019年4月 又如:2019年10月 虽然,此知识点只有一分的分值,但相对于简答题的不确定性,前面的选择和填空的分值,还是挺重要的,能拿就拿。 1、HDLC是什么? HDLC全称为高级链路控制。是一个在同步网上传输 数据、面向比特的数据链路层协议。 2、考点是考HDLC的透明传输,如何实现的呢?(以后再遇到一定要脑补出来) 每个帧前、后均有一标志码01111110,用作帧的起始、终止指示及帧的同步。标志码不允许在帧的内部出现,以免引起歧义。 采用“0比特插入法”来解决透明传输问题,步骤如下: 1、该法在发送端在没有加上标志字段时,监视除标志码以外的所有字段,当发现有连续 5 个“1”出现时,便在其后添插一个“0”,然后继续发后继的比特流。 2、在接收端,先找到F字段,同样监除起始标志码以外的所有字段,当连续发现 5 个“1”出现后,若其后一个比特“0”则自动删除它,以恢复原来的比特流; 注: 透明传输 透明传输是指数据直接通过系统中的互连功能模式而不进行 RLP 纠错,如果进行了RLP纠错即为非透明传输。 就是所谓的透明传输,不管传的是什么,所采用的设备只是起一个通道作用

HDLC

妖精的绣舞 提交于 2020-02-05 13:40:33
高级数据链路控制 (High-Level Data Link Control或简称HDLC),是一个在同步网上传输 数据、面向比特的 数据链路层 协议,它是由 国际标准化组织 (ISO)根据IBM公司的SDLC(Synchronous Data Link Control)协议扩展开发而成的。 特点 1. HDLC是面向比特的数据链路控制协议的典型代表,该协议不依赖于任何一种字符编码集; 2. 数据报文可透明传输,用于实现透明传输的“0比特插入法”易于硬件实现; 3. 全双工通信,有较高的 数据链路 传输效率; 4. 所有帧采用CRC检验,对信息帧进行顺序编号,可防止漏收或重发,传输可靠性高; 5. 传输控制功能与处理功能分离,具有较大灵活性。 高级数据链路规程(HDLC),是位于数据链路层的协议之一,其工作方式可以支持半双工、全双工传送,支持点到点、多点结构,支持交换型、非交换型信道,它的主要特点包括以下几个方面: 1. 透明性:为实现透明传输,HDLC定义了一个特殊标志,这个标志是一个8位的比特序列,(01111110),用它来指明帧的开始和结束。同时,为保证标志的唯一性,在数据传送时,除标志位外,采取了0比特插入法,以区别标志符,即发送端监视比特流,每当发送了连续5个1时,就插入一个附加的0,接收站同样按此方法监视接收的比特流,当发现连续5个1时而第六位为0时,即删除这位0。

2016年北邮机试

穿精又带淫゛_ 提交于 2020-02-04 04:32:25
2.寻找变化前01序列 问题描述: 给你一个01序列,HDLC协议处理的话,如果出现连续的5个1会补1个0。例如1111110,会变成11111010。 现在给你一个经过HDLC处理后的01序列,你需要找到HDLC处理之前的01序列。 例如给你11111010 你需要输出1111110 输入: 输入正整数N,表示N例测试。接着输入N组数据,每组输入经过HDLC处理过的01序列(长度小于100)。 2 11111010 1111100 输出: 对每组输入数据,输出HDLC处理前的01序列。 1111110 111110 算法思想: 此题实际是奇偶校验逆向实现,玩的还是字符串的套路。 算法实现: #include<iostream> using namespace std; int main() { int n; cin>>n; while(n>0) { string a; cin>>a; for(int i=0;i<a.length()-4;i++) { if(a.substr(i,5)=="11111") { cout<<a.substr(0,i+5)+a.substr(i+6,a.length())<<endl; } } n--; } return 0; } 来源: CSDN 作者: 一字清华 链接: https://blog.csdn.net/qq_42126563

HDLC

。_饼干妹妹 提交于 2019-12-05 15:35:07
高级数据链路控制 (High-Level Data Link Control或简称HDLC),是一个在同步网上传输 数据、面向比特的 数据链路层 协议,它是由 国际标准化组织 (ISO)根据IBM公司的SDLC(Synchronous Data Link Control)协议扩展开发而成的。 特点 1. HDLC是面向比特的数据链路控制协议的典型代表,该协议不依赖于任何一种字符编码集; 2. 数据报文可透明传输,用于实现透明传输的“0比特插入法”易于硬件实现; 3. 全双工通信,有较高的 数据链路 传输效率; 4. 所有帧采用CRC检验,对信息帧进行顺序编号,可防止漏收或重发,传输可靠性高; 5. 传输控制功能与处理功能分离,具有较大灵活性。 高级数据链路规程(HDLC),是位于数据链路层的协议之一,其工作方式可以支持半双工、全双工传送,支持点到点、多点结构,支持交换型、非交换型信道,它的主要特点包括以下几个方面: 1. 透明性:为实现透明传输,HDLC定义了一个特殊标志,这个标志是一个8位的比特序列,(01111110),用它来指明帧的开始和结束。同时,为保证标志的唯一性,在数据传送时,除标志位外,采取了0比特插入法,以区别标志符,即发送端监视比特流,每当发送了连续5个1时,就插入一个附加的0,接收站同样按此方法监视接收的比特流,当发现连续5个1时而第六位为0时,即删除这位0。