当前位置:文档之家› HDLC数据帧的格式

HDLC数据帧的格式

1、HDLC数据帧格式:
起始标志要传输的数据块结束标志
011111100011011000010110011011101111110
包括起始和终止标志的信息块称为HDLC的“数据帧”。

起始和终止标志采用相同的帧间隔符“01111110”,即在HDLC规程中,帧与帧之间用“01111110” 所分隔,“帧”构成了通信双方交换的最小单位。

2、一些术语:
HDLC来源于IBM公司的SDLC,因此也采用了一些SDLC的术语和说明。

术语名说明
主站(Primary Station)
控制整个链路的工作,可发出命令来确定和改变链路的状态,包括确定次站、组织数据传输和链路恢复等
次站(Secondary Station)
次站也称从站,指受主站控制,只能发出响应的站
主站与每一次站均维持一条独立的逻辑链路
非平衡结构
由一个主站和一个或多个次站组成,
适用于点-点、点-多点操作
组合站
(Combined Station)
兼有主/次站功能的站。

3、HDLC数据传输模式:
(1)正常响应模式(NRM):主站具有选择、轮询次站的能力,并可向次站发送命令或数据;次站只有在主站询问时才能作为响应传输数据;
(2)异步响应模式(ARM):主站具有初始链路,差错校正和逻辑拆链功能;次站可以主动传输数据;(3)异步平衡模式(ABM):任一组合站均可控制链路,主动传送数据。

4、HDLC一般帧格式:
说明:
(1)F:帧间隔模式:“01111110”——同步符号、帧之间的填充字符。

01111110111110000111100010101111110101010011111110101001111110
(2)A:地址字段:通信对方的地址
(3)C:控制字段:用于区分帧的类型(数据帧、监控帧、无编号帧)
(4)I:信息字段:携带高层用户数据,可以是任意的二进制位串;
(5)FCS:校验码:对A、C、I字段进行循环校验。

g(x)=x16+x12+x5+1 (CCITT和ISO使用);
g(x)=x16+x15+x2+1 (IBM的SDLC使用)。

由于帧中至少含有A(地址)、C(控制)和FCS(帧校验序列)字段,因此整个帧长度应大于32位。

5、“0”比特插入法
为了保证帧间隔符“01111110”的唯一性和帧内数据的透明性,保证A(地址字段)、C(控制字段)、I(信息字段)、FCS(帧校验序列)中不出现01111110的位模式,HDLC采用了‘0’位插入法。

发送端:发送“01111110”后,开始数据发送,并在数据发送过程中,检查发送的位流,一旦发现连续的5个‘1’,则自动在其后插(附)上1个‘0’,并继续传输后继的位流;数据发送结束后,追加帧间隔符“01111110”。

接收端:执行相反的动作:一旦识别出帧间隔符“01111110”之后的位流不是“01111110”,则启动接收过程;若识别出连续5个‘1’和1个‘0’,则自动丢弃该‘0’,以恢复原来的位流;若识别出连续的6个‘1’,表示数据结束,该数据帧接收完成。

6、HDLC控制帧格式:
0 1 2 3 4 5 6 7
信息帧I 监控帧 S 无编号帧 U
0 Ns P/F Nr 10type P/F Nr
11M1P/F M2
说明:
(1)信息帧(I):用于传输用户数据,控制字段的第0位规定为‘0’;
Ns(发送帧序号):说明本帧对应的帧序号(采用模8计数),发送端可以不必等待确认,而连续地发送若干帧(不超过8帧),每发一帧,Ns模8计数一次;
Nr(待收帧序号):说明希望接收对方帧的序号(采用模8计数),Nr隐含指示该序号之前的所有帧已被正确接收;
P/F(查询/终止指示符):对于不同的传输模式,该位具有不同的含义。

当采用ARM和ABM传输模式时,P=1要求对方立即予以响应,并在响应中置F=1。

无论使用何种传输模式,P/F总是一一对应的,在接到F=1的帧之前,不允许再发P=1的帧。

(2)监控帧(S):用于表示接收状态,其控制字段的第0、1位规定为“10”;第2、3位表示了四种类型的监控帧。

Type=00,接收准备就绪(RR),发送该RR监控帧的一方准备接收编号为Nr的帧;
Type=10,未准备就绪(RNR),发送该RNR监控帧的一方说明已经收妥Nr以前的所有帧,但希望对方暂缓发送Nr帧;
Type=01,拒绝接收(REJ),发送该REJ监控帧的一方说明已经收妥Nr以前的所有帧,但编号为Nr 的帧有差错,希望对方重发编号为Nr及其以后的所有帧;
Type=11,选择接收(SREJ),该帧的含义类似REJ监控帧,但希望对方仅仅重发第Nr帧。

(3)无编号帧(U):用于命令的传输(建立/拆除链路)等;
控制字段的第0、1位规定为“11”,第2-3位(M1)和第5-7位(M2)表示U帧的类型。

例如:
M(M1M2)=11100(SABM),某一复合站置本次链路为异步平衡模式;
M(M1M2)=00010(DISC),主站请求释放(拆除)本次链路;
M(M1M2)=00110(UA),次站对主站命令的确认,类似BSC中的ACK;
M(M1M2)=10001(CMDR),次站对主站命令的否认,类似BSC中的NAK;
7、HDLC窗口机制和捎带应答机制:
为了减少应答次数,提高传输效率,HDLC控制规程中引入了窗口机制和稍带应答。

(1)传输窗口:通信双方同意在同一条链路上连续使用的信息帧序号集。

(2)窗口尺寸:通信双方协商同意的在同一条链路上可连续发送、且未被认可的信息帧个数;
HDLC窗口尺寸确定为23-1=7;
即任一方可以最多连续发送7帧而无需对方的确认。

在信息帧中用Nr,Ns来表示当前窗口的情况。

(3)捎带应答:是HDLC传输控制规程用于提高传输效率的又一措施。

允许在反向传输的信息帧中附带确认信息。

(4)超时重发:为了防止发送方无期限地等待接收方的确认,收发双方均设置计时器。

发送方在一定的时间内未收到接收方传来的确认,表示传输有故障,准备重发所有未被确认的帧。

发送方:每发送一信息帧,计时, 直到收到接收方的确认(包括捎带应答);若超时,则重发;
接收方:在正确接收到信息帧后,计时;若在一定的时间内未收到后继信息,则发RR帧,准备接收,并告诉发送方前面已接收。

8、HDLC数据传输过程:
9、HDLC规程分析:
特点:
(1)使用统一的帧格式:实现数据、命令和响应的传输,实施起来方便;
(2)采用‘0’位插入法:使得规程可以支持任意的位流传输,保证了信息传输的透明性;
(3)采用窗口机制和捎带应答:支持全双工工作方式,允许在未收到确认的情况下,连续发送多个帧,提高了信息传输的效率;
(4)采用帧校验序列,并设置窗口序号:可以提高信息传输的正确性和可靠性。

面向二进制位的控制规程比面向字符型的控制规程具有较高的优越性。

相关主题