VLAN的实现方法

2024-07-20

VLAN的实现方法(精选9篇)

VLAN的实现方法 篇1

1 名称

一种实现无线网桥内部vlan报文转发的方法。

2 所属技术领域

本发明涉及无线数据通信领域, 特别涉及到无线数据应用中用于连接两个分立网络的的网桥模块。

3 背景技术

3.1 无线网桥简介

无线网桥是为使用无线 (微波) 进行远距离数据传输的点对点网间互联而设计。它是一种在链路层实现lan互联的存储转发设备, 可用于固定数字设备与其他固定数字设备之间的远距离、高速无线组网。无线网桥有三种工作方式, 点对点, 点对多点, 中继连接。

3.2 VLAN技术简介

Vlan技术又称虚拟局域网技术。

VLAN的实现原理非常简单, 通过交换机的控制, 某一VLAN成员发出的数据包交换机只发个同一VLAN的其它成员, 而不会发给该VLAN成员以外的计算机。

使用VLAN的目的不仅仅是隔离广播, 还有安全和管理等方面的应用, 例如将重要部门与其它部门通过VLAN隔离, 即使同在一个网络也可以保证他们不能互相通讯, 确保重要部门的数据安全;也可以按照不同的部门、人员, 位置划分VLAN, 分别赋给不同的权限来进行管理。

3.3 部分厂商解决方案

部分厂商, 例如思科为了解决无线网桥中传递VLAN报文的问题, 使用了修改报文格式, 在无线报文中保留802.1q标准的tag信息的方法;这种方法的弊端在于需要修改无线报文的格式, 在802.11规定的报文格式中添加VLAN tag;增加了报文处理难度, 降低了报文的兼容性。

4 技术方案

4.1 技术方案的基本思路

虚拟局域网技术是当前非常流行的在二层划分冲突域的方法, 用途广泛, 给用户提供非常好的管理方法和操作, 但是, 正是由于虚拟局域网技术是基于网路第二层, 即M A C层的, 它的实现时依赖于M A C层协议的。当前在有线局域网中, 使用广泛的VLAN协议标准是IEEE802.1Q, 另外还有Cisco ISL协议等等。但是这些协议的实现都只涉及到以太网MAC层, 脱离了以太网MAC层, 就无法实现VLAN的划分和传递。

无线802.11协议, 因为无线是一个共享传输介质的通信方法, 即使定义了vlan tag, 也没有办法在二层划分vlan, 隔离冲突域, 所以现有的IEEE802.11协议是一个没有定义vlan的协议。

无线网桥的作用之一是连接分立的距离较远且电缆架设不方便的网络 (局域网) , 比如通过无线连接, 将AP_A和A P_B所带的局域网连接起来。

AP_A和AP_B两边的网络可能存在多个vlan, 但是通过无线网桥传输的时候, 因为二层协议的改变, 无法在两边的配置中统一vlan的划分, 两边的vlan互相是独立的:vlan信息在通过无线网桥的时候被丢失了。

为了能够在无线网桥传输的过程中保留报文的V L A N信息, 我们使用在无线网桥中建立多个虚拟连接的方法来“划分”vlan。

4.2 技术方案的实现要点

一般无线网桥的实现方案, 不支持带VLAN信息的报文的的传输。

为了能够支持VLAN, 使用内部协商过程, 建立不同的“虚拟通信连接”来对应不同的VLAN, 实现的关键步骤有如下。

(1) AP之间采用握手方式建立vlan连接 (通过MAC地址一一对应) , 建立不成功则按照普通方式转发, 不使用VLAN。

(2) 虚拟连接建立成功, 发送方发送前去除VLAN tag。

(3) 接收方接受报文, 按照之前建立的连接信息, 重新给报文打上vlan tag。

连接的建立过程。

4.2.1 说明

(1) AP_A根据自身的MAC地址 (BSSID) 按照一定算法偏移出一个新的M A C (BSSID_A_1) 地址, 用来向AP_B发送虚拟连接建立请求报文。

(2) AP_A使用数据报文向AP_B发送虚拟连接建立请求, 数据报文内容中包含欲建立的连接对应的V L A N信息;当前的BSSID信息, 偏移出的MAC地址, 当前信息标签号等信息。

(3) AP_B接收到请求报文;同样使用当前的BSSID信息按照一定算法经过偏移得到新的M A C (B S S I D_B_2) 地址信息;在AP_B中将BSSID_A_1作为一个"STA"与AP_B相关联。

(4) AP_B接收到反馈信息按照相同格式发送数据报文给AP_A, 确认连接建立;报文的信息标签和步骤1中的不同, 以便区分发起连接步骤和接受连接步骤。

(5) AP_A将BSSID_B_2作为一个"STA"与AP_A相关联;反馈确认信息给AP_B, 完成建立连接的握手过程。

连接建立完毕之后的等效效果图如图1。

唯一MAC对 (BSSID_A_1, BSSID_B_2) 对应一个vlan n。

4.2.2 报文的发送接收过程

如图1, AP_A接收到VLANn的报文;按照如下步骤处理。

(1) 去除报文的VLAN tag, 同时找到对应的标识一个V L A N的M A C对。

(2) 数据报文的四地址格式如表1。

将Address2的内容替换成BSSID_A_1 (一般情况下应该是BSSID_A) , 然后正常发送。

(3) 接收方接受到报文, 察觉Address2的内容是BSSID_A_1, 就将报文转发到对应的vlan n。

(4) 同理AP_B发送报文的流程同上。

4.2.3 连接的断开过程

连接的断开过程同连接的建立过程, 区别在于将BSSID_A_1和BSSID_B_2的关联操作替换成解关联操作。

4有益效果

本发明应用于无线网桥, 使得通过无线网桥的报文通过无线网桥之后可以属于不同的V L A N冲突域, 方便了无限网桥连接的两部分网络的无缝组网。并解决了通过无线网桥的报文无法分类标识的问题, 使得无线网桥可以将不同的报文分开到不同的V L A N中。

摘要:现有的现有的IEEE802.11标准没有规定VLAN信息的携带域, 导致无线网桥在工作时, 没法在一个网桥连接中传递多个vlan的报文, 或则传递之后会导致VLAN信息的丢失;本文介绍一种方法, 使用建立网桥之间虚拟连接的方法实现对VLAN报文的透明转发;使得在无线网桥的通信连接中可以传递多VLAN的报文, 并且在保留VLAN信息的基础上保留了对其他IEEE802.11标准设备的兼容性。

关键词:IEEE,802.11,VLAN,网桥

VLAN的实现方法 篇2

本文所讨论的环境为盐城师范学院当前实施的校园网,以一台Cisco Catalyst 4006交换机为核心,由Cisco Catalyst 3524和Cisco Catalyst 2924为各建筑物接人交换机构成的园区网络,实施当中,结合该网络的应用需求和现有设备的特点,利用VTP Do一main、VTP Trunk、Ether Channel合理实现了基于VLAN技术的逻辑网络,并利用VTP 裁剪、STP等设置对该网络做了进一步的优化,最后对实施中VLAN数目过多引起的问题提出了解决方案。

