The invention discloses a method and device for initializing a virtual switch component. The method includes: receiving rules from flow tables of virtual switch components for controlling software defined network sent by controller components of software defined network, and storing rules in flow tables to servers for running virtual switch components; reading rules in flow tables stored by servers when initializing virtual switch components to realize virtual reality Switch components are initialized. By storing the rules in the flow table to the server running the virtual switch components, the virtual switch components reduce their dependence on the controller. Because the server stores the rules in the flow table locally, it avoids losing the rules in the flow table, and the virtual switch components can still work properly, and process and forward data correctly. When the flow table is lost due to server restart, the flow table rules can be obtained locally from the server to speed up network recovery.
【技术实现步骤摘要】
一种用于对虚拟交换机部件进行初始化的方法和装置
本专利技术涉及软件定义网络领域,尤指一种用于对虚拟交换机部件进行初始化的方法和装置。
技术介绍
SDN(SoftwareDefinedNetwork,软件定义网络)在当今云计算平台设计和实现中非常重要的一部分功能,在SDN网络的实现中,Controller(控制器部件)及Openvswitch(虚拟交换机部件)是其中很重要的两个实体。Controller在网络中控制所有的Openvswitch,并给Openvswitch下发指令,将Openvswitch转发规则通过流表发送给Openvswitch。Openvswitch用来实现Controller指令,根据Controller下发的流表对Openvswitch的数据包进行正确的处理,包括转发、丢弃、设定优先级等。然而在这种类型的网络模型设计下,Controller的重要性非常高,流表信息完全由Controller保存。一旦Controller出现故障,Openvswitch就无法获取流表信息更新,在出现Openvswitch断电的情况下,流表信息会随之丢失,虚拟机网络通信中断,影响云平台业务。此外,在出现计算节点(即Openvswitch所在的节点)出现大量重启的情况下,Controller需要将所有的流表信息全部下发至Openvswitch,耗时较长,业务恢复缓慢,对Controller的压力较大,增加了业务恢复的恢复时间目标。
技术实现思路
为了解决上述技术问题,本专利技术提供了一种用于对虚拟交换机部件进行初始化的方法和装置,其能够避免丢失流表中的规则,并且 ...
【技术保护点】
1.一种用于对虚拟交换机部件进行初始化的方法,其特征在于,所述方法包括下列步骤:接收由软件定义网络的控制器部件发送的、用于控制所述软件定义网络的虚拟交换机部件的流表中的规则,并且将所述流表中的规则存储到用于运行虚拟交换机部件的服务器;在对所述虚拟交换机部件进行初始化的时候,读取所述服务器存储的流表中的规则,以对所述虚拟交换机部件进行初始化。
【技术特征摘要】
1.一种用于对虚拟交换机部件进行初始化的方法,其特征在于,所述方法包括下列步骤:接收由软件定义网络的控制器部件发送的、用于控制所述软件定义网络的虚拟交换机部件的流表中的规则,并且将所述流表中的规则存储到用于运行虚拟交换机部件的服务器;在对所述虚拟交换机部件进行初始化的时候,读取所述服务器存储的流表中的规则,以对所述虚拟交换机部件进行初始化。2.根据权利要求1所述的方法,其中,所述在对所述虚拟交换机部件进行初始化的时候,读取所述服务器存储的流表中的规则,以对所述虚拟交换机部件进行初始化的步骤,包括:在对所述虚拟交换机部件进行初始化的时候,判断所述虚拟交换机部件是否是首次进行初始化:如果所述虚拟交换机部件是首次进行初始化,则读取所述服务器存储的流表中的规则,以对所述虚拟交换机部件进行初始化,并且在对所述虚拟交换机部件进行虚拟化之后将所述虚拟交换机部件标记为并非首次进行虚拟化。3.根据权利要求2所述的方法,其特征在于,所述读取所述服务器存储的流表中的规则,以对所述虚拟交换机部件进行初始化的步骤还包括:如果所述虚拟交换机部件并非首次进行初始化,则判断所述虚拟交换机部件是否能够与所述控制器部件进行通信;如果所述虚拟交换机部件能够与所述控制器部件进行通信,则读取在所述服务器存储的流表中的规则,并且向所述控制器部件查询所述服务器存储的流表中的规则与由所述控制器部件最新发送的流表中的规则是否相同;如果查询到所述服务器存储的流表中的规则与由所述控制器部件最新发送的流表中的规则相同,则采用所述服务器存储的流表中的规则对所述虚拟交换机部件进行初始化;如果查询到所述服务器存储的流表中的规则与由所述控制器部件最新发送的流表中的规则不同,则采用由所述控制器部件最新发送的流表中的规则来更新所述服务器存储的流表中的规则,并且采用更新后的流表中的规则对所述虚拟交换机部件进行初始化。4.根据权利要求3所述的方法,其特征在于,所述读取所述服务器存储的流表中的规则,以对所述虚拟交换机部件进行初始化的步骤还包括:如果判断所述虚拟交换机部件与所述控制器部件不能进行通信,则读取并且采用所述服务器存储的流表中的规则以对所述虚拟交换机部件进行初始化,并且尝试与所述控制器部件进行通信。5.根据权利要求4所述的方法,其特征在于,所述读取所述服务器存储的流表中的规则,以对所述虚拟交换机部件进行初始化的步骤还包括:当尝试与所述控制器部件进行通信使得所述虚拟交换机部件与所述控制器成功通信之后,读取在所述服务器存储的流表中的规则,并且向所述控制器部件查询所述服务器存储的流表中的规则与由所述控制器部件最新发送的流表中的规则是否相同;如果查询到所述服务器存储的流表中的规则与由所述控制器部件最新发送的流表中的规则不...
【专利技术属性】
技术研发人员:魏传程,胡玉鹏,
申请(专利权)人:郑州云海信息技术有限公司,
类型:发明
国别省市:河南,41
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。