计算机网络笔记——第三章、数据链路层

1、数据链路层使用的信道:

  (1)点对点信道:

      A:这种信道使用一对一的点对点通信方式。

  (2)广播信道:

      A:使用一对多的广播通信方式。

      B:因此必须使用专用的共享信道协议来协调这些主机的数据发送。

 

2、数据链路和帧

  (1)链路(Link):是一条无源的点到点的物理线路段,中间没有任何其他的交换结点。一条链路只是一条通路的一个组成部分。

  (2)数据链路(data Link):除了物理线路外,还必须有通信协议来控制这些数据的传输。若把实现这些协议的硬件和软件加道链路上,就构成了数据链路。

      A:现在常用的方法是使用适配器(即网卡)来实现这些协议的硬件和软件。

      B:一般的适配器都包括了数据链路层和物理层这两层的功能。

 

3、链路分为物理链路和逻辑链路

  (1)物理链路就是上面所说的链路

  (2)逻辑链路就是上面的数据链路,是物理链路加上必要的通信协议。

  (3)早期的数据通信协议曾叫做通信规程。因此在数据链路层,规程和协议是同义语。

 

4、透明传输:如果数据中的某个字节的二进制代码恰好和SOH或EOT一样,数据链路层就会错误地“找到帧地边界”。

  (1)解决方法:字节填充 或 字符填充

      A:发送端地数据链路层在数据中出现控制字符“SOH”或“EOT”地前面插入一个转移字符“ESC”(其十六进制编码是1B)。

      B:接收端地数据链路层在将数据送忘网络层之前删除插入地转义字符。

      C:如果转义字符也出现在数据当中,那么就在转义字符钱买你插入一个转义字符ESC。当接收端收到连续地两个转义字符时,久删除其中前面的一个。

 

5、循环冗余检验的原理

  (1)在发送端,,先把数据划分为组。假定每组k个比特。

  (2)在每组M后面再添加供差错检查用的n位冗余码,然后一起发送出去。

 

6、冗余码的计算

  (1)用二进制的模2运算进行2n成M的运算,这相当于再M后面添加n个0.

  (2)得到的(k+n)位的数除以事先选定好的长度位(n+1)位的除数P,得出商事Q而余数是R,余数R比除数P少1位,即R是n位。

  (3)将余数R作为冗余码拼接在数据M后i按,一起发送出去。

 

7、接收端对收到的每一帧进行CRC检验

  (1)若得出的余数R=0,则判定这个帧没有差错,就接受。

  (2)若余数R!=0,则判定这个帧有差错,就丢弃。

 

8、PPP协议

  (1)特点:对于点对点的链路,米钱使用最广泛的数据链路层协议是点对点协议ppp。

  (2)PPP协议是在1994年就已成为互联网的正式标准。

  (3)组成:

      A:一个将IP数据报封装到串行链路的方法。

      B:链路控制协议LCP

      C:网络控制协议NCP

 

9、PPP协议的帧格式

  (1)PPP帧的首部和尾部分别位4个字段和2个字段

  (2)标志字符 F = 0x7E(符号“0x”表示后面的字符是用十六进制表示。十六进制的7E的二进制表示是01111110)。

  (3)地址字段A只置位0xFF。地址字段实际上并不起作用。

  (4)控制地段C通常置为0x03

  (5)PPP是面向字节的,所有的PPP帧的长度都是整数字节

 

10、透明传输问题

  (1)当PPP用在异步传输时,就使用一种特殊的字符填充法。

      字符填充:

        A:将信息字段中的出现的每一个0x7D字节转变成位2字节序列(0x7D,0x5E)

        B:若信息字段中出现一个0x7D的字节,则将其转变成位2字节序列(0x7D,0x5E)。

        C:若信息字段中出现ASCII码的控制字符(即数值小于0x20的字符),则在该字符前面要加一个0x7D字节,同时将该字符的编码加以改变。

 

11、零比特填充

  (1)PPP协议用在SONET/SDH链路时,使用同步传输(一连串的比特连续传送)。这时PPP协议采用零比特填充方法实现透明传输。

  (2)在发送端,只要发现有5个连续1,则立即填入一个0

  (3)接收端对帧中的比特流进行扫描。每当发现5个连续1时,就把这5个连续1后的一个0删除。

 

 

  (2)当PPP用在同步传输链路时,协议规定采用硬件来完成比特填充(和HDLC的做法一样)。

 

posted @ 2020-03-20 13:03  不会fly的pig  阅读(459)  评论(0编辑  收藏  举报