VLAN的规划及具体操作

基于交换机的虚拟局域网能够为校园网解决冲突域、广播域、带宽及管理问题。VLAN的划分可以根据网络用户的位置、作用、部门或者根据网络用户所使用的应用程序和协议来进行分组。首先,限制冲突和广播是必须要解决的问题,一个广播域中允许每秒发送的广播信息包(BPPS)数目为100~1000,由此估算,一般认为每个广播域的节点不应超过254因此每个VLAN中节点的数目应该小于254。在网络中运行的某些特殊应用软件要依赖于广播来实现,所以实际划分中还要根据某个范围内网络应用与通讯流量的特点来缩小这个数目。比如在实施当中,我校的一些机房使用了多媒体教学管理软件,这种软件要利用广播在某个局域网中来实现,对于这些机房,必须划分为各自独立的VLAN才能不互相干扰,保证软件的正常运行。再有,为了便于管理和安全,依据用户的类别与部门来划分是实施当中考虑的另一重要因素。学校的二级单位比较多,有各个行政管理部门、各院系部,院系中又有教学办公和学生机房之分,这些部门都希望是独立的广播域。

综合考虑上述因素,我们主要依据部门。并作适当归类,将校园网络划分为50个VLAN,同时为每个VLAN分配一个相应的IP子网,摘录如表1。

在划分中,VLANI为所有交换机的管理VLAN1,并将其分配保留IP地址,可以仅在内部管理;对于规模大的部门,如物理系,分别将其行政办公、网络服务器、利用多媒体教学软件的教学机房置于不同的VLAN。在IP子网的分配中,充分利用可变子网掩码(VLSM)。可以根据各VLAN中节点的数目高效利用IP地址,减少浪费。VLAN在CiscoCatalyst 4006和Cisco Catalyst 3524/2924XL上具体实现方法如表2所示。

利用VTP DOMAIN、Trunk、Ether Channel的具实施

在创建VLAN之前,必须规划和创建VTP Domain。在VTPDomain中,仅在一个交换机中对VLAN进行管理,如增加、删除、调整的设置,VTP(VLAN Trunking Protocol)会通过网络自动地将信息向其他交换机广播,来保持这个域内交换机VLAN配置的统一性。由于目前我校设备中只有中心的4006交换机具有路由能力,且校内有属于同一部门、但地理位置不同即VLAN跨接的情况,因此确定将整个校园网规划为一个VTPDomain,这样仅在一处就可以管理全校的VLAN,且可以利用4006交换机的MSFC模块来实现VLAN之间的路由。实际配置中,所有交换机的VTP Domain都设置im pu,将4006交换机VTP模式设置为VTP模式设置为Client,接受4006中设置的VLAN信息。

为使VLAN信息在网络中传递,交换机之间的连接端口要配置为Trunk,

这样,在VTPServer交换机中配置的VLAN信息会通过Trunk端口发布到其他交换机。处于VTPClient模式的交换机也可以通过Trunk端口向下级级联的交换机继续传递,达到VLAN信息的统一。Cisco交换机支持两种Trunk封装类型,即ISL和802.1Q,802.1Q所做的标记要比TSL的小,开销相对低,因此我们采用了802.1Q封装类型。

最后,基于上述的主干连接,在各个交换机中按照连接的用户部门,灵活地将端口分配到各个VLAN。在4006交换机的MSFC模块配置中为建立的VLAN接口分配IP地址即可。下面为在CiscoCatalyst4006和CiscoCatalyst3524/2924XL上实现的具体实例,摘录见表3。

VLAN性能优化

VLAN的良好性能给我们带来了方便,但是它的实现是需要有带宽开销的。作为核心的4006交换机,承载了所有VLAN的流量;由于VLAN跨接的情况不是很多、多数交换机不必将本地端口配置到多个VLAN中,所以很多流量不必经过4006交换机,广播到无需运载它们的链路上。VTP裁剪能够利用VLAN通告来决定什么时候该主干连接,不需要泛洪式的传输,CISCO交换机中这项功能默认是关闭的。对于我校的网络结构,启用这项配置是非常必要的。在4006交换机上用set vtp pruning enable来启用,这个设置会更新到处于VTP Client模式的交换机中,形成整个VTP域内的裁剪。启用VTP裁剪功能也会需要一些额外的带宽开销,用于交换机之间学习VLAN分布情况。在我校的环境中,利用MRTG软件可以观察到允许裁剪功能后,4006交换机VTP流量由30 bytes/s提升到60bytes/s,但对于我们的网络结构。这些开销带来的性能还是值得的。如果开销过大,我们可以用静态设置的方法,即在设置Trunk端口时,设定可以通过此Trunk的VLAN列表。当然这需要人工维护,具体为set trunk mod/port on dotlq。

在Cisco Catalyst 4006端口的Trunk和Ether Channe1设置中,可以设置自动适应。主动适应、固定打开模式。设置为适应模式,交换机会经历一段学习时间来自动选择合适的方式;我们认为对于相对稳定的连接最好明确指出,即设置固定打开模式,可以加快建立的时间、减少排除错误时间。

交换机使用STP(Spanning-TreeProtocol)来处理冗余连接情况,避免环形连接。虽然我们的结构没有设计冗余连接,但是接入交换机分布于学校的各个单位,如果被意外构成环形连接,对网络性能会有很大影响且难于排查。因此,还是在各个VLAN中启用STP,在Cisco交换机中,这个设置默认打开。对于具体的端口,还可以详细规定其STP参数。例如对于直接连接服务器或工作站的端口,设置为PortFast将使该端口不必再经历学习过程,而直接进人转发状态,这将缩短端口建立的时间,有利性能提高。在4006交换机上用set spantree portfast mod/port enable设置,在3524/2924系列交换机上,用interface fastethernet mod/port,spanning-treeportfast来设置Uplink Fast和Back-bhoneFast是对于交换机之间存在冗余连接情况的设置,有些冗余线路处于阻塞状态,一旦转发状态的线路出现问题,正常下阻塞状态的要经历监听学习阶段才可以进人转发状态,如果有了Uplink Fast和Backone Fast的设置,就可以加快这个过程。由于我们目前的网络结构没有设计冗余连接,所以不必启用该功能。

结束语

VLAN的实现方法 篇3

虚拟局域网VLAN是一种以交换式网络为基础,以软件的方式将局域网内的设备逻辑上划分为若干个虚拟工作组的技术。同一逻辑工作组成员可以分布在同一物理网段上,也可以分布在不同的网络上。通过VLAN将二层交换网络的一个广播域分隔成多个广播域,这样不仅提高网络的性能,同时也提高了网络的安全性。

通常情况下,一个网络使用了VLAN后,需要对众多交换机进行相同VLAN的配置和维护,以保证交换机能进行正确的数据转发。如果靠网管人员逐台交换机进行人工配置,工作量巨大,且也不利于日后维护。

