第三章 数据链路层
3.1不同的数据链路层协议
PPP协议(点到点)
CSMA/CD协议(以太网)(带冲突检测的载波侦听多路访问机制)
(网关和本计算机在同一个网段,一般是路由器的地址,路由器隔绝广播包)
集线器(只能工作在半双工)和总线型类似
命令提示符cmd:
arp(地址解析协议)命令:可以查看计算机中缓存ip地址对应的mac地址
ipconfig:可以查看计算机的mac地址,ip地址
以太网(Etherne II)的数据帧格式:
报头8 目标地址6 源地址6 以太类型2 数据46-1500 帧检验序列
报头:8个字节,提供接收器同步和帧定界服务。
目标地址:6个字节,目标MAC地址,广播地址全为1,0xFF FF FF FF。
源地址:6个字节。指出发送节点的单点广播地址。
以太类型:2个字节,用来指出以太网帧内所含的上层协议。
有效负载:由一个上层协议的PDU(协议数据单元)构成。可以发送的最大有效负载是1500字节。由于以太网的冲突检测特性,有效负载至少是46个字节。如果上层协议数据单元长度少于46个字节,必须增补到46个字节。
帧检验序列:4个字节。验证比特完整性。
使用wireshark抓取的以太网数据包的帧格式
PPP协议帧格式:
首部标志字段(5字节) 数据(不超过1500字节) 尾部(3字节)
首部:由标志字段和协议字段构成
数据部分:信息字段的长度可变,不超过1500字节
尾部:FCS校验字段和尾部标志字段
使用GNS3抓取的PPP协议数据包的帧格式
3.2数据链路层实现的功能
封装成帧:在发送数据之前先给其加上头和尾,用来给数据定界(选定界定符的要求是尽量避免与数据混淆)
透明传输:发送端给数据加上转义字符后发送数据,接收端接收数据并去掉转义字符,这个过程由于转义字符在发送时被加上,在接收完成之后被移除,整个过程就好像没有发生任何事情,所以被称为透明传输。
差错检测:主要通过CRC校验进行差错检测。
算法:先规定一个生成多项式(共有n位),然后给被传输数据的末尾加上n-1个 0,用生成多项式除以(mod 2)加零后的传输数据,得到n位的余数,即为FCS(帧校验序列)的值
3.3数据链路层协议
3.3.1 PPP(点到点)协议:
(1)特点:简单(不提供可靠传输)
封装成帧(首部和尾部,具有帧开始符和帧结束符)
透明传输(加转义字符,去掉转义字符)
差错校验:CRC计算FCS
支持多种类型的链路:光纤,铜线。。。
检测连接装状态
支持身份验证
最大传输单元:1500字节
(2)PPP协议的划分:网络控制协议(NCP):支持不同网络层协议
链路控制协议(LCP):建立/配置和测试链路连接的选项
高级数据链路控制协议(HDLC):将数据包封装到串行链路,支持同步传输和异步传输
(3)PPP协议的帧格式
帧首字段(1B)7E+地址字段(1B)FF+控制字段(1B)+协议字段(2B)+信息部分(MTU=1500B)+FCS(2B)+帧尾字段(1B)7E
(4) PPP协议传输的方式
1)异步传输使用字节填充:如果在传输的数据中出现了7E(01111110),则将7E变成(7D和5E),如果出现 7D,则变成7D和5D
2)同步传输使用零比特填充:如果出现了0111 1110等连续的5个 0的情况,则每5个1后加一个0.
3.3.1.1同步传输和异步传输
同步传输(synchronoustransmission ):以帧为单位进行发送,通过时钟同步信号,有两种方式:有专门的线路来同步时钟;传输的数据本身就带有时钟信号(前同步码)
异步传输(asynchronous transmission):以字符为单位进行发送,两段有独立的时钟(频率不能相差太多)
3.4 广播信道的数据链路层(使用CSMA/CD协议)
3.4.1 国际标准
10base-5(表示10M带宽,使用粗同轴电缆,基带信号,最大传输距离为500m)
T表示双绞线
F表示光纤
X表示混合介质
3.4.2以太网的最短帧
(1)标准以太网设计的长度为5km,带宽为10m单程传播时延为25.6us,往返传播时延为51.2us,
则最短帧为10Mb/S*51.2us=10^7b/s*51.2*10^-6s=512b (64B)
(2)实际为等待时间t*2(争用期)*带宽
(3)截断二进制指数退避算法
从离散的整数集合[0,1,…,(2k-1)]中随机取出一个数,记为r。重传应推后的时间就是r倍的争用期。上面的参数k按下面的公式计算:
k=Min[重传次数,10]
可见当重传次数不超过10时,参数k等于重传次数;但当重传次数超过10时,k就不再增大而一直等于10。
当重传达16次仍不能成功时(这表明同时打算发送数据的站太多,以致连续发生冲突),则丢弃该帧,并向高层报告。
3.4.3 以太网的帧格式
对于无效帧,路由器直接丢弃
3.4.4 网卡的作用和MAC地址
(1)网卡使用并行通讯,其工作在物理层(物理连接,数字信号同步,数据的编码解码)和数据链路层(帧的封装、差错检验、介质访问控制)
(2)MAC地址为全球唯一,共48位二进制组成,前24位标识厂商,后24位自己指定(有单播、多播、广播MAC地址)
使用arp -a 可以解析出与其通讯的MAC地址
3.4.5 扩展以太网 (计算机数量、距离)
(1)集线器(hub):工作在物理层,不安全,可以带宽分享,是冲突域相当于网线=总线型
(2)网桥:基于MAC地址转发数据帧 数据链路层设备(冲突变小,但是延迟增加(载波侦听多路访问冲突检测))
网桥不关心是否存在其他网桥的存在,只记录自己端口对应的mac地址
(3)交换机:很多口的网桥,端口带宽独享,每一个端口冲突域(多口网桥)全双工通讯(可以不使用CSMA/CD协议)
汇聚层交换机(父级交换机) 接入层交换机(子交换机)
只要有集线器存在就为半双工 交换机比集线器安全
最短帧 帧格式 退避算法 信道利用率
以太网最短帧:往返最长时间*带宽
Ipconfig -all(查看本机的ip,mac命令)
Arp -a (本网段其他计算机的mac地址,缓存)
Wf.msc(windows防火墙)
3.4.6 生成树协议(高可用网络)
阻断环路,避免广播风暴的形成,每个交换机都有优先级和mac地址,通过比较id来i小的优先级高
选根网桥->选根端口(转发状态)->选指定端口(转发状态)其他端口为阻断状态
高速以太网(100M,1000M,10000 M)
100M 10M以太网最短帧兼容,网线长度变为100m
1GB以太网 分组突发 工作在全双工半双工 最短帧64字节+载波延伸=512字节(有冲突检测)
10GB以太网只能工作在全双工通讯,不用冲突检测 没有最短帧要求
3.4.7 VLAN 虚拟局域网
VLAN 是由一些局域网网段构成的与物理位置无关的逻辑组。
虚拟局域网其实只是局域网给用户提供的一种服务,而并不是一种新型局域网。
作者:xuan97916
参考资料: [1]韩立刚,计算机网络原理创新教程[M],水利水电出版社,2017.1