TCP/IP 卷一 链路层

2.1 链路层目的  

1)为IP模块发送和接收IP数据报  

2)为ARP模块发送ARP请求和接收ARP应答  

3)为RARP发送RARP请求和接收RARP应答

2.2 以太网和IEEE 802封装  

802.3针对整个CSMA/CD网络,802.4针对令牌总线网络,802.5针对令牌环网络。802网络共有的逻辑链路控制(LLC)。802.2和802.3定义了一个与以太网不同的帧格式  

以太网IP数据报的封装是在RFC 894中定义的,IEEE 802网络的IP数据报封装在RFC 1042中定义。  

常用的封装格式是RFC 894定义的格式,即以太网帧。以太网帧类型字段之后是数据。而802帧长度字段之后跟随的是3个字节的LLC和5个字节的802.2 SNAP,如图1所示。



图1 IEEE802.2、802.3 (RFC 1042)和以太网的封装格式(RFC894)

注:长度是指数据的长度,不包括CRC校验码。 DSAP 目的服务访问点, SSAP 源服务访问点

802.3标准定义的帧和以太网帧都有最小长度要求。802.3规定数据部分至少为38字节,以太网帧最少有46字节

2.3 尾部封装

RFC893使用,目前基本不适用

2.4 SLIP:串行线路IP

在串行线路上对IP数据报进行封装的简单形式,适用于RS-232串行端口和高速调制解调器接入Internet。
帧格式:1)IP数据报以END(0xc0)开头,防止数据报到来之前的线路噪声被当成数据报内容。同时数据报也以END为结尾;2)若IP数据报中含有END,则连续传输两个字节oxdb和0xdc取代该字符。0xdb被称为SLIP的ESC字符 3)如果IP数据报中含有ESC字符,则连续穿两个字节0xdb和0xdd取代该字符。突入
图2 SLIP报文
SLIP缺陷:1)每一端需要知道对方的IP地址 ,但没有办法把本端的IP地址通知给另一端( 不知道地址的话 怎么通信? )2)数据帧中没有类型字段,如果一条线路用于SLIP则它不能同时使用其他协议;3)SLIP中没有校验字段,一旦传输的报文被线路噪声影响,则只能通过上层协议发现错误。
由于串行线路的速率脚底,而且通信通常是交互式的,因此在SLIP线路上有许多小的TCP分组,但是其IP首部和TCP首部字节较多,产生了CSLIP(压缩SLIP)协议进行压缩。

2.5 PPP点对点协议

PPP协议修改了SLIP的缺陷。
PPP协议主要包含三部分:1)在串行链路上封装IP数据报的方法。PPP即支持数据为8位和无奇偶校验的 异步模式(?) ,还支持面向 比特的同步链接? 。2)建立、配置以及测试数据链路的链路控制协议(LCP协议)。允许通信双方进行协商,以确定不同选项 3)针对不同网络层协议的网络控制协议体系
PPP数据帧格式:1)每帧都以标志字符0x7e开始和结束 2)地址,值始终为0xff( 表示链路上所有主机? )3)协议控制字节,0x03 4)对于特殊字符0x7e,在异步链路中,当作转义字符,在PPP数据帧中,紧连着的字符的第六个比特要取其补码。a、如果信息中有字符0x7e,则连续传送两个字符0x7d和0x5e b、如果转义字符,则连续传送两个字符0x7d和0x5d,实现转义字符的转义 c、默认情况下,字符值小于0x20,需要转义,如遇到字符0x01,则传送0x7d和0x21两个字符

图3 ppp数据帧格式

PPP协议常应用于串行链路,相较于SLIP的优点:1)ppp支持多种协议 2)每一帧都有循环冗余校验 3)通讯双方可进行IP地址的动态协商 4) 与CSLIP类似,对TCP和IP报文首部进行压缩

2.6 环回接口

IP地址127.0.0.1分配给环回接口,该接口命名为localhost。一个传个环回接口的IP数据报不能出现在任何网络上


图4 环回接口处理IP数据报的过程

1)传给环回地址(一般为127.0.0.1)的任何数据均作为IP输入

2)传给广播地址或多播地址的数据报复制一份传给环回接口,然后送到以太网上,因为广播传送和多播传送的定义包含主机本身

3)任何传送给该主机IP地址的数据均送到环回接口


2.7 最大传输单元MTU

 以太网 1500字节;802.3 1492字节

若IP层的数据报长度大于链路层的MTU,则IP层需要将报文分片,每片都要小于MTU

2.8 路径MTU

两台通信主机路径中的最小MTU,称为路径MTU。

每个网络的链路层可能有不同的MTU。

两台主机间的路径MTU不一定是常数,它取决与当时所选择的路由,由于选择路径不一定对称,因此路径MTU在两个方向上不一定一致


你可能感兴趣的:(通讯TCP-IP协议)