目录
3.0数据链路层的概述
数据链路层使用的信道主要有以下两种类型:
1.点对点信道:该信道使用一对一的点对点通信方式。
2.广播信道:该信道使用一对多的广播通信方式。
3.1数据链路层的几个共同问题
3.1.1数据链路和帧
链路与数据链路:
链路:就是从一个结点到相邻结点的一段物理线路,而中间没有任何其他的交换结点。
数据链路:实现通信协议的硬件和软件加到链路上,就构成了数据链路。
注意:有时也出现物理链路和逻辑链路,而物理链路即为链路,逻辑链路即数据链路,同时物理链路和数据链路的关系为:物理链路+协议(使用网络适配器)=数据链路。
帧:数据链路层以帧为传输的和处理数据。
3.1.2三个基本问题
三个基本问题即:封装成帧,透明传输和差错检测。
3.1.2.1封装成帧
定义:在一段数据的前后分别添加首部和尾部,构成一个帧。
其中首部和尾部的作用是帧定界(确定帧的界限),数据部分长度上限为:最大传送单元MTU。
3.1.2.2透明传输
定义:数据链路层对上层交付的传输数据没有任何限制,就好像数据链路层不存在一样。
实现透明传输的方法:
1.在面向字节物理链路使用字节填充(或者字符填充)的方法实现透明传输。
2.在面向比特的物理链路使用比特填充的方法实现透明传输。
3.1.2.3差错检测
比特差错:实际的通信链路都不是理想的,比特在传输过程中可能产生差错;1可能变成0,而0也可能变成1。
误码率BER:在一段时间内,传输错误的比特占所传输比特总数的比率即为误码率。
差错检测的方法:
1.奇偶校验:
在待发送的数据后面添加1位奇偶校验位,使整个数据(包括所添加的校验位在内)中“1"的个数为奇数(奇校验)或偶数(偶校验)。
奇偶校验的特点:
如果有奇数个位发生误码,则奇偶性发生变化,可以检查出误码;
如果有偶数个位发生无码,则奇偶性不发生变化,不能检查出误码(漏检);
2.循环冗余校验CRC:
收发双方约定好一个生成多项式G(x);(生成多项式各项系数构成比特串)
发送方基于待发送的数据和生成多项式计算出差错检测码(冗余码),将其添加到待传输数据的后面一起传输;(模2运算)
接收方通过生产多项式来计算收到的数据是否产生了误码;(余数变为0,则传输的过程中产生误码)
3.2点对点协议PPP
点对点协议PPP是目前使用最广泛的点对点数据链路层协议。
3.2.1.1PPP协议应满足的需求
1.简单
2.封装成帧
3.透明性
4.多种网络层协议
5.多种类型链路
6.差错检测
7.检测连接状态
8.最大传输单元(默认值1500字节)
9.网络层地址协商
10.数据压缩协商
3.2.1.2PPP协议的组成
1.一个将IP数据报封装到串行链路的方法(封装成帧)。
2.链路控制协议LCP。
3.一套网络控制协议NCP。
3.2.2PPP协议的帧格式
3.2.2.1各字段的意义
标志(F)字段:PPP的定界符,取值为0x7E;
协议(P)字段:指明帧的数据部分送交哪个协议处理:
当P=0x0021时,则表示帧的数据部分为IP数据报
当P=0xC021时,则表示帧的数据部分为LCP分组
当P=0x8021时,则表示帧的数据部分为NCP分组
帧检验序列(FCS)字段:CRC计算出的校验位
3.2.2.2字节填充
字节填充,规则如下:
1.将信息字段中出现的每一个0x7E字节转变为0x7D,0x5E;
2.将信息字段中出现的每一个0x7D字节转变为0x7D,0x5D;
2.将信息字段中出现的每一个0x03字节转变为0x7D,0x23;
接收方的处理:进行反变换即可恢复出原来的帧的数据部分。
3.2.2.3零比特填充
发送方的处理:对帧的数据部分进行扫描,只要发现5个连续的比特1,则立即填充1个比特0。
3.2.3PPP协议的工作状态
3.3使用广播信道的数据链路层
3.3.1局域网的数据链路层
局域网最主要的特点是:网络为一个单位所拥有,且地理范围和站点数目均有限。
局域网的特点:
1.具有广播功能;
2.便于系统的扩展和逐渐演变,各设备的位置可灵活调整和改变。
3.提高了系统的可靠性,可用性和生存性。
局域网按网络拓扑分类:星形网,环形网,总线网。
共享信道的方法:
静态划分信道(例如:PDM,TDM,WDM,CDM);
动态媒体接入控制(多点接入),其中分为随机接入和受控接入。
3.3.1.1以太网的两个主要标准
以太网的两个主要标准为:IEEE 802.3标准和DIX Ethernet V2,两者差别不大。
在局域网中,数据链路层分为逻辑链路控制LLC子层和媒体接入控制MAC子层,由于适配器没有LLC协议,故不考虑LLC协议,只考虑MAC协议。
3.3.1.2适配器的作用
适配器的作用:将计算机与外界局域网连接起来。(当计算机要发送IP数据报时,就由协议栈把IP数据报向下交给适配器,组装成帧后发送到局域网。)
*3.3.2 CSMA/CD协议
CSMA/CD协议的要点:
载波监听(CS)多点接入(MA)/碰撞检测(CD)即CSMA/CD。
载波监听CS:不管在想要发送数据之前,还是在发送数据之中,每一个站都必须不停的检测信道(边发送边监听)。
当检测到总线空闲96比特时间,则发送这个帧;
当检测到总线忙,则继续检测并迭代总线转为空闲96比特时间,然后发送这个帧。
多点接入MA:多个站连接在一条总线上,竞争使用总线。
碰撞检测CD:适配器边发送数据边检测信道上的信道电压的变化情况。
当发现总线上出现碰撞,则立即停止发送,退避一段随机时间(由截断二进制指数退避算法运算得出)后再次发送。
τ:总线上的单程端到端传播时延。
2τ:端到端往返时间为争用期。
当经过争用期这段时间内没有检测到碰撞,则本次发送不会发生碰撞。
最小帧长:以太网规定最小帧长为64字节。
最小帧长可以确保主机在帧发送完成之前就检测到该帧的发送过程中是否发生碰撞。
最大帧长:以太网V2的MAC帧的最长度为1518字节,而插入VLAN标记后的802.1Q帧的最大长度为1522字节(相比于前者多了4个字节的VLAN标记)。
截断二进制指数退避算法
退避时间=基本退避时间(争用期)*随机数r
其中随机数r是在k中随机挑选出来,而k=Min[重传次数,10]。
3.3.3使用集线器的星形拓扑
由于使用了10BASE—T双绞线和集线器,以太网拓扑就从总线型变为星形网络,以下介绍一下集线器的特点:
1.使用集线器的以太网在逻辑上仍然是一个总线网,仍然使用CSMA/CD协议。
2.集线器有许多端口,类似于一个多端口的转发器。
3.集线器工作在物理层,只进行转发比特流,
4.集线器可进行自适应串音回波抵消。
3.3.4以太网的信道利用率
发送一帧所需的平均时间=退避时间+占用信道的时间(发送时延+τ);
而以太网的信道利用率S=T0/(T0+τ)=1/(1+a),a=τ/T0,
当a->0时,信道利用率为最大值。
3.3.5以太网的MAC层
1. MAC层的硬件地址
在局域网中,硬件地址又称为物理地址或MAC地址(因为该地址用于MAC帧中,同时该地址属于数据链路层的范畴。)
帧的三种格式:
单播帧(一对一);
广播帧(一对全体);
多播帧(一对多)。
当多个主机连接在同一个广播信道上,要想实现两个主机之间的通信,则每一个主机都必须有一个唯一的标识,即一个数据链路层地址。
在每一个主机发送的帧中必须携带标识发送主机和接收主机的地址,由于这类地址是用于媒体接入控制MAC,因此被称为MAC地址;
注意:
MAC地址一般被固化在网卡(网络适配器)的电可擦可编程只读存储器EEPROM中,因此MAC地址也被称为硬件地址;
MAC地址又时也被称为物理地址(这不意味着MAC地址属于网络体系结构中的物理层!)
MAC地址是对网络上各接口的唯一标识,而不是对网络上各设备的唯一标识。
2.MAC帧的格式
以太网帧的格式有两种标准:
DIX Ethernet V2标准(即以太网V2标准,主要讨论该标准);
IEEE 802.3标准。
以太网V2的MAC帧格式如下:
注意:当数据长度小于46字节时,MAC子层就会在数据字段的后面加入一个整数字节填充字段,以保证以太网的MAC帧长不小于64字节。
IEEE802.3标准规定出现以下情况之一即为无效的MAC帧:
1.帧的长度标识整数个字节;
2.用收到的帧检验序列FCS查出有差错;
3.收到的帧的MAC客户数据字段的长度不在46~1500字节之间。
3.4扩展的以太网
3.4.1在物理层扩展以太网(集线器)
用多个集线器连成更大的以太网的好处与缺点,
好处:
1.使不同系的以太网上的计算机能够进行跨系通信。
2.扩大了以太网的覆盖的地理范围。
缺点:
1.碰撞域被扩大。
2.集线器的局限性,即不同的系不能使用不同的以太网技术(如数据率不同)。
碰撞域:碰撞域是在同一个网络上两个比特同时进行传输则会产生碰撞。
3.4.2在数据链路层扩展以太网(交换机)
以太网交换机工作在数据链路层,它收到帧后,在帧交换表中查找帧的目的MAC地址对应的接口号,然后通过该接口转发帧。
1.以太网交换机的特点
a.以太网交换机的实质是一个多端口的网桥(网桥:对收到的帧根据其MAC目的地址进行转发和过滤);
b.以太网交换机的工作方式是全双工方式;
c.使用以太网交换机连接的主机都具有独占传输媒体,无碰撞地传输数据的特点;
d.以太网交换机的帧交换方式有:存储转发与直通交换(接收数据帧的同时就立即按数据帧的目的MAC地址决定该帧的转发端口)。
2.以太网交换机的自学习功能
其过程:
1.对收到的帧进行登记(登记内容为帧的源MAC地址与进入交换机的接口号);
2.根据帧的目的MAC地址和交换机的帧交换表对帧进行转发,有以下三种情况:
a.明确转发:交换机知道从那个接口进行转发;
b.盲目转发:即广播发送该帧(过滤);
c.明确丢弃:交换机知道不应该转发该帧,讲其丢弃。
注意:交换表中的记录都有自己的有效时间,到期删除,该做法是防止交换机的接口改接另一台主机和主机更换了网卡。
生成树协议STP:可以在增加冗余链路来提高网络可靠性的同时又避免网路环路带来的各种问题。
3.4.3虚拟局域网
虚拟局域网VLAN是一种将局域网内的设备划分成与物理位置无光的逻辑组的技术,这些逻辑组具有某些共同的需求。
VLAN标签:用来指明发送该帧的计算机属于哪一个虚拟局域网。如图:
当以太网的帧插入VLAN标签之后,则变成了802.1Q帧。