计网复习笔记【附思维导图】——【5】链路层
计网 链路层
链路层位于网络层和物理层之间。
5.1 链路层概述
链路层协议定义了在链路两端的节点之间交互的分组格式,以及当发送和接收分组时这些节点采取的动作。
链路层协议交换的数据单元叫做帧,每个链路层帧通常封装了一个网络层的数据报。
链路层功能
- 链路:在相邻主机和路由器节点间通信的信道。
- 基本服务:将数据报通过单一通信链路从一个节点移动到相邻节点。
链路层协议服务
-
1.成帧:将网络层数据报用链路层帧封装起来。
-
2.链路接入:媒体访问控制协议MAC规定了帧在链路上传输的规则。
-
3.可靠交付:通常用于易产生高差错率的链路,如无线链路,通过确认和重传实现。
-
4.差错检测和纠正
- 可采用循环冗余校验编码(CRC),用硬件实现差错检测。
- 接收方可以检测帧中是否引入了差错,以及判断帧中差错出现的位置,从而纠正。
-
5.流量控制:链路层每个节点都具有有限容量的帧缓存能力。
-
6.全双工和半双工通信
- 全双工传输,链路两端节点可同时传输分组。
- 半双工传输,一个节点不能同时传输和接收分组。
链路层实现位置
- 1.链路层主体部分在网络适配器中实现,网络适配器也称网卡NIC,网络适配器内核为链路层控制器。
- 2.在发送方,链路层控制器取得IP层的数据报,在链路层帧中进行封装,遵循链路层协议将该帧传入通信链路;在接收端,链路层控制器接受整个帧,提取出网络层数据报。
- 3.链路层还包括运行在CPU上的软件部分,实现从网络层接收数据,装配链路层寻址信息以及激活控制器硬件。
5.2 差错检测和纠正技术
研究场景
- 用差错检测和纠正比特EDC增强数据D。
- 数据D包含网络层数据报,和链路层帧首部字段。
- 差错检测需要开销,并非完全可靠,存在未检出比特差错。
差错检测和纠正的3种技术
1.奇偶校验
-
单个奇偶校验位
- 思想:对于单个奇校验,使得信息位+校验位中1的个数为奇数;对于单个偶检验位,则为偶数。
- 特征:只能检测出奇数个比特错误,无法检测偶数个比特错误。
-
二维奇偶校验
- 思想:对于二维偶校验,使每行每列中信息位+校验位中1的个数为偶数;对于二维奇校验,则为奇数。
- 二维偶校验示例:对于分组信息为1010_1010_1010_1011,采用二维偶校验,其中最下面一行与最右边一列为校验比特。
-
二维奇偶校验
- 能够检测和纠正单个比特位差错
- 可以检测出除相互补偿的偶数个比特错误(如两个字符在相同位(列)同时出错)。
-
在相互补偿时二维奇偶校验无法检测错误。
-
示例:对000_111_010进行二维偶校验。
-
当出错变为000_100_010时,无法检测出错位置。只知道某两列出错了,但不知道分别对应哪一行具体位置。
2.互联网校验和
-
TCP和UCP中对所有字段都计算校验和,而IP只对头部计算校验和。
-
校验方式:把d比特数据看作一个k比特整数序列。取数据的两个字节作为16比特的整数对待并求和,这个和的反码构成了携带在报文段首部的互联网校验和。
-
实例:假设某分组信息包含10字节,它由从整数0到9的8比特无符号二进制的数组成,对该数据计算互联网校验和。
-
互联网校验和只能进行差错检测,不能进行差错恢复。
-
实现方式
- 在运输层,校验和差错检测用软件简单实现。
- 在链路层,差错检测在适配器中用专用硬件实现,能快速执行更复杂的CRC操作。
3.循环冗余检测CRC
-
循环冗余检测CRC也称多项式编码,使用最广泛,本质是多项式除法取余。
-
发送方与接收方协商一个r+1比特的生成多项式G,G最高位为1。
-
发送方:发送D+R位数据,D为给定数据段,R为CRC比特;使得D+R用模2运算恰能被G整除。R长度=G长度-1,即R比G少1位。
- 由于模2运算的性质,加法不进位,减法不借位!等价于进行异或操作:D*2^r XOR R=nG。
- 校验码的位数比生成多项式的位数少1,即R比G的位数少1。
- 计算R,其中D*2^r :即D逻辑左移r位,低位补0。
- 进行异或运算;只是一个例子用来计算R;发送方实际传的D+R中R为实际的R,不是被除数。
-
接收方:用G去除接收到的D+R位比特;如果余数非零,说明出错。
-
循环冗余校验示例
- 求循环冗余校验码R,已知G=1001,可以推断R长度为4bits-1=3bits。
- 将发送数据D后补上3个0作为被除数,将G作为除数,开始进行多项式取余运算。
- 运算过程中由于加法不进位,减法不借位,实际上进行按位异或运算。
- 最终的余数高位补零,得到3bits的循环冗余校验码R=011。
5.3 多路访问链路和协议
多路访问协议可划分为3种类型:信道划分协议、随机接入协议、轮流协议。
两种类型的链路
- 1.点对点链路
- 1.点对点协议PPP(Point-to-Point Protocol)
- 2.高级数据链路控制协议HDLC(Hign-level Data Link Control)
- 2.广播链路
- 广播:能够让多个发送和接收节点都连接到相同的、单一的、共享的广播信道上。当任何一个节点传输一个帧时,帧在信道中广播,每个其他节点都能收到这个帧。
- 广播信道问题:所有节点共享同一个传输信道,都能进行数据帧传输,当两个以上的节点同时传输时,传输的帧在所有的接收方处碰撞;造成帧的丢失,以及广播信道的浪费。
多路访问协议
-
多路访问的含义
- 规范节点在共享的广播信道上的传输行为,从而协调多个发送和接收节点对一个共享广播信道的访问,避免碰撞。
- 共享信道的使用不能通过带外方式进行协商。
-
三类多路访问控制协议
1. 信道划分协议
- 特征:将信道划分为小的“片段”,然后分配给每个节点。
- 信道划分协议的三种方式:时分多路复用TDMA、频分多路复用FDMA、码分多址CDMA。
1.1 时分多路复用TDMA
- 定义:把时间划分成时间帧,并进一步划分每个时间帧为N个时隙。
- 一个4节点的TDM例子
- TDM优点:(1)消除了碰撞并且公平;(2)每个节点在每个帧时间内得到了专用的传输速率R/N bps。
- TDM缺点:(1)节点被限制在R/N bps的平均速率;(2)节点必须等待自己的时间帧轮次,即使它是唯一有数据要发送的节点。
1.2 频分多路复用FDMA
- 定义:把吞吐量为R bps的信道划分成不同的频段,每个频段具有R/N bps带宽,并把每个频率分配给N个节点中的一个。
- FDM优点:(1)消除了碰撞并且公平;(2)每个节点在每个频段内得到了专用的传输速率R/N bps。
- FDM缺点:限制一个节点只能使用R/N bps的带宽,即使它是唯一有数据要发送的节点。
1.3 码分多址CDMA
- 定义:对每个节点分配一种不同的编码,然后每个节点用不同的编码方式对要发送的数据进行编码;接收方根据不同编码进行辨别解码;保证不同的节点可以同时传输。
- 实质:对编码空间进行划分。
- 应用:蜂窝电话
2. 随机接入协议
- 随机接入特征:一个传输节点总是以信道的全部速率进行发送。当有碰撞时,涉及碰撞的每个节点在等待一个随机时延后重复发送碰撞帧。
- 面临问题:(1)如何检测冲突;(2)如何从冲突中恢复。
- 随机接入协议的五种方式:
- 时隙ALOHA
- ALOHA
- CSMA:载波侦听多路访问
- CSMA/CD:具有碰撞检测的载波侦听多路访问
- CSMA/CA
2.1 时隙ALOHA
-
时隙ALOHA协议假设
- (1)所有帧由L比特组成。
- (2) 时间被划分为长度为L/R 秒的时隙(即一个时隙等于传输一帧的时间) 。
- (3)节点只在时隙起点开始传输帧 。
- (4) 节点是同步的,每个节点都知道时隙何时开始。
- (5)如果在一个时隙中有两个或者更多个帧碰撞,则所有节点在该时隙结束之前可以检测到该碰撞事件。
-
时隙ALOHA协议实现
- (1)当节点有一个新帧要发送时,它等到下一个时隙开始并在该时隙传输整个帧。
- (2)如果没有碰撞,节点成功地传输它的帧。
- (3)如果有碰撞,节点在该时隙结束之前检测到这次碰撞。节点以概率p在后续的每个时隙中重传它的帧,直到该帧被正确地传输出去。
-
时隙ALOHA优点:当某节点是唯一活跃节点时,可以以全速R进行传输;且协议是高度分散,每个节点单独检测碰撞并决定何时重传;实现简单。
-
时隙ALOHA缺点:会发生碰撞,造成时隙浪费;存在空闲时隙;需要进行碰撞检测;需要进行时隙同步。
-
时隙ALOHA效率
- 时隙ALOHA效率定义:当有大量的活跃节点且每个节点总有大量的帧要发送时,长期运行中成功时隙的份额。
- 效率分析:当N 趋近于无穷时,取Np(1-p)N-1的极限,从而得到这个协议的最大效率为1 /e=0.37。
2.2 ALOHA
- ALOHA协议实现:当一帧首次到达时,节点立刻将该帧传输进广播信道。如果传输的帧与另外的帧发生碰撞,则它立刻以概率p重传该帧,或者以概率1-p等待另一个帧时间后进行重传。
- ALOHA优点:简单,没有时隙的概念,同步传输。
- ALOHA缺点:冲突概率增加,假设节点i 在t0时刻开始传输,则为了使该帧能够成功地传输,在时间间隔[t0-1,t0+1]中不能有其他节点开始传输。
- ALOHA效率:效率为1/2e=0.18,为时隙ALOHA的一半。
2.3 CSMA:载波侦听多路访问
- CSMA实现
- 载波侦听(说前先听):节点在传输前先侦听信道,如果来自另一个节点的帧正向信道上发送,节点则等待直到检测到一小段时间没有传输,然后开始传输。
- CSMA缺点
- 即使侦听仍然存在碰撞。
- 碰撞原因:存在传播时延;传播时延越大,碰撞概率越高。
- 碰撞结果:整个帧传输时间被浪费。
2.4 CSMA/CD:具有碰撞检测的载波侦听多路访问
-
CSMA/CD协议实现
- 1.载波侦听(说前先听):节点在传输前先侦听信道,如果来自另一个节点的帧正向信道上发送,节点则等待直到检测到一小段时间没有传输,然后开始传输。
- 2.碰撞检测(边说边听):节点在传输时一直侦听信道;如果它检测到另一个节点正在传输干扰帧,它就停止传输,用指数回退算法来确定它应该在什么时候进行下一次传输。
-
实例:以太网中CSMA/CD算法
- 步骤1:网络适配器从网络层接收数据报,创建数据帧。
- 步骤2:如果网络适配器侦听到信道空闲则开始传输数据帧;否则等待直到信道空闲才开始传输(载波侦听)。
- 步骤3:在传输过程中,网络适配器持续侦听信道:如果网络适配器传输完整个帧没有检测到其他传输,则完成了该帧;如果网络适配器在传输过程中检测到了其他传输,则停止传输并发送阻塞信号(碰撞检测)。
- 步骤4:中止传输后,网络适配器进入二进制指数后退:当第m次碰撞后,网络适配器从整数集合{0,1,2,3,…,2^(m)-1}中随机选择一个整数K,并等待K*512比特时间后返回步骤2;其中m最大值为10,碰撞次数超过10次m仍取10(二进制指数回退)。
-
指数回退:第1次冲突,在{0,1}里选K;第2次冲突,在{0,1,2,3}里选K…第10次冲突,在{0,1,2,3,4,…,1023}中选K;延时K*512比特传输时间。
-
**指数回退实例:**对于10Mbps的以太网,传输1比特的时间为10^(-7)s=0.1us微秒;当K=4时,K*512比特时间=204.8us=0.2048ms。1s=1000ms=1000000us。
-
CSMA/CD效率
- 效率定义:当有大量的活跃节点且每个节点总有大量的帧要发送时,帧在信道中无碰撞地传输的那部分时间在长期运行时间中所占的份额。
- 效率分析
- dprop:信号在任意两个节点之间传播所需要的最大时间。
- dtrans:传输一个最大长度的以太网帧所需要的时间。
- 效率efficiency=1/(1+5dprop/dtrans)。
- 当dprop趋向0或dtrans趋向无穷大时,效率趋近1。
- 优势:效率高于ALOHA,分散,简单。
-
CSMA/CD与CSMA/CA
- CSMA/CA在主要用于802.11(WiFi),用于碰撞避免。
- CSMA/CD使用链路层确认/重传(ARQ)机制,主要用于共享式以太网,用于碰撞检测。
2.5 CSMA/CA
-
CSMA/CA使用碰撞避免。
-
CSMA/CA不使用碰撞检测的原因:
- 碰撞检测要求站点具有同时发送和接收信号的能力;802.11适配器接收信号的强度远远小于发送信号的强度。
- 即使适配器可以同时发送和监听信号,适配器也会由于隐藏中断和信号衰减问题而无法检测到所有的碰撞。
-
CSMA/CA工作过程
- 假设一个站点(无线站点或者AP)有一个帧要发送。
- 1.如果初始时某站点监听到信道空闲,它将在一个被称作分布式帧间间隔DIFS的短时间段后发送该帧。
- 2.否则,该站点选取一个随机回退值并且在侦听信道空闲时递减该值。当侦听到信道忙时,计数值保持不变。
- 3.当计数值减为0时,该站点发送整个数据帧并等待确认。
- 4.目的站点收到一个通过CRC校验的帧后,它等待一段时间SIFS,然后发回一个确认帧。
- 5.如果收到确认,发送站知道它的帧已被目的站正确接收了。如果该站点要发送另一帧,它将从第二步开始CSMA/CA 协议。如果未收到确认,发送站将重新进入第二步中的回退阶段,并从一个更大的范围内选取随机值。
3. 轮流协议
- 轮流特征:具备了多路访问协议的两个理想特性,即当只有一个节点活跃时,其具有R bps的吞吐量;当有M个活跃节点时,每个活跃节点的吞吐量接近R/M bps。
- 轮流协议包括轮询协议、令牌传递协议。
3.1 轮询协议
- 轮询协议实现:节点之一要被指定为主节点,主节点以循环的方式轮询每个节点:主节点首先向节点1发送一个报文,告诉节点1能够发送的最大帧数;在节点1传输了某些帧后,主节点告诉节点2能够传输的最大帧数。
- 轮询协议优点:消除了CSMA/CD的碰撞和空时隙问题。
- 轮询协议缺点:(1) 引入了轮询时延;(2)如果主节点有故障,整个信道会出现问题。
3.2 令牌传递协议
- 令牌传递协议操作: 没有主节点,而是由一个称为令牌(token)的帧在节点之间以某种固定的次序进行交换,当一个节点收到令牌时,若它有一些帧要发送时,它才持有这个令牌,并发送最大数据的帧数;否则,它立即向下一个节点转发该令牌。
- 令牌传递协议缺点:一个节点的故障可能会使整个信道崩溃。
5.4 链路层编址MAC
MAC 地址
-
概念
- MAC 地址长度为6 字节,共有2^48 个可能的LAN 地址。
- MAC地址有各种不同的称呼:LAN 地址、物理地址、MAC 地址、以太网地址。
- MAC 广播地址:对于使用6 字节地址的LAN(例如以太网和令牌传递LAN)来说,广播地址是48 个连续的1 组成的字符串(即十六进制表示的FF-FF-FF-FF-FF-FF)。
- IEEE 在管理着MAC 地址空间,MAC地址具有唯一性,不会随着移动而改变。
- 并不是节点(即主机或路由器)具有MAC 地址,而是节点的网络适配器(网卡NIC)具有链路层地址MAC。
-
IP地址依赖于所在子网
- 在同一子网内,利用MAC地址进行寻址,不涉及网络层IP。
- 链路层交换机的接口没有MAC地址;路由器的接口有IP地址。
-
MAC地址作用:用于链路层寻址
- 当适配器收到一个帧时,会检查目的MAC地址是否与自己的MAC地址匹配,若匹配则从中提取数据报,否则丢弃。
地址解析协议ARP
- ARP协议功能
- 在网络层地址(如因特网的IP 地址)和链路层地址(即MAC 地址)之间进行转换。
- 发送节点使用ARP确定目的IP 地址的MAC 地址。
- ARP表
- 在cmd窗口通过命令:arp -a 查看本机的ARP表。
- ARP 表结构:<目标 IP address;目标 MAC address;TTL>
- ARP 协议模块将使用一个ARP 表,取IP 地址作为输入,查表得到相应的MAC 地址,TTL的值通常设置为20min。
- ARP即插即用,ARP表自动完成更新。
- ARP仅在同一个局域网LAN内部起作用。
- DNS将域名、主机名转换为IP地址。
- 如果ARP 表中没有IP 地址对应的MAC 地址,发送节点用ARP 协议查询来解析这个地址。
- ARP协议工作原理
- ARP在同一个局域网内部起作用,因为在同一个子网中,数据报是直接交付的。
- 假设主机A希望给主机B发送数据,但B的MAC地址不在A的ARP表中
- 1.A广播ARP查询数据报,包括源主机、目的主机IP地址。其中目标MAC地址为FF-FF-FF-FF-FF-FF,代表广播地址,同一LAN中所有主机都能收到。
- 2.B接收ARP查询数据报,使用自己的MAC地址构造数据报响应A。
- 3.A收到B的响应数据包,在A的ARP表中缓存B的<IP,MAC>地址对。
- 当需要发送数据报到子网以外的节点时
-
一般过程
- 首先数据报必须发送给路由器端口(网关)。
- 路由器在确定该数据报要被转发的正确端口后,通过查询路由器中的转发表来找到输出端口。
- 输出端口把这个数据报封装到一个新的帧中,并将帧发送进入下一个子网。
- 总结:也就是说数据报是被重新封装(具有不同目的/源MAC 地址的帧)后发送出去的。
-
实例:假设主机A经路由器R发送数据报给B
- 1.A生成IP数据报:<源IP为A,目的IP为B>,通过DNS可查询B的IP地址。
- 2.A将数据报封装成链路层帧,<源MAC为A,目的MAC为R左边接口>;帧包含A-to-B Ip数据报。A使用ARP找到R的MAC地址。
- 3.R收到数据帧后取出IP数据报,找到目的IP。
- 4.R生成链路层帧,<源MAC地址为R右边接口,目的MAC为B>;帧包含转发的A-to-B IP数据报,<源IP为A,目的IP为B>。R使用ARP找到B的MAC地址。
- 5.B收到数据帧后,从中取出IP数据报。
-
5.5 以太网
以太网概述
- 完全占据有线局域网市场
- 以太网是目前有线局域网市场事实上的标准
- NIC便宜
- 最早使用的LAN技术
- 不可靠,无连接,使用指数后退的CSMA/CD(具有碰撞检测的载波侦听多路访问)
- 简单,相对于token LANs和ATM
- 跟上了发展速度:10Mbps-10Gbps
以太网拓扑结构
1. 同轴电缆总线拓扑
- 时期:20世纪80到90年代中期。
- 特征:是一种广播局域网LAN,即所有传输的帧传送到与该总线连接的所有适配器并被其处理。
- 缺点:存在碰撞;所有节点位于同一个冲突域。
2. 基于集线器/交换机的星型拓扑
-
时期:20世纪90年代后期。
-
集线器hub
- 1.处理比特。
- 2.没有帧缓冲(直接转发,不存储)。
- 3.没有CSMA/CD:主机网络适配器检测冲突。
-
交换机switch
- 1.存储,转发以太网帧。
- 2.检查进来帧的MAC地址,选择性地转发帧到一个或多个出去的接口。
- 3.使用CSMA/CD访问控制。
-
在21世纪前期,集线器被交换机替代。
-
特征:节点之间不会碰撞;使用以太网协议,但是消除了冲突域。
以太网帧结构
- 1.前同步码 8Bytes
- 该前同步码的前7 个字节的值都是1010_1010,最后一个字节是1010_1011。
- 前同步码字段的前7 个字节用于“唤醒”接收适配器,并且将它们的时钟和发送方的时钟同步。
- 2.目的地址 6Bytes
- 3.源地址 6Bytes
- 4.数据字段 46-1500Bytes
- 这个字段承载了IP 数据报。
- 数据字段的最小长度是46 字节。这意味着如果IP 数据报小于46 字节,数据报必须被填充到46 字节。
- 5.类型字段 2Bytes
- 一台给定的主机可以支持多种网络层协议,以对不同的应用采用不同的协议。
- 6.循环冗余校验CRC 4Bytes
- CRC 字段的目的是使得接收适配器检测帧中是否引入了差错。
以太网服务类型
- 1.不可靠
- 接收方网络适配器不发送acks或nacks给发送方的网络适配器。
- 由于丢弃了以太网帧而可能存在间隙(丢失某些数据报)
- TCP会察觉到这些间隙。
- 以太网链路层的重传是由于传输层TCP引起的。
- 2.无连接
- 以太网中网络适配器面向网络层无连接服务。
- 发送和接收者之间没有握手过程。
- 3.使用指数后退的CSMA/CD
- CSMA/CD:具有碰撞检测的载波侦听多路访问
- 检测到冲突会发送阻塞信号:阻塞信号的目的是确保所有其他的传输中的适配器都意识到此次碰撞。
- 以太网的重传是传输层TCP引起的。
- 交换机中没有信号冲突产生的碰撞。
802.3以太网标准
- 有许多不同的以太网标准。
- 物理媒介不同:光纤、铜缆。
- 传输速度不同:10Mbps,100Mbps,1Gbps,10Gbps。
- 不同以太网的MAC协议和以太网帧结构是相同的。
5.6 链路层交换机
现代以太网LAN采用星型拓扑,每个节点与中心交换机相连,交换机负责接收入链路帧并将它们转发到出链路。
交换机VS集线器
- 集线器是一种物理层设备,它处理比特而不是帧。
- 1.集线器将到来的0或1的比特重新生成,能量放大,并将该比特向所有的其他接口传输出去。
- 2.没有帧缓冲。
- 3.没有CSMA/CD:主机网络适配器检测冲突。
- 交换机是链路诚设备,存储转发一个帧。而集线器直接转发一个帧,没有存储的概念。
- 1.存储,转发以太网帧。
- 2.检查进来帧的MAC地址,选择性转发帧到一个或多个出去的接口。
- 3.使用CSMA/CD访问控制协议。
- 4.透明转发:主机意识不到交换机的存在。
- 5.即插即用,自学习:交换机基本不需要配置。
- 6.全双工:主机与交换机有专用连接保证全双工,节点和交换机能够同时传输而无碰撞。
- 7.不会产生冲突:每条链路是一个单独的冲突域。消除碰撞,在使用交换机构建的局域网中,没有因碰撞而浪费的带宽。
交换机功能
- 1.过滤:决定一个帧是应该转发到某个接口还是将其丢弃。
- 比如进入交换机的帧目的地IP地址为其本身,不需要转发,直接舍弃。
- 2.转发:决定一个帧应该被导向哪个接口,并把该帧移动到这些接口。
- 若交换机表有要转发的接口表项,直接转发到相应接口;否则,广播该帧。
交换机表
- 即插即用,自学习。
- 交换机表的条目包含:<主机MAC地址,主机可达的交换机端口,时间戳>。
交换机VS路由器
相同点
- 两者都为存储转发
- 路由器在不同局域网之间存储转发数据报;路由器是网络层设备:基于IP地址转发分组,检查网络层头部。
- 交换机在同一个局域网存储转发帧;交换机是链路层设备:基于MAC地址转发分组,检查链路层头部。
- 两者都有转发表
- 路由器维护路由表,使用路由算法。
- 交换机维护交换表,实施过滤,自学习算法。
不同点
- 交换机
- 交换机存在冗余路径时,会造成广播帧循环。
- 位置:在链路层。
- 交换机存在广播帧循环,可能发生广播风暴问题。
- 交换机即插即用,自学习。
- 交换机使用MAC地址,在同一局域网存储转发帧。
- 路由器
- 路由器通常不存在广播循环问题。
- 位置:在网络层。
- 可以在一定程度上抑制广播风暴。
- 路由器需要人为配置。
- 路由器使用IP地址,在不同局域网间存储转发数据报。
5.7 虚拟局域网VLAN
VLAN出现的原因
- 现有拓扑结构的缺点
- 1.缺乏流量隔离。
- 2.交换机的无效使用。
- 3.用户在组间移动需要改变物理布线。
VLAN划分
-
VLAN划分动机
- 1.支持VLAN的交换机可以在单一的物理局域网上定义多个虚拟局域网。
- 2.一个VLAN中的所有接口形成一个广播域。
- 3.不同VLAN之间数据必须通过路由器。
-
VLAN划分依据
- 可以基于端口划分VLAN。
- 可以基于主机的MAC地址划分VLAN。
VLAN
- 1.流量隔离:1-8端口的帧只能到达1-8端口。
- 可以隔离广播帧。
- 通过添加删除VLAN标签实现VLAN划分。
- 2.动态成员划分:可以动态地将端口分配到某个VLAN中。
- 3.VLAN之间转发需要经过路由器。
- 4.虚拟局域网协议允许在以太网的帧格式中插入一个 4 字节的标识符,称为 VLAN 标记(tag),用来指明发送该帧的工作站属于哪一个虚拟局域网。
不同交换机上属于同一VLAN的端口如何交互
- 1.在交换机上配置trunk端口,并互联,则发送到任何VLAN的帧都可以通过trunk端口转发到其他交换机。
- 2.需要定义扩展的格式(加入VLAN标签):802.1Q协议。
- 3.在trunk端口实现VLAN标签的添加和删除。
5.8 链路虚拟化MPLS:网络作为链路层
多协议标签交换MPLS
-
目标
- 基于固定长度标签(而不是目的地IP 地址) 和虚电路技术,让路由器加快转发速度(不改变基础设施)。
- 在链路层和网络层之间插入MPLS首部。
-
特征
- 通过固定长度的标签(而不是最短的前缀匹配)进行快速查找。
- 借鉴了虚电路的思想。
- 数据报仍然保留IP地址。
支持MPLS的路由器
- 支持MPLS的路由器称为标签交换路由器。
- 一个MPLS帧仅能在标签交换路由器之间进行发送。
- 通过在转发表(MPLS转发表和路由表不同)中查找MPLS标 签来转发MPLS帧,然后将数据报传递到相应的输出接口,而非提取目的IP地址后执行最长前缀匹配的查找。
MPLS路由和IP路由
- IP路由:仅根据目的地址确定路径。
- MPLS路由:可以基于源或目的地址确定路径,可以沿着多条路由转发分组。
5.9 Web页面请求的历程
1. 接入因特网
1.1 使用DHCP协议获取IP地址,下一条路由,DNS地址。
1.2 DHCP请求封装在UDP中,封装在IP中,封装在802.3中。
1.3 以太网帧广播(目标:FFFFFFFFFFFF)在局域网上,在路由器运行时收到DHCP服务器。
1.4 以太网解复用到IP,UDP解复用到DHCP服务器。
1.5 DHCP服务器公式包含DHCP,ACK,客户的IP地址,IP第一跳路由器地址,用于客户,名称和IP地址的DNS服务器。
1.6 DHCP封装服务器,帧转发(切换学习)LAN,在客户端解复用。
1.7 DHCP客户端接收DHCP的ACK响应。
1.8 客户端现在具有IP地址,知道DNS的名称和地址服务器,其第一跳路由器的IP地址。
2. ARP:IP转为MAC
2.1 发送HTTP请求前,需要请求的url地址的IP地址。
2.2 DNS查询创建,封装在UDP,封装在IP。要将帧发送到路由器,需要路由器接口的MAC地址:ARP。
2.3 ARP查询广播,由路由器接收,以ARP应答给出路由器接口的MAC地址。
2.4 客户现在知道第一跳路由器的MAC地址,所以现在可以发送帧包含DNS查询。
3. DNS
3.1 IP数据报包含通过局域网从客户端到第一跳路由器转发的DNS查询。
3.2 IP数据报从校园网转发到Comcast网络,路由(由RIP、OSPF、is和/或BGProuting协议创建的表)到DNS服务器。
3.3 解除到DNS服务器。
3.4 DNS服务器回复客户端IP地址。
4. 建立TCP连接
4.1 要发送HTTP请求,客户端首先打开TCP套接字到web服务器。
4.2 TCP SYN段(3次握手中的第1次)域间路由到web服务器。
4.3 web服务器使用TCP同步响应(3次握手中的第2次)。
4.4 建立TCP连接。
5. HTTP请求和响应
5.1 发送到TCP套接字的HTTP请求
5.2 IP数据报包含路由到所请求网址的HTTP请求
5.3 web服务器响应HTTP应答(包含web页面)
5.4 包含路由回客户端的HTTP应答的IP数据报
【思维导图】
0 概览
1 链路层概述
2 差错检测和纠正技术
3 多路访问链路和协议
4 链路层编址MAC
5 以太网
6 链路层交换机
7 虚拟局域网VLAN
8 链路虚拟化MPLS:网络作为链路层
9 Web页面请求历程
参考资料
《计算机网络自顶向下方法》(第4版)James F.Kurose,Keith W.Ross