物理层发出去的信号需要通过数据链路层才知道是否到达目的地;才知道比特流的分界线
数据链路层为数据加上帧首和帧尾使之成为帧的过程
Maximum Transfer Unit
)透明传输是指数据链路层对上层交付的传输数据没有任何限制,就好像数据链路层不存在一样(即保证接收方接到的数据是完整的数据)
面向字节的物理链路使用字节填充(或称字符填充)的方法实现**透明传输**
帧头帧尾有标志位用来划分一个个帧,如果帧内部恰好也出现了标志位,则在第一次扫描时在标志位前面加一个转义字符帮助区分哪个是真正的帧头。考虑到转义字符也可能在帧内部出现,因此在转义字符前也加转义字符。接收方接到消息后但凡看到转义字符开头就会去掉转义字符并且对其后一个字符不做特殊处理
面向比特的物理链路使用比特填充的方法实现透明传输
零比特填充:在发送前,对帧的数据部分进行扫描,每
5
个连续的比特1
后就插入1
个比特0
,防止其与首部尾部的标志位混淆。接收方接收时将每5
个连续的比特1
后面的0
剔除即可
实际的通信链路都不是理想的,比特在传输过程中可能会产生差错:
1
可能变成0
,0
可能变成1
。这叫比特差错在一段时间内,传输错误的比特占所传输比特总数的比率称为误码率BER(
Big Error Rate
)使用差错检测码(如
Mac
帧尾的FCS
)来检测数据在传输过程中是否产生了比特差错,是数据链路层所要解决的重要问题之一
在待发送的数据后面添加
1
位奇偶校验位,使整个数据(包括所添加的校验位在内)中"1
"的个数为奇数(奇校验)或为偶数(偶校验)
比如发送数据001
0
,使其成为0001
,1
的个数为奇数。如果传输过程中发生了1
位误码,则1
的个数会变成偶数,据此判断是否发生误码;但是若发生了2
个误码,1
的个数依然为奇数,因此检查不出来1
,使其成为1001
,1
的个数为偶数,其他情况与奇校验类似如果有奇数个位发生误码,则奇偶性发生变化,可以检查出误码
如果有偶数个位发生误码,则奇偶性不发生变化,不能检查出误码(漏检)
除法内的相减实际是做异或运算,因此没有小的减不了大的这个说法
不可靠传输服务:仅仅丢弃有误码的帧,其他什么也不做
可靠传输:想办法实现发送端发送什么,接收端就收到什么
发送方发送数据
DATA
,接收方接收时进行差错检测
①如果没有出现误码,则接收信息并返回**ACK
确认分组给发送方,发送方收到ACK
后,一次通信结束
②如果出现误码,则丢弃信息并返回NAK
**拒绝分组给发送方,发送方收到NAK
后,重传DATA
,直至出现步骤①
的情况
如果DATA
传送过程中丢失了,即接收端一直等DATA
,发送端一直等ACK
,造成死锁,如何解决呢?
可以引入超时重传机制。可以在发送端设置一计时器
(大约发送接收的平均时间)
,当发送端在这个时间内没有收到ACK或NAK
时,就会判断DATA
丢失,从而再次发送DATA
,打破死锁
如果ACK
发送中丢失了,即接收方收不到ACK
就将数据重新发送,而数据实际上接收方已经有了,因此重复接收,并返回ACK
,造成错误,怎么办?
可以对每次发的
DATA
都加上序号,这样接收端就可以判断当前的数据是否有接收过,从而决定其去留
如果发送端发送DATA 0
,如果ACK
由于某些原因使其到达接收端的时间变长了,那么根据超时重传,DATA 0
会再次发送,而此时ACK
到达,则发送方会认为这是后一次DATA 0
的确认分组,于是马上发送DATA 1
。而第二次发送的DATA 0
此时返回ACK
,发送方误以为是DATA 1
的ACK
,因此又会发送DATA2
,而实际上DATA 1
的是否误码等情况还不知道,因此出现了错误,这种情况怎么办?
可以为
ACK
加上编号。则每个ACK
的相互作用就不会互串了。【对于数据链路层点对点信道,往返时间比较固定,不会出现确认迟到的情况,因此可以不给确认分组编号】
相对停止-等待协议多个窗口的概念
接收窗口尺寸只能等于1
,因此接收方只能按序接收正确到达的数据分组
ACK n
表示发送过来的分组x<=n的都收到了与回退
N
帧相比,接收窗口允许多个,且发送窗口最大情况有所变化
ACK
帧的部分不会超时重传数据链路层协议,用于规定帧格式
面向字节的异步链路采用插入转义字符的字节填充法
PPP
帧的标志字段取值为7E(16进制)
,如果数据中出现7E
则需要在数据前插入转义字符7D(16
进制),并将原来的7E减20(16
进制),所以7E
在数据中最终会变成7D5E
7D
前再加一个转义字符7D
,并将数据的7D
减20(16进制)
,于是转义字符7D
在数据中最终会变成7D5D
ASCII
码控制字符【数值小于20(16进制)的字符】,则在该字符前插入一个7D,同时将该字符的编码加上20(16进制)面向比特的同步链路采用插入比特0的比特填充法
接收方每收到一个
PPP
帧,就进行CRC
检验(多项式)。若CRC
检验正确,就收下这个帧;反之就丢弃这个帧(不可靠传输服务)。检验由尾部的FCS实现用于检验的多项式为 X 16 + X 12 + X 5 + 1 X^{16}+X^{12}+X^5+1 X16+X12+X5+1
共享信道要着重考虑的一个问题就是如何协调多个发送和接收站点对一个共享传输媒体的占用,即媒体接入控制MAC(
Medium Access Control
)
复用(Multiplexing)就是通过一条物理线路同时传输多路用户的信号。
当网络中传输媒体的传输容量大于多条单一信道的总通信量时,可利用复用技术在一条物理线路上建立多条通信信道来充分利用传输媒体的带宽
将传输线路的频带资源划分成多个子频带,形成多个子信道。各子信道之间留出隔离频带,以免造成子信道间干扰。当多个信号输入一个多路复用器时,这个复用器将每一个信号调制到不同频率的载波上,接收端由相应的分用器通过滤波将各路信号分隔开,将合成的复用信号恢复成原始的多路信号
将时间划分为一个个时隙,将带宽资源按照时隙轮流分配给不同的用户,每对用户只在所分配时隙里使用线路传输数据。
时分复用技术将时间划分为一段段等长的时分复用帧,每一个时分复用的用户在每一个时分复用帧中占用固定序号的时隙。每个用户所占的时隙是周期性出现的,其周期就是时分复用帧的长度
波分复用其实就是光的频分复用。经过光调制,分别将光载波变换到不同波长。这些光波经过光复用器就可以在一根光纤中传输。到达终点后用光分用器将不同波长的光进行还原得到信息
光信号传输一段距离后会衰减,对衰减的光信号必须进行放大才能继续传输
码分复用
CDM
(最初用于军事通信)是另一种共享信道的方法。实际上,由于该技术主要用于多址接入,人们更常用的名词是码分多址CDMA
CDM
的每一个用户可以在同样的时间使用同样的频带进行通信,由于各用户使用经过特殊挑选的不同码型,因此各用户之间不会造成干扰
在CDMA
中,每一个比特时间再划分为m
个短的间隔,称为码片。通常m
的值是64
或128
使用CDMA
的每一个站被指派一个唯一的m bit
码片序列
1
,则发送它自己的m bit
码片序列m bit
码片序列二进制反码码片序列挑选原则:
分配给每个站的码片序列必须各不相同,实际常采用伪随机码序列
分配给每个站的码片序列必须相互正交(规格化内积为0
)
令向量S
表示站S
的码片序列,令向量T
表示其他任何站的码片序列。 S ⋅ T ( 计算方式为码片序列 S 和 T 对应项相乘相加再除以长度 ) 等于 0 S·T(计算方式为码片序列S和T对应项相乘相加再除以长度)等于0 S⋅T(计算方式为码片序列S和T对应项相乘相加再除以长度)等于0 即规格化内积等于0,此时会有以下四个特征↓。
S ⋅ T 恒等于 0 ; S ⋅ T ‾ 恒等于 0 ; S ⋅ S 恒等于 1 ; S ⋅ S ‾ 恒等于 − 1 S·T恒等于0;S·\overline T恒等于0;S·S恒等于1;S·\overline S恒等于-1 S⋅T恒等于0;S⋅T恒等于0;S⋅S恒等于1;S⋅S恒等于−1
习题2
的B、C、D
的情况同理↑
复用是将单一媒体的频带资源划分成很多子信道,这些子信道之间相互独立,互不干扰。从媒体的整体频带资源上看,每个子信道只占用该媒体频带资源的一部分
多址(更确切地应该称为多点接入)处理的是动态分配信道给用户。这在用户仅仅暂时性地占用信道的应用中是必须的,而所有的移动通信系统基本上都属于这种情况。相反,在信道永久地分配给用户的应用中,多址是不需要的(对于无线广播或电视广播站就是这样)
频分复用FDM
和时分复用TDM
可用于多点接入,相应名词是频分多址FDMA和时分多址TDMA。从某种程度上,FDMA、TDMA、CDMA可以分别看作是FDM、TDM、CDM的应用
多个主机连接到一根总线上,当信息同一时间传送相遇时就会发生碰撞。
如何协调各主机的工作,使信息避免碰撞是很重要的
96
比特时间是指发送96
比特所需要的时间,也称为帧间最小间隔。其作用是是接收方可以检测出一个帧的结束,同时也使得其他站点都能有机会平等竞争信道并发送帧
①为什么 τ − δ 2 \tau - \frac{\delta}{2} τ−2δ时刻发送碰撞?
当
D
开始发送的时,A
已经走了 τ − δ \tau - \delta τ−δ时间,所以剩下路程所需要的时间是 δ \delta δ。
又因为A
和D
发送速度是相同的,因此对于 δ 时间 \delta时间 δ时间的路程,每人只需要走 δ 2 时间 \dfrac{\delta}{2}时间 2δ时间就会相遇,即碰撞
碰撞时刻 = τ − δ + δ 2 = τ − δ 2 碰撞时刻=\tau - \delta +\dfrac{\delta}{2}=\tau -\dfrac{\delta}{2} 碰撞时刻=τ−δ+2δ=τ−2δ
②为什么 t = τ t=\tau t=τ时,D检测到碰撞?
根据上边推论,发现
D
走了 δ 2 的时间 \dfrac{\delta}{2}的时间 2δ的时间路程后就发送了碰撞,此时它开始返回,经过同样的时间可以回到D
检测到碰撞时间 = δ 2 + δ 2 = δ 检测到碰撞时间=\dfrac{\delta}{2}+\dfrac{\delta}{2}=\delta 检测到碰撞时间=2δ+2δ=δ
③为什么 2 τ − δ 2\tau - \delta 2τ−δ时,A检测到碰撞?
与
D
检测到碰撞同理,A
走了 τ − δ 2 时间 \tau -\dfrac{\delta}{2}时间 τ−2δ时间,因此往回走也是这么多时间
A 检测到碰撞时间 = τ − δ 2 + τ − δ 2 = 2 τ − δ A检测到碰撞时间=\tau -\dfrac{\delta}{2}+\tau -\dfrac{\delta}{2}=2\tau - \delta A检测到碰撞时间=τ−2δ+τ−2δ=2τ−δ
为什么需要规定最小帧长?
假设
A
向D
发送帧,如果帧很短的话,在 2 τ 2\tau 2τ内就会将帧发送完毕,帧发送完毕后不会进行碰撞检测,而此时依然有发生碰撞的可能。所以必须保证在 2 τ 2\tau 2τ时间内帧不会被发送完,在这段时间里能够保持碰撞检测
512
比特(512
比特即争用期)
64
字节64
字节,因此凡长度小于64
字节的帧都是由于碰撞检测而异常中止的无效帧当帧过长时,其他线路会迟迟得不到资源,同时也可能导致接收方缓冲区溢出,因此帧的最大长度也有规定。
当帧发送碰撞后会停止发送,隔一段时间后再次发送,而具体隔多少时间再发送需要根据退避算法得出
各主机发送帧都不会产生碰撞
总线一旦空闲就有某个主机立即发送帧
每帧的发送时延为 T 0 T_0 T0,传播时延为 τ \tau τ,占用信道的时间为 T 0 + τ T_0+\tau T0+τ
极限信道利用率 S m a x = T 0 T 0 + τ = 1 1 + τ T 0 为了令 S m a x 尽量大,所以应该让 τ T 0 尽量小 即 τ 尽量小 ( 以太网端到端距离收到限制 ) 或 T 0 尽量大 ( 以太网帧尽量长 ) 极限信道利用率S_{max}=\dfrac{T_0}{T_0+\tau}=\dfrac{1}{1+\dfrac{\tau}{T_0}}\\ 为了令S_{max}尽量大,所以应该让\dfrac{\tau}{T_0}尽量小\\ 即\tau尽量小(以太网端到端距离收到限制)或T_0尽量大(以太网帧尽量长) 极限信道利用率Smax=T0+τT0=1+T0τ1为了令Smax尽量大,所以应该让T0τ尽量小即τ尽量小(以太网端到端距离收到限制)或T0尽量大(以太网帧尽量长)
802.11
无线局域网使用CSMA/CA
协议,在CSMA
的基础上增加了一个碰撞避免CA功能,而不再实现碰撞检测功能由于不可能避免所有的碰撞,并且无线信道误码率较高,
802.11
标准还使用了数据链路层确认机制(停止-等待协议)来保证数据被正确接收
在无线局域网中,仍然可以使用载波监听多址接入CSMA,即在发送帧之前先对传输媒体进行载波监听。若发现有其他站在发送帧,就推迟发送以避免碰撞
在无线局域网中,不能使用碰撞检测CD,原因如下:
802.11
的MAC
层标准定义了两种不同的媒体接入控制方式
DCF
方式下,没有中心控制站点,每个站点使用CSMA/CA
协议通过争用信道来获取发送权,这是802.11
定义的默认方式PCF
方式使用集中控制的接入算法(一般在接入点AP实现集中控制),是802.11
定义的可选方式,在实际中较少使用
802.11
标准规定,所有的站点必须在持续检测到信道空闲一段指定时间后才能发送帧,这段时间称为帧间间隔IFS
帧间间隔的长短取决于该站点要发送的帧的类型
常用的两种帧间间隔如下
SIFS
的帧类型由ACK
帧、CTS
帧、由过长的MAC
帧分片后的数据帧、以及所有回答AP
探询的帧和在PCF
方式中接入点AP
发送出的任何帧SIFS
要长得多,在DCF
方式中用来发送数据帧和管理帧①为什么源站检测到信道空闲后,还需要等待DIFS时间才将帧发送呢?
因为其他站此时可能有优先级更高的帧需要发送,因此有
DIFS
时间进行缓冲,若这个时间内没有高优先级的帧要发送,则说明信道是真正的空闲
②为什么目的站接收到帧后还需要等到SIFS时间才返回ACK确认帧呢?
SIFS
是最短的帧间间隔,用来分割一次对话的各帧,在这个时间里由接收状态转变为发送状态
③当其他站要发送数据,但是发现此时信道正忙时就会退避一段时间,等信道不忙后再进行操作,接着等待DIFS时间(与①同理),但为什么等待了DIFS时间后还要退避一段随机时间呢?
因为可能有多个站点在信道忙时都想发送帧,因此它们都会被搁置直至信道不忙,在
DIFS
时间后他们会同时发送,而实际上多个站点同时发送数据会碰撞。因此需要一个随机时间将他们进行错峰发送。
多个站点发送冲突时,各个站点需要退避一段随机时间再进行操作
以下情况必须使用退避算法
过程
0
,就开始发送数据0
时信道又转变为忙状态,这时就冻结退避计时器的数值,重新等待信道变为空闲,再经过DIFS
后,继续启动退避计时器i
次退避时,退避时间在时隙编号 { 0 , 1 , . . , 2 i + 1 − 1 } \{0,1,..,2^{i+1}-1\} {0,1,..,2i+1−1}中随机选择一个,然后乘以基本退避时间(也就是一个时隙的长度)就可以得到随机的退避时间。这样做时为了使不同站点选择相同退避时间的概率减少。当时隙编号达到255
时(对应第6
次退避)就不再增加了为了尽可能减少碰撞的概率和降低碰撞的影响,
802.11
标准允许要发送数据的站点对信道进行预约
RTS
帧,且媒体空闲,就发送一个响应控制帧,称为允许发送CTS,它也包括这次通信所需的持续时间从RTS帧中将此持续时间复制到CTS帧中
。CTS
帧后,再等待一段时间SIFS
后,就可发送其数据帧
802.11
标准规定了3
种情况供用户选择
RTS
帧和CTS
帧RTS
帧和CTS
帧RTS
帧和CTS
帧SIFS
后,就向源站发送确认帧ACK
除
RTS
帧和CTS
帧会携带通信需要持续的时间,数据帧也能携带通信需要持续的时间,这称为802.11
的虚拟载波监听机制
A
与C
虽然互相覆盖不到,但是C可收到B发出的关于A的CTS帧,从而得知A需要占用信道的时间。在这段时间里,C
不发送数据,从而解决隐蔽站带来的碰撞问题
MAC
地址是以太网的MAC
子层所使用的的地址
MAC地址
EEPROM
中,因此MAC
地址也被称为硬件地址MAC
地址有时也被称为物理地址。但是MAC
地址不属于物理层而是属于数据链路层MAC
地址。而交换机和路由器往往拥有更多的网络接口,所以会拥有更多的MAC
地址。综上所述,严格来说,MAC地址是对网络上各接口的唯一标识,而不是对网络上各设备的唯一标识单播地址、广播地址与多播地址
MAC
地址进行匹配,若相同则接收,不同则丢弃FF-FF-FF-FF-FF-FF
,将此地址填入帧的目的地址栏中,接收到该帧的主机检索该地址发现是广播地址,因此接收该帧
IP
地址是TCP/IP
体系结构的网际层所使用的的地址
IP
地址是Internet
上的主机和路由器所使用的的地址,由两部分信息构成
MAC地址不具备区分不同网络的功能,而IP地址可以通过网络号做到
如果只是一个单独网络,不接入因特网,则使用MAC地址就足够了(这不是一般用户的应用方式)
如果主机所在的网络要接入因特网,则IP地址和MAC地址都需要使用
数据包转发过程中IP地址与MAC地址变换情况
H1
起初只带有目的IP
地址,查询路由表后路由器指路,从而知道下一步该往哪里走,从而不断转发直至到达目的地。地址解析协议
ARP
属于TCP/IP
体系结构的网际层,其作用是已知设备所分配到的IP
地址,使用ARP
协议可以通过该IP地址获取到设备的MAC
地址
IP
地址与MAC
地址的对应关系,即地址解析。ARP
高速缓存表为空,假设此时B
知道C
的IP
地址,准备发送信息,但是由于不知道C
的MAC
地址,因此无法封装数据帧,所以此时会广播一个**ARP请求报文(封装在MAC帧中,目的地址为广播地址FF-FF-FF-FF-FF-FF
)**,内容如下:
IP
地址是:xxx
;我的MAC
地址是:XXX
;我想知道C
主机的MAC
地址是多少?这个广播帧会被该广播域的所有主机收到A
主机收到后交由上层处理,发现B
问的不是他,所以不予理会C
收到后交由上层处理,发现这个IP
地址正是自己,因此首先将B的MAC地址和IP地址的对应关系记录到自己的高速缓存表中,接着返回给==ARP响应报文(封装在MAC帧中,目的地址为B的MAC地址)==,其中包含自己的MAC
地址集线器
HUB
的主要功能是对接收到的信号进行再生整形放大,以扩大网络的传输距离,同时把所有节点集中在以它为中心的节点上。
CSMA/CD
协议交换机是一种负责转发信号的网络设备,可以为接入交换机的任意两个网络节点提供独享的电信号通路
以太网交换机通常由多个接口,每个接口都可以直接与一台主机或另一个以太网交换机相连。一般都工作在全双工方式
以太网交换机具有并行性,能同时连通多对接口,使多对主机能同时通信,无碰撞(不使用CSMA/CD
协议)
以太网交换机一般都具有多种速率的接口
以太网交换机工作在数据链路层(也包括物理层),它收到帧后,在帧交换表中查找帧的目的MAC地址所对应的接口号,然后通过该接口转发帧
以太网交换机是一种即插即用的设备,其内部的帧交换表是通过自学习算法自动地逐渐建立起来的
帧的两种转发方式
交换机每个接口是一个独立的碰撞域
初始交换机1
和2
的MAC
地址表都为空
此时有以下任务:①A-->B
②B-->A
A
发送给B
的数据通过端口1
进入交换机,因此交换机先将MAC地址A 接口1
==(表示如果要去MAC地址A,可以走接口1)==记录到MAC
表中,同时扫描MAC
表查看是否有MAC地址B
对应的接口,发现没有。因此将这个帧从除来源外的所有端口发送出去【泛洪】。
1
的端口2
发送此帧到主机C
,主机C
对比MAC
地址后发现不是给自己的帧,因此丢弃1
的3
端口发送此帧到主机B
,主机B
对比MAC
地址后发现是给自己的帧,因此收下该帧,交付给高层【注意:此时交换机MAC
地址表并没有学习新的条目】1
的4
端口发送此帧到交换机2
的端口2
,交换机2
首先将MAC地址A 接口2
记录到MAC
地址表中,接着扫描MAC
表,发现没有找到MAC地址B
对应的接口,因此将这个帧从除来源外的所有端口发送出去【泛洪】。1
,3
,4
发送出去给主机后经过比对发现不是自己的帧,因此丢弃B-->A
时,交换机1
的MAC
地址表已经有了MAC地址A 接口1
这个条目
B
发送给A
的帧从接口3
进入交换机,交换机首先将MAC地址B 接口3
记录到MAC
地址表中,接着查询MAC
地址表是否有MAC地址A
对应的接口,发现接口1
对应的就是MAC
地址A
,因此从接口1
转发出去1
到达主机A
,主机A
经过比对后发现这是自己的帧,因此将其接收交付给高层此时若有一个与A
连接在同一总线上的主机G
向A
发送帧,过程如何?
G
向A
发送帧时,由于A
与G
处在同一总线上,因此G
发送的帧会直接传送到A
处,A
进行比对发现这是发送给自己的数据,因此将数据接收1
的端口1
,所以交换机1
会将MAC地址G 接口1
记录到MAC
表中,同时扫描MAC
地址表看看是否有MAC地址A
对应的接口,发现接口1
就是。但是刚刚学习到的MAC地址G
也是来自接口1
,因此交换机知道接口1
是来源,没有必要将数据再从这个接口转发出去。MAC地址表中的每条记录都有自己的有效时间,到期自动删除。这是因为MAC地址与交换机接口的对应关系并不是永久性的
STP
可以在增加冗余链路来提高网络可靠性的同时又避免网络环路带来的各种问题
**当交换机之间链路较少时,某一条链路发送故障,会导致其中有些主机无法通信,即链路不可靠。
**如下图,A
与B
之间的链路发送故障后,H1
便无法与H2
和H3
进行通信
很容易想到的一个方法是在B与C之间多拉一条链路,这样即使A与B之间的链路发送故障,H1
、H2
、H3
之间还是能够相互通信,但是这会带来一些问题。如下,当H1
发送一个广播帧时,我们针对交换机B
进行过程分析
H1
发送的帧进入交换机,交换机将MAC地址H1 接口1
记录到MAC
表中,接着检索MAC
表,发现没有MAC地址H2
的接口条目,因此进行泛洪,交换机A
和C
都接收到此帧A/C
首先将MAC地址H1 接口1
记录到自身的MAC
表中,接着检索MAC
表,发现没有广播帧的接口条目,因此进行泛洪。A
泛洪的帧会被H3
、交换机B
、C
收到;C
泛洪的帧会被H2
、交换机A
、B
收到。H2
与H3
接收帧后发现是一个广播帧,于是接收并交上层处理B
进行分析
C
的泛洪,帧内信息依然是MAC地址H1
【源MAC地址】,首先它会将此条目添加进MAC
表中,发现原先有MAC地址H1 接口1
的记录,此时它会认为这条记录已经出现错误,因此更新为MAC地址H1 接口2
。由于该条目的来源就是接口2
,所以交换机不会再从接口2
转发出去,而是在接口1
、3
处进行泛洪……B
也收到来自交换机A
的泛洪,情况与交换机C
泛洪类似,于是又将MAC地址H1 接口2
更新为MAC地址H1 接口3
……一种将局域网内的设备划分成与物理位置无关的逻辑组的技术,这些逻辑组具有某些共同的需求,每个
VLAN
就是一个独立的广播域
为什么需要VLAN?
随着交换式以太网规模的扩大,广播域相应扩大,而巨大的广播域会带来很多弊端
- 广播风暴
如数台交换机连接了数台主机,当主机
A
要向主机B
发送数据帧,此时各交换机的MAC
表均为空,因此帧每到一个交换机就会进行泛洪,由于网络巨大,因此泛洪的范围也巨大
- 难以管理和维护
- 潜在的安全风险
缺省VLAN ID
华为交换机上叫
PVID
,每个端口有且只有一个PVID。默认情况下端口的PVID
都为1
(即端口属于VLAN 1
)
端口上接收时总希望能够打上标签,发送出去时候总希望能去除标签
Access
端口一般用于终端设备与交换机之间
注意:交换机与路由器连接的接口也需要使用access
接口。这是因为路由器中的消息也不带VLAN
标签,就像终端一样,保证路由器的数据能够进入交换机领域,数据由路由器进入交换机是会被打上默认标签,接着猜按照交换机间VLAN
的规则行走。简单理解就是把路由器当作终端
交换机初始端口类型是Access
Access端口只能属于一个VLAN
Access
端口的PVID值与端口所属VLAN的ID相同(默认为1
)
Access
端口接收方法
PVID
值给帧"打标签",即插入4
字节的VLAN
标记字段,字段中的VID
取值与端口PVID
取值相等Access
端口发送处理方法
Trunk
端口一般用于交换机之间或交换机与路由器之间的互连Trunk
端口可以属于多个VLAN
Trunk
端口的PVID
值,默认情况下,Trunk
端口PVID
值为1
Trunk
端口发送处理方法
Trunk
端口接收处理方法
4
字节的VLAN
标记字段,字段中的VID
取值与端口的PVID
取值相等Hybrid
端口既可以用于交换机之间或交换机与路由器之间的互连(同Trunk
端口),也可用于交换机与用户计算机之间的互连(同Access
端口)Hybrid
端口可以属于多个VLAN
(同Trunk
端口)Hybrid
端口的PVID
值。默认情况下,Hybrid端口的PVID值为1Hybrid
端口发送处理方法↓
Hybrid
端口接收处理方法(同Trunk
)
PVID
给帧"打标签",即插入4
字节VLAN
标记字段,字段中的VID
取值与端口的PVID
取值相等华为交换机Hybrid端口应用例子
如何分割广播域?
路由器
由于路由器属于网络层设备,默认情况下不对广播数据包进行转发,因此自然达到隔离的效果。但是成本较高,局域网内部全靠路由器分割广播域是不现实的
VLAN虚拟局域网技术
默认情况下,交换机下的主机会被划入VLAN 1
,可以通过设置相关语句为交换机设置VLAN
,如下是将PC1
与PC2
划入VLAN2
的方法
LSW3:
valan batch 2 //在LSW3上创建VLAN2
interface Ethernet 0/0/1 //进入交换机接口1
port link-type access //将此接口类型设置为access
port default vlan 2 //信息经过此接口时若没有VLAN标签则打上VLAN2标签;若有VLAN标签则检查是 否为VLAN2,若为VLAN2则去除标签并转发;若非VLAN2,则不转发。
//对接口2的设置同理
设置完毕后,发现PC1
不能ping
通PC4
,因为此时他们不属于一个同一个广播域,但是可以ping
通PC2
,因为PC1
与PC2
属于同一个广播域VLAN 2
eNSP路由与交换技术笔记
VLAN
标记的最后12比特称为VLAN标识符VID,它唯一地标志了以太网帧属于哪一个VLAN
VID
的取值范围是0~4095
0
和4095
都不用来表示VLAN
,因此用于表示VLAN
的VID的有效范围是1~40944
字节的VLAN标记转变为802.1Q
,简称**“打标签”**4
字节VLAN
标记转变为普通以太网帧,简称**“去标签”**借鉴:https://blog.csdn.net/weixin_45488428/article/details/115102326