导图社区 CN-3 链路层
计算机网络 第三章 数据链路层,内容包含链路层的功能概述、数据链路层的设备,希望这份脑图会对你有所帮助。
编辑于2023-04-03 17:45:51链路层概述及设备
链路层的功能概述
基本概念
链路层
数据链路层负责通过一条链路从一个结点向另一个物理链路直接相连的相邻结点传送数据报
点对点
主机、路由器
链路和数据链路
链路
网络中两个结点之间的物理通道,链路的传输介质主要有双绞线、光纤和微波。分为有线链路、无线链路
数据链路
网络中两个结点之间的逻辑通道,把实现控制数据传输协议的硬件和软件加到链路上就构成数据链路
帧
链路层的协议数据单元PDU称为帧,封装了网络层的IP数据报/分组
链路层的任务
加强物理层传输原始比特流的功能,将物理层可能出错的物理连接改为逻辑上无差错的数据链路,使之对上层表现为一条无差错的链路
为网络层提供服务
数据链路层在物理层提供服务的基础上向网络层提供服务
其最基本的服务是将源自网络层来的数据可靠地传输到相邻节点的目标机网络层
三类服务
无确认无连接服务
不建立连接,不需要确认,丢的帧不重发,上层处理
适用于实时通信或误码率较低的通信通道
以太网
有确认无连接服务
不建立数据链路,但需要发挥确认信号,没收到就重传
提高传输可靠性,适用于误码率较高的
无线通信
有确认面向连接服务
建立数据链路,传输帧,释放数据链路,每一帧都要给出确认
可靠性最高,适用于可靠性实时性要求高的场合
有连接必有确认
链路层功能
链路管理
只用于面向连接的服务
管理链接的建立,维持和释放过程
结点间通信,交换信息,初始化等
在多个站点共享同一物理信道的情况下(如在局域网中),如何在要求通信的站点间分配和管理信道也属于数据链路层管理的范畴
组帧和透明传输
将网络层的分组封装成帧,以帧的格式传输
需要添加首部和尾部
用于帧定界和帧同步
透明传输
若数据中有和帧定界相同的比特组合,就可能会丢弃后面的帧,故链路层要实现透明传输
即,无论是什么样的比特组合,都能在链路上传送
流量控制
接收方来不及处理(处理速度不一,缓冲区有限),要求要限制发送方的流量,使其发送速率不超过接收方的接受能力
链路层和传输层流量控制的区别
流量控制不是链路层特有
很多高层都有
控制形式
数据链路层的流量控制是点对点的
控制:相邻两节点之间数据链路上的流量
传输层的流量控制是端到端的
控制:源端到目的端的流量
流量控制手段
数据链路层流量控制手段:接收方收不下就不回复确认
传输层流量控制手段:接收端给发送端一个窗口公告
滑动窗口协议
链路层:窗口是固定大小的
传输层窗口可变
注:
OSI模型中,链路层有流量控制
TCP模型中,流量控制在传输层
差错控制
帧错:
帧的丢失、重复、失序等
位错:比特错
由于噪声,传输过程中数据错误,接收端要校验,丢弃,发送端要自动重传ARQ等
数据链路层的设备
冲突域和广播域
冲突域
在物理层
冲突域是指连接到同一物理介质上的所有结点的集合,这些结点之间存在介质争用的现象
在同一个冲突域中的每一个节点都能收到所有被发送的帧
即,同一时间只能有一台设备发送信息的范围(多台就会发生冲突)
冲突域的大小会影响网络性能
广播域
在链路层
网络中能接收任一设备发出的广播帧的所有设备的集合
即,站点发出一个广播信号,所有能够接收到该信号的设备范围就是广播域
广播会占用大量网络资源,影响网络带宽
隔离
二层设备能隔离冲突域
网桥/交换机
交换机能缩小冲突域的范围,交换接的每一个端口就是一个冲突域
三层设备才隔离广播域
路由器能隔离广播域,即可以连接不同的广播域,其每一个端口就是一个广播域
通常说的局域网(LAN)特指使用路由器分割的网络,也就是广播域
4个冲突域,1个广播域
* 网桥基本概念
网桥的概念
拓展以太网(跨域通信)的方式
物理层
光纤作为链路,通过光纤调制器和光纤解调器远距离连接局域网
通过主干集线器连接各个集线器
链路层
网桥(早期)
局域网交换机
网段:
两个或多个以太网通过网桥连接后,就成为一个覆盖范围更大的以太网,而原来的每个以太网就称为一个网段
一般指一个计算机网络中使用同一物理层设备(传输介质,中继器,集线器等)能够直接通讯的部分
网桥
网桥工作在链路层的MAC子层,可以使以太网各个网段成为隔离开的碰撞域(冲突域)
网桥分类
透明网桥
“透明”指以太网上的站点并不知道所发送的帧将经过哪几个网桥,是一种即插即用设备一一自学习
源路由网桥
源路由网桥:在发送帧时,把详细的最佳路由信息(路由最少/时间最短)放在帧的首部中
方法:源站以广播方式向欲通信的目的站发送一个发现帧
网桥的功能
网桥会根据MAC帧的目的地址对帧进行转发和过滤。当网桥收到一个帧时,并不直接向所有接口转发此帧(集线器的功能),而是先检查此帧的目的MAC地址,然后再确定将该帧转发到哪一个接口,若是在同一个网段就丢弃(即过滤)
具有寻址和路径选择功能,能够根据帧信息确认帧的传输方向
从源网络接收帧,以目的网络的介质访问控制协议向目的网络转发该帧
网桥可以在不同或相同类型的LAN之间存储并转发帧,必要时还进行链路层上的协议转换
网桥对接收到的帧不做任何修改,或只对帧的封装格式做很少的修改
可以把原协议的信息段的内容作为另一种协议的信息部分封装在帧中
有足够大的缓冲空间
网桥的自学习功能
网桥传输数据时,会动态建立转发表(初始为空)
网络A和B连接网桥的1端口,C和D连接网桥的2端口
多次传输数据后,网桥的转发表就会记录网络地址对应的端口号
当A向C发送数据,经过网桥,网桥根据目的地址和转发表,确定C在2端口,就会从2发出
当A向B发送数据,网桥能判断出源站和目的站在同一个网段,就会将帧丢弃,不用转发
网桥的动态转发表是实时更新的
网桥的特点
优点
1.能过滤通信量,增大吞吐量。
2扩大了物理范围
3.提高了可靠性。
4.可互连不同物理层、不同MAC子层和不同速率,类型的以太网。
缺点
增大了时延
只有两个端口,只适用于用户数不多和通信量不大的网络——>交换机
没有流量控制功能
不同MAC子层的网段桥接在一起时,需要进行帧格式的转换
局域网交换机
局域网交换机
局域网交换机,又称为以太网交换机
——本质上就是多端口的网桥,工作在数据链路层
交换机能经济地将网络分成小的冲突域,为每个工作站提供更高的带宽
原理
检测从以太端口来的数据帧的源和目的地的MAC(介质访问层)地址,然后与系统内部的动态查找表进行比较,
若数据帧的源MAC地址不在查找表中,则将该地址加入查找表,并将数据帧发送给相应的目的端口。
交换机往往具有多种速率的端口,10Mb/s,100Mb/s,1Gb/s等
交换机的特点
交换机对工作站是透明的,管理开销低廉,简化了网络结点的增加、移动和网络编号的操作
不仅可以隔离冲突域,也可以隔离广播域
每个端口都直接与单台主机相连(网桥的端口往往连接到一个网段),并且一般都工作在全双工方式。
能同时连通多对端口,使每对相互通信的主机都能像独占通信媒体那样,无碰撞地传输数据。
是一种即插即用设备,其内部的帧的转发表是通过自学习算法自动地逐渐建立起来的。
由于使用专用的交换结构芯片,交换速率较高。
独占传输媒体的带宽(最大优点),因为会选择的转发数据帧
两种交换模式
直通式交换机
只检查目的地址(6B),查完就立刻转发
优点:延迟小,速度快
缺点:可靠性低,缺乏智能性和安全性,无法支持具有不同速率的端口的交换
存储转发式交换机
先将帧放入高速缓存,并检查是否正确,正确则通过查找表找到输出端口转发,错误则丢弃
优点:可靠性高,可以支持具有不同速率的端口的交换
缺点:延迟较大
交换机的自学习
交换机的过滤和转发基于动态建立的交换表完成。交换表将网段(主机)的MAC地址和连接该MAC的交换机接口一一对应
记录发来数据的主机在哪个端口
这使得交换机是即插即用的
主机随时会变,故交换表的每一个表项都有一定的有效时间,过期自动删除,动态保证表中数据符合网络的实际情况
组帧和差错控制
组帧和透明传输
成帧/透明传输
封装成帧
成帧
封装成帧就是在一段数据的前后部分添加首部和尾部,这样就构成了一个帧
接收端在收到物理层上交的比特流后,就能根据首部和尾部的标记,从收到的比特流中识别帧的开始和结束
帧定界
帧的首部和尾部包含许多控制信息,重要作用:帧定界(确定帧的界限)
帧同步
接收方应当能从接收到的二进制比特流中区分出帧的起始和终止
最大传送单元 MTU
为保证帧的传输效率,帧的数据部分长度应该尽可能大。每种协议都规定了帧的数据部分的长度上限——MTU
透明传输
透明传输是指不管所传数据是什么样的比特组合,都应当能够在链路上传送
说明:当所传数据中的比特组合恰巧与某一个控制信息一样时,就必须采取适当的措施(组帧方法),来实现透明传输
组帧的方法
字符计数法
字符计数
帧首部使用一个计数字段(第一个字节,八位)来标明帧内字符数
特点
容易出错:一旦计数字段出错,即失去了帧边界划分的依据,
计数字段的脆弱性
接收方无法判断帧的结束和下一帧的开始,失去同步
字符填充法
字符填充法
使用特定的字符(控制字符)来界定一帧的开始和结束
SOH(start of header)+ EOT(end of transmission)
透明传输
当传送的帧是由文本文件组成时是透明传输的
(文本文件的字符都是从键盘上输入的,都是ASCII码,不涉及控制字符)
当传送的帧是由非ASCII码的文本文件组成时(二进制代码的程序或图像等)就要采用字符填充方法实现透明传输
前加ESC
转义字符ESC会被添加在信息位中的特殊字符的前面,表明接下来是一个数据信息而不是结束字符
实现复杂,不兼容
零比特填充法
零比特填充法
允许数据帧包含任意个数的比特,也允许每个字符的编码包含任意个数的比特
使用一个特定的比特模式,即01111110来标志一帧的开始和结束
实现透明传输:5110
发送端
遇到连续的5个1就在后面插入一个0
接收端
每收到连续的5个1时,删除后面紧跟的0,
若不是0,则是结束符01111110
零比特填充法很容易用硬件实现,性能优于字符填充
违规编码法
违规编码法
物理层编码时,通常采用违规编码法
在曼彻斯特编码中,高-低,低-高电平对可用来表示数据
而高-高,低-低电平对没有被使用,是违规的,就可以用来定界帧的起始和终止
实现透明传输
违规编码法不需要采用任何填充技术,便能实现数据传输的透明性,
但它只适用于采用冗余编码的特殊编码环境
局域网IEEE 806.2
更常用
差错控制和检错编码
差错的来源
差错的来源
都是由于噪声引起的
全局性
由于线路本身电气特性所产生的随机噪声(热噪声),是信道固有的,随机存在
解决办法:提高信噪比来减少或避免干扰。(对传感器下手)
局部性
外界特定的短暂原因所造成的冲击噪声,是产生差错的主要原因
突发噪声
解决办法:通常利用编码技术来解决。
传输差错
帧错
帧丢失,帧重复,帧失序
解决
对于无确认无连接这类通信质量好的有限传输链路,不确认重传,直接交由上层处理
对于通信质量差的无线传输链路,确认重传,采用有确认的两类服务
位错
比特位出错:0变1,1变0
解决:
检错,自动重传请求ARQ
前向纠错FFC:接收端能发现错误位(检错),并纠错(纠错)
差错控制(比特错)
检错编码
奇偶校验码
CRC循环冗余码(实际上有纠错功能,但链路层中只检错),错则丢,重传
纠错编码
海明码
注:链路层和物理层对比特的操作
链路层
针对的是一组比特
通过冗余码技术检验一组二进制比特串是否发生差错
物理层
针对的是单个比特
主要解决传输过程中比特的同步等问题
奇偶校验码
编码
n-1位信息位+1位校验元
分类
奇校验码
附加1个校验元后,n位中1的个数应该是奇数个
前n-1位中有奇数个1,添0
前n-1位中有偶数个1,添1
偶校验码
附加1个校验元后,n位中1的个数应该是偶数个
作用
只能够检测奇数位的出错情况(只知道可能出现了1位错、3位错、5位错),但并不知道哪些位错了
也不能发现偶数位的出错情况,也没有纠错能力
检错能力50%
另外
奇校验产生不了全0代码
循环冗余码
生成多项式
任何一个由二进制数位串组成的代码都可以与一个只含有0和1两个系数的多项式建立一一对应的关系
一个k位的帧,可以表示为从x^k-1到x^0的一个多项式,多项式的阶为k-1
编码方式
循环冗余码(cyclic Redundancy code CRC),又称为多项式码。
给定一个m bit的帧或报文,发送器会生成一个r bit的序列,称为帧检验序列(FCS)
发送端将数据分组,每组m个bit
每一组根据发送接收双方约定的除数/生成多项式得到的余数生成r位冗余码,加上冗余码构成帧后再发送
帧检验序列FCS 冗余码/校验码
加0(左移),假设生成多项式G(x)的阶是r,则加r个0
多项式N位,阶是N-1
加0后数据除以多项式,余数即为冗余码/FCS/CRC校验码
异或计算:同0异1
接收端用得到的d+r位数据/生成多项式得到的余数判断
余数为0,则判定此帧无差错(大概率是无差错的)
余数不为0,则丢弃该帧
说明
FCS的生成以及接收端CRC检验都是硬件实现,处理迅速,不会延误数据传输
循环冗余码本身具备纠错功能,但在网络传输中,一般直接丢弃错误帧,要求发送端重传,不使用纠错功能,方便协议的实现
通过CRC检错,数据链路层能做到对帧的无差错接受,凡是接收端数据链路层接受的帧均无差错
链路层使用CRC检验,能够实现无比特差错的传输,但这还不是可靠传输
可靠传输:数据链路层发送端发送什么,接收端就收到什么
使用CRC的过程中,错误帧会被丢弃
海明码
编码最小距离 (海明距离)
编码的检测能力和纠错能力 和 该编码集中,任意两组合法代码之间的最少二进制位数的差异有关,即编码的最小距离
即
1组 合法代码中,最少需要改变几位数会变成另一个合法代码
两个二进制码字之间不同位的个数
要满足能同时检错,纠错,
D:检测错误的位数
C:纠正错误的位数
L:编码最小距离
有d位错
检错码距
L=d+1
纠错码距
L=2d+1
海明码
海明码是具有一位纠错能力,两位检错能力的编码。采用的是奇偶校验,分组校验
编码规则
确定海明码的位数
有效信息位:n位
校验位:k位
即,要想检测2~4位的有效信息,需要检测位3位
校验位的分布和分组
检测位Ci在代码的2^(i-1)位上
1、2、4、8
为了让检测位和他对应的小组中1的个数为奇数/偶数
C1对应的g1小组管住了,凡是位置编码最低位为1的所有位数:1(001)、3(011)、5(101)、7(111)
简单来说:就是该位置的位数转化为二进制后, 第1小组里的位置最低位为1,第2小组里的位置第2低位为1
确定校验位的取值
组内采用奇/偶校验
对应组内的1统一配成奇数/偶数个
检测位的取值与该位所在检测小组所承担的奇偶校验任务有关,配偶或配奇
校验纠错过程
即,对传送后的汉明码形成新的检测位Pi (i=1,2,4,8,…),按配偶规则,新的检测位Pi应该为0,否则出错
可靠传输流量控制和介质访问控制
流量控制和可靠传输
流量控制/可靠传输/滑动窗口概述
流量控制
流量控制
较高的发送速度和较低的接收能力的不匹配,会造成传输出错,因此流量控制也是数据链路层的一项重要工作
即,发快,收慢,要控制发送端发送速率,接收端收不下就不回复确认
停止-等待协议
原理
发送方每发送一帧,都要等待接收方的应答信号,确认之后才能发送下一帧
接收方每接收一帧,都要反馈一个应答信号,表示可接收下一帧
如果接收方不反馈应答信号,那么发送方必须一直等待
特点
简单,每次只允许发送一帧,然后就等待,传输效率很低
滑动窗口
窗口的概念
发送窗口
在任意时刻,发送方都维持一组连续的允许发送的帧的序号,称为发送窗口
发送窗口控制发送端的流量
窗口大小WT表示在还未收到对方确认消息的情况下,发送方最多还能够发送多少个数据帧
接收窗口
接收方也维持一组连续的允许接收帧的序号,称为接收窗口
序号在窗口内才能接收
滑动窗口
发送端
发送端每收到一个确认帧,发送窗口就向前滑动一个帧的位置
当发送窗口内没有可以发送的帧(即窗口内的帧全部是已发送但未收到确认的帧)时
发送方就会停止发送,直到收到确认帧使窗口移动才开始继续发送
接收端
接收端收到数据帧后,将接收窗口向前移一个位置,并发回确认帧
若收到的数据帧落在接收窗口之外,则一律丢弃
滑动窗口协议的类型
后退N帧协议
GBN
选择重传协议
SR
只在窗口大小上有区别
特性
只有接收窗口向前滑动(接收方发送了确认帧)时,发送窗口才有可能向前滑动(收到确认帧后才会滑动)
停等协议也是一种滑动窗口协议
停止等待协议
发送窗口=1;接收窗口=1
后退N帧协议
发送窗口>1;接收窗口=1
选择重传协议
发送窗口>1;接收窗口>1
接收窗口为1时,可以保证帧的有序接收
链路层的传输过程中,窗口是固定大小的
可靠传输机制
两种机制
确认
由接收方管
确认是一种无数据的控制帧,这种控制帧使得接收方可以让发送方知道哪些内容被正确接收
有些情况下为了提高传输效率,确认可以捎带在一个回复帧中,称为捎带确认
超时重传
由发送方管
发送方在发送某个数据帧时就开启一个计时器,
若在规定时间内没有收到确认帧,就重发
自动重传请求ARQ
通过接收方请求发送方重传出错的数据帧来恢复出错的帧,是通信中用于处理信道所带来差错的方法之一
三种方式
停止-等待ARQ
后退N帧ARQ
选择重传ARQ
滑动窗口+请求重传的结合——连续ARQ协议
在数据链路层中流量控制机制和可靠传输机制是交织在一起的
实际上,有线网络的链路层,很少采用可靠传输,一般在传输层实现
停止—等待协议/单帧滑动窗口
概述
为什么要有停止等待协议
除了比特出差错,底层信道还会出现丢包问题
故差错控制无法实现可靠传输
包就是数据的意思,不同层次不同名字(帧、分组、报文段)。物理线路故障、设备故障、病毒攻击、路由信息错误等原因导致丢包
停止等待协议的前提
仅考虑一方发送数据(发送方),一方接收数据(接收方)
这里仅仅讨论可靠传输的原理,暂不考虑数据传输的层次
停止等待协议
无差错情况
发送端发送单个帧后就进入等待,不发送新数据
直到,接收端接收到数据并发送的确认帧ACK到达发送端之前
数据帧丢失或检测到帧出错
接收端收不到数据帧或检错后丢失,不发送确认帧ACK
发送端通过超时计时器,计时器记满后仍未收到确认就会再次发送相同的帧,直到收到确认帧位置
注
超时计时器设置的重传时间应当比帧传输的RTT(往返时延)长
发送完一个帧后,需要保存其副本
数据帧和确认帧都必须要编号
确认帧ACK丢失或迟到
发送端收不到ACK会再重传已经被接收的数据帧,
接收方收到相同的数据帧会丢弃,再重传一个确认帧
若确认帧没被破坏,是迟到,发送端收下一个ACK后遇到第二个相同数据帧对应的ACK会直接丢弃
停等性能分析
简单但信道利用率太低
后退N帧协议GBN/多帧滑动窗口
GBN协议
发送端窗口
发送方响应
上层的调用
上层要发送数据时,发送方会先检查发送窗口是否已满,如果未满,则上层数据封装成帧并发送
如果窗口已满,发送方只需将数据返回给上层,告知上层窗口已满
(实际实现中,发送方可以缓存这些数据,窗口不满时再发送帧)
收到了确认帧ACK
GBN协议中,对n号帧的确认采用累积确认的方式,表明接收方已经收到n号帧和它之前的全部帧
确认帧超时
当接收端没有收到数据帧或帧错误,发送端会在计时器时间内收不到确认帧
发送方将重传所有已经发送但没有收到确认帧的数据帧
这就是后退N帧,来自于出现确认帧丢失和时延过长时发送方的行为
接收方响应
若正确接收到了n号帧,则接收方返回一个ACKn,告知发送方收到了n号帧及以前的数据帧,并将n号帧的数据传递给上层
接收方可以在连续收到多个正确信息后再返回确认帧,但不能超时
接收方也可以在回复数据的时候附带确认帧
稍带确认
其余情况都丢弃帧,并且为最近按序收到的帧重新发送ACK
接收方无需缓存任何失序帧,只需要维护一个信息:expectedseqnum(下一个按序接收的帧序号)
举例说明
发送端发送0号帧后,不同于停等协议,会继续发送1234等帧,每次发送一个帧时都设置一个超时计时器
0号帧、1号帧正确接收,返回一个ack0,ack1,发送端收到后将已发送的0、1号帧标记为已经确认
2号帧发送出错,发送端收不到ack2,但会继续发送345678,直到超时,此时,发送端会从还没有确认的第一个帧(2)重新按序发送——回退N帧
对于345678号帧,因接收端只能接收按序的帧号,在没有收到2号帧之前,全部丢弃,在每一个帧丢弃的同时会发送ack1给发送端,防止已经发送的ack1丢失
若发送方直接收到ack6,没有收到前面的,但此时接收方也接收了6个帧
GBN窗口长度
若采用n个比特对帧编号,发送窗口WT应满足
即发送窗口大小要小于帧编号的最大个数
3bit编号0-7,8个编号,窗口大小最大为7
另外
回退N帧协议,发送窗口的大小等于窗口总数-1,因为它的接收窗口大小固定为1
所有的帧保证按序接收
理由
若发送窗口过大
接收方会无法确认收到的是原先发错的帧重传,还是一组窗口帧发完后发的下一组帧
如,窗口大小为8,,帧编号为0 ~ 7
假设8个帧都已发出,下一轮又发出编号0 ~ 7的8个帧,
接收方无法判断第二轮发的8个帧到底是重传帧还是新帧(都是一个编号)
GBN的性能分析
因连续发送数据帧而提高了信道利用率
但在重传时必须把原来已经正确传送的数据帧重传,使得传送效率降低。
选择重传协议SR/多帧滑动窗口
SR的滑动窗口
相较于GBN:设置单个确认(逐一对帧确认),同时加大接收窗口,设置接收缓存,缓存乱序到达的帧
SR 协议
发送方响应
上层调用
从上层收到数据后,SR发送方检查下一个可用于该帧的序号,如果序号位于发送窗口内,则发送数据帧;
否则就像GBN一样,要么将数据缓存,要么返回给上层之后再传输。
收到确认帧
收到ACK,若ACK的序号在窗口内,则发送方将被确认的帧标记为已经接收
若该序号是窗口的下界(最左边第一个窗口对应的序号),则窗口向前移动到未确认的最小帧处
若窗口移动后,有序号在窗口内的未发送帧,则继续发送这些帧
如右图,收到ACK2时,3已经提前确认接收,窗口移动到4开始
确认帧超时
每个帧有自己的定时器,一个超时事件发生,只重传一个帧
接收方响应
收到窗口内的帧
若收到的帧序号在窗口内,则SR的接收方就会确认该帧,并返回发送方确认帧,而不管是否失序
直到所有帧(即序号更小的帧)都被收到为止,此时,将窗口内的帧按序交付给上层,然后向前滑动窗口
其他情况
若收到了窗口外更小序号的帧,就返回一个ACK
若收到窗口外更大序号的帧,忽略该帧
举例说明
SR滑动窗口长度
发送窗口等于接收窗口
发送窗口大则接收端来不及收会溢出,小了则无意义
若采用n个比特对帧编号,发送窗口和接收窗口WT的最大值应满足
如果不满足该条件,即窗口大小超过了序号范围的一半,当一个或多个确认帧丢失时,发送方会超时重传之前的数据帧但接收方无法分辨是新的数据帧还是重传的数据帧。——有二义性
说明:帧编号:0~7,窗口大小最大应该为4,现设发送=接收=5
当发送方发送了0-4号帧,接收方正确接收,但确认帧全部丢失,发送方超时重传0~4号旧帧
此时,接收方因为已经交付,窗口后移,想要收到5670帧,但收到的是旧帧,接收方并不能区别
SR的性能分析
可以避免重复传送已经正确到达接收端的数据帧
但要在接收端设置一定容量的缓冲区,不能接收窗口外的帧
GBN和SR对比 及 信道利用率
信道利用率
发送方在一个发送周期内,有效地发送数据所需要的时间占整个发送周期的比率
信道吞吐率=信道利用率*发送方的速率
介质访问控制
介质访问控制概述
两种链路
点对点链路
两个相邻节点通过一个链路相连,没有第三者。
应用:PPP协议,常用于广域网
广播式链路
所有主机共享通信介质。
应用:早期的总线以太网、无线局域网,
常用于局域网典型拓扑结构:总线型、星型(逻辑总线型)
主要任务
为使用介质的每个结点隔离来自同一信道上其他结点所传送的信号,以协调活动结点的传输
即,将广播式链路转化为点对点链路,使得信号互不干扰
介质访问子层MAC
用来决定广播信道中信道分配的协议属于数据链路层的一个子层,称为介质访问控制(Medium Access Control,MAC)子层
分类概述
静态划分信道
信道划分介质访问控制
将使用介质的每个设备与来自同一信道上的其他设备的通信隔离开,把时域和频域资源合理地分配给网络上的设备
多路复用技术
把多个信号组合在一条物理信道上进行传输,使得多个计算机或终端设备共享信道资源提高信道利用率
复用器和分用器
即,把一条广播信道,在逻辑上分成几条用于两个节点之间通信的互不干扰的子信道,把广播信道转变为点对点信道
理解:如何让同一条信道上的不同数据区分开来,互不干扰
分类
频分FDM
时分TDM
波分WDM
码分CDM
动态划分信道
随机访问介质访问控制
不同于信道划分介质访问控制,随机访问不采用集中控制方式解决发送信息的次序问题,所有用户能随机地发送信息,占用信道全部带宽,是动态地媒体接入/多点接入
特点
不共享空间,不共享时间
信道并非固定分配给用户
随机介质访问控制实质上把一种将广播信道转化为点到点信道的行为
冲突
多个用户同时发送时,会产生帧的冲突(碰撞,即相互干扰),导致所有冲突用户的发送失败
为了解决随机接入发生的碰撞,每个用户需要按照一定的规则反复地重传它的帧,直到该帧无碰撞地通过
核心
胜利者通过争用获得信道,从而获得信息的发送权
故又称为争用型协议
分类
ALOHA协议
CSMA协议
CSMA/CD协议
CSMA/CA协议
轮询访问介质访问控制
轮询协议中,用户不能随机发送信息,要通过一个集中的监控站(主节点),以循环的方式轮询每个结点,再决定信道的分配——主结点会轮流邀请从属结点发送数据
特点
不共享时间,也不共享空间,它实际上是在随机介质访问控制的基础上,限定了有权力发送数据的结点只能有一个
不会冲突,因为每次只会允许一个主机发送数据
存在问题
轮询开销
其他结点的等待延迟
主节点的单点故障
令牌传递协议
评价
信道划分介质访问控制
频分多路复用FDM
即同一时间,把信道划分为不同的空间来传输不同信号
”并行“
原理
FDM将多路基带信号调制到不同的频率上,再叠加形成一个复合信号传输
在物理信道的可用带宽超过单个原始信号所需带宽的情况下,可将该物理信道的总带宽分割成若干与传输单个信号带宽相同(或略宽)的子信道,每个子信道传输一种信号
每个子信道分配的带宽可不相同,但它们的总和必须不超过信道的总带宽。在实际应用中,为了防止子信道之间的干扰,相邻信道之间需要加入“保护频带”。
特点
用户在分配到一定的频带后,在通信过程中自始至终都占用这个频带。频分复用的各路信号在同样的时间占用不同的带宽(频率带宽,Hz)资源。
充分利用传输介质带宽,系统效率较高:由于技术比较成熟,实现也比较容易
时分多路复用TDM
即同一信道空间,把时间划分,一段段交叉地传输不同的信号
“并发”
原理
将一条物理信道按时间分成等长的时分复用帧(TDM帧),每一路信号在每一个TDM帧中占用固定序号的时隙。信道带宽轮流地分配给多个信号使用
每路信号所占用的时隙周期性地出现(周期为TDM帧的长度)TDM信号也称为等时信号
特点
时分复用的各路信号在不同的时间内占用同样的频带宽度
技术成熟,应用广泛
由于计算机数据的突发性(有的经常发,有的不常发),单个用户对已经分配到的子信道的利用率不高——>STDM
统计时分复用STDM
是TDM的一种改进,不固定分配时隙,采用STDM帧按需动态分配时隙,当终端有数据要传送时,才会分配到时隙,可以提高线路的利用率
采用集中器连接4个低速用户,每一个STDM帧中的时隙数(这里为2)小于连接的用户数
各用户有了数据就随时发往集中器的输入缓存,然后集中器按顺序依次扫描输入缓存,把缓存中的输入数据放入STDM帧中。对没有数据的缓存就跳过去。当一个帧的数据放满了,就发送出去
若同一时间,只有一路有数据要发,那么就占用全部的传输时间,能达到线路最大的传输速率,不用分配
波分多路复用WDM
即光的频分多路复用
原理
在一根光纤中传输多种不同波长(频率)的光信号,
不同频率光信号之间不干扰,最后用波长分解二复用器将各路波长分出来即可
特点
光波处于高频段,具有高带宽
码分多路复用CDM
概述
当码分复用信道为多个不同地址的用户所共享时,称为码分多址CDMA
每一个用户通过选用不同的码型,能够在相同时间内使用同样的频带通信,由接收端负责区分,不会造成干扰
原理
每个数据的每个比特时间都再划分为m个短的时间间隔,称为码片(chip),实际中m通常是64或128,这里取8
每个用户站点被指派唯一的m位码片序列
当要发送1时
站点发送自身的m位码片序列
当要发送0时
发送该码片序列的二进制反码
码片序列一般采用随机码/伪随机码
即,若站点原本要发送b bit/s的数据,实际上要发送mb bit/s的数据——直接序列扩频DSSS
当多个用户同时发送,各路数据需要在信道内线性相加时,要求各站点码片序列相互正交,即规格化内积为0
按惯例,码片中的0写为-1,方便正交
规格化内积:两个向量内积后再除以向量个数
特点
频谱利用率高、抗干扰能力强、保密性强、语音质量好等优点
还可以减少投资和降低运行成本,
主要用于无线通信系统,特别是移动通信系统。
随机访问介质访问控制
ALOHA协议
纯ALOHA协议
基本思想
想发就发,不监听信道,不按时隙发送,冲突超时,随机重发
当网络中的任何一个站点需要发送数据时,可以不进行任何检测就发送数据。如果在一段时间内未收到确认,那么该站点就认为传输过程中发生了冲突。发送站点需要等待一段时间后再发送数据,直至发送成功
工作原理
每个站自由发送帧,这里假设所有帧定长,帧的长度不用比特,用发送该帧的时间T0表示(包括传输时间,传播时间)
冲突检测
发生冲突,接收方会检测出差错,不予确认,发送方在一定时间内收不到就判断发生冲突
冲突处理
各站不能立刻就发,要等待一段随机的时间,然后再进行重传,再碰撞再随机重传
性能分析
若网络负载为G(T0时间内所有站点发送成功的和未成功而重传的帧数)
纯ALOHA协议的吞吐量
极大值=0.184
碰撞频繁,等待时间长,吞吐量很低
时隙ALOHA协议
基本思想
只有在时隙的开始才能发送帧
把时间分成若干个相同的时间片(时隙),所有用户在时间片开始时刻同步接入网络信道,若发生冲突,则必须等到下一个时间片开始时刻再发送,
工作原理
时隙长度T0刚好能够使得每个帧在一个时隙内发送完
若两个帧到达在一个时隙内,在下一次发送时就会冲突,此时随机一段时间重传,同纯ALOHA
性能分析
时隙ALOHA协议的吞吐量
极大值=0.368
比纯ALOHA协议吞吐量高一倍,但碰撞的概率仍然大
CSMA协议
概念概述
(Carrier Sense Multiple Access)
CSMA:载波监听多路访问协议
比ALOHA多一个载波监听装置
CS
载波监听/侦听:每一个站在发送数据之前要检测一下总线上是否有其他计算机在发送数据。信道空闲发送数据,信道忙则推迟发送
监听原理
当几个站同时在总线上发送数据时,总线上的信号电压摆动值将会增大(互相叠加)
当一个站检测到的信号电压摆动值超过一定门限值时,就认为总线上至少有两个站同时在发送数据(冲突/碰撞)
MA
多点接入,表示许多计算机以多点接入的方式连接在一根总线上
总线型网络
分类
1-坚持CSMA
坚持指的是对于监听信道忙之后继续坚持侦听
非坚持CSMA
p-坚持CSMA
1-坚持CSMA
基本思想
发送之前先侦听信道
信道空闲则直接传输数据,发送帧的概率为1
信道忙,则继续监听,直到空闲马上传输
若传输冲突(未收到确认),等待一个随机时间再监听,重复上述
特点
优点
只要媒体空闲,站点就马上发送,避免了媒体利用率的损失
缺点
假如有两个或两个以上的站点有数据要发送,冲突就不可避免
非坚持CSMA
基本思想
发送数据前,首先侦听信道
如果信道空闲,那么立即发送数据;
如果信道忙,那么放弃侦听,等待一个随机的时间后再重复上述过程
特点
优点
采用随机的重发延迟时间可以减少冲突发生的可能性
缺点
会增加网络的平均延迟,因为各站点等待事件随机,可能各站点都在延迟等待过程中,使得媒体仍可能处于空闲状态,信道使用率降低
p-坚持CSMA
基本思想
用于时分信道
若信道空闲
以p的概率,直接发送数据,不等待
以1-p的概率推迟到下个时隙发送
若下个时隙仍然空闲,继续以p的概率发送,直到成功发送/信道忙
若因为冲突而终止,则等待到下个时隙开始重新监听
如果信道忙,则继续侦听
特点
p概率发送
降低1-坚持中多个结点检测到信道空闲后同时发送数据的冲突概率
坚持“侦听”
克服非坚持CSMA协议中由于随机等待而造成的延迟时间较长的缺点
非坚持和1-坚持的折中
在发生冲突后还是会坚持把数据帧发送完,造成了浪费
总结比较
CSMA/CD协议
概述
(Carrier Sense Multiple Access with Collision Detection)
基本思想
载波侦听多路访问/碰撞检测
适用于
总线型网络
半双工网络
CSMA/CD
CS:载波侦听/监听,MA:多点接入
CD:碰撞检测(冲突检测)
“边发送边监听”,适配器会检测信道上信号电压变化,判断是否冲突
先听后发,边听边发,冲突停发,随机重发
工作流程
特点
原理比较简单,易实现,网络中各工作站处于平等地位 ,不需集中控制,不提供优先级控制
但在网络负载增大时,发送时间增长,发送效率急剧下降
争用期/冲突窗口
因为信道是有传播时延的,当某个时刻发送站检测到信道空闲时,此时信道未必是空闲的
影响过程
如图所示,设τ为单程传播时延。在t=0时,A发数据
在t=τ-δ时,A发送的数据还未到达B,B检测到信道空闲而发数据
经过时间δ/2后,即在t=τ-δ/2时,A发送的数据和B发送的数据发生碰撞,但这时A和B都不知道
在t=τ时,B检测到碰撞,于是停止发送数据。在t=2τ-δ时,A检测到碰撞,也停止发送数据。
结论
显然,CSMA/CD中的站不可能同时进行发送和接收,因此采用CSMA/CD协议的以太网只能进行半双工通信
争用期
站A 在发送帧后至多经过时间2τ(端到端传播时延的2倍)就能知道所发送的帧有没有发生碰撞(当δ→0时)。因此把以太网端到端往返时间2τ称为争用期(又称冲突窗口或碰撞窗口)
换言之,经过争用期这段时间还未检测到碰撞时,就能确定这次发送不会发生碰撞
截断二进制指数退避算法
如何确定碰撞之后等待的随机时间:截断二进制规避算法
算法核心
1)确定基本退避时间,一般取争用期,两倍的总线端到端传播时延2τ
2)定义参数k,它等于重传次数,但k不超过10,即k=min[重传次数,10]
3)从离散的整数集合[0,1,…,2^k-1]中随机取出一个数r,重传所需要退避的时间就是r倍的基本退避时间,即2rτ
4)当重传达16次仍不能成功时,说明网络太拥挤,认为此帧永远无法正确发出,抛弃此帧并向高层报告出错
举例
特点
若连续多次发生冲突,就表明可能有较多的站参与争用信道
可使重传需要推迟的平均时间随重传次数的增大而增大,因而减小发生碰撞的概率,利于系统稳定
最小帧长
为了使得发送端在发送完数据帧之前就收到碰撞的信息,来终止传输,即帧的传输时延至少要两倍于信号在总线中的传播时延
即采用CSMA/CD协议的所有数据帧都必须大于一个最小帧长,站点收到小于最小帧长时,就能判断这是碰撞之后截断的无效帧,丢弃
最小帧长=总线传播时延×数据传输速率×2
最小帧长=争用期(2τ)×数据传输速率
以太网最小帧长规定为64B
若数据帧要发送小于最小帧长的数据,需要在MAC子层中在数据字段后面加上一个整数字节的填充字段,使其不小于最小帧长
CSMA/CA协议
CSMA/CA
对于无线局域网,CD协议不适用
无线信道的通信质量远不如有线信道
接收信号的强度往往会远小于发送信号的强度,且在无线介质上信号强度的动态变化范围很大
在无线通信中,并非所有的站点都能够听见对方,即存在“隐蔽站”问题。
载波监听多点接入/碰撞避免
——CSMA/CA(carrier sense multiple access with collision avoidance)
不同于CD,帧的发送不会被截断,要使碰撞减少,要采用碰撞避免技术——采用ARQ方案
信道空闲时,不仅要等待一个时隙,还要进入争用窗口,退避一个随机时间再发送,第一次发送(第一个帧)不使用退避——即,检测到空闲了,在随机一下,减少碰撞概率
帧间间隔IFS
所有站完成发送后,都必须等待一个时间(此时继续监听),这个时间为帧间间隔IFS (InterFrame Space)
SIFS(短IFS)
最短的IFS,用来分隔属于一次对话的各帧
使用SIFS的帧类型
ACK帧、CTS帧、分片后的数据帧,以及所有回答AP探询的帧等
PIFS(点协调IFS)
中等长度的IFS,在PCF操作中使用
DIFS(分布式协调IFS)
最长的IFS,用于异步帧竞争访问的时延
CSMA/CA算法
若站点最初有数据要发送(而不是发送不成功再进行重传),且检测到信道空闲,在等待时间DIFS后,就发送整个数据帧
否则,站点执行CSMA/CA退避算法,选取一个随机回退值
信道忙,退避计时器就保持不变
信道空闲,退避计时器就进行倒计时
当退避计时器减到0时(这时信道大概率是空闲的),站点就发送整个帧并等待确认
发送站若收到确认,就知道已发送的帧被目的站正确接收。这时如果要发送第二帧,就要从步骤2)开始。
若发送站在规定时间内没有收到确认帧ACK(由重传计时器控制),就重传该帧,再次使用CSMA/CA 协议争用该信道,直到收到确认,或经过若干次重传失败后放弃发送
处理隐蔽站问题 RTS和CTS
隐蔽站问题
A和B相距较远,彼此听不到,当A和B都检测到信道空闲时,都向其中间站点AP发送,就会碰撞冲突
解决方式
A发送数据前,先检测信道是否空闲。
空闲则发出RTS(request to send)控制帧
RTS包括发射端的地址、接收端的地址、下一份数据将持续发送的时间等信息;信道忙则等待
接收端AP收到RTS后,将响应CTS(clear to send)
CTS包括这次通信所需的持续时间(从RTS复制)
给源站明确的发送许可
告知范围内的其他站点,预约期不要发送
A发送端收到CTS后,开始发送数据帧,预约信道,B收到CTS后抑制发送
接收端收到数据帧后,将用CRC来检验数据是否正确,正确则响应ACK帧
发送方收到ACK就可以进行下一个数据帧的发送,若没有则一直重传至规定重发次数为止(采用二进制指数退避算法来确定随机的推迟时间)
CD和CA的比较
基本思想
CSMA/CA
超级有礼貌,不仅监听信道,看有没有其他人在说话,而且说话之前还等一下
1.预约信道
2.ACK帧
3.RTS/CTS帧(可选,处理隐蔽站问题)
正式发送数据前先广播告知其他结点,让其他结点在某段时间内不要发送数据,以免出现碰撞
CSMA/CD
发送前侦听,边发送边侦听,一旦出现碰撞马上停止发送
异同点
轮询访问:令牌传递协议
令牌传递协议
令牌Token
一个特殊格式的MAC控制帧,不含任何信息。仅控制信道的使用,确保同一时刻只有一个结点独占信道。
使用规则
站点只有在取得令牌后,才能够发送数据帧——令牌环网无碰撞
站点每发送完一帧后就会释放令牌,供其他站点使用
每个结点都可以在一定的时间内(令牌持有时间)获得发送数据的权利,不是无限制地持有令牌
工作流程
网络空闲时,环路中,令牌帧循环传递
A站点要发数据,获得令牌后,改一个标志位并附带自身数据传输出去
数据帧沿环路传播,找到目的接收站,接收站处理数据帧
令牌沿环路回到发送站A,A收到自己发出的帧后就不再转发,检验看传输过程是否出错,有错就重传
A发送完数据后,重新产生一个令牌,传递给其他站点,交出信道控制权
适用网络类型
主要用于令牌环局域网中
逻辑上是环形网络,
物理上不必是环状,也可以是星型拓扑
采用令牌传送方式的网络常用于负载较重、通信量较大的网络中,——即,多个结点同时发送数据的概率很大的信道
特点
优点
令牌按顺序依次传递,各个主机的访问权平等
问题
1.令牌开销
2.等待延迟
3.单点故障应用于令牌环网(物理星型拓扑,逻辑环形拓扑)
局域网和广域网
局域网
局域网基本概念和体系结构
LAN概念特点
概念/特点
局域网(Local Area Network,LAN)是指在某一个较小的区域内,将各种计算机、外部设备和数据库系统等通过双绞线、同轴电缆等连接介质(也有无线信道)互相连接起来,组成资源和信息共享的计算机互联网络。
特点
覆盖的地理范围小,只在一个相对独立的局部范围内互联,站点数目有限
使用专门铺设的传输介质(双绞线、同轴电缆)进行联网,数据传输速率高(10Mb/s~10Gb/s)
也有无线局域网
各站为平等关系,共享传输信道,共享较高的总带宽
通信延迟时间短,误码率低,可靠性较高
多采用分布式控制和广播式通信,能进行广播和组播
使用广播信道
局域网的特性由:拓扑结构、传输介质、介质访问控制方法(决定局域网的技术特性)
拓扑结构
星型拓扑
每个终端或计算机都以单独的线路与中央设备相连。中央设备一般是交换机或路由器、集线器等
优点
传输速率快,最多只需要两步
构型简单,便于建网,端用户之间的通信必须经过中央设备,便于集中控制和管理
缺点
成本高、中央设备有单点故障问题
可靠性低,网络共享能力差
总线型拓扑
用单根传输线把计算机连接起来
优点
网络可靠性高,网络结点间响应速度快
共享资源能力强,设备投入量少
成本低,建网容易、增/减结点方便、节省线路
某个结点故障对整个系统影响小
缺点
重负载时通信效率不高
环形拓扑
所有计算机接口设备连接成一个环。可以是单环,也可是多环,环中信号单向传输
优点
系统中通信设备和线路比较节省。
缺点
有单点故障问题,由于环路是封闭的,所以不便于扩充
系统响应延时长,且信息传输效率相对较低
树形拓扑
优点
易于拓展,易于隔离故障
缺点
容易有单点故障
传输介质
有线局域网
双绞线、同轴电缆、光纤
双绞线为主流
无线局域网
电磁波
介质访问控制
CSMA/CD
主要用于总线型局域网,也用于树型网络
令牌总线
主要用于总线型局域网,也用于树型网络
它是把总线型或树型网络中的各个工作站按一定顺序如按接口地址大小排列形成一个逻辑环。只有令牌持有者才能控制总线,才有发送信息的权力。
令牌环
主要用于环形局域网
如令牌环网
局域网分类
体系结构
IEEE 802标准描述的局域网只对应了OSI模型中的物理层和数据链路层,链路层分为了MAC和LLC
逻辑链路控制子层(LLC子层)
和传输媒体无关,和网络层相关
功能
为网络层提供服务:
无确认无连接、面向连接、带确认无连接、高速传送
负责识别网络层协议,然后对它们进行封装
LLC报头告诉数据链路层一旦帧被接收到时,应当对数据包做何处理
事实上,作用不大,很多网卡仅有MAC协议,没有LLC协议
介质访问控制子层(MAC子层)
和接入的传输媒体相关
功能
MAC子层的存在屏蔽了不同物理链路种类的差异性,提供对物理层的统一访问接口
数据帧的封装/卸装
帧的寻址和识别
帧的接收与发送
链路的管理
帧的差错控制等
以太网 与 IEEE802.3
以太网概述和功能
以太网
以太网(Ethernet)指的是由Xerox公司创建并由Xerox、Intel和DEC公司联合开发的基带总线局域网规范,是当今现有局域网采用的最通用的通信协议标准。
以太网络使用CSMA/CD(载波监听多路访问及冲突检测)技术
以太网的特点
1.造价低廉(以太网网卡不到100块)
2.是应用最广泛的局域网技术;
3.比令牌环网、ATM网便宜,简单;
4.满足网络速率要求:10Mb/s~10Gb/s.
以太网标准
DIX Ethernet V2
第一个局域网产品(以太网)规约
IEEE 802.3
IEEE 802委员会802.3工作组制定的第一个IEEE的以太网标准(帧格式有一点改动)
IEEE 802.3局域网==以太网
MAC帧的格式:以太网V2标准和IEEE 802.3 标准,最常用的是V2
简化通信的措施
提供无连接不可靠的服务
无连接
不需要建立链路(无论是逻辑上还是物理上)
不可靠
不对发送方的数据帧编号,接收方不向发送方发送确认帧
差错帧直接丢弃,差错的纠正由高层(传输层)来处理
即,以太网只实现无差错接收,不实现可靠传输
采用曼彻斯特编码
曼彻斯特编码:每个码元中间出现依次电压转换
接收端能利用此进行自同步
传输介质和适配器
传输介质和拓扑结构
典型以太网——10BASE-T以太网
网络适配器
计算机与外界局域网的连接是通过主机箱内插入的一块网络接口板[又称网络适配器(Adapter)或网络接口卡(Network Interface Card,NIC)]实现的——网卡
网卡的作用
并行串行转换
网卡和局域网通信
通过电缆或双绞线——串行
网卡和主机通信
通过主板上的IO总线——并行
实现传输介质之间的物理连接和电信号匹配
也参与主机对介质的访问
也工作在物理层,只关注比特
参与帧的发送接收、封装拆装、介质访问控制、数据编码解码、数据缓存等
网卡的物理组成
装有处理器和存储器(包括RAM和ROM)
ROM上有计算机硬件地址的MAC地址
介质访问控制地址(MAC地址)
每块网卡出场时有一个唯一的代码(标识符)——MAC地址
每块网卡中的MAC地址也称物理地址:MAC地址长6字节,一般用由连字符(或冒号)分隔的12个十六进制数表示,如02-60-8c-e4-bl-21。
高24位为厂商代码,低24位为厂商自行分配的网卡序列号。
MAC的作用
数据链路层设备都是在使用各个网卡的MAC地址
局域网总线上是广播通信,网卡从网络上收到一个MAC帧,先检查帧中的MAC地址,是自己的就留下,不是丢弃
以太网的MAC帧
格式
前导码
8B(7+1)
使接收端和发送端时钟同步,8字节2字段
前7B:前同步码,用来快速实现MAC帧的比特同步
后1B:帧开始定界符,说明后面是MAC帧
MAC帧不需要帧结束符
以太网采用CSMA/CD协议,帧间必有间隙,且采用的是曼彻斯特编码,自同步,只要有发送端找到帧开始定界符,后面连续到达的比特流就都是一个MAC帧的
但是,MAC帧仍然要有尾部——FCS
数据链路层封装,要加头加尾
地址
6B(48bit)
目的地址和源地址。即MAC地址,通常采用地址
类型
2B
指出数据域中携带的数据应该交给哪个协议实体处理
数据
46~1500B
包含高层的协议消息。由于CSMA/CD要求,最小帧长要求64字节,数据较少时必须加以填充(0~46字节)
填充:0~46字节,当帧长太短时填充帧,使之达到64字节的最小长度
MAC帧的首部(6+6+2)尾部(4)共18B。64-18=46B
校验码FCS
4B
校验范围
从目的地址段到数据段的末尾,不校验前导码
校验算法
32位循环冗余码(CRC)
802.3 标准
相较于V2,长度域替代了类型域,并指出数据长度
规定了最大长度段为1500
两种帧可以并存,1501~65535可用于类型段标识符
高速以太网类型
速度超过100Mb/s的以太网
虚拟局域网VLAN的原理
传统以太网问题
缺乏流量隔离:
以太网是广播域,当网内主机过多时
即使把组流量局域化到一个单一交换机中,广播流量仍会跨越整个机构网络,广播帧太多会影响其他协议(ARP、RIP、DHCP协议)
管理用户不便:
如果一个主机在不同组间移动,必须改变物理布线,连接到新的交换机上
路由器成本较高:
局域网内使用很多路由器花销较大。
信息保密和安全性:
不同部门使用一个局域网的信息安全问题
VLAN的概念
通过虚拟局域网(Virtual LAN),可以把一个较大的局域网分割成一些较小的与地理位置无关的逻辑上的VLAN,每个VLAN是一个较小的广播域。
VLAN的实现
交换机内
基于接口的VLAN技术
基于MAC地址的VLAN 技术
跨交换机
802.3ac定义了802.1Q帧
在以太网帧中插入了一个4B的标识符(源地址和类型字段间),称为VLAN标签
用来指明发送该帧的计算机属于哪个虚拟局域网。
插入VLAN标签的帧称为802.1Q帧,最大帧长从原来的1518字节变为1522字节。
VLAN标签的前两个字节恒置为0x8100,表示这是一个802.1Q帧
在VLAN标签的后两个字节中,前4位没有用,后12位是该VLAN的标识符VID,它唯一标识了该802.1Q帧属于哪个VLAN
12位的VID取值范围:4096(0~4095),但0和4095都不用来表示VLAN
因此用于表示VLAN的有效VID取值范围为1~4094
插入VID后,802.1Q帧的FCS必须重新计算。
跨交换机VLAN帧交换过程
跨交换机之间的同一个VLAN之间实现通信需要将主机发出的以太网的MAC帧,在发送端交换机内插入4个字节(VLAN标记)转化为IEEE 802.1Q帧再转发,在接收端根据标记,去掉标记后,发给对应的VLAN
主机和交换机之间交换的只是以太网MAC帧,帧在交换机上处理转化
各主机不需要知道自己的VID,交换机知道
不同VlAN之间的交换
交换机上生成的不同VLAN之间是不可互通的,若要通信
只能借助
路由器
三层交换机
交换机中插入专门芯片,进行转发
VLAN只是局域网提供给用户的一种服务,不是一种新的局域网,是通过软件实现的
无线局域网 IEEE 802.11
无线局域网的组成
有固定基础设施的无线局域网
固定基础设施
预先建立的能够覆盖一定地理范围的固定基站
标准:IEEE 802.11(a/b/g/n)——Wi-Fi
采用星型拓扑
中心点称为接入点AP
MAC层采用CSMA/CA协议
基本服务集BSS
规定WLAN的最小构件叫做基本服务集BSS
各个站点在本BSS内通信,若要与外部通信,需要通过本BSS的AP
包括
一个接入点AP
AP——基本服务集BSS中的基站
每个AP有一个不超过32B的基本服务集标识符BSSID和一个信道
每个BSS都有一个SSID服务集标识符
SSID是指使用该AP的无线局域网的名字
若干移动站
一个基本服务集覆盖的地理范围称为一个基本服务区(Basic Service Area,BSA),无线局域网的基本服务区的范围直径一般不超过100m。
拓展服务集ESS
通过AP连接到一个分配系统(Distribution System, DS),再连接到另一个基本服务集,构成拓展服务集(Extended Service Set, ESS)
分配系统DS的作用
使扩展的服务集对上层的表现就像一个基本服务集一样
portal
ESS还可以通过一种称为Portal(门户)的设备为无线用户提供到有线连接的以太网的接入
门户的作用相当于一个网桥
移动站A如果要和另一个基本服务集中的移动站B通信,就必须经过A→AP1→AP2→B
注意AP1到AP2的通信可以无线,可以有线
A漫游到另一个服务集时A',仍然可以和B通信,但使用的AP变了
无固定基础设施的移动自组织网络
又称为自组网络(ad hoc network)
没有AP,由平等的移动站相互通信组成的临时网络,
各个结点之间低位平等,中间结点都为转发结点,都有路由器的功能
如何构成
一些可移动设备发现在它们附近还有其他的可移动设备,并且要求和其他移动设备进行通信
自组网络中的每个移动站都要参与网络中其他移动站的路由的发现和维护,
同时由移动站构成的网络拓扑可能随时间变化得很快,因此在固定网络中行之有效的一些路由选择协议对移动自组网络已不适用,需引起特别的关注。
跟移动IP的区别
移动IP技术使漫游的主机可以用多种方法连接到因特网
其核心网络功能仍然是基于固定网络中一直使用的各种路由选择协议。
而自组网络是把移动性扩展到无线领域中的自治系统,具有自己特定的路由选择协议,并且可以不和因特网相连
WLAN的MAC帧
数据帧组成
MAC帧有三种类型
数据帧、控制帧、管理帧
MAC首部
共30字节,帧的复杂性都在首部
最重要的是4个地址
帧主体
帧的数据部分,不超过2312B,比以太网的最大长度(1500)大很多
帧检验序列FCS
尾部,4B
帧头格式
SA——源地址
DA——目的地址
TA——发送端
RA——接收端
记忆:地址1:接收端,地址2:发送端
地址1和2永远是在本BSS内某一段通信中的收发端(点到点)
若通信还有后续段,均填到地址3(中间地址/目的地址/源地址)
注意
发送地址不等于源地址
源地址是总的过程
发送地址是其中一段的发送
通信过程
一个BSS中:A——>AP——>B
A——>AP
去往AP=1;来自AP=0
地址1(接收端)=AP的BSSID(也是MAC)
地址2(发送端)=A的MAC 源地址
因为还要到B,地址3=B的MAC——目的地址
AP——>B
to AP=0;from AP=1
地址1(接收端)=B的MAC
地址2(发送端)=AP的BSSID
因为还要发送确认帧,地址3=A的MAC——源地址
路由—>AP1——>A
涉及到IP地址和MAC地址的转换——ARP协议
网络层给IP地址,路由器从中获取A的MAC,给出802.3帧(两地址格式:源地址:路由器地址;目的地址:A的MAC)到AP1
AP1将其转化为802.11帧:去往Ap=0;来自AP=1;
地址1:A的MAC
地址2:AP的BSSID
地址3:路由的MAC地址
A—>AP1——>路由
AP1将其转化为802.11帧:去往Ap=0;来自AP=1;
A发出802.11帧,去往Ap=1;来自AP=0
地址1:AP的BSSID
地址2:A的MAC
地址3:路由的MAC地址
AP收到802.11帧,ARP转化为802.3帧
源地址:A的MAC
目的地址:R1的MAC
地址3可实现BSS和有线局域网的互联
WDS中
地址1和2保存某一段通信中的收发端
地址3和4保存整段通信中的收发端
广域网
广域网概念
广域网概念和组成
概念
广域网通常是指覆盖范围很广(远超一个城市的范围)的长距离网络
因特网是世界范围内最大的广域网。广域网任务是长距离运送主机所发送的数据,以达到资源共享的目的。
采用分组交换技术,传输链路可以是公用分组交换网,卫星通讯网,无线分组交换网,长距离光纤等——通信容量足够大
局域网可以通过广域网和很远的另一个局域网相连
组成
广域网由一些结点交换机和连接这些链路的链路组成
结点交换机的功能:分组存储并转发,结点之间都是点到点连接,通常一连多保证可靠性
结点交换机和路由器的异同
相同点
都用来转发分组,工作原理类似
结点交换机
在单个网络中转发分组
路由器
在多个网络构成的互联网中转发分组
互联网的范围比广域网要大
协议
路由选择协议
负责搜索分组从某个结点到目的结点的最佳传输路由,构造路由表
分组转发协议
由路由表构造转发表,通过转发表转发
广域网的和局域网对比
PPP协议
PPP协议的概念
PPP(Point-to-Point Protocol)是使用串行线路通信的面向字节的协议,该协议应用在直接连接两个结点的链路上
设计的目的
通过拨号或专线方式建立点对点连接发送数据,使其成为各种主机、网桥和路由器之间简单连接的一种共同的解决方案
特点
应用最为广泛的数据链路层协议
用户使用拨号电话接入因特网时一般都使用PPP
只支持全双工链路
PPP组成/工作过程
组成
链路控制协议(LCP)
一种扩展链路控制协议,用于建立、配置、测试和管理数据链路。——身份验证
网络控制协议(NCP)
PPP协议允许同时采用多种网络层协议,每个不同的网络层协议要用一个相应的NCP来配置,为网络层协议建立和配置逻辑连接。
一个将IP数据报封装到串行链路(同步串行/异步串行)的方法
IP数据报在PPP帧中就是其信息部分,长度受最大传送单元(MTU)的限制
建立链路
当线路检测到载波信号时,建立物理连接,线路变为建立状态
LCP开始选项商定,后进入身份验证状态
双发身份验证通过后,进入网络层协议状态
这时,采用NCP配置网络层,配置成功后,进入打开状态,然后就可进行数据传输
当数据传输完成后,线路转为终止状态。载波停止后则回到静止状态。
PPP帧的格式
PPP是面向字节的,PPP帧的长度都是整数个字节
标志字段F:帧定界
01111110,前后各占一个字节
地址字段A
1B
0xFF
控制字段C
1B
0x03
没什么用,固定不变
协议字段
2B
说明信息段是什么类型的分组
在HDLC中没有
当协议字段值为0x0021时,表示信息字段是IP数据报
信息段
长度可变,0~1500B
不用CSMA/CD,没有最短帧长
FCS字段
2B
帧检验序列
CRC冗余码
检验区域为地址字段、控制字段、协议字段、信息字段
PPP的注意点
1)PPP提供差错检测但不提供纠错功能,只保证无差错接收(通过硬件进行CRC校验)。它是不可靠的传输协议,因此也不使用序号和确认机制。不支持流量控制
2)它仅支持点对点的链路通信,不支持多点线路
3)PPP只支持全双工链路
4)PPP的两端可以运行不同的网络层协议,但仍然可使用同一个PPP进行通信。
5)PPP是面向字节的,当信息字段出现和标志字段一致的比特组合时,PPP有两种不同的处理方法
透明传输
若PPP用在异步线路(默认)(逐个字符(字节)传输),则采用字节填充法
添加转义字符7D:0111101
若PPP用在SONET/SDH等同步线路,则协议规定采用硬件来完成比特填充
五个1插入一个0
和HDLC的做法一样
* HDLC协议
HDLC协议的概念
概念
高级数据链路控制(HDLC)协议是面向比特的数据链路层协议。
特点
该协议不依赖于任何一种字符编码集——比特传输
数据报文可透明传输,用于实现透明传输的“0比特插入法”易于硬件实现:
全双工通信,有较高的数据链路传输效率;
所有帧采用CRC检验,对信息帧进行顺序编号,可防止漏收或重发,传输可靠性高;
传输控制功能与处理功能分离,具有较大的灵活性
HDLC的站
主站
发送命令(包括数据信息)帧、接收响应帧,并负责对整个链路的控制系统的初启流程的控制、差错检测或恢复等。
从站
接收由主站发来的命令顿,向主站发送响应帧,并且配合主站参与差错恢复等链路控制。
复合站
既能发送,又能接收命令帧和响应帧,并且负责整个链路的控制。
三种数据操作方式
1.正常响应方式
2.异步平衡方式
3.异步响应方式
HDLC帧的格式
标志字段F:01111110,前后各占一个字节。
使用零比特填充法实现透明传输
地址字段A:8bit,根据不同的传送方式,表示从站或应答站的地址。
控制字段C
和PPP的比较
相同点
都只支持全双工链路,
都能实现透明传输,
都能实现差错检测,但不纠正差错
不同点
PPP 协议是面向字节的,HDLC 协议是面向比特的。
PPP帧比HDLC帧多一个2B的协议字段。当协议字段值为0x0021时,表示信息字段是IP数据报
PPP协议不使用序号和确认机制,只保证无差错接收(CRC检验),而端到端差错检测由高层协议负责,是不可靠传输
HDLC协议的信息帧使用了编号和确认机制,能够提供可靠传输。
HDLC更可靠,但实际中,检错纠错和可靠传输的机制没必要,慢,交给上层传输层处理