数据链路层属于计算机网络的底层,它使用的信道主要有以下两种类型
(1)点对点通信:一对一点对点通信
(2)广播通信:一对多的通信
3.1数据链路层的几个共同问题
3.1.1数据链路和帧
-
链路:从一个节点到相邻节点之间的一段物理线路(有线或者无线)。可见链路是一条路径的组成部分。
-
数据链路:把实现这些协议的软件和硬件加到链路上,就构成数据链路。
-
帧:对点信道的数据链路层的协议数据单元
-
网络层协议的数据单元就是IP数据报
-
点对点信道的数据链路层在进行通信时的主要步骤如下:
1)节点A把网络层交下来的IP数据报添加首部和尾部封装成帧
2)节点A把封装好的帧发送到节点B的数据链路层
3)若节点B的数据链路层收到的帧无差错,则从收到的帧中提取出IP数据报交给上面的网络层;否者就舍弃这个帧
3.1.2三个基本问题
1、封装成帧
- 封装成帧就是在一段数据段前后分别添加首部和尾部
- 首部尾部一个最重要的作用就是帧定界
- 每一种链路层协议都规定了所能传送的帧的数据部分长度上限——最大传输单元MTU(Maximum Transfer Unit)
- 帧开始符SOH 帧结束符EOT
- 数据传输层的实现:网卡
- 网络层实现:OS内核
2、透明传输
“透明”:某一个实际存在的事物看起来却好像不存在
问题:数据中可能出现的控制字符“SOH”和“EOT”在接收端不被解释为控制字符
方法:发送端的数据链路层在数据中出现控制字符“SHO”或“EOT”的前面插入一个转义字符“ESC”,在接收端的数据链路层在数据送往网络层中之前删除这个插入的转义字符。称之为“字节填充”或“字符填充”
3、差错控制
比特差错:比特在传输过程中可能会产生差错,0和1互换
误码率BER(Bit Error Rate):在一段时间内,传输错误的比特占传输比特总数的比率
循环冗余检查CRC(Cyclic Redundancy Check):添加冗余码(校验码)
可靠传输:数据链路层发送端发送什么,在接受端就接受什么。
传输差错包括比特差错、帧丢失、帧重复、帧失序
3.2点对点协议PPP
3.2.1PPP协议的特点
ppp协议:用户计算机和ISP进行通信所使用的数据链路层协议
1.PPP协议应该满足的需求
简单、封装成帧、透明性、多种网络层协议、多种类型链路、差错控制、检测连接状态、最大传输的单位、网络层地址协议、数据压缩协商
2、PPP协议的组成
(1)、MTU限制
(2)、链路控制层协议LCP(Link Control Protocol)
(3)、网络协议NCP(Network Control Protocol)
3.3、使用广播信道的数据链路层
3.3.1、局域网的数据链路层(广播信道)
-
局域网的最主要的特点是:网络为一个单位所拥有,地理范围和站点均有限。
-
局域网的优点:
1、具有广播功能
2、便于系统的扩展和逐渐演变,各设备的位置可以随意改变
3、提高了系统的可靠性、可用性、和生存性
-
局域网按网络拓扑结构进行分类:星形网、环路网、总线网。
-
信道的划分方法:
(1)、静态划分:用户只要分到信道就不会跟其他人发生冲突
(2)、动态媒体接入控制(多点接入):
- 随机接入:随机接入,用户可以随时发送信息,可能会发生碰撞
- 受控接入:用户不能随机地发送信息,必须服从一定的控制(令牌、轮询)
-
传统的以太网:10Mbit/s速率
1、以太网的两个标准
DIX Ethernet
IEEE 802.3
- 数据链路层分为:逻辑链路控制LLC(Logical Link Control)、媒体接入控制MAC(Medium Access Control)
- 现在市场上只剩下DIX Ethernet V2
2、适配器的作用
-
计算机与外界局域网的连接是通过适配器。这种接口板又称网络接口卡NIC(Network Interface Card)或简称“网卡”
-
适配器的功能:
进行数据串行传输和并行传输的转换
在适配器中必须装有对数据进行缓存的存储芯片
管理适配器的设备驱动程序安装在计算机的操作系统
适配器还要能够实现以太网协议
3.3.2、CSMA/CD协议
-
最早的以太网是将许多计算机都连接到一个总线上。
-
人们把局域网上的主机称之为“主机”“工作站”“站点”或“站”
-
CSMA/CD协议要点
先听后发,边发边听
(1)、多点接入:说明这是总线型网络。许多计算机以多点接入的方式连接在一根总线上。
(2)、载波监听(边发送边监听):不管在想要发送数据前,还是发送数据中,每个站点都必须不断地检验信道。
(3)、碰撞检测:一旦发现总线上发生了碰撞,适配器就停止发送,然后等待随机一段时间再发送。
-
一个站不可能同时发送和接收(但必须边发送边监听)
-
发送的不确定性:以太网不能保证再检测到信道空闲后的一段时间内,一定能够将自己的数据帧成功的发送出去(传播时延)
-
争用期:以太网的端到端的往返时间2Π
-
规避算法
(1)、基本退避时间 = 2Π (2)、从整数集合 [0, 1, … , (2k - 1)] 中随机地取出一个数,记为 r。 (3)、 重传所需的时延 = r ⅹ 基本退避时间。 参数 k = Min[重传次数, 10] (4)、当重传达 16 次仍不能成功时即丢弃该帧,并向高层报告。
-
10M bit/s以太网的争用期长度
(1)争用期的长度 = 51.2 us。 (2)、对于 10 Mbit/s 以太网,在争用期内可发送 512 bit,即 64 字节(最短有效帧)。
3.3.3 使用集线器的星状拓扑
- 在星形的中心则增加了一种可靠性非常高的设备,叫做集线器 (hub)
3.3.4 以太网的信道利用率
- 成功发送一个帧需要占用信道的时间是 T0 + τ ,比帧的发送时间要多一个单程端到端时延 τ
- 要提高以太网的信道利用率,就必须减小 τ 与 T0 之比。
- 在以太网中定义了参数 a = 以太网单程端到端时延 τ 与帧的发送时间 T0 之比: a = τ /T0
- 只有当参数 a 远小于 1 才能得到尽可能高的极限信道利用率。 据统计,当以太网的利用率达到 30% 时就已经处于重载的情况。
3.3.5 以太网的MAC层
1、MAC层的硬件地址
-
硬件地址又称为物理地址,或 MAC 地址。
-
IEEE 802 标准为局域网规定了一种 48 位的全球地址(简称为地址)是指局域网上的每一台计算机中固化在适配器的 ROM 中的地址。
-
注意:如果连接在局域网上的主机或路由器安装有多个适配器,这样的主机或路由器就有多个“地址”。更准确些说,这种 48 位“地址”应当是某个接口的标识符。
-
MAC地址的标准
IEEE前三个字节(即高24位)组织唯一标识符 OUI (Organizationally Unique Identifier)
厂家后三个字节 扩展标识符 (extended identifier)
适配器没有重复的地址
地址被固化在适配器的ROM中
-
类型是实现多路复用的基础