为了解决这个困难,思科提供了VTP(VLAN Trunking Pro⁃tocol)技术。所谓的VTP就是虚拟局域网中继协议。在一个VTP域中,一台交换机处于以下三种模式之一:服务器模式、客户端模式和透明模式。VTP模式通过在一台设备(设置为VTP服务器)上配置VLAN数据库,并将配置信息通过交换网络传递给VTP客户机来实现,此时所有的交换机互连端口,必须启用中继。通过VTP技术,减少了创建、管理VLAN的工作量。

2 VLAN间的通信

主机分属不同的VLAN,也就意味着属于不同的广播域,因此不同的VLAN的主机间无法直接通信。VLAN间的通信就相当于不同局域网之间的通信,因此VLAN间的通信问题实质上就是VLAN间的路由问题,需要利用OSI参考模型中更高一层网络层来进行,即要借助路由器或三层交换机来实现。

不同物理网络间路由模式有直连路由、静态路由和动态路由三种。动态路由可以由不同的路由协议来实现,如RIP、OS⁃PF、ISIS和BGP等。

3 跨网络VLAN路由通信实例

3.1 网络环境

校园网由两个物理局域网构成:网络1、网络2。网络1 为校园西区,网络2为东区。

在网络1 中,根据应用,划分三个VLAN,通过三层交换机作为VLAN的VTP服务器,实现VLAN的自动创建并实现不同VLAN间的通信;网络2中,划分二个VLAN,通过单臂路由实现VLAN间的通信;网络1 和网络2 之间通过路由器实现跨网络VLAN间的通信。

3.2 网络配置

根据网络规划的设想,基于Packet Tracer模拟软件创建网络拓扑结构图如下:

网络1由一台3560三层交换机及二台2960二层交换机组成,每台2960交换机上创建三个VLAN:DZ、RJ、WL。网络1中VLAN采用VTP方式来建立,以3560 交换机作为VTP服务器,2960 交换机为VTP客户端。 网络2 由一台2960 交换机SWITCH3 和一台2621XM路由器R2 组成,在2960 上划分出二个VLAN:XZ、WG,通过R2 单臂路由实现VLAN间的通信。网络1和网络2之间通过一台2621路由器R1相连接,二个网络之间通过综合路由实现互访:3560 和路由器R1 之间配置RIP协议,路由器R1 和R2 之间配置OSPF协议。网络1 中PC的网关指向相应VLAN的IP地址,网络2中PC网关指向单臂路由虚拟端口地址。

网络中主机设备的地址规划如表1:

路由器、三层交换机端口地址分配如表2:

网络1 中,每台2960 交换机的端口1、2、3 分别分配VLAN号:101、102、103,网络2 中,交换机2960 的4、5端口分别分配VLAN号:104、105,设备之间连接端口如前图所示。

4 实现过程如下:

4.1 网络1:三层交换机实现VLAN间通信

第一步:配置VTP域

首先在3560建立VTP域xmist:

然后在2960交换机SWITCH1、2上分别配置VTP的客户端模式:

第二步:3560上建立VLAN数据库

第三步:创建交换机之间的中继链路

分别将3560 和switch1、switch2 之间的链路端口配置成为中继模式,让不同的Vlan ID的报文通过。在3560上配置如下:

完成后查看2960 交换机switch1 和2 可以发现:在交换机1、2上也都创建了与3560上相同的VLAN。

此时PING不同的交换机下属于同一VLAN的PC,如同属VLAN 101的PC11、PC12之间能够通信。但不同的VLAN间的PC不能互访。

第四步:开启三层交换路由

在3560交换机上进行VLAN节点配置:

重复上述过程为VLAN 10 2、VLAN 103 配置节点地址172.17.20.1/24、172.17.30.1/24。

并开启三层路由:

3560(config)#ip routing

这时三个VLAN间的PC可以实现互访,例如:PC11 与PC21 互相可以通信。通过三层交换机实现了不同VLAN间的通信。

4.2 网络2:单臂路由实现VLAN间通信

具体步骤如下:

第一步:创建VLAN

在2960 交换机switch3 上创建VLAN 104,VLAN 105,将与路由器R2链接的f0/24端口配置为Trunk模式。参照前述相关过程进行,不再赘述。

第二步:实现单臂路由

在R2路由器上进行如下配置

完成后,测试PC41 与PC51 之间可以PING通。表明利用单臂路由实现了不同VLAN间的通信。

4.3 通过综合路由实现跨网络VLAN间的通信

经过前述二个步骤,用二种不同的方式实现了同一物理网络中VLAN之间的通信,但是尚未实现两个物理网络(网络1和网络2)之间的VLAN的通信。

本项目中网络1和网络2之间通过2621路由器R1来链接,借助综合路由协议配置来实现路由,即在R1路由器上运行二个路由协议进程,网络1的一端运行RIP协议,网络2的一端运行OSPF协议。要实现这个功能,要实现路由的重分布,即既要将OSPF路由域的路由重新分布后通告RIP路由域中,也要将RIP路由域的路由重新分布后通告到OSPF路由域中。过程如下:

1)在3560上配置RIPV2协议

设置结束,观察此时3560上的路由情况。

2)在R2路由器上配置ospf协议

观察此时R2上的路由情况

3)在R1路由器上配置综合路由

配置R1两端口IP地址:

R1路由器上配置RIP协议:

R1路由器上配置OSPF协议:

进行PC11对PC41的访问,发现目标不可达。因为此时的RIP协议和OSPF协议之间未进行重分布,观察3560 交换机和R2路由表均无对方路由信息。

4)在R1上进行路由重分布

此时R2上的路由情况如下:

3560上的路由情况如下:

可见RIP协议和OSPF协议之间已进行重分布,R2和3560都学习到对方发布的地址。

再进行PC11对PC41的访问,发现目标可达。

同样观察其他的主机的访问情况,发现皆能连通。实现了跨物理网络的VLAN间通信。

4 结束语

VLAN技术是局域网应用中的重要技术,实现VLAN间的通信是网管人员和网络工程人员必将面对的问题。本文利用Packet Tracer软件,模拟了同一物理网络中,使用三层路由和单臂路由的方法实现VLAN间的通信;采用综合路由配置方法,实现了不同物理网络的VLAN间通信。过程中分析了路由器的端口设置、IP地址分配、三层交换机的配置,对相关的配置命令和路由表的信息进行了解析,并对组建的虚拟网络进行了通信仿真测试,实现了预期的设想。

摘要:VLAN技术是提升网络性能,提高网络安全性的有效方法。对于网管人员来说,交换机上VLAN的创建,同一物理网络内以及不同物理网络间VLAN的通信是必须要掌握的技能。文章借助Packet Tracer软件,模拟了利用VTP技术创建VLAN数据库,利用三层交换机和单臂路由实现VLAN间通信,以及基于综合路由配置实现跨物理网络的VLAN间通信。

VLAN的实现方法 篇4

描述:

BUGTRAQID: 5

CVE(CAN) ID: CVE--4725

Cisco VLAN中继协议(VTP)是思科第2层信息传送协议,主要控制网络范围内VLAN的添加、删除和重命名,

