王朝百科
分享
 
 
 

IEEE 802.1q

王朝百科·作者佚名  2010-07-07  
宽屏版  字体: |||超大  

IEEE 802.1q协议也就是“Virtual Bridged Local Area Networks”(虚拟桥接局域网,简称“虚拟局域网”)协议,主要规定了VLAN的实现方法。下面先介绍有关VLAN的基本概念。

1.IEEE 802.1q协议简介

IEEE 802.1q协议为标识带有VLAN成员信息的以太帧建立了一种标准方法。IEEE802.1q标准定义了VLAN网桥操作,从而允许在桥接局域网结构中实现定义、运行以及管理VLAN拓朴结构等操作。IEEE 802.1q标准主要用来解决如何将大型网络划分为多个小网络,如此广播和组播流量就不会占据更多带宽的问题。此外IEEE 802.1q标准还提供更高的网络段间安全性。IEEE802.1q完成这些功能的关键在于标签。支持IEEE 802.1q的交换端口可被配置来传输标签帧或无标签帧。一个包含VLAN信息的标签字段可以插入到以太帧中。如果端口有支持IEEE 802.1q的设备(如另一个交换机)相连,那么这些标签帧可以在交换机之间传送VLAN成员信息,这样VLAN就可以跨越多台交换机。但是,对于没有支持IEEE 802.1q设备相连的端口我们必须确保它们用于传输无标签帧,这一点非常重要。很多PC和打印机的NIC并不支持IEEE 802.1q,一旦它们收到一个标签帧,它们会因为读不懂标签而丢弃该帧。在IEEE 802.1q中,用于标签帧的最大合法以太帧大小已由1518字节增加到1522字节,这样就会使网卡和旧式交换机由于帧“尺寸过大”而丢弃标签帧。图 6-16就是以太网中的IEEE 802.1q标签帧格式。

Preamble(Pre):前导字段,7字节。Pre字段中1和0交互使用,接收站通过该字段知道导入帧,并且该字段提供了同步化接收物理层帧接收部分和导入比特流的方法。

Start-of-Frame Delimiter(SFD):帧起始分隔符字段,1字节。字段中1和0交互使用,结尾是两个连续的1,表示下一位是利用目的地址的重复使用字节的重复使用位。

Destination Address(DA):目的地址字段,6字节。DA字段用于识别需要接收帧的站。

Source Addresses(SA):源地址字段,6字节。SA字段用于识别发送帧的站。

TPID:标记协议标识字段,2个字节,值为8100(hex)。当帧中的EtherType(以太网类型)字段值也为8100时,该帧传送标签IEEE 802.1q/802.1p。

TCI:标签控制信息字段,包括用户优先级(User Priority)、规范格式指示器(Canonical Format Indicator,CFI)和VLAN ID。

说明:“User Priority”定义用户优先级,包括8个(2^3)优先级别。IEEE 802.1p为3比特的用户优先级位定义了操作。“CFI”,在以太网交换机中,规范格式指示器总被设置为0。由于兼容特性,CFI常用于以太网类网络和令牌环类网络之间,如果在以太网端口接收的帧具有CFI,那么设置为1,表示该帧不进行转发,这是因为以太网端口是一个无标签端口。“VID”(VLAN ID)是对VLAN的识别字段,在标准IEEE 802.1q中常被使用。该字段为12位。支持4096(2^12)VLAN的识别。在4096可能的VID中,VID=0用于识别帧优先级。 4095(FFF)作为预留值,所以VLAN配置的最大可能值为4094。

Length/Type:长度/类型字段,2字节。如果是采用可选格式组成帧结构时,该字段既表示包含在帧数据字段中的MAC客户机数据大小,也表示帧类型ID。

Data:数据字段,是一组n(46≤n≤1500)字节的任意值序列。帧总值最小为64字节。

Frame Check Sequence(FCS):帧校验序列字段,4字节。该序列包括32位的循环冗余校验(CRC)值,由发送MAC方生成,通过接收MAC方进行计算得出以校验被破坏的帧。

2.VLAN简介

“Virtual LANs”(虚拟局域网)目前发展很快,世界上主要的大网络厂商在他们的交换机设备中都实现了VLAN协议。在一个支持VLAN技术的交换机中,可以将它的以太网口划分为几个组,比如生产组,工程组,市场组等。这样,组内的各个用户就像在同一个局域网内(可能各组的用户位于很多的交换机上,而非一个交换机)一样,同时,不是本组的用户就无法访问本组的成员,在一定程度上提高了各组的网络安全性。

实际上,VLAN成员的定义可以分为4种:

(1)根据端口划分VLAN

这种划分VLAN的方法是根据以太网交换机的端口来划分的,比如将某交换机的的1~4端口为VLAN A,5~17为VLAN B,18~24为VLAN C……

以上这些属于同一VLAN组的端口可以不连续,如何配置,由管理员决定。另外,如果有多个交换机的话,例如,可以指定交换机1的1~6端口和交换机2的1~4端口为同一VLAN,即同一VLAN可以跨越数个以太网交换机。

