基于OpenFlow协议实现PVLAN的方法和装置制造方法及图纸

技术编号:10393713 阅读:105 留言:0更新日期:2014-09-05 19:35
本发明专利技术公开了一种基于OpenFlow协议实现PVLAN的方法,该方法引入OpenFlow协议实现PVLAN,在OpenFlow控制器中控制是否对报文的转发,不需要将子VLAN内的MAC表拷贝到主VLAN中。基于同样的发明专利技术构思,本发明专利技术还提出一种装置,在实现PVLAN时,不会造成主VLAN的表项占用大的内存,也不会降低报文的转发速率。

【技术实现步骤摘要】
基于OpenFlow协议实现PVLAN的方法和装置
本申请涉及通信
,特别涉及一种基于开放流(OpenFlow)协议实现PVLAN的方法和装置。
技术介绍
随着数据中心业务日益增加,用户需求不断提高,数据中心的规模和功能日趋复杂,管理难度也越来越高。在这一背景下,整合数据中心、降低数据中心的管理成本,充分挖掘现有资源能力以适应更高的业务需求,成为企业数据中心的重要任务。对数据中心资源进行虚拟化,成为目前数据中心整合的重要趋势。虚拟化技术通过对物理资源和提供的服务进行抽象化,让资源使用者和系统管理者不关心对象的物理特征和服务边界的细节,从而降低资源使用和管理的复杂度,提高使用效率。因而,对数据中心的虚拟化能够提高数据中心的资源利用率,如中央处理器(CPU)利用率、存储容量等,降低系统的能耗,并减少系统的设计、运行、管理、维护成本,从而实现整合的目标。数据中心的虚拟化技术主要包括3方面内容:网络虚拟化、存储虚拟化和服务器虚拟化,最主要的是服务器虚拟化。通过专用的虚拟化软件,如VMware管理,一台物理服务器能虚拟出多台虚拟机(VM),每个VM独立运行,互不影响,都有自己的操作系统和应用程序和虚拟的硬件环境,包括虚拟CPU、内存、存储设备、IO设备、虚拟边缘端口汇聚(VEPA:VirtualEdgePortAggregator)交换机等。边缘虚拟桥接技术(EdgeVirtualBridging,EVB)技术分为交换机EVB技术和服务器EVB技术。服务器EVB技术应用于数据中心服务器,在其上的VEPA交换机中实现,用于简化虚拟服务器的流量转发实现,对虚拟服务器的网络交换、流量管理和策略下发进行集中控制,并能在虚拟迁移时实现网络管理和策略的自动迁移。支持EVB的VEPA交换机分为虚拟边缘交换机(VirtualEthernetBridge,VEB)和虚拟边缘端口汇聚(VirtualEdgePortAggregator,VEPA)。在服务器上采用纯软件方式实现的VEB实现方式简单,且技术兼容性好,但也面临着诸如占用CPU资源导致虚拟机性能下降,存在虚拟机流量监管、虚拟机的网络策略实施以及管理可扩展性等问题。VEPA将虚拟机产生的网络流量全部交由与服务器相连的物理交换机进行处理,即使同一台服务器上的虚拟机间流量,也将在物理交换机上查表处理后,再回到目的虚拟机上。VEPA方式不仅借助物理交换机解决了虚拟机间流量转发,同时还实现了对虚拟机流量的监管,并且将虚拟机接入层网络纳入到传统服务器接入网络管理体系中。新型网络交换模型(OpenFlow)是斯坦福大学发起的一种网络技术,它使传统的二层和三层交换机具备了细粒度流转发能力,即传统的基于MAC的网包转发,基于IP的路由转发,被拓展到了基于多域网包包头描述的流转发。同时,传统的控制层面从转发设备中剥离出来,所有转发行为的决策从交换机自身迁移到了某个集中控制器上。每个OpenFlow交换机都有一张流表,进行包查找和转发。交换机可以通过OpenFlow协议经一个安全通道连接到外部OpenFlow控制器,对流表进行查询和管理。流表包括包头域(headerfileds),匹配包头多个域;活动计数器(counters)域、0个或多个执行行动(actions)域。对每一个包进行查找,如果匹配则执行相关策略,否则通过安全通道将包转发到OpenFlow控制器,OpenFlow控制器来决策相关行为。流表项可以将包转发到一个或者多个接口。私有虚拟局域网(privateVLAN,PVLAN)使用二层VLAN结构,它在同一台设备上设置主(Primary)VLAN和子(Secondary)VLAN,SecondaryVLAN又分为公共(Community)VLAN和隔离(isolated)VLAN。同一个CommunityVLAN中的端口可以相互通信,但是不能与其它CommunityVLAN二层互通。同一个IsolatedVLAN中的端口在二层不能互通。CommunityVLAN和isolatedVLAN都可以与PrimaryVLAN通信。传统的基于媒体访问控制(MAC)转发的实现,通过将子VLAN内的MAC表拷贝到主VLAN中,实现报文转发,VLAN内的端口屏蔽通过端口隔离来实现由于将子VLAN中的MAC表都拷贝到主VLAN中,这样会造成主VLAN的MAC表会很大,如果软件实现,将导致转发速率下降。基于MAC转发,缺少对应用层连接流的监控。
技术实现思路
有鉴于此,本申请提供一种基于OpenFlow协议实现私有虚拟局域网PVLAN的方法和装置,在实现PVLAN时,不会造成主VLAN的表项占用大的内存,也不会降低报文的转发速率。为解决上述技术问题,本专利技术的技术方案是这样实现的:一种基于开放流OpenFlow协议实现私有虚拟局域网PVLAN的方法,该方法应用于包含OpenFlow控制器、服务器和边缘交换机的组网中的OpenFlow控制器上,所述OpenFlow控制器创建虚拟分布式交换机VDS;所述服务器虚拟多个虚拟机VM和一个虚拟边缘端口汇聚VEPA交换机,所述VEPA交换机的与边缘交换机连接的上行端口配置加入主VLAN,所述VEPA交换机的与VM连接的下行端口配置加入子VLAN,所述下行端口和上行端口均配置加入对应的VDS,所述子VLAN包括隔离isolatedVLAN和公共CommunityVLAN;所述方法包括:OpenFlow控制器接收VEPA交换机上送的报文;OpenFlow控制器根据所述报文的入端口和目的端口各自所属的子VLAN以及各自所属的VDS,构造用于转发所述报文的流表,其中,所述入端口是所述VEPA交换机接收到所述报文的端口,所述目的端口是所述报文的目的MAC地址对应的端口;OpenFlow控制器将所述流表下发给所述VEPA交换机,使所述VEPA交换机根据该流表转发该单播报文。一种装置,可应用于包含OpenFlow控制器、服务器和边缘交换机的组网中的OpenFlow控制器上,其中,所述OpenFlow控制器创建虚拟分布式交换机VDS;所述服务器虚拟多个虚拟机VM和一个虚拟边缘端口汇聚VEPA交换机,所述VEPA交换机的与边缘交换机连接的上行端口配置加入主VLAN,所述VEPA交换机的与VM连接的下行端口配置加入子VLAN,所述下行端口和上行端口均配置加入对应的VDS,所述子VLAN包括隔离isolatedVLAN和公共CommunityVLAN;所述装置包括:接收单元、构造单元和下发单元;所述接收单元,用于接收VEPA交换机上送的报文;所述构造单元,用于根据所述接收单元接收到的VEPA交换机上送的报文的入端口和目的端口各自所属的子VLAN以及各自所属的VDS,构造用于转发所述报文的流表,其中,所述入端口是所述VEPA交换机接收到所述报文的端口,所述目的端口是所述报文的目的MAC地址对应的端口;所述下发单元,用于将所述流表下发给所述VEPA交换机,使所述VEPA交换机根据该流表转发该单播报文。综上所述,本申请通过引入OpenFlow协议实现PVLAN,在OpenFlow控制器中控制是否对报文的转发,不需要将子VLAN内的MAC表拷贝到主VLAN中,因此不会造成主VLAN本文档来自技高网
...
基于OpenFlow协议实现PVLAN的方法和装置