Cisco IOS在处理特制VTP报文时存在多个漏洞,具体如下:

1 拒绝服务

如果向Cisco IOS设备发送了VTP version 1摘要帧并将VTP版本字段设置为2的话,VTP处理进程就会陷入循环,最终由系统watchdog进程终止,导致设备重载。

2 VTP修改版本整数回绕

如果攻击者能够向Cisco IOS或CatOS设备发送VTP更新(摘要和sub)的话,就可以自己选择VTP信息的修改版本号。IOS会接受0x7FFFFFFF这个版本号。当运算符更改交换机VLAN配置时,IOS就会将版本号增加为0x80000000,然后由有符整数变量内部追踪这个版本号,

因此,这个修改版本号会被处理为很大的负值。从这时起交换机无法同更改的VLAN配置通讯,因为所有其他交换机都会拒绝这个生成的更新,

3 VLAN名称堆溢出

如果攻击者能够向Cisco IOS设备发送VTP更新的话,类型2帧包含有每个VLAN的记录。VTP记录的一个字段中包含有VLAN的名称,另一个字段为这个名称的长度。如果更新的VLAN名称大于100字节且VLAN名称长度字段正确的话,就会导致堆溢出,在接收的交换机上执行任意代码。

<*来源:FX (fx@phenoelit.de)

链接:marc.theaimsgroup.com/?l=bugtraq&m=115817075024127&w=2

www.cisco.com/warp/public/707/cisco-sr-20060913-vtp.shtml

secunia.com/advisories/21902/

*>

建议:

厂商补丁:

Cisco

-----

目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载:

VLAN的实现方法 篇5

1 使用hybird端口实同网段VLAN间互通

目前所使用华为或H3C的交换机有3种不同类型的端口, access链路类型、trunk链路类型和hybrid链路类型。Access类型端口只能加入一个VLAN, 一般用于交换机与计算机相连;trunk类型端口可以加入多个VLAN, 设置为trunk类型的端口允许多个VLAN的报文通过, 默认的不需要带pvid, 其它情况需要带pvid标签, 一般用于交换机与交换机级联;hybrid端口可以加入多个vlan, 并可以设置该vlan的报文通过该端口发送是是否带pvid, trunk类型端口是一种特殊的hybrid端口。采用hybird链路实现同网段VLAN间通信, 网络拓扑结构如图1所示。

要实现VLAN10中的主机PC1和VLAN20中的主机PC2不能互访, VLAN10中的主机PC1能访问VLAN30中服务器SERVER1和SERVER2, VLAN20中的主机PC2能访问VLAN30中服务器SERVER1和SERVER2, 2台PC和2台服务器均在同一网段内。各VLAN和PC间的对应关系如表1所示。

配置如下:

2 使用单臂路由技术实现跨网段VLAN间通信

实现跨网段通信需要经过TCP/IP的第3层进行转发, 地址解析协议ARP通过广播的方式发送报文, 从而获取目标主机的MAC地址, 源主机就可以发送报文给目标主机, 达到不同VLAN间通信的目的。单臂路由技术就是使用路由器的以太网口来实现, 由于路由器接口较少, 实现过程中需要对以太网口划分子接口, 每个子接口对应一个VLAN, 这样当路由器与划分VLAN的交换机连接时就可以实现VLAN间的通信。拓扑结构如图2所示。

PC1和PC2属于VLAN100, PC3和PC4属于VLAN200, 在这样要实现VLAN100和VLAN200间的通信采用交换机连接路由器的方法。各VLAN和PC间接口对应关系如表2所示。

路由器配置如下:

3 使用三层交换机实现跨网段VLAN间通信

单臂路由技术采用软件方式实现路由选择、数据转发, 多个VLAN的数据汇聚到一条链路上会降低路由器的性能, 会导致路由器成为网络的瓶颈, 而3层交换机采用专门的集成电路芯片 (ASIC) 来实现路由选择, 在2层交换机的基础上增加了实现路由功能的路由模块, 数据包转发时间得到大幅度提高, 实现高速路由。采用3层交换机实现VLAN间通信, 拓扑结构如图3所示。

图3中PC2和PC3属于VLAN10, PC1和PC4属于VLAN20, SERVER1和SERVER2属于VLAN30, 且各台PC机和服务器没有在同一个网段, 如果要实现VLAN10、VLAN20能够访问VLAN30中的服务器SERVER1和SERVER2, 在此处采用带路由功能的3层交换机来实现。

交换机Swtich A配置如下:



最后设置各主机的默认网关, 把网关设为所属VLAN指向的三层虚接口的地址, 然后使用ping命令测试各VLAN间主机的连通性。

4 结语

VLAN有很多优点, 在具有应用中需要根据情况采用不同的解决办法实现VLAN的划分, 本文采用了3种不同的方式实现了VLAN间通信的配置, 每种方式都有各自的特点, 可以根据网络规划情况进行选择使用。

参考文献

[1]乔正洪, 葛武滇.计算机网络技术与应用[M].北京:科学出版社, 2011 (2) .

[2]辛颖秀, 金珂.独臂路由与三层交换机VLAN间通信技术分析[J].青岛职业技术学院学报, 2007 (20) .

[3]于占虎.三层交换机中VLAN间通信的设备方法[J].辽宁师专学报, 2009 (11) .

[4]李永, 甘新玲.不同VLAN之间通信实验设计与实现[J].实验技术与管理, 2014 (31) .

[5]郑丽敏, 卢易枫.VLAN间路由的研究[J].无线互联科技, 2014 (12) .

[6]于磊.VLAN常规划分及应用[J].软件导刊, 2014 (13) .

[7]杨姝.虚拟局域网技术的实现[J].实验科学与技术, 2009 (5) .

VLAN的实现方法 篇6

在企业网络刚刚兴起之时, 由于企业网络规模小、应用范围的局限性、网络安全及当时资金投入的限制等原因, 使得企业网仅仅限于交换模式的状态。对于所有处于一个IP网段或IPX网段的网络设备来说, 却同在一个广播域中, 当工作站的数量较多、信息流很大的时候, 就容易形成广播风暴, 甚者造成网络的瘫痪。

然而, 由于网络规模不断扩大, 信息流量逐渐加大, 人员管理变得日益复杂, 给企业网的安全、稳定和高效运行带来新的隐患, 如何消除这些隐患呢?为保证对不同职能部门管理的方便性和安全性以及整体网络运行的稳定性, 我们决定采用VLAN划分技术, 进行虚拟网络划分。

VLAN对于网络用户来说是完全透明的, 用户感觉不到使用中与交换式网络有任何的差别, 但对于网络管理人员则有很大的不同, 因为这主要取决于VLAN对网络中的广播风暴的控制以及提高网络的整体安全性, 通过路由访问列表、MAC地址分配等VLAN划分原则, 可以控制用户的访问权限和逻辑网段的大小;从而使网络管理更加简单、直观。由于VLAN的划分是逻辑上的, 因此用户不再受到物理位置的限制, 任意位置的用户可以属于任意一个VLAN, VLAN内的成员可以任意地增加, 修改和删除, 使得网络管理更加简便易行。

