为了协调各种分组无线电设备的功能,国际业余无线电联盟正式公布了专门的通信协议。AX.25作为业余分组网的标准补充了
HDIC和
OSI模型对无线信道分组网的规定。
协议背景
80年代初期,国际上特别是美国为了弥补计算机局部网络局限在较小的区域以及移动性和抗毁性的不足,开展了运用
无线电台构成
数据网络的研究,由于其研究工作沿用了
分组交换的技术 , 故而称之为
分组无线网(Packet Radio Network)。到1985年美国已使其进入实用阶段,先是在东部地区 (华盛顿特区、 宾夕法尼亚州等地)建立。后来通过
短波及卫星的手段在各地区分组无线电网间建立联系,扩展到西部加州以至全国大部分地区,这些网点总数超过2万个,广泛用于电子邮件、银行存款查询、
信用卡业务、专用系统数据传递等业务。增长速度十分引人注目。其发展速度之所以十分惊人是因为用于分组无线网的通信控制器遵循业余廉价的原则,而在发展初期即受到国际业余无线电爱好者联盟的指导和制约。国际业余无线电爱好者联盟为分组无线网制定了专门的通信协议AX.25。AX.25是在
OSI和
X.25协议的基础上修改制定的。
各层关系
国际标准化组织( ISO) 为数据通信制定了标准化的控制模型
OSI OSI把一个数据传输系统分成为七层结构。在各层当中都规定了其功能。
物理层规定原始数据比特流在物理链 路上的传输,它的参数是规定数据信号电压的大小、比特宽度,还有建立与拆除物理链路的机械电气功能等。
链路层将不可靠的数据传输通道转换成可靠的传输通道,发送带有校验的数据帧信号,它的各种功能均包括在其祯结构和差错控制上。
网络层建立由数据源到数据之间所需的物理的和逻辑的连接,主要负责路由选择和流量控制。
传输层在两个终端之间提洪可靠的、透明的数据传输,提供端——端纠错和流量控制,负责保证网络层为会话层提供高质量的服务。
会话层提供两个进程之间建立、管理和终止连接的方法,还提供校验点和重新启动服务以及瞬离服务。
表示层通常完成有用的数据转换,提供标准的应用接口,提供诸如加密、文本压缩、重新格式化那样的公用通信服务。
应用层为OSI环境下提供的用户服务,例如事务处理服务、文件传送协议及网络管理。
OSI是面向所有数据通信而确立的。对于各种不同要求的数据通信系统又制定了自 己的相应的协议,只是这些协议满足OSI的要求的外部连接条件。其中典型的有分组交换数据通信网协议
X.25。X.25协议也只公布了三层协议,而且它把第三层称之为分组层。业余无线电分组通信网为了能够与其它的数据网相连,也根据OSI制定了自己 的通信协议AX.25。AX.25可以说是对X.25用于无线电信道的修改和补充,再加上沿用分组传输,又是国际业余无线电爱好者联盟 (ARRL) 确定的,所以取AX.25之名称。
使用范围
为了能够在两个数据终端之间提供一种可靠的数据传输机制,必须定义一种能够在各种通信链路间收发数据的协议。AX.25就是这样一种
数据链路层协议,它与具体的通信链路无关。该协议与ISO模型和
高级数据链路控制规程(
HDLC) 一致 , 原则上遵循
CCITT X .25建议,区别是扩展了地址域,并增加了无标号信息(UI)帧。该协议对
全双工和
半双工业余无线环境同样适合。该协议可以在两个单独的业余分组无线电台之间直接建立连接,也可以在某个分组无线电台和控制站之间建立连接。如果硬件允许,该协议还可以使每个器件建立多个链路层连接。
该协议还可以进行自连接,也就是器件可以把帧的源地址和目的地址都设为本方地址而建立起一个链路。
大多数数据链路层协议都假设有一个
主站 (通常称为
DTE , 或
数据电路终端设备)连接到一个或多个
次站 (通常称为
DCE, 或
数据终端设备)。这种非平衡操作不适用于共享射频信道的业余无线环境。AX.25假设链路的双方都是平等的,任一方都既可以发送命令信息,也可以发送响应信息。
协议构成
AX.25帧结构中可以分成信息帧和非信息帧。其帧结构形式基本遵循OSI和X.25中的规定。
非信息帧包括监视帧和无编号帧,无编号帧中又包括各种控制帧和无编号信息帧。信息帧用来发送信息分组,对于一个文件来说,是由多个分组组成的,因此,信息帧是编号的,用以表示该信息分组在文件中的序号。 无编号信息帧的信息是一次发送的,不能重发纠错也没有后继分组,所以不需编号。
I帧(信息帧)
用于传送信息 , 故称为信息帧。 I帧的标志码为0。
S帧(监视帧)
用于监视链路的状态和信息的传递。它分为三种不同的帧形式。
(1)RR帧(receive ready),可以收信帧。告诉用户可以进行收信。
(2)RNR帧(receive not ready),不可收信帧。告诉使用者还不能进行收信。
(3)REJ帧(reject),否定拒绝帧。用于要求帧信息的重传。
S帧可以是命令帧,也可以是应答帧,与I帧不同,I帧只能是命令帧。
U帧(非号码制帧)
所谓的非号码制帧,是U帧中既不包含发信序号也不包含收信序号,完全用于控制链路。 U帧又根据不同的用途区别为以下六种。
(1)SABM帧(sct Asynchronous balanced mode)非同步平衡模型设定要求帧。 要求将电路设定成非同步平衡模型,即要求和对方进行连接。为命令帧。
(2)DISC帧(disconnect),切断要求帧。要求在通信终了时,切断所建立的链路。命令帧。
(3)DM帧(disconnect mode),切断状态通知帧。通知此时处于切断状态,对于连接要求发送忙音。应答帧。
(4)UA帧(unnumbered acknowledge),非号码制认可通知帧。对于U帧指令反馈认可信息,即对SABM帧命令通知OK,对DISC通知承认其切断请求。应答帧。
(5)FRMR帧(frame reject),拒绝接收帧通知帧。虽然根据FCS判断传输无错误,但其帧结构是不正常的,即虽然收到帧信号,但差错己经超出了正确检测的范围,拒绝接收该帧时使用。 应答帧。
(6)UI帧(unnumbered information),非号码制信息帧。在不连接链路的紧急情况下使用。这样的信息帧,只能传送一次性的数据,而且不能根据ARQ进行差错控制。 由于没有连接,也不要回答,故这种帧可以做为命令帧使用,也可以作为应答帧使用。这种帧是中所特有的一种传送信息的帧形式。
由上可见,AX.25中总共使用10种帧结构,根据不同的时机和要求使用不同的帧。
操作系统
所谓的AX.25
操作系统就是在各种输入变量的控制下,使状态向新状态转移的过程。这样的过程一般由各种软件、硬件规定动作以及动作的先后次序即操作步骤。AX.25链路层协议中对各种操作都作了规定的。操作系统控制操作步骤是根据控制变量来完成的。在AX.25中和HDLC一样,由四个变量(发信状态变量V(S)、发信顺序号码N(S)、收信状态变量V(R)、收信顺序号码N(R))控制。操作系统由控制变量来进行控制。操作又是由AX.25协议 确定了顺序步骤。更多详细内容参看。
状态概况
AX.25协议是通过分组网中的通信控制器 (TNC) 来实现的,根据AX.25协议决定了TNC处于某种状态,并且在各种变化条件下引起TNC状态变化也是由AX.25协议规定的。由于AX.25协议只确定了链路层,所以使用AX.25链路层协议状态的说法,实际上TNC的状态也确是决定于AX.25链路层协议。
切断状态
切断状态说明某一局没有和另外的局处于连接状态,它们之间没有链路。
链路设定状态
链路设定状态说明某一局正处于和另外的局连接状态中,即正在呼叫对方。
帧拒绝状态
帧拒绝状态说明某一局处于拒绝接收下一帧信号,即上一帧已经判定为错误,要求重传而拒绝错误以后的帧。
切断要求状态
切断要求状态说明某一局已经完成了和另外的局的通信,要求终止通信拆除链路。
信息传输状态
信息传输状态说明某一局正处于向其它局发送信息的状态。
发送拒绝接收帧状态
发送拒绝接收帧状态说明某一局正在发送拒绝接收的帧信号。
ACK待机中状态
ACK待机中状态说明某一局发送信息以后,正处于等待对方发送ACK信号。
本局忙状态
本局忙状态说明本局已处于和另外局的连接状态中,正在交换信息,对于新来的连接要求相当于忙音。
对方忙状态
对方忙状态说明对于本局发送的连接请求,对方发出一个忙音,收到了这个忙音后本局所处的状态。
双方忙状态
双方忙状态说明本局正在接收某一局的信号。本局为忙状态,同时对方局也在接收另 一局的信号,也处于忙状态。
ACK待机中且本局忙状态
ACK待机中且本局忙状态说明本局发送信息在等待对方ACK而这时本局又在接收另外局来的信息或者本局在发送信息。
ACK待机中且对方忙状态
ACK待机中且对方忙状态说明本局处于待机ACK状态,对方处于忙状态。
ACK 待机中双方忙状态
ACK 待机中双方忙状态说明本局既处于待机的ACK状态又是忙状态,而对方也处于忙状态。
REJ 发信且本局忙状态
REJ 发信且本局忙状态说明本局在发送REJ帧的状态之下且处于忙状 态,不能和其它局连接。
REJ发信且对方忙状态
REJ发信且对方忙状态说明本局已发送了帧拒绝信号同时对方处于忙的状态。此时对于本局来讲己可以接收信息,对方却不能接收信息。
REJ发信且双方忙状态
在REJ发信的同时,本局处于忙状态,对方也处于忙状态,这时本局对于所传输来的信息是不能接收的。
AX.25中总共只有这十六种状态。但是这十六种状态的变化却是非常复杂的,并且根据听收到的信号向着不同的状态转移。对于TNC来说收到的信号不外乎两种;一种是收到由对方送来的信号;一种是收到TNC本身控制电路给出的信号。对方送来的信号都是以帧形式传输的。