CN109525516B - 通过DHCP通告OpenFlow控制器信息的方法和系统 - Google Patents
通过DHCP通告OpenFlow控制器信息的方法和系统 Download PDFInfo
- Publication number
- CN109525516B CN109525516B CN201811366686.0A CN201811366686A CN109525516B CN 109525516 B CN109525516 B CN 109525516B CN 201811366686 A CN201811366686 A CN 201811366686A CN 109525516 B CN109525516 B CN 109525516B
- Authority
- CN
- China
- Prior art keywords
- dhcp
- controller
- message
- protocol
- openflow
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/10—Packet switching elements characterised by the switching fabric construction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/30—Peripheral units, e.g. input or output ports
- H04L49/3009—Header conversion, routing tables or routing tags
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/45—Arrangements for providing or supporting expansion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5007—Internet protocol [IP] addresses
- H04L61/5014—Internet protocol [IP] addresses using dynamic host configuration protocol [DHCP] or bootstrap protocol [BOOTP]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种通过DHCP通告OpenFlow控制器信息的方法,主要通过扩展DHCP的option字段,扩展字段至少用于承载控制器信息;OpenFlow交换机与DHCP服务器进行报文交互时,通过获取DHCP扩展字段携带的控制器信息,进行配置连接。相应地,本发明也提出了一种通过DHCP通告OpenFlow控制器信息的系统。采用本发明公开的技术方案可简化OpenFlow交换机配置控制器信息的过程,提高连接控制器的速度和效率。
Description
技术领域
本发明涉及OpenFlow交换机配置方法,特别涉及一种通过DHCP通告OpenFlow控制器信息的方法和系统,属于网络通信技术领域。
背景技术
在OpenFlow交换机的工作过程中,用于转发的流表和组表,以及用来限速的Meter都是通过控制器下发的,因此尽快地连接控制器则非常重要。如果要连接控制器,交换机需要知悉控制器的IP、监听的端口号,最好还包括控制器支持的OpenFlow协议版本号(目前发布的OpenFlow协议的主版本号包括1.0/1.1/1.2/1.3/1.4/1.5)。
现有技术中常用的一种控制器连接方式为:通过各种配置方法,例如命令行/Web界面/Netconf/OVSDB等,对交换机进行控制器信息的配置。而此种连接方式则要求交换机必须支持相应的配置方法。
还有一种连接方式为:通过ZTP方法,将自动化脚本(例如python脚本)下载到交换机上并执行,从而下发和控制器相关的配置。而此种连接方式则需要配合TFTP等服务一起,过程较为复杂。
因此,如上所述的现有技术中的控制器连接方式或者配置过程繁琐复杂,或者对交换机有诸多限制条件,而如何简化交换机连接控制器的配置过程,则是提高交换机工作效率的一个重要环节,亟待寻求更优化的解决方式。
发明内容
针对现有技术的不足,本发明的目的在于提供一种通过DHCP通告OpenFlow控制器信息的方法和系统,用于简化交换机配置控制器的过程,缩短连接控制器前的等待时间。
为实现前述发明目的,本发明提出一种通过DHCP通告OpenFlow控制器信息的方法,包括:
扩展DHCP的option字段,扩展字段至少用于承载控制器信息;
OpenFlow交换机与DHCP服务器进行报文交互时,通过获取DHCP扩展字段携带的控制器信息,进行控制器的配置与连接;
其中,所述扩展字段包含的控制器数量为一个或多个。
优选地,所述控制器的相关信息包括控制器的IP、端口号、连接方式和协议信息。
优选地,所述方法具体包括:
OpenFlow交换机向DHCP服务器发送包含扩展字段的DHCP DISCOVER报文;
DHCP服务器接收到所述DHCP DISCOVER报文后,在回复的DHCP OFFER报文中,向所述扩展字段写入控制器信息;
OpenFlow交换机接收到所述DHCP OFFER报文后,根据报文携带的协议信息,判断与本机支持的协议是否兼容,如果兼容,配置并发起与控制器的连接;否则,忽略当前控制器信息。
优选地,所述扩展字段中的IP字段大小为4字节,用于支持IPv4。
优选地,所述扩展字段中的IP字段大小为16字节,用于支持IPv6。
优选地,所述协议信息为OpenFlow协议版本号。
优选地,扩展字段中采用bitmap的计数方法存储OpenFlow协议版本号。
优选地,从存储协议信息字段的最低比特位开始,每一位对应一个协议主版本号,值为1表示支持该协议版本,值为0表示不支持该协议版本。
相应地,本发明还提供了一种通过DHCP通告OpenFlow控制器信息的系统,所述系统包括:
报文交互模块,至少用于管理OpenFlow交换机与DHCP服务器的报文交互操作,交互的DHCP报文中包含自定义的扩展字段,所述扩展字段至少用于承载控制器信息;
协议解析模块,至少用于获取DHCP报文携带的控制器信息并进行解析,以确认是否需要进行控制器连接配置;
配置管理模块,至少用于根据协议解析模块的确认结果,配置并发起与控制器的连接。
优选地,所述控制器信息包括控制器的IP、端口号、连接方式和协议信息。
与现有技术相比,本发明的优点包括:通过扩展一种新定义的DHCP option,在交换机通过DHCP获取网络信息的同时并获取到了控制器的信息,从而简化了OpenFlow交换机配置控制器的过程,并提高了连接控制器的速度。
附图说明
图1a是本发明一典型实施案例提出的一种可支持IPv4地址的DHCP option扩展字段的报文结构示意图;
图1b是本发明一典型实施案例提出的一种可支持IPv6地址的DHCP option扩展字段的报文结构示意图;
图2是现有技术中DHCP的报文交互过程示意图;
图3是现有技术中DHCP DISCOVER报文片段示意图;
图4是本发明一典型实施例提出的一种通过DHCP通告OpenFlow控制器信息的系统结构框图。
具体实施方式
鉴于现有技术中的不足,本案发明人经长期研究和大量实践,得以提出本发明的技术方案。如下将对该技术方案、其实施过程及原理等作进一步的解释说明。
本发明实施例通过扩展一种新定义的DHCP option,在交换机通过DHCP获取网络信息(IP、网关等)的同时就获取到了控制器的信息,从而进行控制器信息的相关配置与连接。其方法包括:
扩展DHCP的option字段,所述扩展字段至少用于承载控制器的IP、端口号、协议信息和连接方式等信息,且扩展字段中包含的控制器的数量可以为一个或多个。
OpenFlow交换机与DHCP服务器进行报文交互时,通过获取DHCP扩展字段携带的控制器信息,进行与控制器的配置和连接。
OpenFlow交换机与DHCP服务器进行报文交互,获取控制器信息的具体过程包括:
OpenFlow交换机向DHCP服务器发送包含扩展字段的DHCP DISCOVER报文;
DHCP服务器接收到所述DHCP DISCOVER报文后,在回复的DHCP OFFER报文中,向所述扩展字段写入控制器信息;
OpenFlow交换机接收到所述DHCP OFFER报文后,根据报文携带的协议信息,判断与本机支持的协议是否兼容,如果兼容,配置并发起与控制器的连接;否则,忽略当前控制器信息。
作为本实施例的一种较佳实施方式,报文携带的协议信息为OpenFlow协议版本号,根据报文中版本号信息与本机支持的协议版本号进行匹配,判断当前控制器与本机支持的协议是否兼容。
DHCP option按照现有定义,最多只能有255种,且大部分已经被占用。目前尚有224-254留作private use保留字段,本发明实施例使用type=224的option,对报文进行自定义扩展,如图1a或1b所示,其中:
(1)Type=224;
(2)Len=n*,数值位,其中n为控制器的个数;
(3)V字段表示控制器IP的版本,用于表征option中携带的是IPv4地址或是IPv6地址。本实施例中V=0b00表示支持IPv4地址,V=0b01表示支持IPv6地址。
(4)supported_openflow_spec占12bit,具体为支持的OpenFlow协议版本号。作为一种较佳实施方式,版本号采用bitmap的计数方法进行表示,从该字段的最低位起依次定义每个比特位对应的版本号,值为1表示支持当前协议版本,值为0表示不支持当前协议版本。
目前OpenFlow定义到1.5版本,则从版本1.0~1.5,依次定义如下:
0b0000 0000 0001->spec 1.0
0b0000 0000 0010->spec 1.1
0b0000 0000 0100->spec 1.2
0b0000 0000 1000->spec 1.3
0b0000 0001 0000->spec 1.4
0b0000 0010 0000->spec 1.5
1.5版本按序对应第六位,后续如果有新定义的版本,则依序顺延使用其余的比特位进行表示。
基于上述定义,例如某控制器只支持1.0和1.3,那么该字段的低第一位和低第四位是1,其它位是0,那么0b0000 0000 1001,转换成十六进制数就是0x9。
(5)CT,即Controller1 Connection Type占2bit,用于表示交换机与控制器的连接方式,本实施例中定义0b00为TCP连接,0b01为TLS/SSL连接,0b10和0b11保留;
(6)Controller1_IPv4占4bytes,用于存储控制器的IPv4地址;Controller1_IPv6占16bytes,用于存储控制器的IPv6地址。
如果控制器地址是IPv4,那么表征一个控制器的信息至少需要64bit=8bytes,其报文结构参阅图1a,此时V字段值为00;如果控制器地址是IPv6,那么表征一个控制器的信息至少需要160bit=20bytes,其报文结构参阅图1b,此时V字段值为01。
通过V来表征IP地址区分,从而实现option中既可携带IPv4地址的控制器信息,也可携带IPv6地址的控制器信息。
(7)Controller1_Port占2bytes,用于存储控制器的端口号。
图2是现有技术中常规应用场景下DHCP报文交互过程示意图,在本发明实施例中,仍采用现有技术中的DHCP报文的交互方式,但是在对报文内容的处理上,本发明实施例可以包括:
OpenFlow交换机上电后,向DHCP服务器发出DHCP DISCOVER报文;
图3是现有技术中DHCP DISCOVER报文片段示意图,其中option55作为参数请求列表,可携带多种网络配置相关字段信息。因此,option224可包含于option55字段中随着DHCP DISCOVER报文发送至DHCP Server。
DHCP Server收到上述携带option224字段的DISCOVER报文后,在回复DHCP OFFER报文之前,将控制器信息编辑到报文的扩展字段内容中,然后返回DHCP OFFER报文。
OpenFlow交换机收到携带控制器信息的DHCP OFFER报文后,除了根据报文中其它option的信息进行相应的网络配置外,还会根据option224提供的控制器信息,判断控制器信息中支持spec版本的信息是否和自己支持的版本信息兼容。如果不兼容,忽视。如果兼容,根据option224字段中携带的数据内容完成配置,开始发起与控制器的连接。
由于option是可变长变量,因此,扩展字段的option中可以包含一个或多个控制器的信息。并且,在一些较为具体的实施方案中,基于以下条件进行实施:
(1)DHCP服务器知晓相关的控制器信息;
(2)DHCP服务器和OpenFlow交换机都支持扩展自定义的DHCP option。
相应地,本发明一典型实施例还公开了一种通过DHCP通告OpenFlow控制器信息的系统,如图4所示,所述系统至少包括:
报文交互模块,至少用于管理OpenFlow交换机与DHCP服务器的报文交互操作,交互的DHCP报文中包含自定义的扩展字段,所述扩展字段至少用于承载控制器信息;所述控制器信息包括控制器的IP、端口号、协议信息和交换机与控制器的连接方式。
协议解析模块,至少用于获取DHCP报文携带的控制器信息并进行解析,以确认是否需要进行控制器连接配置;
配置管理模块,至少用于根据协议解析模块的确认结果,配置并发起OpenFlow交换机与控制器的连接。
其中,OpenFlow交换机与DHCP服务器的报文交互操作的具体过程包括:OpenFlow交换机向DHCP服务器发送包含扩展字段的DHCP DISCOVER报文;DHCP服务器接收到所述DHCP DISCOVER报文后,在回复的DHCP OFFER报文中,向所述扩展字段写入控制器信息。
OpenFlow交换机接收到所述DHCP OFFER报文后,协议解析模块根据报文携带的协议信息,判断与本机支持的协议是否兼容,如果兼容,通知并下发控制器信息给配置管理块;否则,忽略当前控制器信息。
配置管理模块接收到协议解析模块下发的信息后,配置并发起与控制器的连接。
上述实施例中所公开的通过DHCP通告OpenFlow控制器信息的方法或系统通过扩展DHCP报文的option字段,实现了OpenFlow交换机通过DHCP报文获取控制器信息的便捷方式,极大地简化了交换机配置控制器的过程,同时也缩短了连接控制器之前的等待时间,从而提高了连接控制器的速度。
应当理解,上述实施例仅为说明本发明的技术构思及特点,其目的在于让熟悉此项技术的人士能够了解本发明的内容并据以实施,并不能以此限制本发明的保护范围。凡根据本发明精神实质所作的等效变化或修饰,都应涵盖在本发明的保护范围之内。
Claims (7)
1.一种通过DHCP通告OpenFlow控制器信息的方法,其特征在于包括:
扩展DHCP的option字段,扩展字段至少用于承载控制器信息;
OpenFlow交换机与DHCP服务器进行报文交互时,通过获取DHCP扩展字段携带的控制器信息,进行控制器的配置与连接;
其中,所述扩展字段包含的控制器数量为一个或多个;所述控制器信息包括控制器的IP、端口号、连接方式和协议信息;
所述方法具体包括:
OpenFlow交换机向DHCP服务器发送包含扩展字段的DHCP DISCOVER报文;
DHCP服务器接收到所述DHCP DISCOVER报文后,在回复的DHCP OFFER报文中,向所述扩展字段写入控制器信息;
OpenFlow交换机接收到所述DHCP OFFER报文后,根据报文携带的协议信息,判断与本机支持的协议是否兼容,如果兼容,配置控制器信息并发起与控制器的连接;否则,忽略当前控制器信息。
2.根据权利要求1所述的通过DHCP通告OpenFlow控制器信息的方法,其特征在于:所述扩展字段中的IP字段大小为4字节,用于支持IPv4。
3.根据权利要求1所述的通过DHCP通告OpenFlow控制器信息的方法,其特征在于:所述扩展字段中的IP字段大小为16字节,用于支持IPv6。
4.根据权利要求1所述的通过DHCP通告OpenFlow控制器信息的方法,其特征在于:所述协议信息为OpenFlow协议版本号。
5.根据权利要求4所述的通过DHCP通告OpenFlow控制器信息的方法,其特征在于:所述扩展字段中采用bitmap的计数方法存储OpenFlow协议版本号。
6.根据权利要求5所述的通过DHCP通告OpenFlow控制器信息的方法,其特征在于:从存储协议信息字段的最低比特位开始,依次定义支持的协议主版本号,值为1表示支持该协议版本,值为0表示不支持该协议版本。
7.一种通过DHCP通告OpenFlow控制器信息的系统,其特征在于,所述系统包括:
报文交互模块,至少用于管理OpenFlow交换机与DHCP服务器的报文交互操作,交互的DHCP报文中包含自定义的扩展字段,所述扩展字段至少用于承载控制器信息,且包含的控制器的数量为一个或多个;
协议解析模块,至少用于获取DHCP报文携带的控制器信息并进行解析,以确认是否需要进行控制器连接配置;
配置管理模块,至少用于根据协议解析模块的确认结果,配置并发起OpenFlow交换机与控制器的连接;
其中,所述控制器信息包括控制器的IP、端口号、连接方式和协议信息;所述报文交互操作的过程至少包括:
OpenFlow交换机向DHCP服务器发送包含扩展字段的DHCP DISCOVER报文;DHCP服务器接收到所述DHCP DISCOVER报文后,在回复的DHCP OFFER报文中,向所述扩展字段写入控制器信息;
OpenFlow交换机接收到所述DHCP OFFER报文后,协议解析模块根据报文携带的协议信息,判断与本机支持的协议是否兼容,如果兼容,通知并下发控制器信息给配置管理块;否则,忽略当前控制器信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811366686.0A CN109525516B (zh) | 2018-11-16 | 2018-11-16 | 通过DHCP通告OpenFlow控制器信息的方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811366686.0A CN109525516B (zh) | 2018-11-16 | 2018-11-16 | 通过DHCP通告OpenFlow控制器信息的方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109525516A CN109525516A (zh) | 2019-03-26 |
CN109525516B true CN109525516B (zh) | 2021-05-11 |
Family
ID=65778022
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811366686.0A Active CN109525516B (zh) | 2018-11-16 | 2018-11-16 | 通过DHCP通告OpenFlow控制器信息的方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109525516B (zh) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107968754A (zh) * | 2016-10-19 | 2018-04-27 | 中兴通讯股份有限公司 | 流表下发方法、接收方法、控制器、交换机及转发系统 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100474960C (zh) * | 2006-06-20 | 2009-04-01 | 华为技术有限公司 | 移动通信网络中维护通道的建立方法及基站节点 |
CN101483648B (zh) * | 2009-02-20 | 2012-07-11 | 杭州华三通信技术有限公司 | Dns缓存探测的方法、系统、装置和dns服务器 |
US8819191B2 (en) * | 2011-07-12 | 2014-08-26 | Cisco Technology, Inc. | Efficient use of dynamic host configuration protocol in low power and lossy networks |
JP5867940B2 (ja) * | 2012-03-14 | 2016-02-24 | ▲ホア▼▲ウェイ▼技術有限公司 | 接続確立要求を送信するための方法、スイッチ、サーバ、およびシステム |
CN104158916A (zh) * | 2013-05-13 | 2014-11-19 | 中兴通讯股份有限公司 | 设备接入网络的方法和装置 |
CN104901825B (zh) * | 2014-03-05 | 2019-02-19 | 新华三技术有限公司 | 一种实现零配置启动的方法和装置 |
US10159018B2 (en) * | 2015-08-21 | 2018-12-18 | Korea University Research And Business Foundation | Data processing method for accommodating legacy network service in 4G or next generation network |
CN107295113B (zh) * | 2016-03-31 | 2020-08-25 | 华为技术有限公司 | 一种网络配置的方法、交换机和服务器 |
US20180167282A1 (en) * | 2016-12-09 | 2018-06-14 | NoFutzNetworks Inc. | Address Assignment by Port Enumeration in a Software-Defined Network |
CN106656846B (zh) * | 2017-01-17 | 2019-07-16 | 大连理工大学 | 一种sdn体系架构中协调层的构建方法 |
CN108259213B (zh) * | 2017-05-26 | 2020-05-12 | 新华三技术有限公司 | Netconf会话状态检测方法和装置 |
-
2018
- 2018-11-16 CN CN201811366686.0A patent/CN109525516B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107968754A (zh) * | 2016-10-19 | 2018-04-27 | 中兴通讯股份有限公司 | 流表下发方法、接收方法、控制器、交换机及转发系统 |
Also Published As
Publication number | Publication date |
---|---|
CN109525516A (zh) | 2019-03-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3313025B1 (en) | Data packet forwarding | |
CN103259726B (zh) | 存储和发送mac地址表项的方法、设备及系统 | |
US10389825B2 (en) | Network device identification in an industrial control network | |
CN101577722B (zh) | 实现强制mac转发功能的方法和装置 | |
US20040246961A1 (en) | Method and apparatus for transmitting wake-up packets over a network data processing system | |
CN105227466B (zh) | 通信处理方法和装置 | |
US11606332B1 (en) | Duplicate address detection for ranges of global IP addresses | |
CN103560957A (zh) | 查表键值构造方法、微码下发方法、装置及系统 | |
CN113347258B (zh) | 云流量下的数据采集监控分析的方法及系统 | |
CN105207909B (zh) | 一种发送信息的方法和网络装置 | |
CN102035899A (zh) | 基于IPv6的局域网内的地址确定方法与装置 | |
CN110430116A (zh) | 数据转发方法及装置、边缘设备及可读存储介质 | |
EP2822238A1 (en) | Method and device for establishing a pseudo wire | |
CN107070719B (zh) | 一种设备管理方法和装置 | |
EP3675465A1 (en) | Faster duplicate address detection for ranges of link local addresses | |
CN109525516B (zh) | 通过DHCP通告OpenFlow控制器信息的方法和系统 | |
JP2023517248A (ja) | ルート決定方法及び装置並びにネットワーク・デバイス | |
CN108881178B (zh) | 信息发送方法及装置,设备,存储介质和电子装置 | |
CN110535747A (zh) | 报文处理设备和方法 | |
CN115685971A (zh) | 一种车辆诊断方法及相关装置 | |
CN115190087A (zh) | 基于二层中间设备的数据传输方法、装置、设备和介质 | |
CN107317740A (zh) | 一种数据报文的处理方法及装置 | |
CN104468202B (zh) | 一种用户端设备的管理方法及装置 | |
WO2022132208A1 (en) | Performance measurement in a segment routing network | |
CN115428415A (zh) | 使用可变长度地址在分层网络架构中转发报文的系统和方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP03 | Change of name, title or address | ||
CP03 | Change of name, title or address |
Address after: 215000 unit 13 / 16, 4th floor, building B, No.5 Xinghan street, Suzhou Industrial Park, Jiangsu Province Patentee after: Suzhou Shengke Communication Co.,Ltd. Address before: Unit 13 / 16, floor 4, building B, No. 5, Xinghan street, Suzhou Industrial Park, Suzhou, Jiangsu Province, 215000 Patentee before: CENTEC NETWORKS (SU ZHOU) Co.,Ltd. |