因为以太网的机制决定了LAN的性能好坏很大程度上取决于广播包的多少, 当一个平面LAN的广播包数量达到25%时, 网络的性能将会下降很多。VLAN技术很好的缩小了广播范围, 减少了广播包的数量。由于VLAN在第二层 (链路层) 的隔离作用, 在一定程度上起到了网络隔离的作用, 也就是说, 在无第三层路由连同的情况下, VLAN之间是无法通讯的。根据VLAN的隔离作用, 可以根据不同职能、不同应用等多种情况划分VLAN, 以实现不同VLAN之间的安全性和Qo S。

2 具体实现

2.1 第一步:子网分析

公司的网络系统由公司办公网络以及联网的县局网络, 公司中心交换机采用的是, 带有三层路由的引擎的交换机, 使得企业网具有将来升级的能力;同时各分组交换机采用的是的高性能和可堆叠能力的分组交换机。

2.2 第二步:系统分析

VLAN主要是基于两种标准协议:ISL和802.1Q。在进行VLAN间的互连时采用ISL的协议封装。由于VLAN的划分扩展了各个交换机, 所以交换机之间的连接都必须采用Trunk的方式。在具体划分的虚网中, 对于一个交换机扩展多个VLAN的时候, 前面提到了该交换机与其上层交换机间必须采用Trunk方式连接。

2.3 第三步:路由列表

做完了VLAN之间的连接后, 因为各分组交换机与主中心交换机间采用的是双光纤通道式连接, 做到了互为冗余备份所以要对整体网络的路由进行集中式管理。我们在主中心交换机上设置了VLAN路由。实现了各VLAN间网络的互连。

3 负载均衡的实现

网络发展越来越迅速、规模越来越大, 因此需要下层节点到核心节点之间必须存在两条条路径, 以避免单点故障。而且, 为了能做到在避免单点故障的同时充分利用资源, 在流量大的时候可以均衡流量, 避免资源浪费;我们采用VRRP的技术来解决。

交换VRRP协议的路由交换机共享一个缺省IP地址和MAC地址 (与一个VR ID对应) , 这一缺省IP地址被IP目标站点所使用以便它们与其它Subnet中的目标站点通讯。因此当主路由交换机故障时, 备份路由交换机接管缺省网关和MAC地址。这样所有目标站点可以继续与其它Subnet中的目标站点通讯。

VRRP使用Multicast的Hello包进行相互监测, 当备份VRRP路由交换机发现主VRRP路由交换机出现故障, 将会在3个interval之后根据优先级成为主VRRP路由交换机。然后新的VRRP主路由交换机将立即通过强制ARP刷新二层交换机的传输表 (Forwarding Table) 。缺省情况下, 一个interval为1秒, 也就是说, VRRP的切换时间为3秒。

我们在网络规划和实施的过程中, 采用了VRRP的技术, 对每一个网段都进行了VRRP地址的设置。保证网络的可靠性, 同时, 在一定网络结构下, 我们对VRRP进行适当配置, 来实现网络的负载均衡。具体操作, 在两台PP8610交换机中将不同子网VLAN的VRRP主路由交换机按照流量分配, 从而实现网络数据和CPU交换负载的负载均衡。

考虑到负载均衡实现的灵活性, 我们在采用VRRP技术的同时, 还配置了MLT技术, MLT技术使交换机与交换机、交换机与服务器以及交换机与路由器之间可以通过将多条物理链路捆绑在一起形成一条逻辑通道, 从而获得集成的高带宽。这种技术将多个本来分离的物理端口组成在一起, 形成了一个逻辑实体, 在地址学习、数据包转发和过滤等行为上保持一致, 等同于一个端口。

MLT技术不仅增加了网络带宽, 同时提高了网络的可靠性。MLT一端的交换机端口通过查看链路层地址MAC地址, 进行链路分配和负载均衡, 当MLT通道中的一条物理链路出现故障时, 数据将切换到其他链路上。

4 结束语

VLAN的实现方法 篇7

使用VLAN(虚拟局域网)技术为网络管理提供了极大的方便,网络管理员可以独立于地理位置而根据工作组或业务类型来组织网络资源,但对于VLAN的管理也带来了附加的工作量。VLAN管理的方式有两种:静态VLAN和动态VLAN,静态VLAN是指网络管理人员手动对每个VLAN及VLAN成员端口等进行配置;动态VLAN则是通过一定的机制设备可以动态地学习到VLAN的配置,减少网络管理员的配置工作量及可能产生的配置错误。

对于网络拓扑结构简单、设备少的情况,手工添加VLAN很方便,但是当实际组网复杂到网络管理员无法在短时间内完全了解网络拓扑结构的程度,或者是整个网络的VLAN太多时,工作量会非常大,很容易出现配置错误。在这种情况下,用户就可以通过VLAN的自动学习机制自动注册完成VLAN的配置。

1 现有VLAN动态学习实现方案

1.1 思科私有协议VTP(虚拟终端协议)

VTP是VLAN的中继协议,负责在VTP域内同步VLAN信息,这样就不必在每个交换机上配置相同的VLAN信息。它利用第2层中继帧,在一组交换机之间进行VLAN通信。

VTP的组网实例如图1所示。设备A、B和C在同一VTP域中,假设3台设备均为Server模式。在设备 A上配置VLAN2-5,该配置通过P1(端口1)在组网中传播,之后设备 B和C上都会自动学习到VLAN2-5的信息,并在设备上创建VLAN2-5。在设备 A删除VLAN5,该配置通过P1在组网中传播,之后设备 B和C上都会自动删除VLAN5的信息。这样就实现了同域中VLAN信息的同步。

VTP修剪如图2所示。设备A和C上P2都加入了VLAN2,如果计算机2发送广播,那么设备C会将广播洪泛到在该域内的所有交换机,如设备D,因为设备D同VTP域中交换机上VLAN配置相同,即使设备D上没有加入VLAN2的端口也是如此,这样就造成了带宽的浪费。

在同样的VTP域内,当在VTP 服务器上使能VTP修剪功能时,修剪功能会在整个VTP域内生效,在交换机上对需要修剪的VLAN进行标记,如设备D上没有端口加入VLAN2,则将VLAN2进行修剪,那么在设备B的P3就不会转发VLAN2的包给设备D,从而减少了不必要的流量。

1.2 IEEE 802.1D中提出的GVRP

GVRP(GARP VLAN注册协议)基于GARP(通用属性注册协议)机制,主要用于维护设备动态VLAN属性。通过GVRP,一台设备上的VLAN信息会迅速传播到整个交换网。GVRP可实现动态分发、注册和传播VLAN属性,从而达到减少网络管理员的手工配置量及保证VLAN配置正确的目的。

VLAN的注册指的是将端口加入VLAN, VLAN的注销指的是将端口退出VLAN。GVRP通过声明和回收声明实现VLAN属性的注册和注销。当端口接收到一个 VLAN 属性声明时,该端口将注册该声明中包含的VLAN信息(端口加入 VLAN)。当端口接收到一个VLAN 属性的回收声明时,该端口将注销该声明中包含的VLAN信息(端口退出VLAN)。GVRP的属性注册和注销仅仅是对于接收到GVRP报文的端口而言的。

