计算机网络——数据链路层
title: 计算机网络——数据链路层
date: 2019-12-21 20:42:43
categories:
- 计算机网络
tags:
数据链路层基本概念及问题
基本概念
数据发送模型
信道类型
- 点对点信道。使用一对一的点对点通信方式
- 广播信道。使用一对多的广播通信方式
链路
- 是一条点到点的物理线路段,中间没有任何其他的交换结点
- 一个链路只是一条通路的一个组成部分
数据链路
-
除物理线路外,还必须有通信协议来控制数据的传输。若把实现这些协议的硬件和软件加到链路上,就构成了数据链路
- 最常用的方法是使用适配器(网卡)来实现这些协议的硬件和软件
- 一般的适配器包括了<mark>数据链路层</mark>和<mark>物理层</mark>
-
<mark>传输内容</mark>:帧
三个基本问题
封装成帧
- 一段数据的前后分别添加首部和尾部就构成一个帧
- 首部和尾部的一个重要作用就是进行帧定界
透明传输
- 某一个实际存在的事物看起来却好像不存在一样
- 解决方法:<mark>字节填充</mark>或<mark>字符填充</mark>
- 在发送端的数据链路层的数据中出现控制字符"SOH" 、"EOT"前面加入一个转义字符"ESC"
- 在接收端,当收到连续的两个转义字符时,就删除其中前面的一个
差错控制
- 误码率(BER):在一段时间内,传输错误的比特占所传比特总数的比率称为误码率
- 循环冗余检验 CRC
- 帧检验序列 FCS:为了进行检错而添加的冗余码
- 只能做到<mark>无差错接受</mark>
- 无法做到<mark>无传输差错检验</mark>
两种情况下的数据链路层
点对点信道的数据链路层(PPP)
用户到ISP的链路使用<mark>PPP协议</mark>
目前全世界使用最多的数据链路层协议是点对点协议
用户使用拨号电话线介入因特网时,一般使用该协议
PPP协议满足的要求
- 简单
- 封装成帧
- 透明性
- 多种网路层协议
- 多种类型链路(多种传输介质)
- 差错检测
- 检测连接状态
- 最大传送单元(一般不超过MTU,MTU=1500字节(最大接受单元))
- 网路层地址协商
- 数据压缩协商(压缩算法)
PPP协议的组成
- 一个是将IP数据报封装到串行链路的方法,可以用于异步串行或同步串行介质
- 一个用来建立、配置和测试数据链路链接的链路控制协议LCP
- 一套网络控制协议NCP,允许在点对点连接上使用多种网络层协议
PPP协议的帧格式
- 7E:01111110 标志一个帧的开始或结束
- FF、03是固定的
- 第四个字段是两个字节的协议字段
- 0x0021 : PPP帧的信息字段就是IP数据报
- 0xC021: 信息字段是PPP链路控制数据
- 0x8021: 表示这是网络控制数据
- 0xC023: 信息字段是安全性认证PAP
- 0xC025: 信息字段是LQR
- 0xC223: 信息字段是安全性认证CHAP
- 对透明传输的解决(字符填充)
- 7E 分为 7D和5E
- 7D 变成 7D和5D
- 若出现ASCII码控制字符,在字符前插入7D
- 零比特填充
- 为了避免出现标志字段F一样的8比特组合
- 发送端:只要发现有连续的5个1就在后面插入一个0
- 接收端:将连续的5个1后面的0删除
PPP协议的工作状态(非考点)
以太网
以太局域网
- 拓扑结构
- 星型(依赖于集线器)
- 环型
- 总线型
- 树型
- 特点:网络为一个单位所拥有,地理范围和计算机数目有限
- 优点
- 具有广播功能,从一个站点方便的访问全网。局域网上主机可共享连接在局域网上的各种硬件和软件资源。
- 便于系统狂战和逐渐演变,各设备的位置可以灵活调整和改变
- 提高了系统的可靠性、可用性和生存性
共享通信媒体
静态划分信道
- 频分复用
- 时分复用
- 波分复用
- 码分复用
动态媒体接入控制(多点接入)
- 随机接入(主要被以太网采用)
- 受控接入
载波监听多点接入/碰撞检测 (CSMA/CD协议)
-
多点接入:表示多计算机以多点接入的方式连接在一条总线上
-
载波监听:指每一个站在发送数据之前先检测总线上是否有其他计算机在发送数据,如果有则暂停发送数据,以免发生碰撞
-
用电子技术检测总线上有没有其他计算机发送数据信号
-
碰撞检测:就是计算机边发送数据边检测信道上的信号电压大小
- 当几个栈同时在总线上发送数据,则总线上的信号电压摆动值将会增大
- 当一个站检测到的信号电压摆动值超过一定的门限值,就认为总线上至少两个站同时发送数据,标明发生了<mark>碰撞</mark>
- 也叫做冲突检测
-
检测到碰撞后
- 信号叠加,产生失真,无法获取有用信息
- 暂停发送,避免浪费网络资源,随机时间后再次发送
-
重要特性
- 使用CSMA/CD协议的以太网不能进行全双通通信只能进行双向交替通信(半双工通信)
- 每个站在发送数据之后的一小段时间内,存在藏语碰撞的可能性。这种发送的不确定性
-
争用期
- 最先发送数据帧的站,在发送数据帧后之多经过时间2τ就可知道发送的数据帧是否遭受到了碰撞。
- 经过争用期这段时间还没有检测到碰撞,才能肯定这次发送不会发生碰撞
-
以太网的争用期
- 以太网的端到端往返时延2τ称为争用期,或碰撞窗口。一般取51.2μs为争用期长度。
- 对于10Mb/s以太网,在争用期内可以发送512bit,即64字节
- 以太网在发送数据时,若前64字节未发生冲突,则后续的数据就不会发生冲突
-
最短有效帧长
- 如果发生冲突,就一定要在发送的前64字节之内
- 由于一检测到冲突就立即终止发送,这是已经发送出去的数据一定小于64字节
- 以太网规定<mark>最短有效数据帧</mark>为64字节,若不苟则补零。长度小于64字节为<mark>无效帧</mark>
-
二进制指数类型退避算法
- 发生偶鞥装的站在停止发送数据后,要推迟一个随机时间再发送数据
两个标准
- DiX Ethernet V2 是世界上第一个局域网产品的规约
- IEEE的802.3标准
严格的讲以太网是符合前者标准的局域网
两个子层
- 逻辑链路控制LLC(Logical Link Control)子层
- 媒体接入控制MAC(Medium Access Control)子层
提供的服务
- 以太网提供的服务是不可靠的交付,即尽最大努力的交付
- 当接收站收到有差错的数据帧时就丢弃此帧,其他什么也不做。差错的纠正有高层来决定
- 如果高层发现丢失一些数据而进行重传,以太网并不把它当做重传的帧而是一个新发送的帧
以太网的信道利用率
若帧长为L(bit),数据发送速率C(b/s),而帧的发送时间为L/C= T0(s),争用期2τ
-
信道利用率: <mark> a=Tτ T为 T0</mark>
-
对以太网的要求
- 当数据率一定时,对以太网的连线长度收到限制,否则τ太大
- 以太网的帧不能太短,否则T0值太小,信道利用率会太大
-
信道利用率的最大值(理想情况下,无发生碰撞,不存在争用期)
MAC层
-
MAC层的硬件地址
- 48位二进制
- 前24位(前三字节)由IEEE注册管理机构RA负责分配地址
- 后24位(后三字节)由厂家自行指派,但是必须保证无重复
- 通用名称EUI-48
适配器要检查MAC地址
- 每收到一个MAC帧就首先用硬件检查MAC帧的MAC地址
- 若是发往本站的则收下,再处理
- 否则丢弃,不做处理
- 发往本站的帧
- 单播(unicast)帧(一对一)
- 广播帧(broadcast)(一对全体)
- 多播帧(multicast)(一对多)
-
MAC帧(非考点)
扩展以太网
相关概念
-
冲突域:集线器中某两台机器相互通信时,其余无法通过该集线器通信,整个集线器形成的网为冲突域
-
集线器扩展局域网:
- 优点:
- 使不同碰撞域的机器能够跨碰撞域通信
- 扩大了局域网的地理范围
- 缺点:
- 碰撞域增大了,总的吞吐量未提高
- 如果不同的碰撞域使用不同的数据率,则无法用集线器相连
- 优点:
-
网桥
- 自学习方法
- 若从A发出的帧从接口x进入了某网桥,那么从这个接口出发沿相反方向一定可把一个帧传给A
- 网桥每收到一个帧,就记录其源地址和进入网桥的接口,作为转发表中的一个项目
- 在转发帧时,根据收到的帧对的首部中的目的地址进行转发。这时,把“地址"栏下已经记好的源地址当做目的地址,把记下的进入接口当做转发接口
- 为解决兜圈子问题——生成树算法(非考点)
- 生成树协议
- 不改变网络的实际拓扑,但逻辑上切断某些链路
- 自学习方法
虚拟局域网
LAN局域网 :由相关物理设备组网
VLAN虚拟局域网
将交换机划分为多个VLAN具有更好的安全性