n数据链路层协议分类
1.面向字符的链路层协议
ØISO的IS1745,基本型传输控制规程及其扩充部分(BM和XBM)
ØIBM的二进制同步通信规程(BSC)
ØDEC的数字数据通信报文协议(DDCMP)
Ø PPP
2.面向比特的链路层协议
ØIBM的SNA使用的数据链路协议SDLC(Synchronous Data Link Control protocol);
ØANSI修改SDLC,提出ADCCP(Advanced Data Communication Control Procedure);
ØISO修改SDLC,提出HDLC(High-level Data Link Control);
ØCCITT修改HDLC,提出LAP(Link Access Procedure)作为X.25网络接口标准的一部分,后来改为LAPB。
一、 高级数据链路控制规程HDLC
n1976年,ISO提出HDLC(High-level Data Link Control)
nHDLC的组成
Ø帧结构
Ø规程元素
Ø规程类型 语义
Ø使用HDLC的语法可以定义多种具有不同操作特点的链路层协议。
nHDLC的适用范围
Ø计算机 —— 计算机
Ø计算机 —— 终端
Ø终端 —— 终端
n
n数据站(简称站 station),由计算机和终端组成,负责发送和接收帧。HDLC涉及三种类型的站:
Ø主站(primary station):主要功能是发送命令(包括数据),接收响应,负责整个链路的控制(如系统的初始、流控、差错恢复等);
Ø次站(secondary station):主要功能是接收命令,发送响应,配合主站完成链路的控制;
Ø组合站(combined station):同时具有主、次站功能,既发送又接收命令和响应,并负责整个链路的控制。
nHDLC适用的链路构型
非平衡型
n点 — 点式
多点式
n适合把智能和半智能的终端连接到计算机。
Ø平衡型
n主站 — 次站式
n组合式
适合于计算机和计算机之间的连接
nHDLC的基本操作模式
Ø正规响应模式 NRM(Normal Response Mode)
n适用于点 — 点式和多点式两种非平衡构型。只有当主站向次站发出探询后,次站才能获得传输帧的许可。
Ø异步响应模式 ARM(Asynchronous Response Mode)
n适用于点 — 点式非平衡构型和主站 — 次站式平衡构型。次站可以随时传输帧,不必等待主站的探询。
Ø异步平衡模式 ABM(Asynchronous Balanced Mode)
n适用于通信双方都是组合站的平衡构型,也采用异步响应,双方具有同等能力。
HDLC的帧结构
n定界符——n01111110
n空闲的点到点线路上连续传定界符
n地址域(Address)
n多终端线路,用来区分终端;
n点到点线路,有时用来区分命令和响应。
n若帧中的地址是接收该帧的站的地址,则该帧是命令帧;
n若帧中的地址是发送该帧的站的地址,则该帧是响应帧。
n控制域(Control)
n序号
n使用滑动窗口技术,3位序号,发送窗口大小为7
n确认
n其它
n数据域(Data)
n任意信息,任意长度(上层协议SDU有上限)
n校验和(Checksum)
nCRC校验
n生成多项式:CRC-CCITT
n帧类型
n信息帧(Information)完成信息的传送。
n监控帧(Supervisory)差错控制和流量控制。
n无序号帧(Unnumbered)链路管理。
n控制域
n
n序号(Seq)
n使用滑动窗口技术,3位序号,发送窗口大小为7
n捎带确认(Next)
n捎带第一个未收到的帧序号,而不是最后一个已收到的帧序号
n探询/结束 P/F位(Poll/Final)
n命令帧置“P”,响应帧置“F”。有些协议,P/F位用来强迫对方机器立刻发控制帧;
n多终端系统中,计算机置“P”,允许终端发送数据;终端发向计算机的帧中,最后一个帧置为“F”,其它置为“P”。
n类型(Type)
n“0”表示确认帧 RR(RECEIVE READY);
n“1”表示否定性确认帧 REJ(REJECT)。
n“2”表示接收未准备好 RNR(RECEIVE NOT READY)
n“3”表示选择拒绝 SREJ(SELECTIVE REJECT)
nHDLC和ADCCP允许选择拒绝,SDLC和LAPB不允许。
n无序号帧
n可以用来传控制信息,也可在不可靠无连接服务中传数据。
n无序号确认UA(Unnumbered Acknowledgement)
n对控制帧进行确认,用于确认模式建立和接受拆除命令。
nUI(Unnumbered Information)
nHDLC的功能组合
n三种站,两种构型,三种操作模式,以及规程元素中定义的各种帧的各种组合产生多种链路层协议。
nHDLC定义了选择构成链路层协议的良序结构:
n选择站构型 ——> 基本操作模式 ——> 基本帧种类 ——> 12种任选功能 ——> 得到协议n
n点到点通信的两种主要情形
n路由器到路由器(router-router leased line connection)
n通过modem拨号上网,连到路由器或接入服务器(Access Server)(dial-up host-router connection)
二、SLIP —— Serial Line IP
-1984年,Rick Adams提出,RFC1055,发送原始IP包,用一个标记字节来定界,采用字符填充技术;
-新版本提供TCP和IP头压缩技术,RFC 1144
-存在的问题
不提供差错校验
只支持IP
IP地址不能动态分配
不提供认证
多种版本并存,互连困难
§三、点到点协议 PPP —— Point-to-Point Protocol
-RFC 1661,RFC 1662,RFC 1663
-与SLIP相比,PPP有很大的提高,提供差错校验、支持多种协议、允许动态分配IP地址、支持认证等。
-以帧为单位发送,而不是原始IP包;
-包括两部分
链路控制协议LCP(Link Control Protocol)
Y可使用多种物理层服务:modem,HDLC串线,SDH/SONET等
网络控制协议NCP(Network Control Protocol)
Y可支持多种网络层协议
-帧格式与HDLC相似,区别在于PPP是面向字符的,采用字符填充技术
标记域:01111110,字符填充;
地址域:11111111
控制域:缺省值为00000011,表示无序号帧,不提供使用序号和确认的可靠传输;不可靠线路上,也可使用有序号的可靠传输。
协议域:指示净负荷中是何种包,缺省大小为2个字节。
净负荷域:变长,缺省为1500字节;
校验和域:2或4个字节
-总结:PPP具有多协议成帧机制,可以在modem, HDLC bit-serial lines, SDH/SONET等物理层上运行,支持差错检测、选项协商和包头压缩功能,并具有利用HDLC帧进行可靠传输的可选功能。
-PPP链路 up / down 过程(简单状态图)