2 改进的动态VLAN方案介绍

2.1 改进方案提出的原因

VTP之所以引入修剪功能是由于VTP本质上是把在核心交换机上划分的VLAN复制到局域网中的所有分交换机上,这样整个网络中的VLAN广播还是会在汇聚连接上传播,会加重核心交换机的负担。虽然在引入VTP修剪功能之后会解决此问题,但是VTP Server模式交换机在启动VTP修剪功能之后,同样会定时发送带有VTP修剪功能的数据包,造成带宽的浪费。

而GVRP的缺陷则主要体现在GVRP与环回协议共同应用时出现的问题。启用业务环回功能后 GVRP报文发送不出去,所以GVRP功能与业务环回功能不可以同时应用。

GVRP和环回功能同时应用的实例如图3所示。计算机1连接的交换机G和计算机2连接的交换机F上静态配置了VLAN10后,发送携带的VLAN10信息的GVRP注册报文,传输节点C接收到来自交换机G的GVRP注册报文后,在接收端口P3上存储VLAN10的注册信息,并在EAPS(以太网链路自动保护)环上进行转发;EAPS环上的其他节点接收到GVRP注册报文后,均在接收端口上存储VLAN10的注册信息,最终完成VLAN10的动态学习。由于主节点A的副端口处于阻塞状态,因此主节点A的副端口不能学习到该VLAN10,且传输节点B和C的P1、传输节点E的P2也不能学习到VLAN10,因此,当计算机1和计算机2进行通信时,数据报文经由传输节点C、D和E的链路进行传输。

当上述数据报文的传输链路出现故障时,例如,当传输节点C和D之间的链路出现故障时,传输节点C和D会向主节点A发送link-down报文。主节点A接收到link-down报文后,会解除副端口的阻塞状态进行链路切换,即切换到由传输节点C、B、主节点A和传输节点E构成的链路。但是,由于切换后的链路上的部分端口并没有VLAN10的注册信息,只有当两个端口都学习到VLAN10时才能进行针对VLAN10的数据报文的转发。因此,需要在该链路上完成VLAN10的学习后才能进行流量恢复。当传输节点C和D之间的链路故障恢复后,传输节点C和D向主节点A发送link-up报文并临时阻塞与故障恢复链路连接的端口,主节点A接收到link-up报文后,阻塞副端口重新将链路切换回由传输节点C、D和E构成的链路,并发送Complete_Flush_FDB报文。由于在链路故障过程中,传输节点C的P2、传输节点D的P1长时间接收不到GVRP注册报文达到VLAN10注册信息的老化事件,这些端口已经不具有VLAN10的注册信息,因此,在传输节点C和D接收到Complete_Flush_FDB报文后,虽然能够立即解除与故障恢复链路所连接端口的阻塞状态,但是需要传输节点C的P2、传输节点D的P1完成VLAN10的动态学习过程,因此,也不能立即恢复流量,会造成流量中断一段时间。

另外,GVRP在以太网交换机上运行,交换机是一个嵌入式的实时系统,硬件的性能在一定程度上有所限制,尤其是在交换机软件要对硬件进行操作时,对整个系统的性能有很大的影响。GVRP管理动态VLAN,对VLAN属性的注册、注销等都要将VLAN在硬件储存器上的储存信息进行更新。GVRP动态学习VLAN属性,定时发送协议消息,保持所有网络中的设备的VLAN一致性,当有相当数量的VLAN属性的情况时,交换机CPU(中央处理器)的负荷将会很重,对其他功能有所影响。

所以,在改进的VLAN动态学习方案中,必须综合考虑VTP和GVRP的缺陷:可能造成的带宽浪费、不能与环回协议同时使用以及交换机CPU负荷重等。在解决这些缺陷的同时,必须保持VLAN动态学习这一功能的优点:能够通过VLAN的自动学习机制自动注册完成VLAN的配置,减少工程人员的工作量,提高工作效率并最大程度地避免由于复杂的VLAN配置而导致的VLAN配置错误造成的业务中断、成环等重大工程事故。

2.2 改进的VLAN动态学习方案

改进方案是在基于VTP的基础上,同时考虑VTP以及GVRP的缺陷而提出的,可以将VTP基于设备同步VLAN的特点改成基于端口同步,这样就很好地解决了这个问题。

如图1所示,假设3台交换机在同域内,在设备B的P1上配置VLAN2、P2上配置VLAN3。按最初的设想,设备 A上P1会学到VLAN2,设备C上P1会学到VLAN3,但在实际中,当设备 B上先在P1上配置VLAN2再在P2配置VLAN3时,该域的VLAN就变成VLAN2-3,那么此时P1和P2就会向外通告VLAN2-3,达不到预期的效果。所以提出将VTP中一台交换机只能加入一个域改为一台交换机可以加入多个域的方案。但是一个端口最多只能加入一个VTP域,所以一台交换机上支持的域的数目最大可以和端口数目相等。此方案可以解决VTP基于端口同步VLAN的设想所造成的问题:如果要在不同端口上配置不同的VLAN,可以将端口加入不同的VTP域。

改进方案的工作流程如图4所示。将设备B配置成Server模式,P1、P2加入域1,VLAN2、P3加入域2、VLAN3。设备A、C配置成Client模式,P1、P2加入域1。设备D配置成Client模式,P1加入域2。设备 B会由P1、P2、P3分别发送带有该端口的VLAN信息的报文,设备A的P1、P2自动加入VLAN2,设备B的P1、P2也会自动加入VLAN2,而设备A 的P1由于加入域2,所以会加入VLAN3。

改进方案可以很好地替代VTP修剪功能,当原VTP造成带宽浪费而要使用修剪功能时,可以将设备B上的P3加入域2,但P3不加入VLAN 2,那么计算机2的广播就不会传到设备D上了。

改进方案也可以很好地解决由于GVRP的单向同步机造成GVRP在与环回协议同时使用时出现的问题,该方案是在接收到VLAN同步的报文后,将使能VLAN同步功能并在相同域中的端口都加入VLAN中。如图3所示,采用改进方案实现VLAN的同步:将该拓扑内的交换机都加入域1,同时将端口全部使能改进的同步方案,计算机1连接的交换机G静态配置VLAN10后,将P1加入VLAN10,此时交换机G会通过P1向传输节点C的P3发送同步报文,此报文中包含的信息有域信息和该域的VLAN信息,传输节点C接收到该同步报文后会查找该交换机上同域的端口,并将这些端口的VLAN和报文中的VLAN信息同步,如图3中传输节点C上的P1、P2、P3。然后该同步报文再通过同域的非接收端口转发。这样,在传输节点B的P1、P2,传输节点D的P1、P2,传输节点E的P1、P2、P3以及交换机F上都会学到VLAN10的信息,如果传输节点C和D之间的链路出现故障,则主节点A会解除副端口的阻塞状态,此时,链路被切换至传输节点C、B、主节点A和传输节点E构成的链路,并且由于该链路上传输节点在EAPS环上的各端口都已经存储有VLAN10的注册信息,因此,数据报文可以立即在该链路上传输,从而恢复流量。改进的VLAN学习方案已经在作者负责研发的以太网交换机上得到了应用。

