本章最重要的内容是:
(1)数据链路层的点对点信道和广播信道的特点,以及这两种信道所使用的协议(PPP协议以及CSMAlCD 协议)的特点。
(2) 数据链路层的三个基本问题:封装成帧、透明传输和差错检测。
(3) 以太网MAC 层的硬件地址。
(4) 适配器、转发器、集线器、网桥、以太网交换机的作用以及使用场合。
集线器
交换机以及交换机的应用实例:VLAN 虚拟局域网
1.结点:主机、路由器
2…链路(link):
从一个结点到相邻结点的一段物理线路(有线或无线),而中间没有任何其他的交换结点。也可以叫做网络中两个结点之间的物理通道(链路).
补充:链路的传输介质主要有双绞线、光纤和微波。分为有线链路、无线链路。
3.数据链路
网络中两个结点之间的逻辑通道,把实现控制数据传输协议的硬件和软件加到链路上就构成数据链路。
现在最常用的方法是使用适配器(即网卡)来实现这些协议的硬件和软件。
一般的适配器都包括了数据链路层和物理层这两层的功能。
4.帧:点对点信道的数据链路层的协议数据单元.
在互联网中,网络层协议数据单元就是IP 数据报(或简称为数据报、分组包)。
5.注:早期的数据通信协议曾叫做通信规程。因此在数据链路层,规程和协议是同义语。
封装成帧、透明传输和差错检测
1.为什么要封装成帧?
其本质就是提高传输效率
因为物理层的数据传输的不可靠,导致有时候会出现误码。比如有外界的干扰,低电压变成高电压。0有可能变成1。1也有可能变成0。
物理层只负责传输。有问题的数据不能直接交给高层去处理,比如应用程序。专家设计数据链路层负责检查收到的数据是否有差错。因此数据链路层的功能之一就是差错检测。
检测到有差错后,接收方一般都是直接丢掉。通知对方重新传输过数据。那对方需要重新发送过哪部分的数据? 如果是比特流就很难操作了,只能把所有的比特流都传输过一遍。如果将比特流分成一个一个的帧就好办多了。只需要告诉对方重新发送过哪个帧(也就是出问题的数据块)就行了,其他部分就不用重新传输过了。因此数据封装成帧很重要。
2.封装成帧 (framing) 就是在一段数据的前后分别添加首部和尾部,然后就构成了一个帧。
3.首部和尾部的一个重要作用就是进行帧定界。
4.帧的界定有两种:含字节填充的分界符法,含位填充的分界标志法
5.当数据是由可打印的 ASCII 码组成的文本文件时,帧定界可以使用特殊的帧定界符。
6.控制字符 SOH (Start Of Header,十六进制为01) 放在一帧的最前面,表示帧的首部开始。另一个控制字符 EOT (End Of Transmission十六进制为04) 表示帧的结束。如果数据中的某个字节的二进制代码恰好和 SOH 或 EOT 一样,数据链路层就会错误地“找到帧的边界”
1.什么是透明传输:
无论什么样的比特组合的数据,都能够按照原样没有差错的通过这个数
据链路层。或者换句话说,对所传输的数据来说,这些数据就"看不
见”数据链路层有什么妨碍数据传输的东西。或者说,数据链路层对这些
数据来说是透明的。
2.两种常见方法实现透明传输
●转义字符:面向字节传输过程中,双方约定好的特殊字符或特殊约定作为
转义字符.
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-g6lvsnuK-1586015470034)(assets/1585015375168.png)]
●比特填充:面向比特传输过程中,5个连续的“1”后添加一个“0”
1.如果要实现差错检验,必须在发送数据的后面增加校验码,刮实现不了。校验码的值由校验方法决定。常用的校验方法:
(1)奇偶校验:简单,漏检率较高.
(2**)CRC循环冗余校验**:这个考试经常考。务必要会计算。
它的工作原理:
●是双方约定好-一个共同的除数,这个就是生成多项式。这个生成多项式很重要,最高位决定了校验码的位数。
x3+x2+ 1多项式转为1101 ,好方便后面的计算。
●发送方计算: (发送的数据+位数个0 ) /生成多项式,得到一个余数。
●开始计算。比如要发送的数据是: 101001, 生成多项式为x3+x2+ 1,则计算
: 101001000/ 1101 。一 定要记得加3个0。经常有同学忘记。
●除法过程记住是做异或运算:相同为0,不同为1.
得到余数: 001 .则这个就是校验码。3位,生成多项式决定的。值就是算出来
的余数。
●发送方发送数据+校验码。例如就是101001001.
●接收方 收到数据,做同样的操作 :接收到的数据/ 生成多项式。比
如101001001 / 1101。如果没有差错的话,则余数-定为0,如果中间有问题的
话,则余数不为0.
●漏检率有吗?有。所以一般网卡的生成多项式都是CRC- 16或者32。位数很多。这样就降低漏检率。但是比奇偶校验强多了。效率也多了。
对于点对点的链路,目前使用得最广泛的数据链路层协议是点对点协议 PPP (Point-to-Point Protocol)。
简单说PPP特点:提供不可靠的数据报服务,检错,无纠错
纠错
流量控制
序号
多点线路
半双工或单工链路
补充:PPP 协议之所以不使用序号和确认机制是出于以下的考虑:
当 PPP 用在同步传输链路时,是面向位的,协议规定采用硬件来完成比特填充.
当 PPP 用在异步传输时,是面向字符的,就使用一种特殊的字节填充法。
RFC 1662规定了如下所述的填充方法:
(1)把信息字段中出现的每一个 0x7E字节转变成为2字节序列 (0x7D, 0x5E)。
(2)若信息字段中出现-一个0x7D的字节(即出现了和转义字符一样的比特组合) ,则
把0x7D转变成为2字节序列 (0x7D, 0x5D)。
(3)若信息字段中出现ASCII码的控制字符( 即数值小于0x20的字符),则在该字符前面要加入一个0x7D字节,同时将该字符的编码加以改变。
例如,出现0x03 (在控制字符中是“传输结束" ETX)就要把它转变为2字节序列(0x7D, 0x23)。即0x03的从右到左的第六位加一.
在数字数据通信中,一个最基本的要求是发送端和接收端之间以某种方式保持位同步,只有保证了位同步才可能保证帧同步,所以接收端必须对它所接收的数据流中每一位进行正确的采样,才能确保数据接收的正确性,为此,通信双方必须遵循同一个通信规程,使用相同的位同步方式进行数据传输,根据通信规程所定义的位同步方式,可分为异步通信和同步通信两大类
异步通信是指发送方和接收方的采样时钟不是同一个,故名,以字
符为单位的数据传输,常用的是ASCII字符集
数据块以字符为单位,每个字符都要附加1位起始位和1位停止位作标
志,以标记字符的开始和结束
此外,还要附加1位奇偶校验位
也称为群同步传输
异步通信必须指定的四个参数:
➢波特率
➢奇偶校验
➢字符长度
➢停止位长度
同步通信是指发送方和接收方的采样时钟是同一个,故名.
通常发送方在发送数据的编码中包含时钟,而接收方则从数据流中提取时钟用以采样,所以说双方所用的时钟是同一个.
根据同步通信规程,同步通信又分为面向字符的同步通信和面向bit流的同步通信.
当用户拨号接入ISP时,路由器的调制解调器对拨号做出确认,并建立-条物理连接。
PC机向路由器发送一系列的 LCP分组(封装成多个PPP帧)。
这些分组及其响应选择-些PPP数,并进行网络层配置, NCP给新接入
的PC机分配个临时的IP地址,使PC机成为因特网上的一一个主机。
通信完毕时, NCP释放网络层连接,收回原来分配出去的IP地址。接着,
LCP释放数据链路层连接。最后释放的是物理层的连接。
可观,PPP协议已不是纯粹的数据链路层的协议,它还包含了物理层和网络
层的内容。
广播信道可以进行一对多的通信,下面讨论的局域网使用的就是广播信道.
有多台计算机,共享一个信道,如何进行信道分配?即如何使众多用户能够合理而方便地共享
通信媒体资源。
这在技术上有两种方法:
1.静态划分:
在物理层使用的。比如已经学过的频分复用, 时分复用等等。但是这种
方法代价比较高,一般用于主干网,不适用于局域网适用。
2.动态媒体接入控制:
受控接入:用户不能随机地发送信息必须服从一定的控制。这类的典型代表就是
令牌环网和集中控制的多点线路探询(轮询)。不会产生冲突。使用少,不讨论.
随机接入:用户可随机的发送信息,因此有可能两个或更多的计算机在同一时刻
发送信息,就要产生冲突。或者是碰撞。信号发生冲突也就是信号叠加。比如原
来是5伏电压,两个信号叠加,变成10伏电压,那这个到底是比特1还是比特0?
都不是。因此就会被丢弃。发生冲突后,用户的发送就意味着失败。因此,必须
要有解决碰撞的协议。典型代表就是CSMA/CD (Carrier Sense Multiple
Access with Collision Detection)
局域网特点:网络为-个单位所拥有,且地理范围和站点数目均有限
局域网优点:
(1)具有广播功能,从一个站点可很方便地访问全网。局域网上的主机可共享连接在局
域网上的各种硬件和软件资源。
(2) 便于系统的扩展和逐渐演变,各设备的位置可灵活调整和改变。
(3) 提高了系统的可靠性(reliability) 、可用’性(avai1ability)和生存性(survivability) 0
局域网分类(按照网络拓扑):星型网,环形网,总线网.
局域网工作层次:数据链路层与物理层
现在以太网几乎成为了局域网的同义词,因此本章从本节开始都是讨论以太网
技术。本章从传统以太网速率10Mbit/s进行讨论.
(1)以网的两个标准DIX Ethemet V2 与IEEE 的802.3 标准只有很小的差别,因此很多人也常把
802.3 局域网简称为"以太网" (此处也经常不严格区分它们,虽然严格说来,"以太网"应
当是指符合DIX Ethemet V2 标准的局域网)。
(2)IEEE 802 委员会就把局域网的数据链路层拆成两个子层,即逻辑链路控制LLC (Logical Link
Control)子层和媒体接入控制MAC (Medium Access Control)子层。与接入到传输媒体有关的内容都放在MAC 子层,而LLC 子层则与传输媒体无关,不管采用何种传输媒体和MAC 子层的局域网对LLC 子层来说都是透明的.(本章不讨论LLC子层)
(1)适配器和局域网之间的通信是通过电缆或双绞线以串行传输方式进行的,而适配器和计算机
之间的通信则是通过计算机主板上的I/O 总线以并行传输方式进行的。
因此,适配器的一个重要功能就是要进行数据串行传输和并行传输的转换
(2)但适配器所实现的功能却包含了数据链路层及物理层这两个层次的功能。
(3)适配器本来是在主机箱内插入的一块网络接口板(网卡NIC),现在都嵌入在主板中
(4)适配器工作原理:适配器在接收和发送各种帧时,不使用计算机的CPU 。这时计算机中的CPU
可以处理其他任务。当适配器收到有差错的帧时,就把这个帧直接丢弃而不必通知计算机。当
适配器收到正确的帧时,它就使用中断来通知该计算机,并交付协议战中的网络层。
(1)广播信道能够实现一对多通信,那么如何在总线上广播信道上实现一对一通信.
最初的以太网是将许多计算机都连接到一根总线上。易于实现广播通信。当
初认为这样的连接方法既简单又可靠,因为总线上没有有源器件。
为了实现一对一通信,将接收站的硬件地址写入帧首部中的目的地址字段中。
仅当数据帧中的目的地址与适配器的硬件地址-致时,才能接收这个数据帧。
总线也有缺点。若多台计算机或多个站点同时发送时,会产生发送碰撞或冲
突,导致发送失败。
(2)为了通信的简便,以太网采取了两种重要的措施:
第一个举措:
第二个举措:
1.协议名词理解:
注:协议的实质是"载波监听"和"碰撞检测"
"多点接入"就是说明这是总线型网络,许多计算机以多点接入的方式连接在一根总线上。
载波监听”是指每一个站在发送数据之前先要用电子技术检测一下总线上是否有其他计算机在发送数据,如果有,则暂时不要发送数据,以免发生碰撞。
"碰撞检测"(冲突检测)也就是"边发送边监听",即适配器边发送数据边检测信道上的信号电压的变化情况,以便判断自己在发送数据时其他站是否也在发送数据.
当几个站同时在总线上发送数据时,总线上的信号电压摆动值将会增大(互相叠加)。当一个站检测到的信号电压摆动值超过一定的门限值时,就认为总线上至少有两个站同时在发送数据,表明产生了碰撞。
发生碰撞时,总线传输的信号严重失真,无法恢复出有用信息.因此,每个站点一旦检测到碰撞,要立即停止发送,免得继续浪费网络资源,然后等待一段随机时间之后再进行发送.
2.CSMA/CD 工作流程
3.协议计算相关
电磁波在1 km 电缆的传播时延约为5μs (这个数字应当记住)
使用CSMA/CD协议的以太网,只能进行**半双工通信,**即双向交替通信,因为不可能同时发和收.
在局域网的分析中,常把总线上的单程端到端传播时延记为τ(tao)
发送端A检测是否[碰撞时间最多是两倍的总线端到端的传播时延**(2τ(tao)),或总线的端到端往返传播时延.这个时间叫做争用期.也叫碰撞窗口**.过了争用期不碰撞才能确定这次发送不会碰撞
以太网的具有发送的不确定性。不能保证某一时候一定能把数据帧发送出去
以太网使用截断二进制指数退避(truncated binary exponential backoff)算法来确定碰撞后重传的时机.。见课本P88
从离散整数集[0,1,…(2^k-1)]中随机取数x,则重新侦听因推后的时间为x倍的争用期(51.2微秒).注意,重传次数最大为10,不能超过十.当重传16次仍不成功,那么久丢弃帧.
凡长度小于最短帧64 字节的帧都是由于冲突而异常中止的无效帧
4.动态退避
5.补充:
非坚持型监听算法
(1)如果信道空闲,则发送消息,否则转(2)
(2)如果信道忙,后退一个随机时间,转(1)
1—坚持型监听算法
(1)如果信道空闲,发送消息,否则转(2)
(2)如果信道忙,随时监听,一有空闲,发送消息
P-坚持型监听算法
(1)如果信道空闲,则有概率P发送消息,用(1-P)的概率延迟一个空闲单位。一个时间单位为τ(tao)
(2)如果信道忙,随时监听,直到信道空闲,转(1)
(3)延迟一个时间单位后,转(1)
1.传统以太网最初是使用粗同轴电缆,后来演进到使用比较便宜的细同轴电缆,最后发展为使用更便宜和更灵活的双绞线。
2.采用双绞线的以太网采用星形拓扑,在星形的中心则增加了一种可靠性非常高的设备,叫做集线器 (hub)。
3.10base-T含义:
l4.注意到,成功发送一个帧需要占用信道的时间是T0+t (发送加传播时延)。
重点:mac层硬件地址,mac帧结构
1.在局域网中,硬件地址又称为物理地址,因为生产适配器时,6 字节的 MAC 地址已被固化在适配器的ROM。或者叫 媒体接入控制MAC (Medium Access Control)地址,实际上就是适配器地址或适配器标识符 EUI-48。
2.请注意,如果连接在局域网上的主机或路由器安装有多个适配器,那么这样的主机或路由器就有多个“地址”。更准确些说,这种48 位“地址”应当是某个接口的标识符。
IEEE规定地址字段的第一字节的最低位为I/G位。I/G 表示Individual / Group.
IEEE把地址字段第一字节的最低第2位规定为G/L位,表示Global / Local。
(1)适配器从网络.上每收到一个MAC帧就首先用硬件检查MAC帧中的MAC地址。如果是发往本站的帧则收下,然后再进行其他的处理。否则就将此帧丢弃,不再进行其他的处理。
(2)"发往本站的帧”包括以下三种帧:
(3)所有的适配器都至少能够识别前两种帧,即能够识别单播地址和广播地址。有的适配器可用编程方法识别多播地址。
(4)只有目的地址才能使用广播地址和多播地址。以混杂方式(promiscuous mode)工作的以太网适配器只要“听到”有帧在以太网.上传输就都接收下来。
1.以太网两种标准,见上面,其中最常用的 MAC 帧是以太网V2 的格式。
2.无效的mac帧
3.IEEE 802.3 MAC 帧格式
与上面标准中第三字段不同,这里是“长度、类型”,不过由于采用曼彻斯特编码,长度并没有必要说明,可以判断结束标志。
4.l帧间最小间隔为 9.6 μs,相当于 96 bit 的发送时间。一个站在检测到总线开始空闲后,还要等待 9.6 ms 才能再次发送数据。
将多个以太网段连成更大的、多级星形结构的以太网。
指这样一部分网络,其中任何一台设备发出的广播通信都能被该部分网络中的所有其他设备所接收。
1.扩展以太网更常用的方法是在数据链路层进行。早期使用网桥,现在使用以太网交换机。
l网桥工作在数据链路层。它根据 MAC 帧的目的地址对收到的帧进行转发和过滤。
l当网桥收到一个帧时,并不是向所有的接口转发此帧,而是先检查此帧的目的 MAC 地址,然后再确定将该帧转发到哪一个接口,或把它丢弃。
1990 年问世的交换式集线器 (switching hub) 可明显地提高以太网的性能。交换式集线器常称为以太网交换机 (switch) 或第二层交换机 (L2 switch),强调这种交换机工作在数据链路层。
存储转发方式:把整个数据帧先缓存后再进行处理。
直通 (cut-through) 方式
l以太网交换机运行自学习算法自动维护交换表。
一个例子的过程:
理解自学习算法:开始交换表为空
自学习算法归纳
自学习算法存在的问题:
为了增加网络的可靠性,在使用以太网交换机组网时,往往会增加一些冗余的链路。在这种情况下,自学习的过程就可能导致以太网帧在网络的某个环路中无限制地兜圈子。即存在回路会耗费网络资源
(1)l早期,以太网采用无源的总线结构。现在,采用以太网交换机的星形结构成为以太网的首选拓扑。
(2)局域网存在的以下几个方面的问题:
(1)l利用以太网交换机可以很方便地实现虚拟局域网 VLAN (Virtual LAN)。
(2)lIEEE 802.1Q 对虚拟局域网 VLAN 的定义:
(3)l虚拟局域网其实只是局域网给用户提供的一种服务,而并不是一种新型局域网。
(4)l由于虚拟局域网是用户和网络资源的逻辑组合,因此可按照需要将有关设备和资源非常方便地重新组合,使用户从不同的服务器或数据库中存取所需的资源。
1.改善了性能
2.简化了管理
3.降低了成本
4.改善了安全性
l根据用户计算机的MAC地址划分虚拟局域网。
l属于在第二层划分虚拟局域网的方法。
l允许用户移动。
l缺点:需要输入和管理大量的MAC地址。如果用户的MAC地址改变了,则需要管理员重新配置VLAN。
例如:
MAC 地址 | VLAN |
---|---|
00-15-F5-CC-C8-14 | 10 |
C0-AB-D5-00-18-F4 | 10 |
C0-C5-18-DE-BC-E6 | 30 |
“类型” | VLAN |
---|---|
IP | 10 |
IPX | 30 |
…… | … |
IP 子网 | VLAN |
---|---|
192.168.1.0/24 | 10 |
192.168.2.0/24 | 30 |
…… | … |
应用 | VLAN |
---|---|
FTP (文件传输服务) | 10 |
TELNET (远程终端) | 30 |
…… | … |
**注意:**在不同位置使用的帧格式不同。
l速率达到或超过 100 Mbit/s 的以太网称为高速以太网。
l100BASE-T 在双绞线上传送 100 Mbit/s 基带信号的星形拓扑以太网,仍使用 IEEE 802.3 的 CSMA/CD 协议。
l100BASE-T 以太网又称为快速以太网 (Fast Ethernet)。
l1995 年IEEE已把 100BASE-T 的快速以太网定为正式标准,其代号为 IEEE 802.3u。
3.100 Mbit/s 以太网的三种不同的物理层标准
l100BASE-TX
l100BASE-T4
l100BASE-FX
2.吉比特以太网的物理层
l使用两种成熟的技术:一种来自现有的以太网,另一种则是美国国家标准协会 ANSI 制定的光纤通道 FC (Fiber Channel)。
名称 | 媒体 | 网段最大长度 | 特点 |
---|---|---|---|
1000BASE-SX | 光缆 | 550 m | 多模光纤(50 和 62.5 mm) |
1000BASE-LX | 光缆 | 5000 m | 单模光纤(10 mm)多模光纤(50 和 62.5 mm) |
1000BASE-CX | 铜缆 | 25 m | 使用 2 对屏蔽双绞线电缆 STP |
1000BASE-T | 铜缆 | 100 m | 使用 4 对 UTP 5 类线 |
(1)l吉比特以太网工作在半双工方式时,就必须进行碰撞检测。
(2)l为保持 64 字节最小帧长度,以及 100 米的网段的最大长度,吉比特以太网增加了两个功能:1.载波延伸 (carrier extension)2.分组突发 (packet bursting)
l当很多短帧要发送时,第一个短帧要采用载波延伸方法进行填充,随后的一些短帧则可一个接一个地发送,只需留有必要的帧间最小间隔即可。这样就形成可一串分组的突发,直到达到 1500 字节或稍多一些为止。
l当吉比特以太网工作在全双工方式时(即通信双方可同时进行发送和接收数据),不使用载波延伸和分组突发。
l10 吉比特以太网(10GE)并非把吉比特以太网的速率简单地提高到 10 倍,其主要特点有:
l以太网的工作范围已经从局域网(校园网、企业网)扩大到城域网和广域网,从而实现了端到端的以太网传输。
l这种工作方式的好处有:
l以太网宽带接入具有以下特点:
1.可以提供双向的宽带通信。
2.可以根据用户对带宽的需求灵活地进行带宽升级。
3.可以实现端到端的以太网传输,中间不需要再进行帧格式的转换。这就提高了数据的传输效率且降低了传输的成本。
4.但是不支持用户身份鉴别。