链路层Introduce

Posted Chieh

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了链路层Introduce相关的知识,希望对你有一定的参考价值。

1.网络层的数据单元是IP数据报,数据链路层的工作是将IP数据报封装为帧frame,发往链路;

当链路层接受到帧的时候,将IP数据报提取出,送往网络层。

frame struct:

[frame head|  IP data |frame tail]

2.传输控制

a>差错控制

反馈重发:检查差错编码(奇偶校验码orCRC码);若出错,重发,正确为止。

b>计时器timer

为避免发送失败导致的传输过程停滞,引入timer。发送出一帧,同时启动timer,在限定的时间内

未收到返回信息,则认为帧出错or丢失,重发。

c>序号

防止多次接受同一帧并传到网络层,编号用来区分新帧还是重发帧。

3.流量控制(发送方)

必要性:由于收发双方的设备工作速率和缓存存储空间的差异,可能导致帧淹没的情况出现,造成帧丢失。

4.以太网帧

|dest MAC|src MAC| type |   data   |CRC

|       6       |      6      |   2   |   46-1500|4

5.SLIP协议(串行线路IP)

a>Rules:

帧开始和结束处都用END(0xc0);

IP数据报中的END在帧用0xdb,0xdc代替,ESC在帧中用0xdb,0xdd代替

b>缺陷:

无法将本端IP传递给对端

无type字段,线路中存在SLIP时不能使用其他协议

无checksum,通过上层协议发现错误

6.PPP协议

 作用:为2个对等节点之间IP流量传输提供封装协议,用来同步调制

实质:fix SLIP协议的缺陷

  支持异步校验(8位,无奇偶校验)和同步链接

  支持LCP双方协商(链路)

  支持NCP双方协商(网络)

与SLIP不同:

  PPP以0x7e开始和结束,then 0xff 的地址字节,then 0x03控制字节

  data中含有0x7e时,用0x7d,0x5d来替代

7.MTU 最大传输单元

当IP数据报的长度大于链路的MTU的时候,网络层将数据报分片,小于MTU

接口MTU:允许发送的最大长度

路径MTU:2台主机路径最小的MTU值,此MTU不对称。

可用netstat -in 查看

 

以上是关于链路层Introduce的主要内容,如果未能解决你的问题,请参考以下文章

网络协议中那些属于数据链路层协议?

计算机网络--链路层

计算机网络—— 数据链路层:数据链路层概述

数据链路层-第一节:数据链路层概述

计算机网络(3) 数据链路层

计算机网络-数据链路层