3 结束语

VLAN技术是以太网交换机最基本和最重要的技术之一,已得到广泛应用,但在网络中特别是接入网中VLAN的管理工作量很大且易出错,因此要对VLAN动态学习技术进行研究并使之实用化。本文对现有的VLAN动态学习方式VTP和GVRP做了简要介绍,并分析了两种协议的不足之处,在此基础上提出了VLAN自动学习的改进的方案,该方案在实际的以太网交换机设备中得到了实现,具有很高的实用价值。

参考文献

[1]孙克勇,张亮.城域以太网中动态VLAN注册机制研究[J].中国新通信,2006,(9):23-27.

[2]茹海波.VLAN的核心技术VTP[J].电信快报,2001,(6):26-29.

[3]IEEE Std 802.1D-1998,The Institute of Electrical andElectronics Engineers,Inc,“Media Access Control(MAC)Bridges”[S].

社区网VLAN规划与实现 篇8

随着光进铜退、社区网进油区等项目的开展,社区网逐渐呈现出3个比较明显的特点:第一是接入方式多,包括使用以太网交换机、ADSL MODEM、ONU接入。第二是认证方式多,包括PPPOE拨号+RADIUS认证(大部分社区普通用户)认证的方式、IPOE+RADIUS认证(手机、IPAD等终端)、专线静态(办公用户)、专线动态(宾馆、酒店)。第三是多业务综合承载,数据业务、IPTV业务、P2P视频点播、包括其他增值业务等在一张IP网上承载。这给传统的宽带业务网络部署及维护模式带来了极大的挑战。为了有效利用网络资源,网络数据的统一规划、统一部署,精确进行业务和用户识别,就显得尤为重要。

1VLAN规划重要性

油田互联网横跨陕甘宁蒙4省区,覆盖主要作业区及生活基地,作为整个油田的计算机主干网络,服务于油田的主业及从续企业。在早期单业务时代,油田所有办公用户及住宅用户的网络由一张网络提供,网络架构简单,用户数量少,为了快速及方便地为用户开通网络业务,很多用户都分配在同一个VLAN内。而随着用户规模的增加、网络中病毒的泛滥、用户间相互干扰等问题的层出不穷,使增值业务难以开通。账号盗用、账号漫游和资费流失等现象也经常出现。因此,在2009年对计算机主干网进行了改造,将社区网与办公网进行物理分离。

而VLAN作为用户或业务标识的地位已经得到认可。从业务安全性的需要出发,好的VLAN规划可以实现业务的精细化管理,特别是针对互联网业务,可以有效地隔离用户,防止用户间相互影响。同时,防止账号盗用、账号漫游,以及资费流失,也便于对用户进行行为审计等安全操作。从业务质量保证的需要,通过VLAN规划将不同业务分在不同VLAN内,便于网络设备进行Qo S标记,从而在网络传输中保证高优先级业务(如IP语音、STB业务)的质量,提高用户体验,增加对用户的运营粘性。

2VLAN规划与实现

2.1 基本思路

为避免出现资源使用冲突和浪费,VLAN资源应统一管理、统一分配,VLAN数据的部署应遵循实施简单、查询方便、迁移容易的原则。此次规划部署模式为PUPSPV+PSPV,具体方案如下:普通上网业务属于公众业务,本身存在的不安全因素较多,需要实现严格的隔离,使用精细化PUPSPV方式规划部署;IPTV、物业管理等业务其应用终端专用性较强,属于有安全保障的业务,使用PSPV模式,即在一定区域(比如一栋楼)内同一业务使用同一VLAN承载。

2.2 解决方案

由于社区网BAS下挂二层网络包含用户数量众多,网络庞大,完全部署PUPSPV的方式需要结合灵活的QINQ技术使用内、外两层标签来对用户进行定位和识别。下面以EPON网络为例提出以下解决方案(表1)。

用户侧VLAN规划:

用户侧VLAN ID的规划以每PON口为基本单位,其他业务VLAN ID由网络侧VLAN ID分配。不同PON口的PPPOE内层VLAN ID资源可以重复使用。为规避在配置时可能出现的冲突,内层VLAN ID的范围为1 001-2 000,分配序列为从前到后。所有内层VLAN的分配都按照每PON口下每路分光下挂满配的ONU来一次分配。以ONU最大支持24个FE口,第n个ONU对应的VLAN范围:1 001+24×n~1 001+24×(n+1)-1。

3结 语

VLAN的实现方法 篇9

VLAN是一种将局域网内设备逻辑地划分成独立网段来实现虚拟工作组的新兴技术。IEEE于1999年颁布了用以标准化虚拟局域网实现方案的802.1Q协议标准草案,即Virtual Bridged Local Area Networks协议[1],规定了VLAN的国际标准实现,从而使不同厂商之间的VLAN互通成为可能。

MAC是以太网IEEE 802.3[2]协议规定的数据链路层的一部分,是连接以太网物理层和网络层的中间协议层,MAC协议是数据帧收发的基础,负责上层数据和物理层比特流的封装和解封、流量控制以及差错校验等一系列功能[3]。在实际应用中,要求网络接口能对不同的数据帧进行区分,VLAN技术正能满足设计要求。下面从VLAN的基本内容介绍出发,讨论使用Altera公司FPGA来完成千兆以太网MAC及VLAN的设计与实现。

1 VLAN基本原理

1.1 802.1Q的以太网帧结构

802.1Q协议主要规定了VLAN的实现。与标准的以太网帧头相比,VLAN报文格式在源地址后增加了一个4字节的VLAN标签。VLAN帧结构[4]如图1所示。

各个字段的详细含义如下:

① Preamble:前导码,此部分为7 byte交替出现的0和1;

② SFD(Start Frame Delimiter):帧起始符,此段用1 byte(11010101)作为帧开始的信号;

③ MAC Dest(MAC Destination Address):以太网帧的目的地址,包含6 byte;

④ MAC Source(MAC Source Address):以太网帧的源地址,包含6 byte;

⑤ Type/Length:类型或者长度字段,占用2 byte;

⑥ Info:MAC帧中的有效数据字段;

⑦ FCS(Frame Check Sequence):帧校验序列字段,占用4 byte;

⑧ TPID(Tag Protocol Identifier):标签协议标志,包含了一个固定的值0x8100;

⑨ TCI(Tag Protocol Identifier):标签控制信息,占用2 byte,此字段中定义了此帧的优先级PCP,占用3 bit,规范格式指示CFI,占用1 bit,以及12 bit的VLAN ID。

1.2 VLAN划分的策略

划分VLAN的基本策略通常有:基于端口的VLAN划分;基于MAC地址的VLAN划分;基于网络层的VLAN划分;基于策略的VLAN划分[5,6]等。

