VLAN技术详解二(VLAN帧结构)二、VLAN帧结构在交换机的汇聚链接上,可以通过对数据帧附加VLAN信息,构建跨越多台交换机的VLAN。附加VLAN信息的方法,最具有代表性的有:IEEE802.1QISL现在就让我们看看这两种协议分别如何对数据帧附加VLAN信息。2.1IEEE802.1QIEEE802.1Q,俗称“DotOneQ”,是经过IEEE认证的对数据帧附加VLAN识别信息的协议。在此,请大家先回忆一下以太网数据帧的标准格式。IEEE802.1Q所附加的VLAN识别信息,位于数据帧中“发送源MAC地址”与“类别域(TypeField)”之间。具体内容为2字节的TPID和2字节的TCI,共计4字节。在数据帧中添加了4字节的内容,那么CRC值自然也会有所变化。这时数据帧上的CRC是插入TPID、TCI后,对包括它们在内的整个数据帧重新计算后所得的值。基于IEEE802.1Q附加的VLAN信息,就像在传递物品时附加的标签。因此,它也被称作“标签型VLAN(TaggingVLAN)”。1.TPID(TagProtocolIdentifier,也就是EtherType)是IEEE定义的新的类型,表明这是一个加了802.1Q标签的帧。TPID包含了一个固定的值0x8100。2.TCI(TagControlInformation)包括用户优先级(UserPriority)、规范格式指示器(CanonicalFormatIndicator)和VLANID。①UserPriority:该字段为3-bit,用于定义用户优先级,总共有8个(2的3次方)优先级别。IEEE802.1P为3比特的用户优先级位定义了操作。最高优先级为7,应用于关键性网络流量,如路由选择信息协议(RIP)和开放最短路径优先(OSPF)协议的路由表更新。优先级6和5主要用于延迟敏感(delay-sensitive)应用程序,如交互式视频和语音。优先级4到1主要用于受控负载(controlled-load)应用程序,如流式多媒体(streamingmultimedia)和关键性业务流量(business-criticaltraffic)-例如,SAP数据-以及“losseligible”流量。优先级0是缺省值,并在没有设置其它优先级值的情况下自动启用。②CFI:CFI值为0说明是规范格式,1为非规范格式。它被用在令牌环/源路由FDDI介质访问方法中来指示封装帧中所带地址的比特次序信息。③VID:该字段为12-bit,VLANID是对VLAN的识别字段,在标准802.1Q中常被使用。支持4096(2的12次方)VLAN的识别。在4096可能的VID中,VID=0用于识别帧优先级。4095(FFF)作为预留值,所以VLAN配置的最大可能值为4094。所以有效的VLANID范围一般为1-4094。2.2ISL(InterSwitchLink)ISL,是Cisco产品支持的一种与IEEE802.1Q类似的、用于在汇聚链路上附加VLAN信息的协议。使用ISL后,每个数据帧头部都会被附加26字节的“ISL包头(ISLHeader)”,并且在帧尾带上通过对包括ISL包头在内的整个数据帧进行计算后得到的4字节CRC值。换而言之,就是总共增加了30字节的信息。在使用ISL的环境下,当数据帧离开汇聚链路时,只要简单地去除ISL包头和新CRC就可以了。由于原先的数据帧及其CRC都被完整保留,因此无需重新计算•DA―40位组播目的地址。包括一个广播地址0X01000C0000或者是0X03000C0000。•Type―各种封装帧(Ethernet(0000)、TokenRing(0001)、FDDI(0010)和ATM(0011))的4位描述符。•User―Type字段使用的4位描述符扩展或定义Ethernet优先级。该二进制值从最低优先级开始0到最高优先级3。•SA―传输Catalyst交换机中使用的48位源MAC地址。•LEN―16位帧长描述符减去DA、type、user、SA、LEN和CRC字段。•AAAA03―标准SNAP802.2LLC头。•HAS―SA的前3字节(厂商的ID或组织唯一ID)。•VLAN―15位VLANID。低10位用于1024VLAN。•BPDU―1位描述符,识别帧是否是生成树网桥协议数据单元(BPDU)。如果封装帧为思科发现协议(CDP)帧,也需设置该字段。•INDEX―16位描述符,识别传输端口ID。用于诊断差错。•RES―16位预留字段,应用于其它信息,如令牌环和分布式光纤数据接口帧(FDDI),帧校验(FC)字段。•ISL帧最大为1548bytes,iSL包头26+1518+4=1548ISL有如用ISL包头和新CRC将原数据帧整个包裹起来,因此也被称为“封装型VLAN(EncapsulatedVLAN)”。需要注意的是,不论是IEEE802.1Q的“TaggingVLAN”,还是ISL的“EncapsulatedVLAN”,都不是很严密的称谓。不同的书籍与参考资料中,上述词语有可能被混合使用,因此需要大家在学习时格外注意。并且由于ISL是Cisco独有的协议,因此只能用于Cisco网络设备之间的互联。IEEE802.Q和ISL的异同:相同点:都是显式标记,即帧被显式标记了VLAN的信息。不同点:IEEE802.1Q是公有的标记方式,ISL是Cisco私有的,ISL采用外部标记的方法,802.1Q采用内部标记的方法,ISL标记的长度为30字节,802.1Q标记的长度为4字节。VLAN的TRUNK协议(VTP)一、VTP概述VLAN中继协议(VTP,VLANTRUNKINGPROTOCOL)是CISCO专用协议,大多数交换机都支持该协议。VTP负责在VTP域内同步VLAN信息,这样就不必在每个交换上配置相同的VLAN信息。VTP还提供一种映射方案,以便通信流能跨越混合介质的骨干。VTP最重要的作用是,将进行变动时可能会出现在的配置不一致性降至最低。VTP也有一些缺点,这些缺点通常都与生成树协议有关。1、VTP协议的作用VLAN中继协议(VTP)利用第2层中继帧,在一组交换机之间进行VLAN通信。VTP从一个中心控制点开始,维护整个企业网上VLAN的添加、添加和重命名工作,确何配置的一致性。2、VTP的优点>保持配置的一致性>提供跨不同介质类型如ATM、FDDI和以太网配置虚拟局域网的方法>提供跟踪和监视虚拟局域网的方法>提供检测加到另一个交换机上的虚拟局域的方法>提供从一个交换机在整个管理域中增加虚拟局域网的方法二、VTP的工作原理1、VTP概述和工作原理VTP是一种消息协议,使用第2层帧,在全网的基础上管理VLAN的添加、删除和重命名,以实现VLAN配置的一致性。可以用VTP管理网络中VLAN1到1005。有了VTP,就可以在一台机换上集中过时行配置变更,所作的变更会被自动传播到网络中所有其他的交换机上。(前提是在同一个VTP域)为了实现此功能,必须先建立一个VTP管理域,以使它能管理网络上当前的VLAN。在同一管理域中的交换机共享它们的VLAN信息,并且,一个交换机只能参加到一个VTP管理域,不同域中的交换机不能共享VTP信息。交换机间交换下列信息:>管理域域名>配置的修订号>已知虚拟局域网的配置信息.交换机使用配置修正号,来决定当前交换机的内部数据是否应该接受从其他交换机发来的VTP更新信息。>如果接收到的VTP更新配置修订号与内部数据库的修订号相同域者比它小,交换机忽略更新。>否则,就更新内部数据库,接受更新信息。VTP管理域在安全模式下,必须配置一个在VTP域中所有交换机惟一的口令。VTP的运行有如下特点:>VTP通过发送到特定MAC地址01-00-0C-CC-CC-CC的组播VTP消息进行工作。>VTP通告只通过中继端口传递。>VTP消息通过VLAN1传送。(这就是不能将VLAN1从中继链路中去除的原因)>在经过了DTP自动协商,启动了中继之后,VTP信息就可以沿着中继链路传送.>VTP域内的每台交换机都定期在每个中继端口上发送通告到保留的VTP组播地址VTP通告可以封装在ISL或者IEEE802.1Q帧内。2、VTP域VTP域,也称为VLAN管理域,由一个以上共享VTP域名的相互接连的交换机组成。要使用VTP,就必须为每台交换机指定VTP域名.VTP信息只能在VTP域内保持。一台交换机可属于并且只属于一个VTP域。缺省情况下,CATALYST交换机处于VTP服务器模式,并且不属于任何管理域,直到交换机通过中继链路接收了关于一个域的通告,或者在交换机上配置了一个VLAN管理域,交换机才能在VTP服务器上把创建或者更改VLAN的消息通告给本管理域内的其他交换机如果在VTP服务器上进行了VLAN配置变更,所做的修改会传播到VTP域内的所有交换机上。如果交换机配置为"透明"模式,可以创建或者修改VLAN,但所做的修改只影响单个的交换机。控制VTP功能的一项关键参数是VTP配置修改编号。这个32位的数字表明了VTP配置的特定修改版本。配置修改编号的取值从0开始,每修改一次,就增加1直到达到4294967295,然后循环归0,并重新开始增加。每个VTP设备会记录自己的VTP配置修改编号;VTP数据包会包含发送者的VTP配置修改编号。这一信息用于确定接收到的信息是否比当前的信息更新。要将交换机的配置修改号置为0,只需要禁中继,改变VTP的名称,并再次启用中继。VTP域的要求:>域内的每台交换机必须使用相同的VTP域名,不论是通过配置实现,还是由交换机自动学动>CATALYST交换机必须是相邻的,这意味着,VTP域内的所有交换机形成了一颗相互连接的树.每台交换机都通过这棵树与其他交换机相互。>在所有的交换机之间,必须启用中继。3、VTP的运行模式VTP模式有3种,分别是:>服务器模式(SERVER缺省)VTP服务器控制着它们所在域中VALN的生成和修改。所有的VTP信息都被通告在本域中的其他交换机,而且,所有这些VTP信息都是被其他交换机同步接收的。>客户机模式(CLIENT)VTP客户机不允许管理员创建、修改或删除VLAN。它们监听本域中其他交换机的VTP通告,并相应修改它们的VTP配置情况。>透明模式(TRANSPARENT)VTP透明模式中的交换机不参与VTP。当交换机处于透明模式时,它不通告其VLAN配置信息。而且,它的VLAN数据库更新与收到的通告也不保持同步。但它可以创建和删除本地的VLAN。不过,这些VLAN的变更不会传播到其他任何交换机上。各种运行模式的状态功能服务器模式客户端模式透明模式提供VTP消息√√×监听VTP消息√√×修改VLAN√×√(本地有效)记住VLAN√×√(在不同的版本有不同的结果)√(本地有效)4、VTP的通告1.VTP通告概述使用VTP时,加入VTP域的每台交换机在其中继端口上通告如下信息.>管理域>配置版本号>它所知道的VLAN>每个已知VLAN的某些参数这些通告数据帧被发送到一个多点广播地址(组播地址),以使所有相邻设备都能收到这些帧。新的VLAN必须在管理域内的一台牌服务器模式的交换机上创建和配置。该信息可被同一管理域中所有其他设备学到VTP帧是作为一种特殊的帧发送到中继链路上的。有2种类型的通告:>来自客户机的请求,由客户机在启动时发出,用以获取信息。>来自服务器的响应有3种类型的消息:>来自客户机的通告请求>汇总通告>子集通告VTP通告中可包含如下信息:>管理域名称>配置版本号>MD5摘要--当配置了口令后,MD5是与VTP一起发送的口令。如果口令不匹配,更新将被忽略。>更新者身份--发送VTP汇总通告的交换机的身份。VTP通告处理以配置修订号为0为起点.每当随后的字段变更一项时,这个修订号就加1,直到VTP通告被发送出去为止。VTP修订号存储在NVRAM中,交换机的电源开关不会改变这个设定值。.要将修订号初始化为0,可以用下列方法:>将交换机的VTP模式更改为透明模式,然后再改为服务器模式