计算机网络自顶向下方法(第四版)-中文版课件-第五章

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

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

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

资源描述

1第5章链路层和局域网网络层:提供两台主机之间的通信服务。通信路径由源主机和目的主机之间的一系列通信链路和路由器组成。链路2链路层:分组如何通过各段链路网络层的数据报如何被封装成链路层的帧;链路层协议是否能够提供路由器之间的可靠数据传输;通信路径上不同的链路是否采用不同的链路层协议。链路3学习目的了解数据链路层服务及协议原理:差错检测和纠错共享广播信道:多址访问协议链路层寻址可靠传输各种链路层技术的实现4链路层信道类型广播链路和点对点通信链路两种。广播链路:许多主机被连接到相同的通信信道。需要媒体访问协议来协调传输和避免“碰撞”(冲突)。常用于局域网LAN、无线LAN、卫星网和光纤电缆混合(HFC)接入网。5链路层的两类信道点对点通信链路:直接链接两个节点的链路,每一端有一个节点。访问控制简单。主要解决问题:如成帧、可靠数据传输、差错检测和流量控制等。如两台路由器之间的通信链路,或住宅的拨号调制解调器与ISP路由器之间的通信链路。6主要内容5.1概述与服务5.2差错检测和纠错5.3多路访问协议5.4链路层编址5.5以太网5.6集线器和交换机5.7PPP5.8链路虚拟化:ATM5.9小结75.1概述和服务节点(node):主机和路由器链路(link):连接相邻节点的通信信道。链路层传输数据报的过程:沿端到端路径上的每段独立的链路传输。发送节点先将数据报封装成链路层帧,发送到链路上;接收节点接收该帧,并提取出数据报。节点链路5.1.1链路层提供的服务5.1.2适配器通信85.1.1链路层提供的服务链路层功能:将分组通过一个链路,从一个节点传输到邻近的另一个节点。链路层协议:用来在单段链路上传输分组。定义了在链路两端的节点之间交互的分组格式,以及当发送和接收分组时节点采取的动作。交换的数据单元称为帧(frame),封装了一个网络层的数据报。所采取的动作:包括差错检测、重传、流量控制和随机访问。典型协议:以太网、802.11无线LAN、令牌环和PPP,以及ATM。9网络层与链路层关系网络层:将运输层报文段从源主机传送到目的主机。能够在各段链路层提供异构服务的情况下,完成端到端的工作。链路层:将网络层数据报从一个节点传送到下一个节点(单段链路)。不同的链路采用不同的链路层协议,提供的服务不同。10类比例旅行社组织游客从A地到B地。经过3段旅程,如图。游客:数据报;运输区段:通信链路;运输方式:链路层协议,如汽车、飞机和火车。旅行社:选路协议。汽车飞机火车AB11链路层提供的服务将数据报通过一条通信链路从一个节点“移动”到相邻的节点。成帧:把网络层数据报封装成链路层帧,再传送到链路上。首部包括若干字段:如编号、物理地址等。不同的链路层协议,帧格式可能不同。首部数据报12链路访问:由媒体访问控制MAC协议定义帧在链路上传输的规则。点对点链路:一个发送方和一个接收方,MAC协议比较简单(或不存在),即任何时候只要链路空闲,发送方都能够发送帧。广播链路:多个节点共享一个链路(多路访问),使用MAC协议协调多个节点的帧传输。链路层提供的服务13链路层提供的服务可靠交付:保证网络层的数据报无差错地通过链路层。与运输层类似,可通过确认和重传获得。高差错率的链路:如无线链路,在本地(发生差错的链路)纠正差错,不通过运输层或应用层协议进行端到端的数据重传;低差错率的链路:如光纤、同轴电缆、双绞线链路,不需提供可靠的传输服务。14流量控制:防止发送节点的发送速率过高,避免接收节点来不及处理。链路节点的帧缓存容量有限。当帧到达接收节点的速率大于其处理速率,接收方缓冲区产生溢出,帧会丢失。链路层提供的服务15链路层提供的服务差错检测:帧在传输时有可能出现比特差错(10、01)。差错检测用来检测是否存在一个或多个差错。发送节点:在帧中设置差错检测比特;接收节点:对收到的帧进行差错检测。通过硬件实现。差错纠正:与差错检测类似。接收方不仅能检测帧中是否出现差错,还能判断差错的位置,并进行纠正。16链路层提供的服务半双工和全双工:全双工传输:链路两端的节点可以同时传输分组。半双工传输:链路两端的节点不能同时传输和接收,只能交替。17链路层服务和运输层服务比较运输层协议:在端到端的基础上为两个进程之间提供可靠传输;流量控制是在端到端的基础上提供。链路层协议:在一条链路相连的两个节点之间提供可靠传输。流量控制是在相邻节点之间的基础上提供。185.1.2适配器通信适配器(adapter):网络接口卡(NIC,networkinterfacecard)。是一个电路板(或PCMCIA板),包括RAM、DSP芯片、主机总线接口和链路接口。实现物理层及链路层的主要功能。发送节点帧接收节点数据报帧适配器适配器链路层协议19链路层功能实现相邻节点间帧的传输:成帧,传输帧,接收帧,解封发送节点:网络层将数据报传递到适配器,封装成帧,将帧传输到通信链路。接收节点:适配器接收帧,解封取出数据报,传递给网络层。差错检测:发送适配器设置差错检测比特,接收适配器完成差错检测。可靠交付:具体实现可靠交付的机制(如序号、定时器和确认)。随机访问:实现随机访问协议。20特点是一个半自治的单元。适配器接收帧,并判断是否有差错出错:直接丢弃该帧,不通知它的“父节点”(适配器所在的节点)。正确:向上传递网络层数据报,中断其“父节点”。适配器发送帧:节点把网络层数据报向下传给适配器,由适配器负责在链路上传输数据报。硬件上:适配器和节点的其他部分在同一个物理盒子中,共享电源和总线,在节点的控制之下。21适配器组成总线接口:负责与父节点通信。在适配器和父节点之间传输数据和控制信息。链路接口:负责实现链路层协议。将数据报成帧(发送)、解帧获得数据报(接收),并提供差错检测、随机访问和其他链路层功能。包含传输和接收电路。网卡速率:10Mbps、100Mbps、10/100M自适应。225.2差错检测和纠错技术比特级差错检测和纠错对一个节点发送到一个相邻节点的帧,检测是否出现比特差错,并纠正。相关技术很多。差错检测和纠错的过程网络层数据链路层,帧23发送节点将数据D附加若干差错检测和纠错位EDC,一起发送到链路。数据D包括网络层传来的数据报,以及链路级寻址信息、序列号和其他字段。保护范围包括数据D的所有字段。网络层数据链路层,帧24接收节点接收比特序列D'和EDC'。如果发生传输比特错误(01,10),D'和EDC'可能与发送的D和EDC不同。接收方根据D'和EDC',判断D'是否和初始的D相同(D的传输是否正确)。•正确:解封取出数据报,交给网络层;•出错:差错处理。网络层数据链路层,帧25说明:差错检测和纠正技术不能保证接收方检测到所有的比特差错,即可能出现未检测到的比特差错,而接收方并未发现。选择一个合适的差错检测方案使未检测到的情况发生的概率很小。差错检测和纠错技术越好,越复杂,开销更大。26三种主要差错检测技术奇偶校验:最基本的方法。检查和方法:常用于运输层。循环冗余检测:常用于链路层。5.2.1奇偶校验5.2.2检查和方法5.2.3循环冗余检测271、一比特奇偶校验发送方:在要发送的信息D(d位)后面附加一个奇偶校验位使“1”的个数是奇数(奇校验)或偶数(偶校验)一起传输发送(d+1位)。01110001101010111d位数据校验位偶校验28接收方:检测收到的信息(d+1位)中“1”的个数。偶校验:发现奇数个“1”,至少有一个比特发生差错(奇数个比特差错)。奇校验:发现偶数个“1”,至少有一个比特发生差错。01110001101010111d位数据校验位偶校验29特点可以查出任意奇数个错误,但不能发现偶数个错误。若比特差错概率很小,差错独立发生,一比特奇偶校验可满足要求。若差错集中一起“突发”(突发差错),一帧中未检测到的差错的概率达到50%。302、二维奇偶校验基本思想:将要传信息D(d比特)划分为i行j列(i个组,每组j位);对每行和每列分别计算奇偶值;结果的i+j+1个奇偶比特构成了帧的差错检测比特。i行j列31例特点:可以检测并纠正单个比特差错(数据或校验位中)。能够检测(但不能纠正)分组中任意两个比特的差错。行、列确定要发送的数据比特101011111001110,划分3组,每组5个比特。进行行、列偶校验32前向差错纠正FEC接收方可以检测并纠正差错。可与ARQ技术一起应用,接收方立即纠正差错,减少发送方重发的次数。降低分组传输的往返传播时延,适用于实时网络应用。335.2.2检查和方法把要发送的d位数据看成是一个k位整数的序列,将这些k位整数加起来,得到的和作为差错检测比特。TCP和UDP协议:对所有字段(包括首部和数据字段)都计算因特网检查和。有些协议:对首部计算一个检查和,对整个分组计算另一个检查和。34检查和发送方:将数据的每两个字节当作一个16位的整数,可分成若干整数;将所有16位的整数求和;对得到的和逐位取反,作为检查和,放在报文段首部,一起发送。接收方:对接收到的信息(包括检查和)按与发送方相同的方法求和。全“1”:收到的数据无差错;其中有“0”:收到的数据出现差错。或者核对计算的检查和是否等于检查和字段的值。35011001100110000001010101010101011000111100001100101001010110000010100101011000010例子注意当数字作加法时,最高位的进位要回加到结果中。例,有三个16比特的字:回卷和检查和(取反)无差错,和为:1011010100111101111111111111111136检查和特点:分组开销小:检查和位数比较少;差错检测能力弱:•适用于运输层(差错检测用软件实现,检查和方法简单、快速)。•链路层的差错检测由适配器中专用的硬件实现,采用更强的CRC方法。375.2.3循环冗余检测计算机网络中广泛采用。循环冗余检测CRC(cyclicredundancycheck)编码:即多项式编码,把要发送的比特串看作为系数是0或1的一个多项式,对比特串的操作看作为多项式运算。基本思想:设发送节点要把数据D(d比特)发送给接收节点。发送方和接收方先共同选定一个生成多项式G(r+1比特),最高有效位(最左边)是1。10111x4+x2+x+138发送方:计算出一个r位附加比特R,添加到D的后面产生DR(d+r比特)DR能被G模2运算整除,一起发送。接收方:用G去除接收到的DR(d+r比特)余数非0:传输发生差错;余数为0:传输正确,去掉尾部r位,得所需数据D。基本思想D:要发送的数据(d位)R:CRC校验(r位)DR(d+r位)39模2运算:加法不进位,减法不借位,即操作数的按位异或(XOR)例1011XOR0101=1110;1011-0101=11101001XOR1101=0100;1001-1101=0100乘法和除法与二进制运算类似,其中加法或减法没有进位或借位。乘以2r,即比特模式左移r个位置。D×2rXORR=D00…00XORR=DR(d+r比特)40计算R(CRC比特):DR能被G模2运算整除:即D×2rXORR=nG等式两边都用R异或,得到D×2r=nGXORR即用G来除D×2r,余数值刚好为R。R的计算:将数据D后面添加r个0,除以给定的生成多项式G,所得余数即为R(r位)。41例设D=101110,d=6,G=1001,r=3实际传输的数据形式是:101110011r+1位D后添加3个03位42生成多项式G的选择:有8、12、16和32比特生成多项式G。8比特的CRC用于保护ATM信元首部;32比特的标准CRC-32用于链路级协议:GCRC-32=100000100110000010001

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

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

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

×
保存成功