计算机网络与通信课件第4章

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第四章数据链路层4.1数据链路层1、物理链路与数据链路物理链路(link):就是一条无源的点到点的物理线路段,中间没有任何其他的交换结点。数据链路(datalink):逻辑链路。发送结点到接收结点用于数据传输的一条通路。除必要的物理链路,还需通信协议来控制这些数据的传输。常使用适配器实现,包括了数据链路层和物理层这两层的功能。物理链路常采用复用技术,此时可能含多条数据链路数据链路层的简单模型局域网广域网主机H1主机H2路由器R1路由器R2路由器R3电话网局域网主机H1向H2发送数据链路层应用层运输层网络层物理层链路层应用层运输层网络层物理层链路层网络层物理层链路层网络层物理层链路层网络层物理层R1R2R3H1H2从层次上来看数据的流动数据链路层的简单模型局域网广域网主机H1主机H2路由器R1路由器R2路由器R3电话网局域网主机H1向H2发送数据链路层应用层运输层网络层物理层链路层应用层运输层网络层物理层链路层网络层物理层链路层网络层物理层链路层网络层物理层R1R2R3H1H2仅从数据链路层观察帧的流动IP数据报1010……0110帧取出数据链路层网络层链路结点A结点B物理层数据链路层结点A结点B帧(a)(b)发送帧接收链路IP数据报1010……0110帧装入数据链路层传送的是帧数据链路层像个数字管道常常在两个对等的数据链路层之间画出一个数字管道,而在这条数字管道上传输的数据单位是帧。早期的数据通信协议曾叫作通信规程(procedure)。因此在数据链路层,规程和协议是同义语。结点结点帧帧2、数据链路层的主要功能⑴封装成帧⑵帧同步:帧同步是指收方应当能从收到的比特流中准确地区分出一帧的开始和结束在什么地方。(3)透明传输:所谓透明传输就是不管所传数据是什么样的比特组合,都应当能够在链路上传送(4)链路访问控制:媒体访问控制(MAC)(5)物理寻址:在多点连接的情况下,必须保证每一帧都能送到正确的目的站。收方也应知道发方是哪一个站。(6)流量控制:实时地控制发方发送数据的速率。(7)差错控制:保证以最低的比特差错率传送数据。(8)链路管理:根据结点通信情况配置数据链路层。面向连接、无连接确认、无连接不确认服务4.2帧与成帧1、帧的基本格式地址帧的数据部分帧结束MTU帧首帧起始长度/类型/控制FCS帧尾2、成帧(1)基于字符的成帧:帧的信息字段为整数字节例:透明传输STX:02可显示字符帧帧开始符帧结束符ETX:03STXETXSTXDLEDLEETXDLEDLE可含控制字符10(2)基于比特的成帧:帧首部和尾部为特定比特的组合。透明传输:如:帧起始和帧结束为:01111110。帧中出现5个连续的1,就会自动插入一个04.3自动重传请求协议(ARQ)流量控制:防止拥塞、避免死锁、合理分配网络资源全网流量控制:传输层点对点流量控制:链路层接收缓冲区受限在接收结点:⑴等待;⑵收到数据帧,放入接收缓冲区;⑶数据帧上交主机;⑷向发送结点发确认信息⑸转到⑴。在发送结点:⑴从主机取一个数据帧;⑵发送缓冲;⑶将发送缓冲区中的数据帧发送出去;⑷等待;⑸受到确认信息,则从主机取一个新的数据帧,然后转到⑵。1、停止等待协议(stopandwait)(a)正常情况(b)数据帧出错(c)数据帧丢失(d)应答帧丢失数据帧在链路上传输的几种情况死锁太长,浪费时间,太短,收到确认前重发重复帧增加发送序号(1位)丢弃重复帧停止等待协议的算法在发送结点:⑴从主机取一个数据帧。⑵V(S)←0;{发送状态变量初始化}⑶N(S)←V(S);{将发送状态变量的数值写入发送序号}将数据帧送交发送缓冲区。⑷将发送缓冲区中的数据帧发送出去。⑸设置超时定时器。{选择适当的超时重发时间t0ut}⑹等待。{等待以下3个事件中最先出现的一个}⑺若收到确认帧ACK,则:从主机取一个新的数据帧;V(S)←[1-V(S)];{更新发送序号}转到⑶。⑻若收到否认帧NAK,则转到⑷。{重发数据帧}⑼若超时定时器时间到,则转到⑷。{重发数据帧}⑴V(R)←0;{接收状态变量初始化,其数值等于发送序号}⑵等待。⑶当收到一个数据帧,就检查有无产生传输差错(如用CRC)。若检查结果正确无误,则执行后续算法;否则转到⑻。⑷若N(S)=V(R),则执行后续算法;{收到发送序号正确的数据帧}否则丢弃此数据帧,然后转到⑺。⑸将收到的数据帧中的数据部分送交主机。⑹V(R)←[1-V(R)]。{更新接收状态变量,准备接收下一个数据帧}⑺发送确认帧ACK,并转到⑵。⑻发送否认帧NAK,并转到⑵。在接收结点:链路利用率链路利用率:E=tf/(2tp+tf)=1/(2a+1)a=tp/tf=(线路长度/信号传播速度)/(帧长/发送速率)2、后退N帧ARQ(1)工作过程:无需等待应答,允许发送多帧连续发送数据帧而提高了效率,重传时必须把原来已正确传送过的数据帧进行重传(仅因这些数据帧之前有一个数据帧出了错),这种做法又使传送效率降低。若传输信道的传输质量很差因而误码率较大时,连续ARQ协议不一定优于停止等待协议。利弊分析:(2)滑动窗口协议发送端没有收到确认信息前不能无限制地发送数据帧。这是因为:⑴当未被确认的数据帧的数目太多时,只要有一帧出了差错,就可能要有很多的数据帧需要重传,增大开销。⑵为了对所发送出去的大量数据帧进行编号,每个数据帧的发送序号也要占用较多的比特数,这样又增加了一些不必要开销。发送窗口:允许未确认的数据帧的最大值(a)允许发送0号至4号帧;(b)允许发送1号至5号帧;(c)允许发送4号至0号帧用于控制发送端的发送速率不必每收到一个数据帧就发回一个确认帧落入接收窗口内才允许收下数据帧接收窗口(3)发送窗口的最大值问题设发送窗口WR=8。设发送端发送完0~7号共8个数据帧。窗口已满,发送暂停。假定这8个数据帧均已正确到达接收端,并且对每一个数据帧,接收端都发送出确认帧。下面考虑两种不同的情况。第一种情况是:所有的确认帧都正确达到了发送端,因而发送端接着又发送8个新的数据帧,其编号应当是0~7。第二种情况是:所有的确认帧都丢失了,经过一段时间后,发送端重发这8个旧的数据帧,其编号仍位0~7。接收端第二次收到编号为0~7的8个数据帧时,无法判定:这是8个新的数据帧,或这是8个旧的、重发的数据帧。因此,将发送窗口设置为8显然是不行的。n个比特编号,应保证WR≤2n-1一般的陆地链路采用3比特编码,卫星链路传播延时很大,发送窗口也必须适当增大,常用7位编码。未被确认的数据帧都必须保持在发送端的缓冲区中,以便在出差错时进行重发。停止等待协议,WR=13、选择重传ARQ只重传出现差错的数据帧或者是定时器超时的数据帧。但须加大接收窗口,以便先收下发送序号不连续但仍处在接收窗口中的那些数据帧。等到所缺序号的数据帧收到后再一并送交主机。这就是选择重传ARQ协议。对于选择重传ARQ协议,接收窗口不应该大于发送窗口。若用n比特进行编号,则可以证明,接收窗口的最大值受下式的约束WR≤2n/2当接收窗口WR为最大值时,WT=WR=2n/2。4.4高级数据链路层协议HDLC:面向比特1、两种配置平衡配置非平衡配置2、3种数据传送方式非平衡配置:(1)正常响应方式NRM:只有主站才能发起向次站的数据传输,次站在主站向它发送命令帧进行轮询时,才能以响应帧的形式回答主站。(2)异步响应方式ARM:允许次站发起向主站的数据传输,但主站仍负责全线的初始化、链路的建立和释放,以及差错恢复等。平衡配置:异步平衡方式ABM,每个复合站都可以平等地发起数据传输,而不需要得到对方复合站的允许。3、3种非正常工作方式(1)正常断开方式(NDM)(2)异步断开方式(ADM)(3)初始化方式(IM)(1)(2)与传输方式的不同为:次站或组合站再逻辑三与链路断开,不再进行数据收发(3)与传输方式的不同为:次站或组合站的数据链路控制程序需要重新生成或更改传输方式下的参数。4、HDLC帧结构帧同步:标志字段F:01111110透明传输:零比特填充法01001111101000101001001111110001010010011111010001010信息字段中出现了和标志字段F完全一样的8比特组合发送端在5个连1之后填入0比特再发送出去在接收端把5个连1之后的0比特删除会被误认为是标志字段F发送端填入0比特接收端删除填入的0比特零比特填充A:地址字段,8bits。非平衡方式:填充次站的地址。平衡方式时(采用ABM):填充应答站地址。全1:广播方式,全0无效。地址可扩展:当某个地址字段的第1位为0时,则表示下一个地址字段的后7位也是地址位。当这个地址字段的第1位为1时,表示这已是最后一个地址字段。C:控制字段,8bit信息帧:Bit2~4:N(S)发送序号,Bit6~8:N(R)所期望收到的帧的发送序号并确认序号为[N(R)-1]的帧以及在这以前的各帧都已正确无误地收妥了。监督帧:bit3,4:帧类型Bit5:P/F为1才有意义NRM:次站收到主站发出的P比特为1的命令帧(S帧或I帧)以后才能发送响应帧。若有数据发送,则在最后一个数据帧中将F比特置1。若无数据发送,则应在回答的S帧中将F比特置1。ARM或ABM:任何一个站都可以在主动发送的S帧和I帧中将P比特置1。对方站收到P=1的帧后,应尽早地回答本站的状态并将F比特置1,不过此时并不表示数据已发完和不再发送数据了。图非平衡配置中P/F比特的使用方法两个复合站的全双工通信举例无编号帧数据链路建立与释放复合站的链路建立和释放4.5SLIP和PPP协议用户接入Internet的一般方法拨号电话线接入Internet:专线接入(这多为用户人数较多的单位)。SLIP和PPP为点到点链路直接相连的两个设备见提供一种传送数据报的方法。用户拨号入网的示意图路由器调制解调器调制解调器因特网服务提供者(ISP)用户家庭拨号电话线使用TCP/IP的PPP连接使用TCP/IP的客户进程路由选择进程至因特网…PC机用户到ISP的链路使用PPP和SLIP协议用户至因特网已向因特网管理机构申请到一批IP地址ISP接入网PPP协议SLIP协议1、SLIP协议对原始的IP数据报封装无寻址、无数据校验、分组类型识别没有最大帧长限制C0C0DBDCDBDD0CDBIP数据报2、PPP协议(1)优点:支持多种协议错误检测链路管理选项协商授权IP地址协商(2)三个组成部分一个将IP数据报封装为HDLC数据帧。链路控制协议LCP(LinkControlProtocol):建立、配置、管理和测试数据链路连接的情况网络控制协议NCP(NetworkControlProtocol):建立和配置不同的网络层协议。(3)PPP协议的帧格式:面向字节PPP有一个2个字节的协议字段。当协议字段为0x0021时,PPP帧的信息字段就是IP数据报。若为0xC021,则信息字段是PPP链路控制数据。若为0x8021,则表示这是网络控制数据。IP数据报1211字节12不超过1500字节PPP帧先发送7EFF03FACFCSF7E协议信息部分首部尾部不提供使用序号和确认的可靠传输在数据链路层出现差错的概率不大时,使用比较简单的PPP协议较为合理。在因特网环境下,PPP的信息字段放入的数据是IP数据报。数据链路层的可靠传输并不能够保证网络层的传输也是可靠的。帧检验序列FCS字段可保证无差错接受。透明传输信息字段中:0x7E字节转变成为2字节序列(0x7D,0x5E)。0x7D字节转变成为2字节序列(0x7D,0x5D)。ASCII码的控制字符(即小于0x20的字符),在该字符前面要加入一个0x7D字节。(4)PPP链路工作过程对方协商一些选项鉴别成功NCP配置通信结束载波停止失败失败检测到载波鉴别终止打开静止网络建立4.6数据链路层的设备和组件1、网络接口卡:又称网络适配卡,简称网卡。(1)功能:数据的封装和接收帧的封装和拆封编码和解码介质访问控制数据缓存涵盖物理层和数

1 / 69
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功