本文中的千兆以太网MAC采用带有标记的帧结构是为了区分控制帧和业务帧,对控制帧和业务帧赋予不同的VLAN ID,对不同类型帧进行相应的处理,控制帧在MAC中解析后放入接收FIFO中,CPU对控制帧进行解析处理,业务帧则在去掉MAC头后放入接收数据FIFO中。

2 系统设计

千兆以太网MAC的结构框图如图2所示,主要由MAC发送模块、MAC接收模块和收发FIFO组成。

FPGA采用Altera公司的CycloneⅡ系列的EP2C70F672芯片,千兆PHY芯片选用MARVEL公司的88E1111,外接RJ45网络接口,该器件可工作于10/100/1 000M 模式,双工/半双工模式可选,用于实现千兆以太网物理层协议。

2.1 MAC接收模块

MAC接收模块数据从PHY芯片经GMII接口到MAC接收模块,MAC接收模块完成功能如下:

① 移除帧的前导码和帧起始符;

② 过滤无效MAC地址的接收帧;

③ 判断VLAN ID,区分业务帧和控制帧,并删除VLAN;

④ 把接收帧写到对应接收FIFO;

⑤ 接收业务帧、控制帧计数。

以太网接收部分MAC内部状态转移图如图3所示。

MAC接收模块复位后,模块处于IDLE状态并监听总线的状态。此状态下,当RX-DV信号变为高电平表明接收数据有效,此时如果检测到以太网帧的前导码0x55,则自动进入RX Premble状态,如果再接收到以太网数据帧的帧定界符0xD5,则MAC接收模块进入MAC Dest Check状态,通过与配置好的目的地址比对后,判断是否与本站地址匹配,如果不匹配,则丢弃并返回IDLE状态,否则,进入VLAN Check状态,通过与预先配置好的VLAN ID对比,判断接收数据为业务帧还是控制帧,如为数据帧,则进入RX Data状态开始接收数据,否则,进入RX Protocol状态开始接收控制字段。数据接收完毕后,则将接收到的数据存贮到对应的接收FIFO。

2.2 MAC发送模块

MAC发送模块完成功能如下:

① 判断发送为业务字段或控制字段,赋予对应的VLAN ID;

② 帧传输以前生成相应的前导码和帧起始符;

③ 帧填充,使Info达到最小长度46 byte;

④ 计算并添加FCS到传输帧;

⑤ 以正确的间隔发送帧。

⑥ 发送业务帧、控制帧计数。

以太网发送部分MAC内部状态转移图如图4所示。

MAC发送模块复位后,进入IDLE状态。此状态下,如果发送FIFO不为空,模块转入Data TYPE Check 状态,如为业务帧,则VLAN ID配置成业务帧对应值,否则,配置成控制帧对应值。接着进入TX Premble发送状态,先发送7 byte前导码(0x55),再发送1 byte的帧起始符(0xD5),然后转入TX VLAN状态,插入VLAN TAG,先发送2 byte的TPID(0x8100),再发送对应的TCI,再转入TX Data/ Protocol状态,先发送6 byte的目的地址,然后发送6 byte的源地址,接着发送2 byte的数据/类型字段,接着发送有效数据,如果发送有效数据小于46 byte,则转入PAD状态,填充数据字段到46 byte,否则直接转入TX FCS状态,填充数据发送后,也进入TX FCS状态,FCS发送完后,转入IPG状态,等待12 byte数据传输时间后,返回IDLE状态,准备下一帧数据发送。

3 系统验证

设计采用Altera Cyclone II系列FPGA芯片EP2C70F672,整个设计采用VHDL硬件描述语言来实现,在Altera Quartus II 9.1开发平台上完成整个模块的设计、综合及布局布线,利用InterWatch M7性能测试与协议分析仪构建以太网数据包,并使用Altera Quartus II 9.1自带的SignalTap II内嵌逻辑分析仪在PC机上对千兆以太网MAC进行数据包的捕获分析。测试框图如图5所示。

测试步骤如下:

① 通过以太网线,将电路板RJ45接口与测试仪InterWatch M7的以太网板卡正确连接;

② 设置测试仪对应以太网接口为自适应模式;

③ 配置测试数据的链路层协议参数、IP地址、FCS和包长等;

④ 设置测试仪端口带宽,启动InterWatch M7;

⑤ 启动SignalTap II内嵌逻辑分析仪捕获千兆以太网接口数据。

SignalTap II逻辑分析仪接收的以太网帧数据为流数据,具体为7个55,D5,00,45,45,45,01,00,00,45,45,45,02,00,81,00,00,21,08,00,45,00,00,2E,00,00,00,00,40,00,7C,CE,7F,00,00,01,7F,00,00,01,00,01,02~18,00,C6,7C,45,B3。其中,目的MAC地址为00-45-45-45-01-00,源MAC地址为00-45-45-45-02-00,TPID为0x8100,VLAN ID为0x21,数据类型为0x0800,MAC帧中的有效数据字段为0x2E个,即46个,最后4个字节是FCS序列32’hC67C45B3。

4 结束语

介绍了VLAN的基本原理以及基于FPGA的千兆全双工以太网MAC中VLAN的实现。上述设计可用于实现1 000 Mbps的全双工以太网通信,完成千兆以太网数据的收发,VLAN的添加与移除,业务帧、控制帧的区分,MAC地址过滤,包填充功能,并提供了收发统计计数等功能,通过了FPGA验证。 

摘要:在分析IEEE 802.1Q协议的基础上,研究了千兆以太网媒体接入控制器(Media Access Control,MAC)中虚拟局域网(Virtual Local Area Network,VLAN)的实现方法,详细介绍了系统接收数据包与发送数据包的详细工作流程。结合各种VLAN划分策略的特点,分析了采用VLAN技术解决实际应用中需要区分不同帧格式的特殊需求。基于Altera FPGA设计了一种千兆全双工以太网MAC,实现了千兆以太网VLAN数据帧的收发,并对不同类型的帧进行了区分。通过现场可编程门阵列(FieldProgrammable Gate Array,FPGA)验证表明,设计能够完成千兆以太网VLAN数据帧的收发、区分功能,满足设计要求。

关键词:VLAN,千兆以太网,MAC,FPGA

参考文献

[1]IEEE Std 802.1Q.Virtual Bridged Local Area Networks[S],2005.

[2]IEEE Std 802.3.Telecommunications and InformationExchange between Systems Local and Etropolitan AreaNetworks Specific Requirements.Part 3:Carrier SenseMultiple Access with Collision Detection(CSMA/CD)AccessMethod and Physical Layer Specifications[S],2008.

[3]谢希仁.计算机网络(第4版)[M].北京:电子工业出版社,2003.

[4]周仁邦,毛国华.VLAN干线传输协议[J].现代电子技术,2006(8):93-97.

[5]孙广波,谢俊,张琛.3G网络VLAN划分方案[J].现代电子技术,2010(15):96-98.

上一篇:实践教学小学数学下一篇:函数思想