2.链路层

本文介绍了TCP/IP模型中链路层的主要功能,包括支持多种链路层协议(如以太网、令牌环等),以及以太网和IEEE802封装的区别。此外,还详细解释了SLIP、CSLIP和PPP协议的特点与应用,并介绍了环回接口的工作原理及最大传输单元(MTU)的概念。

简介

设计链路层的目的:

  1. 为IP模块发送和接收IP数据报
  2. 为ARP模块发送ARP请求和接收ARP应答
  3. 为RARP模块发送RARP请求和接收RARP应答

TCP/IP支持多种链路层协议,如以太网、令牌环往、FDDI、RS-232串行线路等

以太网和IEEE 802封装

image_1cgp1l2jf1313hosn4m1o04spf9.png-109.3kB

其中链路层封装的源地址和目的地址都是48位(6字节)的MAC地址,ARP和RARP负责对MAC地址和32位IP地址进行互相转换

其中以太网和802主要区别是:

  1. 以太网首部最后2字节是后续数据的类型,0800代表IP数据报,0806代表ARP数据报,8035代表RARP数据报;而802首部最后2字节是后续数据的字节长度
  2. 以太网首部之后就是数据,长度为46~1500字节;802首部之后还有一段其他内容,然后才是数据,长度在38~1492字节

以太网封装格式最常见

SLIP:串行线路IP

是一种在串行线路上对IP数据报进行封装的简单形式

image_1cgpc8tp61sj5j9tpqjsqo1f1tm.png-24kB

  1. 在IP数据报前后加上END(c0)避免线路噪声被混入数据报,保证报文正确传输
  2. 将IP报文中的END字符转义为两字节0xdb和0xdc
  3. 将IP报文中的ESC字符转义为两字节0xdb和0xdd

通过转义避免IP报文中的数据被当成SLIP的特殊字符处理

优点:

  1. 简单

缺点:

  1. 每一端必须知道对方IP
  2. 数据帧中没有类型字段,只支持对IP协议封装
  3. 数据帧中没有校验和,需要依赖IP层进行校验

压缩的SLIP

简称CSLIP

串行线路速度较低,导致传输的分组通常较小,这种情况下加入20字节的TCP首部和20字节的IP首部会让数据报较大,总共超过40字节。引入CSLIP可将40字节(TCP和IP首部)压缩至3-5字节,提高传输性能

PPP:点对点协议

SLIP协议的进阶版

image_1cgpd27gqibg1bt3p5cuhqv4t13.png-40.1kB

相比SLIP,PPP的改进:

  1. 支持封装多种网络层协议
  2. 数据帧有校验和
  3. 基于IP协议通信双方可以动态协商IP地址
  4. 与CSLIP类似,支持压缩TCP和IP首部
  5. 链路控制协议可以对多个数据链路选项进行设置

环回接口

简称loopback接口,提供与本机通信的一种机制,通常使用ip地址127.0.0.1和主机名localhost

image_1cgpdlbev1ucq1k6j1cak1afoju71g.png-91.8kB

  1. 传给127.0.0.1和本机ip的数据都会传到环回接口
  2. 传到环回接口的数据不会进过以太网,而是直接进入IP输入队列,从而被IP层接收处理
  3. 传给广播或多播地址的数据会复制一份到环回接口。因为广播和多播包含了主机本身

最大传输单元MTU

为了提高网络交互的性能,链路层需要给数据帧设置长度上限,这个上限就是MTU(最大传输单元)

如果IP层数据报比MTU要大,则IP层需要进行数据分片

image_1cgpegnou1rrm157i1d2b8pk12fh1t.png-38.2kB

路径MTU

两台主机之间多个网络,每个网络链路层都有MTU,其中最小MTU就是路径MTU

路径MTU不对称,也就是在两个方向上不一致

转载于:https://my.oschina.net/u/1378920/blog/1835398

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值