1 / 53

CHAPTER 3 DATA LINK LAYER

Data Communications and Computer Networks. CHAPTER 3 DATA LINK LAYER . 中国科学技术大学网络学院 李艺 leey i@ustc.edu.cn. 结点. 结点. 帧. 帧. 2.1 基本概念. 基本概念 结点 ( node ):网络中的主机( host )和路由器( router )称为结点 链路 (link ,物理链路 ) : 就是一条无源的点到点的物理线路段。 数据链路 (data link ,逻辑链路 ) :把实现控制数据传输规程的软件、硬件加到链路上,就形成了数据链路。

ismet
Télécharger la présentation

CHAPTER 3 DATA LINK LAYER

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Data Communications and Computer Networks CHAPTER 3 DATA LINK LAYER 中国科学技术大学网络学院 李艺 leeyi@ustc.edu.cn NETWORK PRINCIPLE 3- 1

  2. 结点 结点 帧 帧 2.1 基本概念 • 基本概念 • 结点(node):网络中的主机(host)和路由器(router)称为结点 • 链路(link,物理链路): 就是一条无源的点到点的物理线路段。 • 数据链路(data link,逻辑链路):把实现控制数据传输规程的软件、硬件加到链路上,就形成了数据链路。 • 现在最常用的方法是使用网卡来实现这些协议的硬件和软件。 • 网卡包括了数据链路层和物理层这两层的功能。 • 数据链路层像个数字传输管道 • 常常在两个对等的数据链路层之间画出一个数字管道,而在这条数字管道上传输的数据单位是帧。 • 早期的数据通信协议曾叫作通信规程(procedure)。因此在数据链路层,规程和协议是同义语 NETWORK PRINCIPLE 3- 2

  3. 2.1 基本概念 • 链路层提供的服务形式 • 不确认的无连接服务。 • 连接方式服务。 • 确认的无连接服务。 • 数据链路层的主要功能 数据链路层的主要功能是在发送结点和接收结点之间进行可靠地、透明地数据传输,具体主要包括以下内容: • 在物理连接的基础上,当有数据传输时,建立数据链路连接;在结束数据传输后,及时释放数据链路连接。 • 将要发送的数据组织成一定大小的数据块--帧,以此作为数据传输单元进行数据的发送、接收、应答和校验。 • 在接收端要对收到的数据帧进行差错检验,如发现差错,则必须重新发送出错的数据帧,这个功能叫做差错控制。 • 对发送数据帧的速率必须进行控制,以免发送的数据帧太多,接收端来不及处理而丢失数据,此功能叫做流量控制。 NETWORK PRINCIPLE 3- 3

  4. H1 H2 应用层 应用层 R1 R2 R3 运输层 运输层 网络层 网络层 网络层 网络层 网络层 链路层 链路层 链路层 链路层 链路层 物理层 物理层 物理层 物理层 物理层 数据链路层的简化模型 主机H1向H2发送数据 路由器R1 路由器R3 主机H1 路由器R2 主机H2 局域网 广域网 电话网 局域网 从层次上来看数据的流动 NETWORK PRINCIPLE 3- 4

  5. 数据链路层的简化模( 续) 主机H1向H2发送数据 路由器R1 路由器R3 主机H1 路由器R2 主机H2 局域网 广域网 电话网 局域网 仅从数据链路层观察帧的流动 H1 H2 应用层 应用层 R1 R2 R3 运输层 运输层 网络层 网络层 网络层 网络层 网络层 链路层 链路层 链路层 链路层 链路层 物理层 物理层 物理层 物理层 物理层 NETWORK PRINCIPLE 3- 5

  6. 2.1 基本概念 • 链路管理 主要是发送数据前后的一些控制活动。 • 链路建立:在通信以前,通信双方要交换一些信息,确认对方已准备好 • 链路维护:通信过程中维持链路 • 拆除链路:通信结束后释放链路 NETWORK PRINCIPLE 3- 6

  7. 2.1 基本概念 • 帧定界  为了使传输中发生差错后只将出错的有限数据进行重发,数据链路层将比特流组织成以帧为单位传送。帧的组织结构必须设计成使接收方法能够明确的从物理层收到比特流中对其进行识别,也即能从比特流中区分出帧的起始与终止,这就是帧界定要解决的问题。 网络传输中很难保证计时的正确和一致,不能采用依靠时间间隔关系来确定一帧的起始与终止。下面介绍几种常用的帧同步方法。 NETWORK PRINCIPLE 3- 7

  8. 2.1 基本概念 • 字节计数法:这种帧同步方法以一个特殊字符表征一帧的起始,并以一个专门字段来标明帧内的字节数。接受方可以通过对该特殊字符的识别从比特流中区分出帧的起始,并从专门字段中获知该帧中随后跟随的数据字节数,从而可确定出帧的终止位置。 • 使用字符填充的首尾定界符法:该法用特定的字符来定界一帧的起始与终止,本节稍后要介绍的BSC规程便是典型例子。为了不使数据信息位中出现的与特定字符相同的字符被误判为帧的首尾定界符,可以在这种数据字符前填充一个转义控制字符(DLE)以示区别,从而达到数据的透明性。 NETWORK PRINCIPLE 3- 8

  9. 2.1 基本概念 • 使用比特填充的首尾定界符法:该法以一组特定比特模式(如01111110)来标志帧的起始与终止。为了不使信息位中出现相同比特流而被误判为帧的首尾标志,我们在信息位中采用比特填充加以区别: • 比特填充法:对信息位中的任何连续出现的5个“1”,发送方自动强行在其后插入一个“0”。接收方每收到连续5个“1”,则自动强行删去其后所跟的“0”。以此方法来实现数据传输的透明性。 • 违法编码法:在物理层采用特定的比特编码方法时采用。例如曼码,是将数据比特“1”编码成“高-低”电平对,将数据比特“0”编码成“低-高”电平对。而“高-高”电平对和“低-低”电平对在数据比特中是违法的。可用这些违法编码来定界帧的起始与终止。 NETWORK PRINCIPLE 3- 9

  10. 2.1 基本概念 由于字节计数法中Count字段的脆弱性(其值若有差错将导致灾难性后果)以及字符填充实现上的复杂性和不兼容性,目前较普遍使用的帧同步法是比特填充法和违法编码法。 NETWORK PRINCIPLE 3- 10

  11. 2.2 差错控制 • 产生差错的原因 • 物理信道本身电器特性造成的随机噪声; • 信号幅度的衰减、频率和相位的畸变; • 电器信号在线路上产生反射造成的回音效应; • 相邻线路间的串扰以及各种外界因素。 • 噪声分类 • 热噪声:由传输介质导体的电子热运动产生的。其特点是时刻存在,幅度较小,频谱很宽,是一类随机的噪声。 • 冲击噪声:持续时间较长,因而冲击噪声引起的相邻多个数据位出错呈突发性。 在数据通信中,这些原因都会造成信号的失真, 使接受端收到的二进制数位和发送端实际发送的二进制数位不一致,从而造成由“0”变成“1”或由“1”变成“0”的差错。 NETWORK PRINCIPLE 3- 11

  12. 2.2 差错控制 • 差错的控制方法 最常用的差错控制方法是差错控制编码。信息在向信道发送之前,先按照某种数学关系附加上一定的冗余位,构成一个码字后再发送,这个过程称为差错控制编码过程。接收端收到该码字后,检查接收到的数据中信息位和附加的冗余位之间的数学关系是否仍然成立,以确认传输过程中是否有差错发生,这个过程称为检验过程。 • 差错控制方法分类 • 检错码--能自动发现差错的编码;接收端发现差错时,就设法通知发送端重发,直到收到正确的码字为止。常用的有CRC码。 • 纠错码--接收端不但能发现差错,而且能确定二进制码元发生错误的位置,从而加以纠正。常用的有海明码。 NETWORK PRINCIPLE 3- 12

  13. 2.2 差错控制 • 编码效率 衡量编码性能好坏的一个重要参数是编码效率R,它是码字中信息位所占的比例。编码效率越高,即R越大,信道中用来传送信息码元的有效利用率就越高。编码效率计算公式为: R = k/n = k/(k+r)  式中 k为码字中的信息位位数r为编码时外加冗余位位数n为编码后的码字长度 NETWORK PRINCIPLE 3- 13

  14. 2.2 差错控制 • 循环冗余校验(CRC) CRC ( Cyclic Redundancy Code)是一种通过多项式除法检测错误的、很不寻常而又巧妙的方法。它将比特串 bn-1bn-2bn-3…b2b1b0 解释成多项式 bn-1xn-1+ bn-2xn-2+ bn-3xn-3+… +b2x2+ b1x1+ b0 因为每个bi或者是0,或者是1,我们只写出bi为1的项,而不写出为0的项。 例如,1011011有7位,表示成多项式是X6+X4+X3+X+1;而多项式X5+X4+X2+X对应的位串是110110。 f(x)= X6+X4+X3+X+1 系数对应 1011011 g(x)= X5+X4+X2+X 系数对应 110110 NETWORK PRINCIPLE 3- 14

  15. 2.2 差错控制 • CRC工作过程 下面给出CRC过程。所有的运算都是模2。 • 给定一个比特串,在其尾部追加几个0,并把它叫做B。让B(x)对应于B。 • 将B(x)除以一事先约定的生成多项式G(x) (Generator Polynomial),求出余式R(x)。 • 定义T(x) =B(x)-R(x)。 • 传输与T(x)对应的比特串T。 • 设T’代表接收方收到的比特流T’(x)为相应的多项式。接收方将T’(x)除以G(x)。若余数为0,则接收方认为T=T’,传输未发生错误。否则,接收方认为(传输)发生了错误并要求重传。 NETWORK PRINCIPLE 3- 15

  16. 2.2 差错控制 • 示例:已知: 信息码:110011 信息多项式:K(X)=X5+X4+X+1, 生成码:11001    生成多项式:G(X)=X4+X3+1(r=4) 求:传送方编码和接收方解码步骤。 解:发送方编码及传送: 1) (X5+X4+X+1)*X4的积是 X9+X8+X5+X4对应的码是1100110000。2) 积/G(X) (按模二算法)。 3) 冗余码求得是1001,码字就是它们的拼接:100111001。发送方传送码字。 NETWORK PRINCIPLE 3- 16

  17. 2.2 差错控制 4) 接收方和发送芳使用相同的生成生成码: 11001    生成多项式:G(X)=X4+X3+1 (r=4) 5) 接收到的码字为:1100111001,对应的多项式为: T(X) = X9+X8+X5+X4+X3+1 6) 用码字除以生成码: 7) 余数为0,所以接收到码字正确,没有产生传输错误。 NETWORK PRINCIPLE 3- 17

  18. 2.2 差错控制 • 生成多项式 G(X) 由协议规定: CRC-12:x12 + x11 +x3 +x2 +x+1 CRC-16:x16 + x15 +x2 +1 CRC-CCITT:x16 + x12 +x5 +1 CRC-32:x32 + x26 +x23 +x22 + x16 + x11 +x10 +x8 + x7 +x5 +x4 +x2 +x+1 因为计算机的复杂性,CRC校验一般由硬件实现。 NETWORK PRINCIPLE 3- 18

  19. 2.2 差错控制 • 海明码 海明码是一种可以纠正一位差错的编码。它是利用在信息位为k位,增加r位冗余位,构成一个n=k+r位的码字,然后用r个监督关系式产生的r个校正因子来区分无错和在码字中的n个不同位置的一位错。它必需满足以下关系式:2r ≥ k+r+1 式中:k 为信息位位数 r 为增加冗余位位数 NETWORK PRINCIPLE 3- 19

  20. 2.2 差错控制 例:设码字的信息位为a1a2a3a4,检验位为a5a6a7,该编码系统中的任何一个合法的码字均满足下列线行方程组: a5=a1+a3+a4 a6=a2+a3+a4 a7=a1+a2+a4若信息位1000,设出错的位数不超过一位。问冗余位和码字是什么?若接收的码字是1010101,否出错?若出错是哪一位出错。 解:编码:根据如下公式计算冗余位: a5=a1+a3+a4 = 1+0+0 = 1 a6=a2+a3+a4 = 0+0+0 = 0 a7=a1+a2+a4 = 1+0+0 = 1 所以,冗余位为101,发送的码字是1000101。(红色表示冗余位) NETWORK PRINCIPLE 3- 20

  21. 2.2 差错控制 解码:接收的码字是1010101。设bi=ai+ei,为接收端接收到的信号,当正确接收时,ei=0,否则ei=1。可解得校正因子: s1=e1+e3+e4+e5 s2=e2+e3+e4+e6 s3=e1+e2+e4+e7 按照接收到的码字计算校正因子: s1=1;s2=1;s3=0。 查表得知,第三位出错, 应将接收码1010101的 第三位1改为0,正确的 码字为1000101。 NETWORK PRINCIPLE 3- 21

  22. 2.3 流量控制 需要说明一下,流量控制并不是数据链路层特有的功能,许多高层协议中也提供流量控制功能,只不过流量控制的对象不同而已。 • 数据链路层控制的是相邻两节点这间数据链路上的流量 • 运输层控制的则是从源端点到目的端点之间的流量。 由于收发双方各自使用的设备工作速率和缓冲存储空间的差异,可能出现发送方发送能力大于接收方接收能力的现象,若不对发送方的发送速率做适当的限制,前面来不及接收的帧将被后面不断发送来的帧“淹没”,从而造成帧的丢失而出错。 由此可见,流量控制实际上是对发送方数据流量的控制,使其发送速率不致超过接收方的速率。需要有一些规则,使得发送方知道在什么情况下可以接着发送下一帧,而在什么情况下必须暂停发送,以等待收到某种反馈信息后再继续发送。 NETWORK PRINCIPLE 3- 22

  23. 2.3 流量控制 • 停止等待协议 停止等待(stop-and-wait)的原理很简单:发送方传输一帧之后,在传输下一帧之前等待一个确认。如果在某段时间之后确认没有到达,则发送方超时,并重发原始帧。下图说明此算法的不同情况。 • 图a表示在计时器超时之前发送方 收到ACK的情况, • 图b、c分别表示原始帧和ACK丢 失的情况, • 图d表示超时过快的情况。回忆一 下,“丢失”的意思是,帧在传 输中出错,接收方用差错码检 测到这类差错,接着将帧丢弃。 NETWORK PRINCIPLE 3- 23

  24. 2.3 流量控制 • 停等协议效率分析 让我们用一个例子来说明。假定本例中有下列参数,定义如下: • B = 信道容量(b/s) • R = 单程传播时间(s) • H = 帧头长度( bit) • D = 帧内有效数据长度( bit) • L = 数据帧长( bit),L = H+D • T = 等待确帧认的时间间隔(s) • 传输时间:将一帧数据发送到网络介质的时间 • 传播时间:信号从发送点传播到接收点所耗的时间 从确定构造和发送一帧的总时间开始 NETWORK PRINCIPLE 3- 24

  25. 2.3 流量控制 信道的实际有效利用率U为: 例:某卫星信道B=50kb/s, 2R=0.5s,L=1Kb/s,求该信道的利用率。 解: 可见,实际信道利用率也太低了! 停等协议的最大缺点在于,发送方要停下来等待Ack返回后再继续发送,从而造成信道空等的浪费。 NETWORK PRINCIPLE 3- 25

  26. 2.3 流量控制 引入一个系数α,它等于信号传播时间比上传输时间: α= 传播时间/传输时间 = R / (L/B) 将α代如停等协议的效率公式: U = 1 / (1+2α) 和效率公式的定义想比较, 式中1相当于传输时间, α相当于传播时间。 • 当α>1,线路总是没被充分利用; • 当α<1,利用率稍高,但仍未被 充分利用。 NETWORK PRINCIPLE 3- 26

  27. 2.3 流量控制 例1:设想一个使用ATM的广域网,某两个站点距离为1000km,标准的ATM帧长为424比特(53字节),且ATM的一种速率为155.52 Mb/s,求使用效率。 解:链路传播时间 = 424/155.25*106 = 2.7*10-6s 信号传输时间 = (106 m)/(2*108m/s) = 0.5*10-2s α= (0.5*10-2s) /(2.7*10-6s) ≈1850 u ≈ 1/3701 = 0.00027 可见,高速链路使用停等协议,效率很低。 NETWORK PRINCIPLE 3- 27

  28. 2.3 流量控制 例2:试分析在LAN上采用停等协议的效率。 解:LAN的距离从0.1~10km, 数据率为10mb/s ~ 1Gb/s。数据传输率B越高,为保证效率不降低,使用的距离就得越短。V采用2*108m/s,帧长L=1000比特。当B为10mb/s时,α在0.005~0.5之间。 对于100mb/s的LAN,给定的距离更短。可见,LAN的利用率相当高。 例3:试考虑Modem上网的数据传输率B. 解:取d=5000 km, B=56kb/s, 则: α= (56000*5*106)/(2*108*1000)= 1.4比特 u ≈ 0.26 NETWORK PRINCIPLE 3- 28

  29. 2.3 流量控制 • 后退n帧协议 GO-BACK-N 这是对停等协议的一种改进,它允许发送方在收到确认前连续发送N帧。接收站并不明确地确认它收到的每帧。发送站将已发送但未被确认的所有帧的分组缓存起来,以备重发。若分组被确认,则将它们从缓冲区删除。只在如下情况之一出现时,才重发: • 接收方检测出失序的信息帧后,要求发送方重发最后一个正确接收的信息帧之后的所有未被确认的帧; • 发送方发送了N个帧后,若发现该N帧的前一个帧在计时器超时后仍未返回其确认信息,则该帧被判为出错或丢失,此时发送方就不得不重新发送出错帧及其后的N帧。 这就是GO-BACK-N(后回N)法名称的由来。因为,对接收方来说,由于这一帧出错,就不能以正常的序号向它的高层递交数据,对其后发送来的N帧也可能都不能接收而丢弃。 NETWORK PRINCIPLE 3- 29

  30. 2.3 流量控制 Go-back-N 法举例 NETWORK PRINCIPLE 3- 30

  31. 2.3 流量控制 • GO-DACK-N评价 可能将已正确传送到目的方的帧再重传一遍,这显然是一种浪费。 • 选择重发协议 另一种效率更高的策略是,当接收方发现某帧出错后,其后继续送来的正确的帧虽然不能立即递交给接收方的高层,但接收方仍可收下来,存放在一个缓冲区中,同时要求发送方重新传送出错的那一帧。一旦收到重新传来的帧后,就可以原已存于缓冲区中的其余帧一并按正确的顺序递交高层。这种方法称为选择重发(Selective Repeat)。 NETWORK PRINCIPLE 3- 31

  32. 2.3 流量控制 下图中2号帧的否认返回信息NAK2要求发送方选择重发2号帧。显然,选择重发减少了浪费,但要求接收方有足够大的缓冲区空间。 选择重发举例法 NETWORK PRINCIPLE 3- 32

  33. 2.3 流量控制 • 滑动窗口协议 是选择重发原理的一种实现方法。 • 发送窗口WT:对发送端进行流量控制,即在还没有收到对方确认信息的情况下发送端最多可以发送几个数据帧。 • 接收窗口WR: 在接收端设置接收窗口控制可以接收那些数据不可以接收那些数据,即在接收端只有当收到的数据帧的发送序号落入接收窗口内,才允许将该数据帧收下。 NETWORK PRINCIPLE 3- 33

  34. 2.3 流量控制 滑动窗口变化过程可叙述如下(假设发送窗口尺寸为2,接收窗口尺寸为1) : • 初始态,发送窗口前后沿相重合。接收方0号窗口打开,表示等待接收0号帧; • 发方发0号帧并缓存,接收窗口仍等待接收0号帧; • 发方未收到0号帧的确认前,继续发送1号帧并缓存,1号帧也属等待确认之列。发方窗口已满,在未收到新的确认返帧之前,暂停发送新的数据。 • 接收方收到0号帧,0号窗口关闭,1号窗口打开,表示准备接收1号帧。 • 发方收到0号确认,关闭0号窗口,表示从重发表中删除0号帧。 • 发方可以发送2号帧,至此,发送方打开的窗口又满。 • 收方收到1号帧,1号窗口关闭,2号窗口打开,表示准备接收2号帧。 • 发方收到接收方发来的1号帧的确认,释放1号窗口。此时接收窗口状态仍不变。 NETWORK PRINCIPLE 3- 34

  35. 2.3 流量控制 • 滑动窗口协议效率分析 设: • 传输时间仍归化为1; • 传播时间为α; • w是传输w个帧所需 的时间。 NETWORK PRINCIPLE 3- 35

  36. 2.3 流量控制 • W≥2α+1: 发送窗口还没有用尽之前,帧1的确认已到达发方。因此发送方可连续不断地传送,所以利用率=100% • W<2α+1: t=w时,发送方的窗口用完还没有收到确认帧,不能发送下一帧。直到t= 2α+1。因此利用率=w/(2α+1) 综合之,滑动窗口协议效率公式为: NETWORK PRINCIPLE 3- 36

  37. 2.3 流量控制 • 评价 若从滑动窗口的观点来统一看待停等协议、Go-back-N协议及选择重发三种协议,它们的差别仅在于各自窗口尺寸的大小不同而已:   NETWORK PRINCIPLE 3- 37

  38. 2.3 流量控制 • 帧序列控制 采用对每帧进行编号的方法进行控制。若帧序号采用3位二进制编码,由0开始编码,最大序编码为Smax=23-1=7。 • 对于有序接收方式,发送窗口最大尺寸选为Smax; • 对于无序接收方式,发送窗口最大尺寸至多是序号范围的一半。 • 发送方管理超时控制的计时器数应等于缓冲器数,而不是序号空间的大小 NETWORK PRINCIPLE 3- 38

  39. 2.4 链路层协议实例-HDLC协议 • 高级数据逻辑控制协议(HDLC) 是面向位协议,是以帧为单位进行传送,目前已在世界上广泛应用,许多协议都是从它派生出来的。 • 数据站:由计算机和终端组成,负责发送和接收帧。HDLC涉及三种类型的站: • 主站(primary station):主要功能是发送命令(包括数据),接收响应,负责整个链路的控制(如系统的初始、流控、差错恢复等); • 次站(secondary station):主要功能是接收命令,发送响应,配合主站完成链路的控制; • 复合站(combined station):同时具有主、次站功能,既发送又接收命令和响应,并负责整个链路的控制。 NETWORK PRINCIPLE 3- 39

  40. 主站 次站 主站 次站 次站 …… 次站 2.4 链路层协议实例-HDLC协议 • HDLC适用的链路构型 • 非平衡型 • 点 — 点式 • 多点式 适合把智能和半智能的终端连接到计算机。 NETWORK PRINCIPLE 3- 40

  41. 组合站 组合站 逻辑通道 主站 主站 次站 次站 2.4 链路层协议实例-HDLC协议 • 平衡型 • 主站 — 次站式 • 组合式 适合于计算机和计算机之间的连接 NETWORK PRINCIPLE 3- 41

  42. 2.4 链路层协议实例 • HDLC中常有的操作方式 • 正常响应方式NRM(Norma Responses Model) 。这是一非平衡数据链路方式,适用于面向终端的点—点或一点与多点的链路。在这种操作方式中,传输过程由主站启动,从站只有收到主站某个命令帧后,才能作出响应向主站传输信息。响应信息可以由一个或多个帧组成,若信息由多个帧组成,则应指出哪一个是最后一帧 。主站负责整个链路,且具有轮询、选择从站及向从站发送命令的权利,同时也负责对超时、重发及各类恢复操作的控制。 • 异步响应方式ARM Asynchronous Responses Mode)。也是一种非平衡数据链路操作方式,与NRM不同的是,它的传输过程由从站启动。从站主动发送给主站的一个或一组帧中可包含有信息,也可以是仅以控制为目的而发的帧。也由从站来控制超时和重发。该方式对采用轮询方式的多站链路来说是必不可少的。 • 异步平衡方式ABM(Asynchronous Balanced Mode)。是一种允许任何节点来启动传输的操作方式。在这种操作方式下,任何时候任何站点都能启动传输操作,每个站点既可作为主站又可作为从站,即每个站都是组合站。各站都有相同的一组协议,任何站点都可以发送或接收命令,也可以给出应答,并且各站对差错恢复过程都负有相同的责任。 NETWORK PRINCIPLE 3- 42

  43. 2.4 链路层协议实例 • HDLC的帧格式 HDLC中命令和响应以统一的格式按帧传输。完整的HDLC帧由标志字段(F)、地址字段(A)、控制字段(C)、信息字段(I)、帧校验序列字段(FCS)等组成,其格式如下: • 标志字段F。它是由固定的八比特序列01111110组成,表示一帧的开始和结束,也兼作同步信号用。空闲的点到点线路上连续传标志字段,使接收端与发送端保持同步 • 地址字段A。地址字段可以是8位的整数倍。对于点到点线路,有时用来区分命令和响应。 • 若帧中地址是目的地址,则该帧是命令帧;(非平衡方式) • 若帧中地址源地址,则该帧是响应帧。(平衡方式) NETWORK PRINCIPLE 3- 43

  44. 2.4 链路层协议实例 • 控制字段C。根据最前面2个字节,决定该帧是信息帧、监督帧,还是无编号帧。 • 信息字段I。信息字段一般包括零个或若干个8位位组,它用于携带用户数据或管理数据。 • 帧校验字段CRC。采用CRC循环冗余校验。生成多项式采用 CRC-CCITT NETWORK PRINCIPLE 3- 44

  45. 1 0 0 1 M P/F P/F N(S) M N(R) 2.4 链路层协议实例 • 信息帧 • N(S):当前发送的信息帧的序号 • N(R):所期望收到的信息帧的序号。它带有确认[N(R)-1]( mod 8)的帧以及在这以前的帧都已正确接收到了,捎带走,V(S) , V(R) • P/F:询问/终止 • 无编号帧 NETWORK PRINCIPLE 3- 45

  46. 1 0 S P/F N(R) 2.4 链路层协议实例 • 监督帧 第3、第4比特的组合 • 00:RR 接收就绪 • 10:RNR 接收求就绪 • 01:REJ 拒绝,拒绝N(R)起的所有帧 • 11:SREJ 选择拒绝,只拒绝序号为N(R) 的帧 NETWORK PRINCIPLE 3- 46

  47. 2.4 链路层协议实例 • HDLC的通信传输过程 HDLC的通信传输过程分为下面五个阶段: • 公用交换线路的连接; • 确立数据通信链路; • 信息传输; • 拆除数据通信链路; • 拆除公用交换线路的连接。 NETWORK PRINCIPLE 3- 47

  48. ISP 用户家庭 客户进程 选路进程 至因特网 使用PPP连接 2.4 链路层协议实例 • PPP协议 PPP (Point-to-Point Protocol),Internet数据链路层协议。其应用场合主要有: • 路由器到路由器(router-router leased line connection) • 通过modem拨号上网,连到路由器或接入服务器(Access Server)(dial-up host-router connection) NETWORK PRINCIPLE 3- 48

  49. 2.4 链路层协议实例 • RFC 1661,RFC 1662,RFC 1663 • 与SLIP相比,PPP有很大的提高,提供差错校验、支持多种协议、允许动态分配IP地址、支持认证等。 • 以帧为单位发送,而不是原始IP包; • 包括两部分 • 链路控制协议LCP(Link Control Protocol) • 可使用多种物理层服务:modem,HDLC串线,SDH/SONET等 • 网络控制协议NCP(Network Control Protocol) • 可支持多种网络层协议 • 帧格式与HDLC相似,区别在于PPP是面向字符的,采用字符填充技术 NETWORK PRINCIPLE 3- 49

  50. 2.4 链路层协议实例 • PPP协议不需要的功能 • 纠错:TCP/IP协议中,纠错由传输层协议承担,PPP协议只检错。 • 流量控制:TCP/IP协议中,流量控制由传输层协议承担。 • 帧序列控制:帧不需要编号,因为是点对点连接,地址只简化成广播地址。 • 多点线路:因为只是点对点协议,所以不支持多点线路。 • 半双工和单工链路:PPP协议只支持全双工链路。 NETWORK PRINCIPLE 3- 50

More Related