导图社区 计算机网络第三章 数据链路层
这是一张究极详细的计算机网络思维导图,该图包括了数据链路层的一些知识点整理,希望你能有所收获。
编辑于2022-01-14 11:05:16计算机网络第三章 数据链路层
数据链路层几个共同的问题
数据链路和帧
概念区分
链路
从一个节点到相邻节点的一段物理线路,而中间没有任何其他交换节点
链路是一条路径的组成部分
数据链路
必须要有必要的协议控制数据的传输
将实现协议的硬件和软件加在链路上,就构成了数据链路
常用实现方法
网络适配器
早期数据通信协议称为规程
帧
点对点信道的数据链路层的协议数据单元
主要使用步骤
总览
数据链路层把网络层交下来的数据构成帧发送到链路上,以及把接收到的帧取出并上交给网络层
详细步骤
1.节点A的数据链路层把网络层交下来的IP数据包添加首部和尾部封装成帧
2,节点A把封装好的帧发送给节点B的数据链路层
3,若节点B的数据链路层收到的帧无差错,则提取出IP数据包上交给上面的网络层;否则丢弃这个帧
三个基本问题
封装成帧
在一段数据前后分别添加首部和尾部,这样就构成了一个帧
首部和尾部的重要作用-----帧定界,即确定帧的界限
最大传输单元MTU
所有链路层协议都应规定所能传输帧的数据部分长度上线
帧定界符
当传输内容是由可打印的ASCII码组成的文本文件时,可使用
SOH——首部
16进制编码为01
EOH——尾部
16进制编码为04
出现差错时容易识别,容易矫正
透明传输
理解:
当使用文本输入时,不可能有SOH和EOH的输入,所以当帧定界符出现时肯定意味着帧的开始和结束
当数据为图像时可能会在数据里出现帧开始符或帧结束符,会将帧的传输错误开始或停止,导致错误传输。
对比之下,SOH和EOH相对于文本输入数据传输是“透明”的,所以叫透明传输
数据链路层对这些数据来说是透明的
解决透明传输问题
使数据内的SOH和EOH不被解释为控制字符
具体方法
发送端在数据中出现的SOH和EOH前加入ESC
ESC为转义字符,16进制为1B
接收段的数据链路层在把数据送往网络层前删除这个插入的转义字符
如果转义字符也出现在数据中,解决方法仍是在其前面加入一个转义字符
称为字节填充/字符填充
差错检测
普通通信链路不是理想的,可能会出现传0得1,传1得0的比特差错
误码率BER
传输错误比特/总传输比特
差错检测措施——循环冗余检验CRC
除数为事先规定好的
余数比除数少一位,加在信息码后面
生成多项式
CRC检验情况
若余数R为0则判定传输无差错,则接受
若余数不为0则判定帧有差错,就丢弃
在数据链路层仅仅使用CRC做校验差错,只能达到对帧的无差错接受 近似表述为:凡是接受数据链路层接受的帧均无差错
出现传输差错复杂情况
帧丢失
帧重复
帧失序
解决方法
帧编号
帧确认
帧重传机制
根据通信线路好坏
通信质量好的链路
协议不使用确认和重传机制
质量差的链路
使用确认和重传机制
可以提高通信效率
点对点协议PPP
总概
通信线路质量差时,在链路层使用可靠传输的高级数据链路控制HDLC
如今通信线路质量好,使用简单得多的点对点协议PPP
PPP协议的特点
1992年的IEIF制定该协议,在1994年成为互联网正式标准
PPP协议应满足的要求
简单
提高互操作性
简化原理
封装成帧
规定特殊字符作为帧定界符
透明性
协议保证数据传输的透明性,采用有效措施解决数据内的帧定界符问题
多种网络层协议
在同一条物理链路上同时支持多种网络层协议运行
当点对点链路所连接的是局域网或路由器时,保证同时支持在链路上或者路由器上运行的各种网络协议
多种类型链路
必须能够在多种类型的链路上运行
差错检测
满足对接受端收到的帧进行检测,并丢弃有差错的帧
检测连接状态
必须有一种机制能够及时自动检测出链路是否处于正常工作状态
最大传送单元
对每一种类型的点对点链路设置最大传输单元MTU
MTU是数据载荷最大长度,并非帧最大长度
网络层地址协商
提供一种机制使通信的两个网络层实体能够通过协商知道或能够配置彼此网络层地址
数据压缩协商
协议必须提供一种方法来协商使用数据压缩算法
PPP协议的组成
一个将IP数据报封装到串行链路的方法
一个用来建立、配置和测试数据链路连接的链路控制协议LCP
一套网络控制协议NCP
其中每个协议支持不同网络层协议
PPP协议的帧格式
各字段的含义
首部第一个字段和尾部第二个字段都是标志段F
F规定为0x7E
标志字段表示一个帧的开始或结束
连续两帧只需要用一个标志字段
若出现连续两个标志字段,表明是一个空帧,需要丢弃
首部地址字段A,控制字段C
A规定为0xFF
C规定为0x03
A,C实际上没有携带PPP帧的信息
PPP首部第四个字段是2字节的协议字段
为0x0021
PPP帧的信息字段就是IP数据包
为0xC021
PPP帧的信息字段是链路控制协议LCP的数据
为0x8021
表明是网络层的控制数据
信息字段长度可变,不超过1500字节
尾部第一个字段FCS是CRC的帧检验序列
字节填充
当信息字段出现和标志字段一样的比特0x7E时,必须采取措施使能不生效
PPP协议异步传输时,将转义符定义为0x7D
RFC1662规定填充方法
把数据中每个0x7E字节转变为2字节序列(0x7D,0x5E)
把信息字段出现的每个0x7D转换成2字节序列(0x7D,0x5D)
信息字段出现ASCII码的控制字符(数值小于0x20的字符)则把在该字符前面要加上一个0x7D字节,并将该字符的编码加以改变,如出现0x03,则变为(0x7D,0x23)
在接受端进行相应的反变换,则可以正确的恢复出原来的信息
零比特填充
PPP协议在SONET/SDH链路时使用同步传输(一连串的比特连续传送)而非异步传输(逐字符第传送),这种情况下使用零比特填充方法实现透明传输。
具体做法
在发送端先扫描整个信息字段,发现连续5个1则填入一个0,保证数据内没有连续的6个1.
接受端收到一个帧时,先找到标志段F确定一个帧的边界。
接受端在用硬件对其中比特流扫描,每发现5个连续的1时,就把5个1后面的0删除,以还原比特流。
这样保证透明传输,可在所传送数据比特流传送任意组合而不会引起对帧边界的错误判断
PPP协议的工作状态
工作流程
设备之间无链路
物理链路
LCP链路
已鉴别的LCP链路
已鉴别的LCP和NCP链路
配置选项
发送LCP的配置请求帧
链路另一端响应的几种情况
配置确认帧
所有选项都接受
配置否认帧
所有选项都理解但不能接受
配置拒绝帧
有选项无法识别或不能接受,要协商
LCP配置选项
最大帧长
所使用鉴别协议规约
不使用PPP协议帧的地址和控制字段
建立LCP链路
鉴别
只允许传送
LCP包
鉴别协议包
检测链路质量包
种类
口令鉴别协议PAP
口令握手鉴别协议CHAP
若鉴别失败
链路终止
鉴别成功
进入网络层协议
网络层协议
PPP链路两端的网络层协议NCP根据网络层不同协议互相交换网络层特定的网络控制分组
PPP协议两端的网络层可以运行不同的网络层协议,可以使用同一个PPP协议进行通信
链路打开
可发送检查链路状态包
回送请求LCP包
回送回答LCP包
可发送终止请求LCP分组
收到终止确认LCP包后
链路终止
使用广播信道的数据链路层
局域网的数据链路层
总概
局域网
特点
网络为一个单位所有,且地理范围和站点数目均有限
优点
具有广播功能,从一个站点可以很方便的访问全网。局域网上的主机可共享连接在局域网上的各种硬件和软件资源
便于系统的拓展和逐渐地演变,各设备位置可以灵活调整和改变
提高系统可靠性,可用性和生存性
按网络拓扑进行分类
星形网
环形网
总线网
总线网两端的匹配电阻吸收总线上传播的电磁波信号的能量,避免在总线上产生有害的电磁波反射
共享信道划分方法
静态划分信道
频分复用
时分复用
波分复用
码分复用等
动态媒体接入控制(多点接入)
随机接入
所有用户可以随机发送信息,但如果很多用户在同一时刻发送信息,则在共享媒体上会产生碰撞,使得用户的发送失败,因此必须有解决碰撞的网络协议
受控接入
发送信息的用户应该服从一定的控制,称为轮询
以太网的两个主要标准
1982年
DIX Ethernet V2规约
DEC公司,因特尔公司,施乐公司联合提出
1983年
IEEE 802.3[W-IEEE802.3]
IEEE委员会提出
局域网标准
媒体接入控制MAC
适配器的作用
计算机和外界局域网的连接是通过适配器
网络接口卡NIC,又称为网卡
功能
进行数据串行传输和并行传输的转换
实现以太网协议
收到正确的帧时,使用中断来通知计算机,并交付协议栈的网络层
计算机的硬件地址就在适配器的ROM中 (计算机软件地址IP地址 在计算机存储器中)
CSMA/CD协议
总线
特点
在一台计算器发送数据,总线上所有计算机都能检测得到这个数据
在帧首部写明接收站的地址,仅当目的地址和适配器中的硬件地址一致时才能接收这个数据帧。
通信简便的措施
采用灵活的无连接工作方式
即不必先建立连接就可以直接发送数据
对数据帧不进行编号也不要求对方发回确认
以太网提供的服务是尽最大努力的交付,即不可靠交付
对有差错的帧是否进行重传则由高层决定(TCP)
以太网不知道是重传帧,而是当作新的数据帧来发送
同一时间只允许一台计算机发送数据
如果有多台计算机,使用载波监听多点接入/碰撞检测协议CSMA/CD
发送的数据使用曼彻斯特编码的信号
可提取同步信号
缺点
所占用频带宽度比原始基带信号增加了一倍
要点
多点接入说明是总线型网络,许多计算机以多点接入的让是连接在一根线上
载波监听
边发送边监听
在发送数据前或发送数据中,每个站都要不停地检测信道,实现碰撞检测
碰撞检测——检测电压变化
电磁波在1km传播延时为5us
一个站不可能同时发送和接收——半双工通信
发送的不确定性
每个站在自己发送数据后的一小段时间内,存在遭遇碰撞的可能性,这一小段时间是不确定的,取决于另一个发送数据的站到本站的距离
以太网不能保证在检测到信道空闲后的某一时间内,一定能够把自己的数据帧成功地发出去
如果希望在以太网上发生碰撞的机会很小,则必须使整个以太网的平均通信量远小于以太网的最高数据率
碰撞窗口/争用期
以太网端对端时间往返时间为2τ称为争用期
经过争用期这段时间没有检测到碰撞,才肯定这次发送不会发生碰撞
实现算法
截断二进制指数退避算法
原理
在检测到碰撞后,退避一个随机时间,生成最小退避时间的站最先获得发送权
具体规定
1,基本退避时间为争用期2τ,具体为51.2us,对于10Mbit/s的在争用期可发512比特,即64字节,可以说争用期为512比特时间.
2, k=Min[重传次数,10],则在集合[0,1,2,,,,,(2的k方-1)]集合里随机取出一个数记为r,则重传应推后时间为r倍的争用期.
3,当重传次数达到16次时,仍然不能成功,则丢弃该帧,并向高层报告
强化碰撞
接收到碰撞后,继续发送32比特或48比特人为干扰信号
帧间最小间隔
为9.6us,为了使刚刚收到数据帧的站的接收缓存来得及清理,做好接收下一帧的准备
流程
准备发送
适配器从网络层获得一个包,加上以太网的首部和尾部,组成以太网帧,放入适配器缓存中,但要在发送前先检测信道
检测信道
发送成功
在争用期间未检测到碰撞,认为发送成功
发送失败
在争用期间检测到碰撞,停止发送数据,按规定发送人为干扰信号,适配器执行指数退避算法,等待r倍的争用期后继续发送
使用集线器的星形拓扑
1990年IEEE制定星形以太网10BASE-T标准802.3i,是发展的一个里程碑
集线器
每个站到集线器的距离不超过100m
特点
使用集线器的以太网逻辑上还是一个总线网,各占共享逻辑上的总线,使用的还是CSMA/CD协议
一个集线器有多个端口,类似多端口转发器
集线器工作在物理层,每个端口仅仅简单转发比特,不进行碰撞检测
采用专门的芯片,进行自适应串音回波抵消
堆叠式集线器
可以检测故障,可进行不断电增加新模块
以太网的信道利用率
参数a
以太网单程端到端时延τ与帧发送时间T0之比
a=τ/T0
a越小,碰撞检测就能更快被检测出来,信道利用率会更大
因此,以太网连线长度受到限制,同时帧长不能太短
极限信道利用率
Smax=1/(1+a)
只有当a远小于1才能得到尽可能高的极限信道利用率
以太网的MAC层
MAC的硬件地址
硬件地址又称为物理地址或MAC地址
局域网的地址应该是每个站的名字或者标识符
发往本地的帧
单播
广播
多播
MAC帧的格式
以太网V2的MAC帧格式
目的地址,6个字节
源地址,6个字节
类型,2个字节
IP数据包,46~1500字节
FCS,4个字节
前7个字节
前同步码
第八个字节
帧开始定界符
规定无效帧
长度非整数个字节
收到的帧检验序列FCS有差错
收到的MAC客户数据字段长度不在46到1500字节之间
拓展的以太网
拓展的以太网在网络层看来仍然是一个网络
在物理层拓展的以太网
主机之间距离不能太远
拓展主机和集线器之间距离的一种简单的方法是使用光纤
优点
使得不同系的以太网可以跨系通信
扩大了以太网的物理通信范围
问题
当一个系通信时,其他的系不能通信
若不同系使用不同的以太网技术,则不能通过集线器将其相互连接起来
在数据链路层拓展以太网
网桥
网桥对收到的帧根据帧的目的地址进行转发和过滤
以太网交换机
特点
实质上是一个多端口网桥
为全双工工作模式
具有并行性,能同时联通多对端口,使其同时通信
具有N个端口的以太网交换机碰撞域共有N个
内部的帧交换表是通过自学习算法自动逐渐建立起来
交换表是一个内容可寻址存储器CAM
对于传统10Mbit/s的以太网,交换机可以通过拓展其为N倍
自学习功能
最开始没有地址时,进行广播
记录每个新的广播的地址和端口号
第二次传入地址时,只需要找到对应的端口号即可
可能会出现兜圈子的现象,为避免应在逻辑上切断某些链路,使得从一台主机到其他所有主机的路径为无环路的树状结构
从总线以太网到星形以太网
以太网交换机无总线,不使用CSMA/CD协议
因为它帧的结构没变,仍然采用以太网的帧结构
虚拟局域网(VLAN)
定义
VLAN是一些局域网网段构成与物理位置无关的逻辑组,而这些网段有某些共同需求,每个VLAN的帧都有一个明确的标识符,指明发送帧的计算机属于哪个VLAN
本质
局域网给用户提供的一种服务而非新型局域网
优点
使得广播范围变小,避免差错
提高安全性
结构
在帧的源地址和类型之间插入4字节的VLAN标签
前两个字节总是设置为0x8100
后两个字节中,前四位无用,后12位是该虚拟局域网VLAN的标识符VID,明确标志了802.1Q帧属于哪个VLAN
连接两个交换机端口的链路称为汇聚链路或者干线链路
高速以太网
100BASE-T以太网
称为快速以太网
在双绞线上传输100Mbit/s基带信号的星形拓扑以太网
仍然使用CSMA/CD协议
详细参数
争用期为10BASE-T网的1/10,为5.12us
帧间最小间隔为0.96us
100M以太网物理层标准
100BASE-TX
铜缆
网段最大长度100m
100BASE-T4
铜缆
网段最大长度100m
100BASE-FX
光缆
网段最大长度2000m
吉比特以太网
两种技术
现有的以太网
光纤通道FC
保证兼容
载波延伸
分组突发
10吉比特以太网和更快的以太网
与前面以太网帧格式完全相同
只工作在全双工方式,不存在争议
好处
以太网是一种经过实践证明的成熟技术
互操作性好,不同厂商生产的以太网都能可靠的进行互操作
在广域网使用以太网,价格为同步光纤网SONET的1/5,能适应多种传输媒体,不需重新布线
端对端的以太网连接使用帧的格式全是以太网格式,不需要进行帧的格式转换
以太网的速度演进证明了以太网
可拓展
灵活
易于安装
稳健性好
使用以太网进行宽带接入
在以太网运行PPP协议 (PPPoE)