根据端口划分是目前定义VLAN的最常用的方法,IEEE 802.1q协议规定的就是如何根据交换机的端口来划分VLAN。这种划分的方法的优点是定义VLAN成员时非常简单,只要将所有的端口都定义一下就可以了。它的缺点是如果VLAN A的用户离开了原来的端口,到了一个新的交换机的某个端口,那么就必须重新定义。

(2)根据MAC地址划分VLAN

这种划分VLAN的方法是根据每个主机的MAC地址来划分的,即对每个MAC地址的主机都配置它属于哪个组。这种划分VLAN的方法的最大优点就是当用户物理位置移动时,即从一个交换机换到其他的交换机时,VLAN不用重新配置。所以可以认为这种根据MAC地址的划分方法是基于用户的VLAN。这种方法的缺点是初始化时,所有的用户都必须进行配置,如果有几百个甚至上千个用户的话,配置是非常累的。而且这种划分的方法也导致了交换机执行效率的降低,因为在每一个交换机的端口都可能存在很多个VLAN组的成员,这样就无法限制广播包了。另外,对于使用笔记本电脑的用户来说,他们的网卡可能经常更换,这样,VLAN就必须不停地配置。

(3)根据网络层划分VLAN

这种划分VLAN的方法是根据每个主机的网络层地址或协议类型(如果支持多协议)划分的。虽然这种划分方法可能是根据网络地址,比如IP地址,子网掩码,但它不是路由,不要与网络层的路由混淆。它虽然查看每个数据包的IP 地址,但由于不是路由,所以没有RIP(Routing information Protocol,路由信息协议),OSPF(Open Shortest Path First,开放最短路径优先)等路由协议,而是根据生成树算法进行桥交换。

这种方法的优点是用户的物理位置改变了,不需要重新配置他所属的VLAN,而且可以根据协议类型来划分VLAN,这对网络管理者来说很重要,还有,这种方法不需要附加的帧标签来识别 VLAN,这样可以减少网络的通信量。其缺点是效率低,因为检查每一个数据包的网络层地址是很费时的(相对于前面两种方法),一般的交换机芯片都可以自动检查网络上数据包的以太网帧头,但要让芯片能检查IP帧头,需要更高的技术,同时也更费时。当然,这也跟各个厂商的实现方法有关。

(4)根据IP组播划分

IP 组播实际上也是一种VLAN的定义,即认为一个组播组就是一个VLAN组。这种划分的方法将VLAN扩大到了广域网,因此这种方法具有更大的灵活性,而且也很容易通过路由器进行扩展。当然这种方法不适合局域网,主要是效率不高,对于局域网的组播,有二层组播协议GMRP。

通过上面可以看出,各种不同的VLAN定义方法有各自的优缺点,所以很多厂商的交换机都实现了不只一种方法,这样网络管理者可以根据自己的实际需要进行选择。另外,许多厂商在实现VLAN的时候,考虑到VLAN配置的复杂性,还提供了一定程度的自动配置和方便的网络管理工具。

以前各个厂商都声称他们的交换机实现了VLAN,但各个厂商实现的方法都不相同,所以彼此是无法互连,这样,用户一旦买了某个厂商的交换机,就没法买其他厂商的了。而现在,VLAN的标准是IEEE提出的802.1q协议,只有支持相同的开放标准才能保证网络的互连互通,以及保护网络设备投资。

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
如何用java替换看不见的字符比如零宽空格​十六进制U+200B
 干货   2023-09-10
网页字号不能单数吗,网页字体大小为什么一般都是偶数
 干货   2023-09-06
java.lang.ArrayIndexOutOfBoundsException: 4096
 干货   2023-09-06
Noto Sans CJK SC字体下载地址
 干货   2023-08-30
window.navigator和navigator的区别是什么?
 干货   2023-08-23
js获取referer、useragent、浏览器语言
 干货   2023-08-23
oscache遇到404时会不会缓存?
 干货   2023-08-23
linux下用rm -rf *删除大量文件太慢怎么解决?
 干货   2023-08-08
刀郎新歌破世界纪录!
 娱乐   2023-08-01
js实现放大缩小页面
 干货   2023-07-31
生成式人工智能服务管理暂行办法
 百态   2023-07-31
英语学习:过去完成时The Past Perfect Tense举例说明
 干货   2023-07-31
Mysql常用sql命令语句整理
 干货   2023-07-30
科学家复活了46000年前的虫子
 探索   2023-07-29
英语学习:过去进行时The Past Continuous Tense举例说明
 干货   2023-07-28
meta name="applicable-device"告知页面适合哪种终端设备:PC端、移动端还是自适应
 干货   2023-07-28
只用css如何实现打字机特效?
 百态   2023-07-15
css怎么实现上下滚动
 干货   2023-06-28
canvas怎么画一个三角形?
 干货   2023-06-28
canvas怎么画一个椭圆形?
 干货   2023-06-28
canvas怎么画一个圆形?
 干货   2023-06-28
canvas怎么画一个正方形?
 干货   2023-06-28
中国河南省郑州市金水区蜘蛛爬虫ip大全
 干货   2023-06-22
javascript简易动态时间代码
 干货   2023-06-20
感谢员工的付出和激励的话怎么说?
 干货   2023-06-18
 
>>返回首页<<
 
 
静静地坐在废墟上,四周的荒凉一望无际,忽然觉得,凄凉也很美
© 2005- 王朝网络 版权所有