【技术保护点】
一种基于开放流OpenFlow协议实现私有虚拟局域网PVLAN的方法,其特征在于,该方法应用于包含OpenFlow控制器、服务器和边缘交换机的组网中的OpenFlow控制器上,所述OpenFlow控制器创建虚拟分布式交换机VDS;所述服务器虚拟多个虚拟机VM和一个虚拟边缘端口汇聚VEPA交换机,所述VEPA交换机的与边缘交换机连接的上行端口配置加入主VLAN,所述VEPA交换机的与VM连接的下行端口配置加入子VLAN,所述下行端口和上行端口均配置加入对应的VDS,所述子VLAN包括隔离isolated VLAN和公共Community VLAN;所述方法包括:OpenFlow控制器接收VEPA交换机上送的报文;OpenFlow控制器根据所述报文的入端口和目的端口各自所属的子VLAN以及各自所属的VDS,构造用于转发所述报文的流表,其中,所述入端口是所述VEPA交换机接收到所述报文的端口,所述目的端口是所述报文的目的MAC地址对应的端口;OpenFlow控制器将所述流表下发给所述VEPA交换机,使所述VEPA交换机根据该流表转发该报文。

【技术特征摘要】
1.一种基于开放流OpenFlow协议实现私有虚拟局域网PVLAN的方法,其特征在于,该方法应用于包含OpenFlow控制器、服务器和边缘交换机的组网中的OpenFlow控制器上,所述OpenFlow控制器创建虚拟分布式交换机VDS;所述服务器虚拟多个虚拟机VM和一个虚拟边缘端口汇聚VEPA交换机,所述VEPA交换机的与边缘交换机连接的上行端口配置加入主VLAN,所述VEPA交换机的与VM连接的下行端口配置加入子VLAN,所述下行端口和上行端口均配置加入对应的VDS,所述子VLAN包括隔离isolatedVLAN和公共CommunityVLAN;所述方法包括:OpenFlow控制器接收VEPA交换机上送的报文;OpenFlow控制器根据所述报文的入端口和目的端口各自所属的子VLAN以及各自所属的VDS,构造用于转发所述报文的流表,其中,所述入端口是所述VEPA交换机接收到所述报文的端口,所述目的端口是所述报文的目的MAC地址对应的端口;OpenFlow控制器将所述流表下发给所述VEPA交换机,使所述VEPA交换机根据该流表转发该报文。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:OpenFlow控制器接收VM启动后上报的事件消息,根据所述事件消息中携带的VM的MAC地址以及所述VEPA交换机上连接所述VM的端口,维护各个VM的MAC地址以及所述VEPA交换机连接各个VM的端口之间的对应关系;所述OpenFlow控制器进一步根据所述对应关系,确定所述报文的源MAC地址对应的端口、以及目的MAC地址对应的端口。3.根据权利要求1所述的方法,其特征在于,所述构造用于转发所述报文的流表包括:在所述报文是入端口所属的子VLAN为isolatedVLAN的单播报文时,若所述入端口与所述目的端口各自所属的VDS不同,则构造第一流表;否则,丢弃所述单播报文;在所述报文是入端口所属的子VLAN为CommunityVLAN的单播报文时,若所述入端口与所述目的端口各自所属的子VLAN为同一主VLAN内同一CommunityVLAN,或者所述入端口与所述目的端口各自所属的VDS不同,则构造第二流表;否则,丢弃所述单播报文;其中,所述第一流表和第二流表的包头域均包括所述入端口和目的MAC,动作域包括设置VLAN为主VLAN并通过上行端口转发。4.根据权利要求3所述的方法,其特征在于,所述构造用于转发所述报文的流表还包括:在所述报文是入端口为上行端口的单播报文时,构造第三流表,所述第三流表的包头域包括所述入端口和目的MAC,动作域包括通过所述目的端口转发。5.根据权利要求1至4任一项所述的方法,其特征在于,所述构造用于转发所述报文的流表包括:在所述报文是入端口为下行端口的多播报文时,构造第四流表,所述第四流表的包头域包括所述入端口和目的MAC,动作域包括设置VLAN为主VLAN并通过上行端口转发。6.根据权利要求5所述的方法,其特征在于,所述构造用于转发所述报文的流表还包括:在所述报文是入端口为上行端口、且源端口所属的子VLAN为isolatedVLAN的多播报文时,构造第五流表,所述第五流表的包头域包括所述入端口、源MAC和目的MAC,动作域包括通过所述VEPA交换机上的第一类端口转发;所述第一类端口所属VDS与所述源端口所属VDS不同,所述源端口是所述报文的源MAC地址对应的端口;在所述报文是入端口为上行端口、且源端口所属的子VLAN为CommunityVLAN的多播报文时,构造第六流表,所述第六流表的包头域包括所述入端口、源MAC和目的MAC,动作域包括通过所述VEPA交换机上的第二类端口转发;所述第二类端口所属CommunityVLAN与所述源端口所属CommunityVLAN相同,且属于同一主VLAN,或者,所述第二类端口所属VDS与所述源端口所属VDS不同。7.一种基于开放流OpenFlow协议实现私有虚拟局域网PVLAN的装置,其特征...

【专利技术属性】
技术研发人员:林涛任维春刘阳张连雷
申请(专利权)人:杭州华三通信技术有限公司
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1