CN103051539A - 一种基于dht的控制网络实现方法、系统和网络控制器 - Google Patents
一种基于dht的控制网络实现方法、系统和网络控制器 Download PDFInfo
- Publication number
- CN103051539A CN103051539A CN2012105435918A CN201210543591A CN103051539A CN 103051539 A CN103051539 A CN 103051539A CN 2012105435918 A CN2012105435918 A CN 2012105435918A CN 201210543591 A CN201210543591 A CN 201210543591A CN 103051539 A CN103051539 A CN 103051539A
- Authority
- CN
- China
- Prior art keywords
- path
- network controller
- create
- response message
- creates
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/42—Centralised routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/34—Signalling channels for network management communication
- H04L41/342—Signalling channels for network management communication between virtual entities, e.g. orchestrators, SDN or NFV entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/04—Network management architectures or arrangements
- H04L41/042—Network management architectures or arrangements comprising distributed management centres cooperatively managing the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0654—Management of faults, events, alarms or notifications using network fault recovery
- H04L41/0668—Management of faults, events, alarms or notifications using network fault recovery by dynamic selection of recovery network elements, e.g. replacement by the most appropriate element after failure
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/28—Routing or path finding of packets in data switching networks using route fault recovery
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
- H04L45/745—Address table lookup; Address filtering
- H04L45/7453—Address table lookup; Address filtering using hashing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/40—Support for services or applications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0876—Aspects of the degree of configuration automation
- H04L41/0886—Fully automatic configuration
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/50—Network service management, e.g. ensuring proper service fulfilment according to agreements
- H04L41/5041—Network service management, e.g. ensuring proper service fulfilment according to agreements characterised by the time relationship between creation and deployment of a service
- H04L41/5054—Automatic deployment of services triggered by the service manager, e.g. service implementation by automatic configuration of network components
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/141—Setup of application sessions
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种基于DHT的控制网络实现方法和系统,包括:交换机与分布式对等网络中指定的网络控制器建立路由控制通道;首节点网络控制器生成P2P路径创建请求消息,并沿路径转发,直到末节点网络控制器;路径上的每个网络控制器根据P2P路径创建请求消息,向自身管理的交换机下发P2P路径创建请求消息中携带的转发流表,完成各自的本地路径创建;首节点网络控制器根据接收到的P2P路径创建响应并结合本地路径创建结果确定路径是否创建成功。本发明还公开了一种网络控制器。通过本发明使得网络控制器网络实现自组织、交换机自动接入,同时使得网络路径的计算与下发容易管理。
Description
技术领域
本发明涉及计算机网络领域,尤其是涉及一种基于分布式哈希(DistributedHash Table,DHT)的控制网络实现方法、系统和网络控制器。
背景技术
美国斯坦福大学于2008年提出了OpenFlow(开放流表控制)协议,该协议采用转发/控制分离架构,外置控制面实体采用OpenFlow协议控制转发面设备,实现各种转发逻辑。而转发面设备主要功能就是根据OpenFlow网络控制器下发的流表执行受控转发,其行为是标准化的:收到一条报文,取出其头部L2/L3/L4相关字段值,以其作为关键字查找流表,匹配到一个表项后,根据表项内容中的指令集对报文字段进行变换,完毕后根据指示转发到某一逻辑或物理端口。此协议进一步演进,成为软件定义网络(Software Defined Network,SDN)技术的基础,即可以在控制面采用软件编程实现各种复杂的网络应用,而转发面设备无需任何改变,由于控制面采用通用服务器+通用操作系统,并且可以使用通用的软件编程工具,也可以使用Python(一种面向对象、直译式计算机程序设计语言)这样的脚本编程语言实现,这使得新的网络协议的支持变得非常简单,而且新技术部署周期大大缩短。
一个基本的OpenFlow网络包括网络控制器和交换机两个主要的控制实体。通常地,在网络中部署一个集中的网络控制器,负责整个网络域中所有的OpenFlow交换机的管理域控制。然而,单个集中式的网络控制器会成为网络规模化的瓶颈,如与网络控制器距离较远的交换机建立流的时延增加,单个网络控制器处理交换路径请求的吞吐量受限,端到端的路径带宽可控性差等。为此,学术界提出分布式网络网络控制器方案,如HyperFlow(超级流管理)、ONIX等,这些方案一般是在网络上部署多个网络控制器共同管理与控制SDN网络。
公开号为US20110261722的美国专利申请公开的技术方案中:将路由路径信息放在流的首个数据报文头部中,路径上的交换机在进行报文转发时根据报文头部的路由路径信息建立转发流表。对于这种大规模的网络,交换机和网络控制器之间的连接选择与维护、路径的计算与下发,经常涉及多个交换机、多个网络控制器,大大增加了网络维护的成本。
由此可见,在现有SDN的分布式网络控制器方案中,路径建立过程中经常涉及多个网络控制器、多个交换机的流表下发,复杂的交互过程增加了事务维护的复杂性,且不利于管理面和转发面的状态统一,大大增加了网络的维护成本。
发明内容
有鉴于此,本发明的主要目的在于提供一种基于DHT的控制网络实现方法和系统,使得网络控制器网络实现自组织、交换机自动接入,同时使得网络路径的计算与下发容易管理。
为达到上述目的,本发明的技术方案是这样实现的:
本发明提供了一种基于DHT的控制网络实现方法,该方法包括:
交换机与分布式对等网络中指定的网络控制器建立路由控制通道;
接收到路径创建请求的网络控制器作为首节点网络控制器进行路径计算,生成P2P路径创建请求消息,并沿路径转发所述P2P路径创建请求消息;
所述路径上接收到所述P2P路径创建请求消息的网络控制器,向自身管理的交换机下发所述P2P路径创建请求消息中携带的转发流表,完成各自的本地路径创建;其中,所述路径上的中间节点网络控制器在完成本地路径创建后,沿所述路径转发所述P2P路径创建请求消息,所述路径上的末节点网络控制器在完成本地路径创建后沿相反路径返回P2P路径创建响应消息;
接收到所述P2P路径创建响应消息的中间节点网络控制器,结合本地路径创建结果,更新所述P2P路径创建响应消息,并沿所述相反路径转发更新后的P2P路径创建响应消息;首节点网络控制器接收到P2P路径创建响应消息后,结合本地路径创建结果,确定所述路径是否创建成功。
优选地,所述交换机与分布式对等网络中指定的网络控制器建立路由控制通道,包括:
交换机与引导服务器直接返回的指定的网络控制器列表中的网络控制器建立路由控制通道;或者,引导服务器将交换机引导到任意的网络控制器,交换机根据所述任意的网络控制器返回的信息重定向到指定的网络控制器、并与该指定的网络控制器建立路由控制通道。
优选地,所述路由控制通道为OpenFlow协议通道、SNMP通道或DIAMATER通道。
优选地,所述路径计算得到路径上网络控制器的顺序和路径上交换机的顺序。
优选地,所述P2P路径创建请求消息的目的节点为所述路径上的末节点网络控制器;
所述P2P路径创建请求消息的路由路径头部由所述路径上除了末节点网络控制器之外的其他网络控制器的标识组成;
所述P2P路径创建请求消息的消息体由所述路径上向各个交换机下发的转发流表组成。
优选地,所述其他网络控制器的标识按所述路径上的所述其他网络控制器的顺序排列;
所述向各个交换机下发的转发流表按照所述路径上的交换机的顺序排列。
优选地,所述首节点网络控制器生成P2P路径创建请求消息后,该方法还包括:所述首节点网络控制器向自身管理的交换机下发所述P2P路径创建请求消息中携带的转发流表。
优选地,所述路径上的末节点网络控制器在完成本地路径创建后沿相反路径返回P2P路径创建响应消息,为:
若本地路径创建成功,所述末节点网络控制器返回成功的P2P路径创建响应消息;若本地路径创建失败,所述末节点网络控制器返回失败的P2P路径创建响应消息。
优选地,接收到所述P2P路径创建响应消息的中间节点网络控制器,结合本地路径创建结果,更新所述P2P路径创建响应消息,并沿所述相反路径转发更新后的P2P路径创建响应消息,为:
若本地路径创建成功、且接收到的为成功的P2P路径创建响应消息,则沿所述相反路径转发更新后的、成功的P2P路径创建响应消息;
若本地路径创建成功、且接收到的为失败的P2P路径创建响应消息,则沿所述相反路径转发更新后的、失败的P2P路径创建响应消息;
若本地路径创建失败,且接收到的为失败或成功的P2P路径创建响应消息,则沿所述相反路径转发更新后的、失败的P2P路径创建响应消息。
优选地,首节点网络控制器接收到P2P路径创建响应消息后,结合本地路径创建结果,确定所述路径是否创建成功,为:
首节点网络控制器接收到成功的P2P路径创建响应消息、且本地路径创建成功时,确认所述路径创建成功;
首节点网络控制器接收到失败的P2P路径创建响应消息或者本地路径创建失败时,确认所述路径创建失败,并重新进行路径计算。
优选地,所述路径上的网络控制器接收到P2P路径创建响应消息后该方法还包括:若接收到为失败的P2P路径创建响应消息或者本地路径创建失败时,网络控制器对本地已下发的转发流表进行回滚操作。
本发明还提供了一种基于DHT的控制网络实现系统,该系统包括:交换机和网络控制器,其中:
所述交换机,用于与分布式对等网络中指定的网络控制器建立路由控制通道;
所述网络控制器,用于接收到路径创建请求时作为首节点网络控制器进行路径计算,生成P2P路径创建请求消息,并沿路径转发所述P2P路径创建请求消息;还用于接收到所述P2P路径创建请求消息时,向自身管理的交换机下发所述P2P路径创建请求消息中携带的转发流表,完成本地路径创建;还用于作为所述路径上的中间节点网络控制器在完成本地路径创建后,沿所述路径转发所述P2P路径创建请求消息;还用于,作为所述路径上的末节点网络控制器在完成本地路径创建后沿相反路径返回P2P路径创建响应消息;还用于作为路径上的中间节点网络控制器接收到所述P2P路径创建响应消息时,结合本地路径创建结果,更新所述P2P路径创建响应消息,并沿所述相反路径转发更新后的P2P路径创建响应消息;还用于作为首节点网络控制器接收到P2P路径创建响应消息后,结合本地路径创建结果,确定所述路径是否创建成功。
优选地,该系统还包括引导服务器,用于向所述交换机指定的网络控制器列表;或者,将所述交换机引导到任意的网络控制器;
相应的,所述交换机,还用于与所述引导服务器直接返回的指定的网络控制器列表中的网络控制器建立路由控制通道;或者,根据所述任意的网络控制器返回的信息重定向到指定的网络控制器、并与该指定的网络控制器建立路由控制通道。
优选地,所述网络控制器,还用于作为首节点网络控制器生成P2P路径创建请求消息后,向自身管理的交换机下发所述P2P路径创建请求消息中携带的转发流表。
优选地,所述网络控制器,还用于作为末节点网络控制器,若本地路径创建成功,沿相反路径返回成功的P2P路径创建响应消息;若本地路径创建失败,沿相反路径返回失败的P2P路径创建响应消息。
优选地,所述网络控制器,还用于作为中间节点网络控制器接收到所述P2P路径创建响应消息时,若本地路径创建成功、且接收到的为成功的P2P路径创建响应消息,则沿所述相反路径转发更新后的、成功的P2P路径创建响应消息;若本地路径创建成功、且接收到的为失败的P2P路径创建响应消息,则沿所述相反路径转发更新后的、失败的P2P路径创建响应消息;若本地路径创建失败,且接收到的为失败或成功的P2P路径创建响应消息,则沿所述相反路径转发更新后的、失败的P2P路径创建响应消息。
优选地,所述网络控制器,还用于作为首节点网络控制器接收到P2P路径创建响应消息后,若接收到的为成功的P2P路径创建响应消息、且本地路径创建成功时,确认所述路径创建成功;若接收到的为失败的P2P路径创建响应消息或者本地路径创建失败时,确认所述路径创建失败,并重新进行路径计算。
优选地,所述网络控制器,还用于在接收到P2P路径创建响应消息后,若接收到为失败的P2P路径创建响应消息或者本地路径创建失败时,对本地已下发的转发流表进行回滚操作。
本发明还提供了一种网络控制器,包括:路由控制协议模块、分布式处理模块、路由控制与下发模块和分布式路由协议模块,其中:
所述路由控制协议模块,用于负责网络控制器与交换机之间路由控制通道的建立以及网络控制器与交换机之间信息的交互;
所述分布式处理模块,用于根据所述路由控制与下发模块提供的路径信息生成P2P路径创建请求消息,提供给所述分布式路由协议模块进行转发;还用于根据所述路由控制与下发模块提供的本地路径创建结果生成P2P路径创建响应消息,提供给分布式路由协议模块进行转发;还用于接收所述分布式路由协议模块提供的P2P路径创建请求消息,并将其中携带的转发流表提供给所述路由控制与下发模块;还用于接收所述分布式路由协议模块提供的P2P路径创建响应消息,并根据所述路由控制与下发模块提供的本地路径创建结果对接收的P2P路径创建响应消息进行更新后,提供给所述分布式路由协议模块进行转发;还用于根据路由控制与下发模块提供的本地路径创建结果和所述分布式路由协议模块提供的P2P路径创建响应消息,确定路径是否创建成功;
路由控制与下发模块,用于在首节点网络控制器接收到路径创建请求时进行路径计算,得到路径信息,并提供给所述分布式处理模块;还用于将所述分布式处理模块提供的转发流表通过所述路由控制协议模块下发给对应的交换机,完成本地路径创建,并将本地路径创建结果提供给所述分布式处理模块;
所述分布式路由协议模块,用于沿路径转发或接收P2P路径创建请求消息;还用于相反路径转发或接收所述P2P路径创建响应消息;还用于将接收到的P2P路径创建请求消息或P2P路径创建响应消息提供给所述分布式处理模块。
优选地,所述分布式处理模块,还用于确定路径创建失败时,通知所述路由控制与下发模块执行转发流表回滚操作;
所述路由控制与下发模块,还用于通过所述路由控制协议模块,对下发的转发流表执行回滚操作。
本发明基于DHT的控制网络实现方法和系统:交换机与分布式对等网络中指定的网络控制器建立路由控制通道;接收到路径创建请求的网络控制器作为首节点网络控制器进行路径计算,生成P2P路径创建请求消息,并沿路径转发P2P路径创建请求消息;路径上接收到P2P路径创建请求消息的网络控制器,向自身管理的交换机下发P2P路径创建请求消息中携带的转发流表,完成各自的本地路径创建;其中,路径上的中间节点网络控制器在完成本地路径创建后,沿路径转发P2P路径创建请求消息,路径上的末节点网络控制器在完成本地路径创建后沿相反路径返回P2P路径创建响应消息;接收到P2P路径创建响应消息的中间节点网络控制器,结合本地路径创建结果,更新P2P路径创建响应消息,并沿相反路径转发更新后的P2P路径创建响应消息;首节点网络控制器接收到P2P路径创建响应消息后,结合本地路径创建结果,确定路径是否创建成功,使得网络路径的计算与下发容易管理。另外,交换机与分布式对等网络中指定的网络控制器建立路由控制通道,使得网络控制器网络实现自组织、交换机自动接入。
附图说明
图1为本发明实施例提供的基于DHT的SDN网络系统架构示意图;
图2为本发明实施例提供的基于DHT的控制网络实现方法;
图3为本发明实施例提供的交换机与指定的网络控制器建立路由控制通道的示意图;
图4为本发明实施例提供的网络控制器进行路径计算与转发的流程;
图5为本发明实施例提供的网络控制器处理P2P路径创建请求消息的流程图;
图6为本发明实施例提供的网络控制器处理P2P路径创建请求消息的流程图;
图7为本发明实施例中网络控制器的结构示意图;
图8为本发明实施例中交换机的结构示意图。
具体实施方式
下面结合附图和具体实施例对本发明的技术方案进一步详细阐述。
本发明基于DHT的控制网络实现方案基于的网络架构如图1所示。图1是本发明实施例提供的基于DHT的SDN网络系统架构示意图,SDN网络包括:交换机网络101、分布式对等网络103和引导服务器105,其中:
交换机网络101,由多个物理上互连的交换机102组成,交换机102之间通过物理链路进行互联,每个交换机102根据MAC地址或DPID等信息通过哈希(HASH)算法、MID5算法等生成固定长度的交换机标识(ID)。交换机102在上电时通过引导服务器105与指定的网络控制器104之间建立可靠的路由控制通道,进行相关的安全验证、基本信息上报、交换机配置等操作。交换机102完全受网络控制器104控制,对于收到的数据报文,交换机102根据网络控制器104下发的转发流表进行处理,对于查找本地流表无命中的数据报文,交换机102上报给网络控制器104进行处理。
分布式对等网络103,是由至少一个网络控制器104组成的分布式DHT网络,如单跳(One-Hop)DHT、Pastry网络等。网络控制器104之间运行分布式路由协议(如资源定位与发现协议(REsource LOcation And Discovery,简称RELOAD协议))进行通信。其中,每个网络控制器104根据IP地址等信息通过哈希(HASH)算法、MID5算法等生成固定长度的网络控制器标识(ID)。需要指出的是:网络控制器标识和交换机标识的均为同一固定长度的字符串,例如,对交换机的DPID或MAC地址进行HASH或MID5运算,得到128位的字符串作为标识;对网络控制器的IP地址进行HASH或MID5运算,得到128位的字符串作为标识。每个网络控制器104负责管理一个或多个交换机102(即一个或多个交换机102分别与一个网络控制器104建立路由控制通道),两者之间的对应关系的建立可以通过分布式算法来确定相关的原则,例如,两者的标识距离最近的交换机102和网络控制器104建立路由控制通道,或者,两者的标识距离大于预定的阈值,且距离最小时,对应的交换机102和网络控制器104建立路由控制通道。当然,网络控制器104和交换机102之间对应关系的建立所依据的原则并不限于上述两种方式,只要通过分布式算法确定的均可应用。每个网络控制器104对所管理的交换机102上报的数据报文进行路由计算,并通过分布式路由协议向所管理的交换机102下发转发流表以完成数据交换。
引导服务器105,负责引导交换机102与指定的网络控制器104建立路由控制通道。引导服务器105可以是普通的DNS服务器,负责将交换机102引导到任意的网络控制器104,交换机102再通过该网络控制器104返回的信息重定向到指定的网络控制器104;引导服务器105还可以与分布式对等网络103进行交互,直接将分布式算法确定的网络控制器104通知给交换机102,交换机102直接与该网络控制器104进行路由控制通道建立。
本发明实施例提供的基于DHT的控制网络实现方法如图2所示,包括如下步骤:
步骤201,交换机与分布式对等网络中指定的网络控制器建立路由控制通道。
步骤202,接收到路径创建请求的网络控制器作为首节点网络控制器进行路径计算,生成P2P路径创建请求消息,并沿路径转发P2P路径创建请求消息。
步骤203,路径上接收到P2P路径创建请求消息的网络控制器,向自身管理的交换机下发P2P路径创建请求消息中携带的转发流表,完成各自的本地路径创建;其中,路径上的中间节点网络控制器在完成本地路径创建后,沿路径转发P2P路径创建请求消息,路径上的末节点网络控制器在完成本地路径创建后沿相反路径返回P2P路径创建响应消息。
步骤204,接收到P2P路径创建响应消息的中间节点网络控制器,结合本地路径创建结果,更新P2P路径创建响应消息,并沿相反路径转发更新后的P2P路径创建响应消息;首节点网络控制器接收到P2P路径创建响应消息后,结合本地路径创建结果,确定路径是否创建成功。
下面结合附图及具体实施例对本发明上述的方案进行详细说明。
步骤201的实现方式包括:交换机与引导服务器直接返回的网络控制器列表中的网络控制器建立路由控制通道;或者,引导服务器将交换机引导到任意的网络控制器,交换机根据所述任意的网络控制器返回的信息重定向到指定的网络控制器、并与该指定的网络控制器建立路由控制通道。图3是本发明实施例提供的交换机与指定的网络控制器建立路由控制通道的示意图。其中,如图3(a)描述的是在交换机加入网络过程中,交换机与引导服务器直接返回的网络控制器列表中的网络控制器建立路由控制通道;图3(b)描述的是引导服务器执行普通的DNS服务器功能,负责将交换机引导到任意的网络控制器,交换机根据任意的网络控制器返回的信息重定向到指定的网络控制器、并与该指定的网络控制器建立路由控制通道。
优选地,本发明实施例所述的路由控制通道可以为OpenFlow协议通道、简单网络管理协议(SNMP,Simple Network Management Protocol)通道或DIAMATER通道。
如图3(a)所示,交换机加入网络的具体步骤描述如下:
步骤301a、交换机向引导服务器请求与网络控制器建立连接。
步骤302a、引导服务器根据分布式算法选择负责管理该交换机的一个网络控制器,并该网络控制器的信息返回给交换机。
这里,引导服务器还可根据分布式算法选择负责管理该交换机的一个或多个备份网络控制器,并将备份网络控制器的信息也返回给交换机。
优选地,网络控制器的信息可以以列表的形式发送给交换机。
该步骤中,选择负责管理该交换机的网络控制器即为上述的:依据网络控制器和交换机之间对应关系的建立原则,选择可与当前交换机建立对应关系的网络控制器。
步骤303a)、交换机根据引导服务器返回的网络控制器列表,与网络控制器列表中的一个或多个网络控制器建立路由控制通道。
引导服务器在返回网络控制器列表时,一般会将根据分布式算法确定的最合适的网络控制器排列在第一位,将其他备份网络控制器依次向后排列。优选地,交换机可以按照排列顺序优先与排列最靠前的一个网络控制器建立路由控制通道。如果与排列在第一位的网络控制器不能建立路由控制通道,则尝试与第二位的网络控制器建立路由控制通道,依次类推。
优选地,根据分布式算法,交换机还可以与列表中的多个网络控制器建立路由控制通道,具体如何从列表中选择,通过分布式算法确定。
步骤304a)、网络控制器与交换机建立路由控制通道,将交换机信息及交换机的网络邻居拓扑关系在分布式对等网络中进行更新。
如图3(b)所示,交换机加入网络的具体步骤描述如下:
步骤301b、交换机向引导服务器请求与网络控制器建立连接。
步骤302b、引导服务器执行DNS重定向功能,返回一个网络控制器列表1给交换机。
步骤303b、交换机从网络控制器列表1中任意选择一个网络控制器Ci发送OpenFlow协议通道建立请求。
步骤304b、网络控制器Ci根据分布式算法选择负责管理该交换机的一个或多个网络控制器,生成网络控制器列表2。(该步骤选择网络控制器的实现与步骤202a相同)
步骤305b、网络控制器Ci向交换机返回重定向响应,指示交换机与网络控制器列表2中的网络控制器建立OpenFlow协议通道。
步骤306b、交换机根据重定向响应,与网络控制器列表2中的一个或多个网络控制器建立OpenFlow协议通道。该实施例中假设交换机与网络控制器列表2中网络控制器Cj建立OpenFlow协议通道。
步骤307b、网络控制器Cj与交换机建立OpenFlow协议通道,将交换机信息及交换机的网络邻居拓扑关系在分布式对等网络中进行更新。
上述步骤202的实现方式包括:通过路径计算可得到以下的路径信息:路径上网络控制器的顺序和路径上交换机的顺序。进行路径计算的网络控制器(首节点网络控制器)生成P2P路径创建请求消息,该消息的目的节点为路径上的最后一个网络控制器、即末节点网络控制器;该消息的路由路径头部由路径上除了末节点网络控制器之外的其他网络控制器的标识组成,优选地,其他网络控制器的标识按路径上的其他网络控制器的顺序排列;该消息的消息体由路径上向各个交换机下发的转发流表组成,优选地,向各个交换机下发的转发流表按照路径上的交换机的顺序排列。在转发时,按照P2P路径创建请求消息的路由路径头部,向下一个网络控制器转发P2P路径创建请求消息。
图4是本发明实施例提供的网络控制器进行路径计算与转发的流程。路径计算节点C1根据网络拓扑信息和主机位置信息计算得到路由路径,根据分布式算法获取路径上各交换机标识和各网络控制器标识生成P2P路径创建请求消息,进行路由路径的转发。具体步骤描述如下:
步骤401、网络控制器C1收到路径{src,dst}创建请求,计算路径{src,dst}上的交换机顺序和网络控制器顺序,假设交换机顺序为{S1,S2,S3,S4,S6,S7,S9},网络控制器顺序为{C1,C2,C3};
步骤402、网络控制器C1根据分布式算法获取路径{src,dst}上的交换机标识序列{H(S1),H(S1),…,H(S9)},并获取路径{src,dst}上的网络控制器标识序列{Ctl_ID1,Ctl_ID2,Ctl_ID3};
步骤403、网络控制器C1生成P2P路径创建请求消息,该消息的路由路径头部为{Ctl_ID1,Ctl_ID2};该消息的目的节点为Ctl_ID3;该消息的消息体为路径{src,dst}上向各个交换机下发的转发流表{S1:FlowEntry list,S2:FlowEntrylist,…,S9:FlowEntry list};
步骤404、网络控制器C1根据路由路径头部{Ctl_ID1,Ctl_ID2},向网络控制器C2转发P2P路径创建请求消息;网络控制器C2根据该消息的目的节点向网络控制器C3转发P2P路径创建请求消息。
上述步骤203的实现方式为:路径上接收到P2P路径创建请求消息的网络控制器首选向自身管理的交换机下发P2P路径创建请求消息中携带的转发流表,完成本地路径创建;然后,该网络控制器根据P2P路径创建请求消息的目的节点部判断本节点是否为末节点网络控制器,如果否,按照路由路径头部将P2P路径创建请求消息转发给下一个网络控制器;如果是,即末节点网络控制器沿相反路径向上一个网络控制器返回P2P路径创建响应消息。
承接图4所示的实施例,图5是本发明实施例提供的网络控制器处理P2P路径创建请求消息的流程图。网络控制网络收到P2P路径创建请求消息后,对于需要本节点负责的转发流表下发,并根据向下一节点继续转发P2P路径创建请求消息。具体步骤描述如下:
步骤501,网络控制器C2收到网络控制器C1转发的P2P路径创建请求消息;
步骤502,网络控制器C2首先向所负责的交换机下发对应的转发流表,如网络控制器C2向交换机S2下发转发流表S2:FlowEntry list,向S7下发转发流表S7:FlowEntry list,完成本地路径创建;
步骤503,完成本地路径创建后,网络控制器C2根据P2P路径创建请求消息的目的节点判断本节点是否为路径{src,dst}上的末节点网络控制器;
步骤504,由于网络控制器C2不是路径{src,dst}上的末节点网络控制器,因此,网络控制器C2根据目的节点向网络控制器C3转发P2P路径创建请求消息;
步骤505,网络控制器C3首先向所负责的交换机下发对应的转发流表,如网络控制器C3向交换机S3下发转发流表S3:FlowEntry list,向S4下发转发流表S4:FlowEntry list,完成本地路径创建;
步骤506,完成本地路径创建后,网络控制器C3根据P2P路径创建请求消息的目的节点判断本节点是否为路径{src,dst}上的末节点网络控制器;
步骤507,由于网络控制器C3是路径{src,dst}上的末节点网络控制器,因此,网络控制器C3向上一个节点、即网络控制器C2返回P2P路径创建响应消息。
进一步地,在上述步骤203的实现方式中:
对于路径上的末节点网络控制器,在完成本地路径创建后,若本地路径创建成功,则向上一个网络控制器返回成功的P2P路径创建响应消息;如果本地路径创建失败,向上一个网络控制器返回失败的P2P路径创建响应消息。
对于步骤204的实现:对路径上的中间节点网络控制器,接收到P2P路径创建响应消息时,根据本地路径创建结果,若本地路径创建成功、且接收到了成功的P2P路径创建响应消息,则相反路径转发更新后的成功的P2P路径创建响应消息;若本地路径创建成功、且接收到的为失败的P2P路径创建响应消息,则沿相反路径转发更新后的、失败的P2P路径创建响应消息;若本地路径创建失败,且接收到的为失败或成功的P2P路径创建响应消息,则沿相反路径转发更新后的、失败的P2P路径创建响应消息。
对于首节点网络控制器,接收到成功的P2P路径创建响应消息、且本地路径创建成功时,确认路径创建成功;接收到失败的P2P路径创建响应消息或者本地路径创建失败时,确认路径创建失败,并重新进行路径计算。
承接图4、图5的实施例,图6是本发明实施例提供的网络控制器处理P2P路径创建请求消息的流程图。具体步骤描述如下:
步骤601,网络控制器C2收到路径{src,dst}上的末节点网络控制器C3发送的失败的P2P路径创建响应消息;
步骤602,因为网络控制器C2接收到的为失败的P2P路径创建响应消息,且网络控制器C2不是生成P2P路径创建请求消息的节点,所以,不管网络控制器C2本节点的路径创建是否成功,网络控制器C2都向网络控制器C1返回失败的P2P路径创建响应消息,同时,网络控制器C2对本地已经下发的转发流表进行回滚操作;
步骤603,网络控制器C1接收到失败的P2P路径创建响应消息,因为网络控制器C1为生成P2P路径创建请求消息的节点,所以网络控制器C1确定路径创建失败,则需要重新进行路径计算,同时,网络控制器C1对本地已经下发的转发流表进行回滚操作。
步骤604,网络控制器C2收到路径{src,dst}上的末节点网络控制器C3发送的成功的P2P路径创建响应消息;
步骤605,网络控制器C2不是生成P2P路径创建请求消息的节点,网络控制器C2判断本地路径创建是否成功,若成功,执行步骤606;若失败,执行步骤607。
步骤606,网络控制器C2向上一个网络控制器C1返回成功的P2P路径创建响应消息,后续的流程包括:
步骤6061,网络控制器C1是生成P2P路径创建请求消息的节点,在接收到成功的P2P路径创建响应消息时,判断本地路径创建是否成功,若成功,执行步骤6062,路径创建成功;若失败,执行步骤6063,路径创建失败,需要重新进行路径计算,同时,对本地已经下发的转发流表进行回滚操作。
步骤607;网络控制器C2向上一个网络控制器C1返回失败的P2P路径创建响应消息,同时,对本地已经下发的转发流表进行回滚操作,后续的流程包括:
步骤6071,因为网络控制器C1是生成P2P路径创建请求消息的节点、即首节点,在接收到失败的P2P路径创建响应消息时,不论本地路径创建是否成功,均确定为路径创建失败,需要重新进行路径计算,同时对本地已经下发的转发流表进行回滚操作。
为了实现上述方法,图1中所示各个部分执行的操作为:
交换机,用于与分布式对等网络中指定的网络控制器建立路由控制通道;
网络控制器,用于接收到路径创建请求时作为首节点网络控制器进行路径计算,生成P2P路径创建请求消息,并沿路径转发P2P路径创建请求消息;还用于接收到P2P路径创建请求消息时,向自身管理的交换机下发P2P路径创建请求消息中携带的转发流表,完成本地路径创建;还用于作为路径上的中间节点网络控制器在完成本地路径创建后,沿路径转发P2P路径创建请求消息;还用于,作为路径上的末节点网络控制器在完成本地路径创建后沿相反路径返回P2P路径创建响应消息;还用于作为路径上的中间节点网络控制器接收到P2P路径创建响应消息时,结合本地路径创建结果,更新P2P路径创建响应消息,并沿相反路径转发更新后的P2P路径创建响应消息;还用于作为首节点网络控制器接收到P2P路径创建响应消息后,结合本地路径创建结果,确定路径是否创建成功。
引导服务器,用于向交换机指定的网络控制器列表;或者,将交换机引导到任意的网络控制器;
相应的,交换机,还用于与引导服务器直接返回的指定的网络控制器列表中的网络控制器建立路由控制通道;或者,根据任意的网络控制器返回的信息重定向到指定的网络控制器、并与该指定的网络控制器建立路由控制通道。
网络控制器,还用于作为首节点网络控制器生成P2P路径创建请求消息后,向自身管理的交换机下发P2P路径创建请求消息中携带的转发流表。
网络控制器,还用于作为末节点网络控制器,若本地路径创建成功,沿相反路径返回成功的P2P路径创建响应消息;若本地路径创建失败,沿相反路径返回失败的P2P路径创建响应消息。
网络控制器,还用于作为中间节点网络控制器接收到P2P路径创建响应消息时,若本地路径创建成功、且接收到的为成功的P2P路径创建响应消息,则沿相反路径转发更新后的、成功的P2P路径创建响应消息;若本地路径创建成功、且接收到的为失败的P2P路径创建响应消息,则沿相反路径转发更新后的、失败的P2P路径创建响应消息;若本地路径创建失败,且接收到的为失败或成功的P2P路径创建响应消息,则沿相反路径转发更新后的、失败的P2P路径创建响应消息。
网络控制器,还用于作为首节点网络控制器接收到P2P路径创建响应消息后,若接收到的为成功的P2P路径创建响应消息、且本地路径创建成功时,确认路径创建成功;若接收到的为失败的P2P路径创建响应消息或者本地路径创建失败时,确认路径创建失败,并重新进行路径计算。
网络控制器,还用于在接收到P2P路径创建响应消息后,若接收到为失败的P2P路径创建响应消息或者本地路径创建失败时,对本地已下发的转发流表进行回滚操作。
具体的,本发明实施例中网络控制器的结构如图7所示,主要功能模块包括路由控制协议模块701、路由控制与下发模块702、分布式处理模块703、分布式路由协议模块704和信息存储模块705,其中:
路由控制协议模块701,主要负责网络控制器与交换机之间的路由控制通道的建立与维护,以及网络控制器和交换机之间的信息传递。例如:在处理交换机的路由控制通道的建立请求时,若交换机标识与网络控制器标识的对应关系不符合分布式算法时,则通过路由控制与下发模块702向分布式处理模块703查询管理所述交换机的网络控制器列表,并通过重定向响应将该网络控制器列表返回给交换机。网络控制器和交换机之间的交互信息包括:通信安全验证、交换机信息上报、交换机基本配置功能、交换机数据报文上报、交换机流表的下发与管理等。
路由控制与下发模块702,负责执行路径计算和转发流表的下发、回滚等操作。对网络拓扑变化事件或用户数据的转发请求,路由控制与下发模块702根据信息存储模块705中的网络拓扑和/或主机位置信息,进行路径计算,并与分布式处理模块703交互生成P2P路径创建请求消息。对来自分布式处理模块703的P2P路径创建请求消息,路由控制与下发模块702向本节点负责的交换机通过路由控制协议模块701下发相关转发流表。对来自分布式处理模块703的P2P路径创建响应消息,若为失败,路由控制与下发模块702向本节点负责的交换机通过路由控制协议模块701删除下发的转发流表、即回滚操作。具体的:路由控制与下发模块702在首节点网络控制器接收到路径创建请求时进行路径计算,得到路径信息,并提供给分布式处理模块703.;还用于将分布式处理模块703提供的转发流表通过路由控制协议模块701下发给对应的交换机,完成本地路径创建,并将本地路径创建结果提供给分布式处理模块703。
分布式处理模块703,负责分布式对等网络的业务处理,如P2P路径创建请求消息的处理。当进行路径创建时,根据路由控制与下发模块702提供的路径信息,生成P2P路径创建请求消息;处理P2P路径创建请求消息时,将转发流表提供给路由控制与下发模块702进行下发;处理P2P路径创建响应消息是,对于失败响应,通知路由控制与下发模块702将对下发的转发流表执行回滚操作。具体的:分布式处理模块703根据路由控制与下发模块702提供的路径信息生成P2P路径创建请求消息,提供给分布式路由协议模块704进行转发;还用于根据路由控制与下发模块702提供的本地路径创建结果生成P2P路径创建响应消息,提供给分布式路由协议模块704进行转发;还用于接收分布式路由协议模块704提供的P2P路径创建请求消息,并将其中携带的转发流表提供给路由控制与下发模块703;还用于接收分布式路由协议模块704提供的P2P路径创建响应消息,并根据路由控制与下发模块702提供的本地路径创建结果对接收的P2P路径创建响应消息进行更新后,提供给分布式路由协议模块704进行转发;还用于根据路由控制与下发模块702提供的本地路径创建结果和分布式路由协议模块704提供的P2P路径创建响应消息,确定路径是否创建成功;
分布式路由协议模块704,负责与其它网络控制器进行消息交互,包括分布式路由表的维护、P2P路径创建请求消息和P2P路径创建响应消息的路由等。
信息存储模块,负责网络控制器上相关数据的存储,主要包括本节点管理的交换机状态及对应的转发流表,以及根据分布式算法本节点负责管理的主机位置数据、全局网络拓扑数据的存储等。
具体的,本发明实施例中交换机的结构如图8所示,主要功能模块包括路由控制协议模块801、交换机控制模块802和报文转发功能模块803。其中
路由控制协议模块801,负责网络控制器与交换机之间的路由控制通道的建立与维护,以及网络控制器和交换机之间的信息传递。在向网络控制器发送路由控制通道的建立请求时,对于网络控制器返回的重定向响应,可以向新的网络控制器重新发起路由控制通道建立请求。网络控制器和交换机之间的交互信息包括:通信安全验证、交换机信息上报、交换机基本配置功能、交换机数据报文上报、交换机流表的下发与管理等。
交换机控制模块802,负责将相关的转发面数据报文通过路由控制协议模块801上报给网络控制器,将网络控制器下发的转发流表映射为报文转发功能模块803的硬件要求的格式,下发到报文转发功能模块803。
报文转发功能模块803,负责维护硬件上的转发流表,并对数据报文进行匹配处理与转发。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
Claims (20)
1.一种基于DHT的控制网络实现方法,其特征在于,该方法包括:
交换机与分布式对等网络中指定的网络控制器建立路由控制通道;
接收到路径创建请求的网络控制器作为首节点网络控制器进行路径计算,生成P2P路径创建请求消息,并沿路径转发所述P2P路径创建请求消息;
所述路径上接收到所述P2P路径创建请求消息的网络控制器,向自身管理的交换机下发所述P2P路径创建请求消息中携带的转发流表,完成各自的本地路径创建;其中,所述路径上的中间节点网络控制器在完成本地路径创建后,沿所述路径转发所述P2P路径创建请求消息,所述路径上的末节点网络控制器在完成本地路径创建后沿相反路径返回P2P路径创建响应消息;
接收到所述P2P路径创建响应消息的中间节点网络控制器,结合本地路径创建结果,更新所述P2P路径创建响应消息,并沿所述相反路径转发更新后的P2P路径创建响应消息;首节点网络控制器接收到P2P路径创建响应消息后,结合本地路径创建结果,确定所述路径是否创建成功。
2.根据权利要求1所述基于DHT的控制网络实现方法,其特征在于,所述交换机与分布式对等网络中指定的网络控制器建立路由控制通道,包括:
交换机与引导服务器直接返回的指定的网络控制器列表中的网络控制器建立路由控制通道;或者,引导服务器将交换机引导到任意的网络控制器,交换机根据所述任意的网络控制器返回的信息重定向到指定的网络控制器、并与该指定的网络控制器建立路由控制通道。
3.根据权利要求2所述基于DHT的控制网络实现方法,其特征在于,所述路由控制通道为OpenFlow协议通道、SNMP通道或DIAMATER通道。
4.根据权利要求1所述基于DHT的控制网络实现方法,其特征在于,所述路径计算得到路径上网络控制器的顺序和路径上交换机的顺序。
5.根据权利要求4所述基于DHT的控制网络实现方法,其特征在于,
所述P2P路径创建请求消息的目的节点为所述路径上的末节点网络控制器;
所述P2P路径创建请求消息的路由路径头部由所述路径上除了末节点网络控制器之外的其他网络控制器的标识组成;
所述P2P路径创建请求消息的消息体由所述路径上向各个交换机下发的转发流表组成。
6.根据权利要求5所述基于DHT的控制网络实现方法,其特征在于,
所述其他网络控制器的标识按所述路径上的所述其他网络控制器的顺序排列;
所述向各个交换机下发的转发流表按照所述路径上的交换机的顺序排列。
7.根据权利要求1至6任一所述基于DHT的控制网络实现方法,其特征在于,所述首节点网络控制器生成P2P路径创建请求消息后,该方法还包括:所述首节点网络控制器向自身管理的交换机下发所述P2P路径创建请求消息中携带的转发流表。
8.根据权利要求7所述基于DHT的控制网络实现方法,其特征在于,所述路径上的末节点网络控制器在完成本地路径创建后沿相反路径返回P2P路径创建响应消息,为:
若本地路径创建成功,所述末节点网络控制器返回成功的P2P路径创建响应消息;若本地路径创建失败,所述末节点网络控制器返回失败的P2P路径创建响应消息。
9.根据权利要求8所述基于DHT的控制网络实现方法,其特征在于,接收到所述P2P路径创建响应消息的中间节点网络控制器,结合本地路径创建结果,更新所述P2P路径创建响应消息,并沿所述相反路径转发更新后的P2P路径创建响应消息,为:
若本地路径创建成功、且接收到的为成功的P2P路径创建响应消息,则沿所述相反路径转发更新后的、成功的P2P路径创建响应消息;
若本地路径创建成功、且接收到的为失败的P2P路径创建响应消息,则沿所述相反路径转发更新后的、失败的P2P路径创建响应消息;
若本地路径创建失败,且接收到的为失败或成功的P2P路径创建响应消息,则沿所述相反路径转发更新后的、失败的P2P路径创建响应消息。
10.根据权利要求9所述基于DHT的控制网络实现方法,其特征在于,首节点网络控制器接收到P2P路径创建响应消息后,结合本地路径创建结果,确定所述路径是否创建成功,为:
首节点网络控制器接收到成功的P2P路径创建响应消息、且本地路径创建成功时,确认所述路径创建成功;
首节点网络控制器接收到失败的P2P路径创建响应消息或者本地路径创建失败时,确认所述路径创建失败,并重新进行路径计算。
11.根据权利要求10所述基于DHT的控制网络实现方法,其特征在于,所述路径上的网络控制器接收到P2P路径创建响应消息后该方法还包括:若接收到为失败的P2P路径创建响应消息或者本地路径创建失败时,网络控制器对本地已下发的转发流表进行回滚操作。
12.一种基于DHT的控制网络实现系统,其特征在于,该系统包括:交换机和网络控制器,其中:
所述交换机,用于与分布式对等网络中指定的网络控制器建立路由控制通道;
所述网络控制器,用于接收到路径创建请求时作为首节点网络控制器进行路径计算,生成P2P路径创建请求消息,并沿路径转发所述P2P路径创建请求消息;还用于接收到所述P2P路径创建请求消息时,向自身管理的交换机下发所述P2P路径创建请求消息中携带的转发流表,完成本地路径创建;还用于作为所述路径上的中间节点网络控制器在完成本地路径创建后,沿所述路径转发所述P2P路径创建请求消息;还用于,作为所述路径上的末节点网络控制器在完成本地路径创建后沿相反路径返回P2P路径创建响应消息;还用于作为路径上的中间节点网络控制器接收到所述P2P路径创建响应消息时,结合本地路径创建结果,更新所述P2P路径创建响应消息,并沿所述相反路径转发更新后的P2P路径创建响应消息;还用于作为首节点网络控制器接收到P2P路径创建响应消息后,结合本地路径创建结果,确定所述路径是否创建成功。
13.根据权利要求12所述基于DHT的控制网络实现系统,其特征在于,该系统还包括引导服务器,用于向所述交换机指定的网络控制器列表;或者,将所述交换机引导到任意的网络控制器;
相应的,所述交换机,还用于与所述引导服务器直接返回的指定的网络控制器列表中的网络控制器建立路由控制通道;或者,根据所述任意的网络控制器返回的信息重定向到指定的网络控制器、并与该指定的网络控制器建立路由控制通道。
14.根据权利要求12或13所述基于DHT的控制网络实现系统,其特征在于,
所述网络控制器,还用于作为首节点网络控制器生成P2P路径创建请求消息后,向自身管理的交换机下发所述P2P路径创建请求消息中携带的转发流表。
15.根据权利要求14所述基于DHT的控制网络实现系统,其特征在于,
所述网络控制器,还用于作为末节点网络控制器,若本地路径创建成功,沿相反路径返回成功的P2P路径创建响应消息;若本地路径创建失败,沿相反路径返回失败的P2P路径创建响应消息。
16.根据权利要求15所述基于DHT的控制网络实现系统,其特征在于,
所述网络控制器,还用于作为中间节点网络控制器接收到所述P2P路径创建响应消息时,若本地路径创建成功、且接收到的为成功的P2P路径创建响应消息,则沿所述相反路径转发更新后的、成功的P2P路径创建响应消息;若本地路径创建成功、且接收到的为失败的P2P路径创建响应消息,则沿所述相反路径转发更新后的、失败的P2P路径创建响应消息;若本地路径创建失败,且接收到的为失败或成功的P2P路径创建响应消息,则沿所述相反路径转发更新后的、失败的P2P路径创建响应消息。
17.根据权利要求16所述基于DHT的控制网络实现系统,其特征在于,
所述网络控制器,还用于作为首节点网络控制器接收到P2P路径创建响应消息后,若接收到的为成功的P2P路径创建响应消息、且本地路径创建成功时,确认所述路径创建成功;若接收到的为失败的P2P路径创建响应消息或者本地路径创建失败时,确认所述路径创建失败,并重新进行路径计算。
18.根据权利要求17所述基于DHT的控制网络实现系统,其特征在于,
所述网络控制器,还用于在接收到P2P路径创建响应消息后,若接收到为失败的P2P路径创建响应消息或者本地路径创建失败时,对本地已下发的转发流表进行回滚操作。
19.一种网络控制器,其特征在于,包括:路由控制协议模块、分布式处理模块、路由控制与下发模块和分布式路由协议模块,其中:
所述路由控制协议模块,用于负责网络控制器与交换机之间路由控制通道的建立以及网络控制器与交换机之间信息的交互;
所述分布式处理模块,用于根据所述路由控制与下发模块提供的路径信息生成P2P路径创建请求消息,提供给所述分布式路由协议模块进行转发;还用于根据所述路由控制与下发模块提供的本地路径创建结果生成P2P路径创建响应消息,提供给分布式路由协议模块进行转发;还用于接收所述分布式路由协议模块提供的P2P路径创建请求消息,并将其中携带的转发流表提供给所述路由控制与下发模块;还用于接收所述分布式路由协议模块提供的P2P路径创建响应消息,并根据所述路由控制与下发模块提供的本地路径创建结果对接收的P2P路径创建响应消息进行更新后,提供给所述分布式路由协议模块进行转发;还用于根据路由控制与下发模块提供的本地路径创建结果和所述分布式路由协议模块提供的P2P路径创建响应消息,确定路径是否创建成功;
路由控制与下发模块,用于在首节点网络控制器接收到路径创建请求时进行路径计算,得到路径信息,并提供给所述分布式处理模块;还用于将所述分布式处理模块提供的转发流表通过所述路由控制协议模块下发给对应的交换机,完成本地路径创建,并将本地路径创建结果提供给所述分布式处理模块;
所述分布式路由协议模块,用于沿路径转发或接收P2P路径创建请求消息;还用于相反路径转发或接收所述P2P路径创建响应消息;还用于将接收到的P2P路径创建请求消息或P2P路径创建响应消息提供给所述分布式处理模块。
20.根据权利要求19所述网络控制器,其特征在于,
所述分布式处理模块,还用于确定路径创建失败时,通知所述路由控制与下发模块执行转发流表回滚操作;
所述路由控制与下发模块,还用于通过所述路由控制协议模块,对下发的转发流表执行回滚操作。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210543591.8A CN103051539B (zh) | 2012-12-14 | 2012-12-14 | 一种基于dht的控制网络实现方法、系统和网络控制器 |
US14/650,765 US9479432B2 (en) | 2012-12-14 | 2013-09-27 | DHT-based control network implementation method and system, and network controller |
PCT/CN2013/084519 WO2014090020A1 (zh) | 2012-12-14 | 2013-09-27 | 一种基于dht的控制网络实现方法、系统和网络控制器 |
EP13861568.7A EP2933979B1 (en) | 2012-12-14 | 2013-09-27 | Dht-based control network implementation method and system, and network controller |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210543591.8A CN103051539B (zh) | 2012-12-14 | 2012-12-14 | 一种基于dht的控制网络实现方法、系统和网络控制器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103051539A true CN103051539A (zh) | 2013-04-17 |
CN103051539B CN103051539B (zh) | 2015-09-16 |
Family
ID=48064044
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210543591.8A Active CN103051539B (zh) | 2012-12-14 | 2012-12-14 | 一种基于dht的控制网络实现方法、系统和网络控制器 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9479432B2 (zh) |
EP (1) | EP2933979B1 (zh) |
CN (1) | CN103051539B (zh) |
WO (1) | WO2014090020A1 (zh) |
Cited By (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103346904A (zh) * | 2013-06-21 | 2013-10-09 | 西安交通大学 | 一种容错的OpenFlow 多控制器系统及其控制方法 |
CN103746911A (zh) * | 2014-01-20 | 2014-04-23 | 中国联合网络通信集团有限公司 | 一种sdn网络结构及其通信方法 |
WO2014090020A1 (zh) * | 2012-12-14 | 2014-06-19 | 中兴通讯股份有限公司 | 一种基于dht的控制网络实现方法、系统和网络控制器 |
CN104125191A (zh) * | 2013-04-23 | 2014-10-29 | 华为技术有限公司 | 基于以太网的点对点协议的处理方法、设备和系统 |
CN104202364A (zh) * | 2014-08-15 | 2014-12-10 | 杭州华三通信技术有限公司 | 一种控制器的自动发现和配置方法和设备 |
CN104253749A (zh) * | 2014-09-18 | 2014-12-31 | 华南理工大学 | 一种基于软件定义网络架构的用户端分布式路径计算方法 |
CN104283785A (zh) * | 2014-10-29 | 2015-01-14 | 杭州华三通信技术有限公司 | 一种快速处理流表的方法和装置 |
WO2015018323A1 (en) * | 2013-08-05 | 2015-02-12 | Huawei Technologies Co., Ltd. | Method for packet tunneling through software defined network, method of intelligently controlling flow of a packet through software defined network and system |
CN104754762A (zh) * | 2013-12-30 | 2015-07-01 | 中兴通讯股份有限公司 | 软件自定义网络中自动发现控制器的方法、控制器及系统 |
CN104753828A (zh) * | 2013-12-31 | 2015-07-01 | 华为技术有限公司 | 一种sdn控制器、数据中心系统和路由连接方法 |
WO2015101119A1 (zh) * | 2013-12-30 | 2015-07-09 | 华为技术有限公司 | 一种流表匹配的方法、装置和OpenFlow交换系统 |
WO2015106544A1 (zh) * | 2014-01-16 | 2015-07-23 | 中兴通讯股份有限公司 | 基于SDN实现报文转发的方法、系统、Openflow交换机及服务器 |
WO2015113297A1 (zh) * | 2014-01-29 | 2015-08-06 | 华为技术有限公司 | 数据传输方法、传输控制方法及设备 |
CN104869178A (zh) * | 2014-02-21 | 2015-08-26 | 中兴通讯股份有限公司 | Sdn-eps中ip地址分配方法、控制器及网关设备 |
CN104901836A (zh) * | 2015-06-18 | 2015-09-09 | 杭州华三通信技术有限公司 | 一种跨区域sdn控制器与转发设备的连接方法和装置 |
CN105577714A (zh) * | 2014-10-13 | 2016-05-11 | 中兴通讯股份有限公司 | 基于软件定义网络实现内容分发网络的方法及系统 |
WO2016107127A1 (zh) * | 2014-12-31 | 2016-07-07 | 华为技术有限公司 | Sdn中创建端口组的方法、sdn控制器及网络系统 |
CN105792284A (zh) * | 2014-12-22 | 2016-07-20 | 中国移动通信集团公司 | 一种网络控制方法、装置及系统 |
CN107453994A (zh) * | 2016-05-30 | 2017-12-08 | 北京信威通信技术股份有限公司 | 基于dht网络的数据传输方法及装置 |
TWI629885B (zh) * | 2017-03-24 | 2018-07-11 | 中華電信股份有限公司 | Software defined heterogeneous controller network environment high availability system and method thereof |
CN108306948A (zh) * | 2018-01-15 | 2018-07-20 | 新华三技术有限公司 | 调度方法及装置 |
CN109617776A (zh) * | 2018-12-20 | 2019-04-12 | 桂林电子科技大学 | 基于分布式散列表的软件定义网络控制器的方法及系统 |
CN111479334A (zh) * | 2020-03-20 | 2020-07-31 | 平安国际智慧城市科技股份有限公司 | 一种网络请求重试方法、装置及终端设备 |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160197831A1 (en) * | 2013-08-16 | 2016-07-07 | Interdigital Patent Holdings, Inc. | Method and apparatus for name resolution in software defined networking |
JP6462733B2 (ja) * | 2014-06-18 | 2019-01-30 | 華為技術有限公司Huawei Technologies Co.,Ltd. | サービスデータフローを制御する方法及び装置 |
CN105634959A (zh) * | 2014-10-31 | 2016-06-01 | 杭州华三通信技术有限公司 | 一种软件定义网络中的流表项分发方法和装置 |
US10021017B2 (en) * | 2015-03-18 | 2018-07-10 | Futurewei Technologies, Inc. | X channel to zone in zone routing |
CN105049231B (zh) * | 2015-06-19 | 2018-10-09 | 中国人民解放军信息工程大学 | 一种分层跨域的网络管理控制系统 |
JP6696252B2 (ja) * | 2016-03-24 | 2020-05-20 | 富士ゼロックス株式会社 | 通信プログラム、通信装置及び情報処理装置 |
WO2017220115A1 (en) | 2016-06-20 | 2017-12-28 | Rwe International Se | Software defined networking system |
CN108769078B (zh) * | 2018-07-06 | 2021-04-23 | 杭州安恒信息技术股份有限公司 | 一种基于p2p网络的敏感信息传播实时监测方法及系统 |
CN114338510B (zh) * | 2021-12-09 | 2023-07-07 | 北京华云安信息技术有限公司 | 控制和转发分离的数据转发方法和系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110261722A1 (en) * | 2009-09-14 | 2011-10-27 | Nec Corporation | Communication system, forwarding node, path management server, communication method, and program |
CN102714628A (zh) * | 2010-01-05 | 2012-10-03 | 日本电气株式会社 | 通信系统、控制装置、处理规则设置方法、分组传输方法和程序 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100583831C (zh) * | 2007-03-29 | 2010-01-20 | 华为技术有限公司 | 路径计算单元组网及信息获取方法及通讯系统及相关设备 |
JP2011203867A (ja) | 2010-03-24 | 2011-10-13 | Olympus Corp | 分散コントローラ、分散処理システム、及び、分散処理方法 |
EP2421225A1 (en) | 2010-08-20 | 2012-02-22 | Alcatel Lucent | Processing method, proxy processing agent, system and method for filling a routing table of a DHT client node, router and dht client node |
KR101215993B1 (ko) * | 2011-01-26 | 2012-12-28 | (주) 엠엠씨 테크놀로지 | 피어―투―피어 라이브 스트리밍을 위한 콘텐츠 분산 네트워크 |
CN102594689B (zh) * | 2012-02-22 | 2015-06-10 | 中兴通讯股份有限公司 | 一种分布式网络控制方法及装置 |
CN103051539B (zh) * | 2012-12-14 | 2015-09-16 | 中兴通讯股份有限公司 | 一种基于dht的控制网络实现方法、系统和网络控制器 |
-
2012
- 2012-12-14 CN CN201210543591.8A patent/CN103051539B/zh active Active
-
2013
- 2013-09-27 EP EP13861568.7A patent/EP2933979B1/en active Active
- 2013-09-27 WO PCT/CN2013/084519 patent/WO2014090020A1/zh active Application Filing
- 2013-09-27 US US14/650,765 patent/US9479432B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110261722A1 (en) * | 2009-09-14 | 2011-10-27 | Nec Corporation | Communication system, forwarding node, path management server, communication method, and program |
CN102498694A (zh) * | 2009-09-14 | 2012-06-13 | 日本电气株式会社 | 通信系统、转发节点、路径管理服务器、通信方法和程序 |
CN102714628A (zh) * | 2010-01-05 | 2012-10-03 | 日本电气株式会社 | 通信系统、控制装置、处理规则设置方法、分组传输方法和程序 |
Cited By (44)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014090020A1 (zh) * | 2012-12-14 | 2014-06-19 | 中兴通讯股份有限公司 | 一种基于dht的控制网络实现方法、系统和网络控制器 |
US9479432B2 (en) | 2012-12-14 | 2016-10-25 | Zte Corporation | DHT-based control network implementation method and system, and network controller |
CN104125191A (zh) * | 2013-04-23 | 2014-10-29 | 华为技术有限公司 | 基于以太网的点对点协议的处理方法、设备和系统 |
CN104125191B (zh) * | 2013-04-23 | 2017-09-26 | 华为技术有限公司 | 基于以太网的点对点协议的处理方法、设备和系统 |
CN103346904B (zh) * | 2013-06-21 | 2016-03-30 | 西安交通大学 | 一种容错的OpenFlow多控制器系统及其控制方法 |
CN103346904A (zh) * | 2013-06-21 | 2013-10-09 | 西安交通大学 | 一种容错的OpenFlow 多控制器系统及其控制方法 |
CN105409167B (zh) * | 2013-08-05 | 2019-04-12 | 华为技术有限公司 | 通过软件定义网络在隧道中传输报文的方法和系统 |
WO2015018323A1 (en) * | 2013-08-05 | 2015-02-12 | Huawei Technologies Co., Ltd. | Method for packet tunneling through software defined network, method of intelligently controlling flow of a packet through software defined network and system |
CN105409167A (zh) * | 2013-08-05 | 2016-03-16 | 华为技术有限公司 | 通过软件定义网络在隧道中传输报文的方法、通过软件定义网络智能控制报文流的方法和系统 |
US9887912B2 (en) | 2013-12-30 | 2018-02-06 | Huawei Technologies Co., Ltd. | Flow table matching method and apparatus, and openflow switching system |
CN104754762A (zh) * | 2013-12-30 | 2015-07-01 | 中兴通讯股份有限公司 | 软件自定义网络中自动发现控制器的方法、控制器及系统 |
WO2015101119A1 (zh) * | 2013-12-30 | 2015-07-09 | 华为技术有限公司 | 一种流表匹配的方法、装置和OpenFlow交换系统 |
US10454806B2 (en) | 2013-12-31 | 2019-10-22 | Huawei Technologies Co., Ltd. | SDN controller, data center system, and routing connection method |
CN104753828B (zh) * | 2013-12-31 | 2019-10-25 | 华为技术有限公司 | 一种sdn控制器、数据中心系统和路由连接方法 |
CN104753828A (zh) * | 2013-12-31 | 2015-07-01 | 华为技术有限公司 | 一种sdn控制器、数据中心系统和路由连接方法 |
WO2015101153A1 (zh) * | 2013-12-31 | 2015-07-09 | 华为技术有限公司 | 一种sdn控制器、数据中心系统和路由连接方法 |
RU2651149C2 (ru) * | 2013-12-31 | 2018-04-18 | Хуавей Текнолоджиз Ко., Лтд. | Sdn-контроллер, система центра обработки данных и способ маршрутизируемого соединения |
WO2015106544A1 (zh) * | 2014-01-16 | 2015-07-23 | 中兴通讯股份有限公司 | 基于SDN实现报文转发的方法、系统、Openflow交换机及服务器 |
CN103746911A (zh) * | 2014-01-20 | 2014-04-23 | 中国联合网络通信集团有限公司 | 一种sdn网络结构及其通信方法 |
CN103746911B (zh) * | 2014-01-20 | 2017-06-09 | 中国联合网络通信集团有限公司 | 一种sdn网络结构及其通信方法 |
US10548074B2 (en) | 2014-01-29 | 2020-01-28 | Huawei Technologies Co., Ltd. | Rule-based routing within a software-defined core network |
WO2015113297A1 (zh) * | 2014-01-29 | 2015-08-06 | 华为技术有限公司 | 数据传输方法、传输控制方法及设备 |
CN104869178A (zh) * | 2014-02-21 | 2015-08-26 | 中兴通讯股份有限公司 | Sdn-eps中ip地址分配方法、控制器及网关设备 |
CN104202364B (zh) * | 2014-08-15 | 2018-08-28 | 新华三技术有限公司 | 一种控制器的自动发现和配置方法和设备 |
CN104202364A (zh) * | 2014-08-15 | 2014-12-10 | 杭州华三通信技术有限公司 | 一种控制器的自动发现和配置方法和设备 |
CN104253749A (zh) * | 2014-09-18 | 2014-12-31 | 华南理工大学 | 一种基于软件定义网络架构的用户端分布式路径计算方法 |
US10999215B2 (en) | 2014-10-13 | 2021-05-04 | Zte Corporation | Software-defined network-based method and system for implementing content distribution network |
CN105577714A (zh) * | 2014-10-13 | 2016-05-11 | 中兴通讯股份有限公司 | 基于软件定义网络实现内容分发网络的方法及系统 |
CN105577714B (zh) * | 2014-10-13 | 2019-12-13 | 中兴通讯股份有限公司 | 基于软件定义网络实现内容分发网络的方法及系统 |
CN104283785B (zh) * | 2014-10-29 | 2018-11-27 | 新华三技术有限公司 | 一种快速处理流表的方法和装置 |
CN104283785A (zh) * | 2014-10-29 | 2015-01-14 | 杭州华三通信技术有限公司 | 一种快速处理流表的方法和装置 |
CN105792284A (zh) * | 2014-12-22 | 2016-07-20 | 中国移动通信集团公司 | 一种网络控制方法、装置及系统 |
CN105812269A (zh) * | 2014-12-31 | 2016-07-27 | 华为技术有限公司 | Sdn中创建端口组的方法、sdn控制器及网络系统 |
WO2016107127A1 (zh) * | 2014-12-31 | 2016-07-07 | 华为技术有限公司 | Sdn中创建端口组的方法、sdn控制器及网络系统 |
CN105812269B (zh) * | 2014-12-31 | 2019-04-23 | 华为技术有限公司 | Sdn中创建端口组的方法、sdn控制器及网络系统 |
US10348559B2 (en) | 2014-12-31 | 2019-07-09 | Huawei Technologies Co., Ltd. | Method for creating port group on SDN, SDN controller, and network system |
CN104901836B (zh) * | 2015-06-18 | 2019-01-25 | 新华三技术有限公司 | 一种跨区域sdn控制器与转发设备的连接方法和装置 |
CN104901836A (zh) * | 2015-06-18 | 2015-09-09 | 杭州华三通信技术有限公司 | 一种跨区域sdn控制器与转发设备的连接方法和装置 |
CN107453994A (zh) * | 2016-05-30 | 2017-12-08 | 北京信威通信技术股份有限公司 | 基于dht网络的数据传输方法及装置 |
TWI629885B (zh) * | 2017-03-24 | 2018-07-11 | 中華電信股份有限公司 | Software defined heterogeneous controller network environment high availability system and method thereof |
CN108306948A (zh) * | 2018-01-15 | 2018-07-20 | 新华三技术有限公司 | 调度方法及装置 |
CN109617776A (zh) * | 2018-12-20 | 2019-04-12 | 桂林电子科技大学 | 基于分布式散列表的软件定义网络控制器的方法及系统 |
CN111479334A (zh) * | 2020-03-20 | 2020-07-31 | 平安国际智慧城市科技股份有限公司 | 一种网络请求重试方法、装置及终端设备 |
CN111479334B (zh) * | 2020-03-20 | 2023-08-11 | 深圳赛安特技术服务有限公司 | 一种网络请求重试方法、装置及终端设备 |
Also Published As
Publication number | Publication date |
---|---|
US9479432B2 (en) | 2016-10-25 |
WO2014090020A1 (zh) | 2014-06-19 |
EP2933979B1 (en) | 2019-01-16 |
US20150372905A1 (en) | 2015-12-24 |
EP2933979A4 (en) | 2015-12-30 |
EP2933979A1 (en) | 2015-10-21 |
CN103051539B (zh) | 2015-09-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103051539B (zh) | 一种基于dht的控制网络实现方法、系统和网络控制器 | |
JP6369698B2 (ja) | トラフィック切り替え方法、デバイス、およびシステム | |
CN102594689B (zh) | 一种分布式网络控制方法及装置 | |
CN1783841B (zh) | 软路由器协议分散 | |
US11637755B2 (en) | SDN network system, controller, and controlling method | |
US8830820B2 (en) | Semi-centralized routing | |
CN105553849A (zh) | 一种传统ip网络与sptn网络互通方法与系统 | |
CN106416132A (zh) | 使用控制器处的交换机建模接口控制网络交换机的系统和方法 | |
JP2015201891A (ja) | 通信システム、制御装置、ノードの制御方法 | |
CN103001887A (zh) | 一种链路保活方法、控制器及交换机 | |
CN103595626A (zh) | 一种环形网络中实现动态路径规划的方法 | |
WO2013102253A1 (en) | System and method for providing p2p based reconfigurable computing and structured data distribution | |
JP5854047B2 (ja) | 通信システム、制御装置、転送ノード、通信制御方法およびプログラム | |
JP5943431B2 (ja) | ネットワーク、データ転送ノード、通信方法およびプログラム | |
CN103119400B (zh) | 用于跨ip网络连接的串行数据链路会话的状态同步的方法和设备 | |
CN106470155A (zh) | 一种虚拟机数据的转发方法、sdn控制器和sdn系统 | |
CN109428766A (zh) | 交换机自动部署的软件定义网络系统及其方法 | |
CN106209615A (zh) | 一种基于spfa算法计算转发路径的动态路由控制方法 | |
CN103490951A (zh) | 基于bfd的多跳链路中双向转发检测方法 | |
CN105516025A (zh) | 端到端的路径控制和数据传输方法、OpenFlow控制器和交换机 | |
CN103685017B (zh) | 堆叠系统中报文转发方法、堆叠设备及堆叠系统 | |
CN105049367A (zh) | 一种聚合链路的流量分配方法和接入设备 | |
CN1996880A (zh) | 自适应管理网络设备的方法和网络设备 | |
US20200213878A1 (en) | Method and apparatus for controlling network sensors | |
CN104221337A (zh) | 通信系统、控制装置、通信装置、信息中继方法和程序 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |