欢迎来到天天文库
浏览记录
ID:38387675
大小:424.50 KB
页数:40页
时间:2019-06-11
《计算机网络--CH4点对点信道的数据链路层》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第4章点对点信道的数据链路层第4章点对点信道的数据链路层4.1数据链路层的基本概念4.1.1数据链路层的简单模型4.1.2链路和数据链路4.2三个基本问题4.2.1帧定界4.2.2透明传输4.2.3差错检测4.3点对点协议PPP4.3.1PPP协议的特点4.3.2PPP协议的帧格式4.3.3PPP协议的工作状态4.4HDLC协议(略)数据链路层数据链路层使用的信道主要有以下两种类型:点对点信道这种信道使用一对一的点对点通信方式。广播信道这种信道使用一对多的广播通信方式,因此过程较复杂。广播信道上连接的主机很多,因此必须使用专用的共享信道协议来协调这些主机的数据发。4.1数据链路层的基本概念
2、4.1.1数据链路层的简单模型局域网广域网主机H1主机H2路由器R1路由器R2路由器R3电话网局域网主机H1向H2发送数据链路层应用层运输层网络层物理层链路层应用层运输层网络层物理层链路层网络层物理层链路层网络层物理层链路层网络层物理层R1R2R3H1H2从层次上来看数据的流动数据链路层的简单模型(续)局域网广域网主机H1主机H2路由器R1路由器R2路由器R3电话网局域网主机H1向H2发送数据链路层应用层运输层网络层物理层链路层应用层运输层网络层物理层链路层网络层物理层链路层网络层物理层链路层网络层物理层R1R2R3H1H2仅从数据链路层观察帧的流动这就是--对等层通信IP数据报1010…
3、…0110帧取出数据链路层网络层链路结点A结点B物理层数据链路层结点A结点B帧(a)(b)发送帧接收链路IP数据报1010……0110帧装入数据链路层传送的是帧仅从数据链路层观察帧的流动封装过程拆封装过程数据链路层像个数字管道常常在两个对等的数据链路层之间画出一个数字管道,而在这条数字管道上传输的数据单位是帧。早期的数据通信协议曾叫作通信规程(procedure)。因此在数据链路层,规程和协议是同义语。结点结点帧帧4.1.2链路和数据链路链路(link)是一条无源的点到点的物理线路段,中间没有任何其他的交换结点。一条链路只是一条通路的一个组成部分。数据链路(datalink)除了物理线路外
4、,还必须有通信协议来控制这些数据的传输,这就是我们常说的逻辑链路。若把实现这些协议的硬件和软件加到链路上,就构成了数据链路。现在最常用的方法是使用适配器(即网卡)来实现这些协议的硬件和软件。一般的适配器都包括了数据链路层和物理层这两层的功能。4.2三个基本问题帧定界--就是确定帧的界限(边界)。透明传输--网络的复杂机制对于端用户来说也是看不见的,因而是透明的。也就是用户不必关心传输过程的处理机制。差错控制--就是控制差错。通信过程中的差错大致可分为两类:一类是由热噪声引起的随机错误;另一类是由冲击噪声引起的突发错误。突发性错误影晌局部,而随机性错误影响全局。导致差错的原因是?4.2.1帧
5、定界帧定界(framing)就是确定帧的界限。帧结束帧首部IP数据报帧的数据部分帧尾部MTU数据链路层的帧长从这里开始发送帧开始用控制字符进行帧定界的方法举例SOH装在帧中的数据部分帧帧开始符帧结束符发送在前EOT4.2.2透明传输SOHEOT出现了“EOT”被接收端当作无效帧而丢弃被接收端误认为是一个帧数据部分EOT完整的帧发送在前解决透明传输问题发送端的数据链路层在数据中出现控制字符“SOH”或“EOT”的前面插入一个转义字符“ESC”(其十六进制编码是1B)。字节填充(bytestuffing)或字符填充(characterstuffing)——接收端的数据链路层在将数据送往网络层
6、之前删除插入的转义字符。如果转义字符也出现数据当中,那么应在转义字符前面插入一个转义字符。当接收端收到连续的两个转义字符时,就删除其中前面的一个。SOHSOHESCSOHEOTESCESCzESCyESCzESCx原始数据EOTEOT经过字节填充后发送的数据字节填充字节填充字节填充字节填充发送在前帧开始符帧结束符用字节填充法解决透明传输的问题3.差错检测比特在传输过程中可能会产生差错:1可能会变成0而0也可能变成1。在一段时间内,传输错误的码元/比特占所传输码元/比特总数的比率称为误码率/误比特率。误码率与信噪比有很大的关系。为了保证数据传输的可靠性,在计算机网络传输数据时,必须采用各种差
7、错检测措施。循环冗余检验的原理在数据链路层传送的帧中,广泛使用了循环冗余检验CRC(CyclicRedundancyCheck)的检错技术。在发送端,先把数据划分为组。假定每组k位。假设待传送的一组数据M=101001(现在k=6)。我们在M的后面再添加供差错检测用的n位冗余码一起发送。冗余码的计算用二进制的模2运算进行2n乘M的运算,这相当于在M后面添加n个0。得到的(k+n)位的数除以事先选定好的长度为(n+1)位的
此文档下载收益归作者所有