数据链路层所包含的主要协议:点对点协议PPP、CSMA/CD协议、地址解析协议ARP、逆地址解析协议RARP
PPP协议是用户计算机和ISP进行通信时所使用的数据链路层协议
- 简单:数据链路层的协议非常简单,即接收方接收到的每一个帧都进行CRC检验,如果CRC检验正确,就收下,反之就丢掉,其他什么也不用做。
- 封装成帧:PPP协议必须规定特殊的字符作为帧定界符(即标志一个帧的开始和结束的字符),以便使接收端从收到的比特流中准确地找到帧开始的位置和结束的位置。
- 透明性:PPP协议必须保证传输的透明性。如果数据中出现了和帧定界符一样的比特组合时,就要采取有效措施来解决这个问题。
- 多种网络协议:PPP协议必须能够在同一条物理链路上同时支持多种网络层协议的运行。
- 多种类型链路:除了要支持多种网络层的协议外,PPP还必须能够在多种类型的链路上运行。例如:串行的或并行的,同步的或异步的,低速的或高速 的,电的或光的,交换的(动态的)或非交换的(静态的)点对点链路。
- 差错检验:PPP协议必须能够对接收端收到的帧进行检测,并立即丢弃有差错的帧。
- 检测连接状态:PPP协议必须具有一种机制能够及时自动检测链路是否处于正常状态。
- 最大传送单元:PPP协议必须对每一种类型的点对点链路设置最大传送单元MTU的标准默认值
- 网络层地址协商:PPP协议必须提供一种机制使通信的两个网络层的尸体能够通过协商知道或能够配置彼此的网络层地址。
- 数据压缩协商:PPP协议必须提供一种方法来协商使用数据压缩算法。但PPP协议并不要求将数据压缩算法进行标准化。
PPP协议不需要的功能:
- 纠错:在TCP/IP协议族中,可靠传输由运输层的TCP协议负责,而数据链路层的PPP协议只进行检错。也就是说,PPP协议是不可靠传输协议。
- 流量控制:在TCP/IP协议族中,端到端的流量控制由TCP协议负责,因而链路级的PPP协议就不需要再重复进行流量控制。
- 序号:PPP是不可靠传输协议,因此不需要使用帧的序号。
- 多点线路:PPP协议不支持多点线路,只支持点对点的链路通信。
PPP协议的组成:PPP协议有三个组成部分
- 一个将IP数据报封装到串行链路的方法
- 一个用来建立、配置和测试数据链路连接的链路控制协议LCP
- 一套网络控制协议NCP,其中的每一个协议支持不同的网络层协议。
CSMA/CD协议是采用以太网协调总线上各计算机工作的协调方法中的一种特殊协议,它是载波监听多店接入/碰撞检测的缩写。在使用CSMA/CD协议时,一个站不可能同时进行发送和接受,因此使用CSMA/CD协议的以太网不可能进行全双工通信而只能进行双向交替通信(半双工)。
ARP地址解析协议的作用是将MAC地址转换为IP地址。每一个主机都设有一个ARP高速缓存,里面有本网络上各主机和路由器的IP地址到硬件地址的映射表,这些都是该主机目前知道的一些地址。ARP把保存在高速缓存中的每一个映射地址项目都设置生存时间TTL,超过生存时间的项目就从高速缓存中删除。在IP数据报中,TTL字段的功能为跳数限制,即指明数据报在因特网中至多可经过多少个路由器。路由器在转发数据报之前就把TTL值减1,当TTL值为0时就丢弃这个数据报。
ARP的四种典型情况:
- 发送方是主机,要把IP数据报发送到本网络上的另一个主机。这时用ARP找到目的主机的硬件地址
- 发送方是主机,要把IP数据报发送到另一个网络上的主机。这时用ARP找到本网络上的一个路由器的硬件地址,剩下的工作由这个路由器完成。
- 发送方是路由器,要把IP数据报转发到本网络上的一个主机。这时用ARP找到目的主机的硬件地址
- 发送方是路由器,要把IP数据报转发到另一个网络上的一个主机。这时用ARP找到本网络上的一个路由器硬件地址,剩下的工作由这个路由器完成。
RARP逆地址解析协议的作用是将MAC地址转换为IP地址