一种基于虚拟域的软件定义网络转发控制方法技术

技术编号:18662505 阅读:39 留言:0更新日期:2018-08-11 16:23
本发明专利技术公开了一种基于虚拟域的软件定义网络转发控制方法,属于网络交换与路由技术领域。首先建立通信场景,对视频数据构建虚拟域,标识数据流和控制流,设计UDP数据包得到控制流的控制信令;然后把table_miss流表条目写入到SDN交换机中,第一条ARP寻址包信令与table_miss无法匹配,触发Packet‑in消息发送到SDN控制器;SDN控制器回复Packet Out消息,同时下发初始流表条目给SDN交换机;第二个及之后的ARP寻址包信令与SDN交换机中的流表条目进行匹配,进行SDN交换机或SDN控制器回复消息,发往不同UDP数据包的控制信令,SDN交换机处理并确定交换机输出或者经过网络切换输出。本发明专利技术实现了转控分离设计,增加了网络透明性,大大的降低终端用户的应用开发开销,同时大大的提高了网络健壮性。

A software defined network forwarding control method based on virtual domain

The invention discloses a software-defined network forwarding control method based on virtual domain, belonging to the technical field of network switching and routing. Firstly, a communication scenario is built to identify the data flow and control flow, and UDP packets are designed to get the control signal of the control flow. Then the table_miss stream table entry is written into the SDN switch. The first ARP addressing packet signaling does not match the table_miss, triggering the Packet_in message to send to the SDN controller. The second and subsequent ARP addressing packet signaling matches the stream table entry in the SDN switch, performs SDN switch or SDN controller reply messages, sends control signaling to different UDP packets, and the SDN switch processes and determines the exchange. Output or switch output through the network. The invention realizes the separation design of control and rotation, increases the network transparency, greatly reduces the application development overhead of end users, and greatly improves the network robustness.

【技术实现步骤摘要】
一种基于虚拟域的软件定义网络转发控制方法
本专利技术属于网络交换与路由
,涉及软件定义网络OpenFlow流表转发方法的研究,具体是指一种基于虚拟域的软件定义网络转发控制方法。
技术介绍
随着互联网技术的不断发展和完善,各式各样的网络互联设备层出不穷,网络组成变得越来越复杂,管理如此庞大的网络变得越来越困难。为满足未来网络的智能、灵活、便捷等发展需求,人们希望通过一种软件的、集中管理方式对网络进行统一的管控,软件定义网络(SDN)的概念由此而来。OpenFlow协议是软件定义网络架构中第一个控制器与交换机之间的通信协议。以OpenFlow协议为基础的软件定义网络是控制器通过流表的方式对网络交换与路由进行控制。利用OpenFlow协议,控制器可以主动或被动地增加、更新和删除流表中的流表条目;SDN交换机根据流表条目进行网络数据转发。在传统网络架构下做网络编程应用开发,存在如下不足:其一,由于传统网络交换与路由侧功能单一且扩展性差,应用开发人员在开发终端网络应用时,不仅要进行终端功能的设计实现,而且要进行网络侧的部分功能设计,这给终端网络应用开发者提出了更高的知识要求;其二,由于当前网络应用开发者想要实现一些特定的网络转发功能时,需要了解真实的网络信息,进行点对点的传输,然而网络的状态可能在不断变化和更新,网络应用也要随着网络变化进行相应的适配工作,这样的做法使网络失去了透明性。
技术实现思路
本专利技术采用软件定义网络的方式,明确网络分工,在网络侧编程应用软件,通过控制器进行网络侧功能设计,把网络侧的功能集中在网络侧实现,终端网络应用开发者只需要专注于终端的功能实现,不需要关注网络侧复杂的网络问题。利用虚拟域,网络终端只需要知晓简单的虚拟域值,而不需要知道复杂多变的真实网络信息,以此屏蔽了底层真实的网络信息,增加了网络透明性,节省了应用开发开销;具体是一种基于虚拟域的软件定义网络转发控制方法。具体步骤如下:步骤一、建立包括SDN交换机、SDN控制器、无线基站服务器和数据收、发终端设备的通信场景,每个设备具有唯一有效的网络标识信息。网络标识信息由每个设备自己的真实IP地址,MAC地址以及UDP端口等组成。步骤二、针对某个待传输的视频数据,构建虚拟域,利用虚拟IP地址、虚拟MAC地址和虚拟UDP端口标识数据流和控制流;数据流标识设为虚拟IP1地址、虚拟MAC1地址和虚拟UDP1端口;控制流标识设为虚拟IP2地址、虚拟MAC2地址和虚拟UDP2端口;数据流标识构建如下:针对待传输的视频数据,经过无线网络传送给数据接收终端设备时,中间需要经过多种网络设备进行转发,利用虚拟域屏蔽中间无线网络设备的网络信息差异,把所有中间无线网络设备的IP地址、MAC地址、UDP端口等信息统一用虚拟IP1地址、虚拟MAC1地址和虚拟UDP1端口标识。如此,视频数据流只需要发往确定的目的地址虚拟IP1即可,实际网络设备的选择由SDN控制器决定。控制流标识构建如下:与数据流标识信息类型一致,将携带控制信息的目的地址设为:虚拟IP2地址、虚拟MAC2地址和虚拟UDP2端口标识。步骤三、根据虚拟域,对UDP数据包的头部和数据内容分别设计,得到控制流的控制信令;UDP数据包的头部携带虚拟IP2地址的字段信息,同时UDP数据包数据包负载为任意值。步骤四、SDN交换机和SDN控制器建立连接,SDN控制器把table_miss流表条目写入到SDN交换机中;首先,当SDN交换机和SDN控制器建立连接,SDN交换机被SDN控制器抽象为Datapath对象,然后,SDN交换机发送异步SwitchFeatures消息,SDN控制器调用SwitchFeatures事件处理器处理,将table_miss流表条目写入到SDN交换机中;SwitchFeatures事件处理器的作用是新建一个table0流表,流表中添加进一个table_miss流表条目,流表条目优先级为0,匹配域为缺省,动作为把接收到的数据包作为Packet-in消息负载转发到SDN控制器。步骤五、数据发送终端设备发出第一条ARP寻址包信令,与SDN交换机中的流表条目table_miss匹配,table_miss流表项触发OpenFlow中Packet-in消息,发送到SDN控制器;Packet-in消息中包含虚拟IP的ARP寻址包消息作为负载信息。步骤六、SDN控制器回复PacketOut消息,同时下发业务定制的初始流表条目给SDN交换机;SDN控制器甄别控制流和数据流的虚拟IP值并对不同的ARP消息析构并逆向修改,最终利用PacketOut消息回复;业务定制的初始流表匹配域包含虚拟IP信息,共两套,每套分别有四个;第一套流表条目如下:a、匹配域为进端口为视频源服务器连接的交换机端口、目的IP地址是虚拟IP1,目的MAC地址是虚拟MAC1,协议类型是ARP数据包;优先级为4;动作是把ARP数据包作为Packet-in消息的负载利用Packet-in消息发送到SDN控制器。优先级为4是指大于0并且小于65535;b、匹配域为进端口为视频源服务器连接的交换机端口、目的IP地址是虚拟IP2,目的MAC地址是虚拟MAC2,协议类型是ARP数据包;优先级为4;动作是把ARP数据包作为Packet-in消息的负载利用Packet-in消息发送到SDN控制器。c、匹配域为进端口为视频源服务器连接的交换机端口、目的IP地址是虚拟IP1,源IP地址是视频源真实IP;目的UDP端口是虚拟UDP端口PORT1;优先级为65535;协议类型是UDP数据包,动作是利用OpenFlow中Set-Field命令把UDP数据包的数据包头对应字段做修改,IP1修改为LTE/WiFi基站服务器真实IP,MAC1修改为LTE/WiFi基站服务器真实MAC,PORT1修改为LTE/WiFiE基站服务器真实UDP端口,并且输出到LTELTE/WiFi基站服务器连接的交换机端口。d、匹配域为进端口为视频源服务器连接的交换机端口、目的IP地址是虚拟IP2,源IP地址是视频源真实IP;目的UDP端口是虚拟UDP端口PORT2;优先级为65535;协议类型是UDP数据包,动作是把UDP数据包作为Packet-in消息的负载利用Packet-in消息发送到控制器。第二套流表条目如下:e、匹配域为进端口为视频源服务器连接的交换机端口、目的IP地址是虚拟IP1,目的MAC地址是虚拟MAC1,协议类型是ARP数据包;优先级为4;动作是利用OpenFlow中Set-Field命令把ARP数据包的数据包头对应字段做逆向修改,虚拟IP1修改为源IP,目的MAC修改为源MAC,源IP修改为虚拟IP1,源MAC修改为虚拟MAC1,网络类型修改为RARP,并且输出ARP数据包进入的交换机端口。f、匹配域为进端口为视频源服务器连接的交换机端口、目的IP地址是虚拟IP2,目的MAC地址是虚拟MAC2,协议类型是ARP数据包;优先级为4;动作是利用OpenFlow中Set-Field命令把ARP数据包的数据包头对应字段做逆向修改,虚拟IP2修改为源IP,目的MAC修改为源MAC,源IP修改为虚拟IP2,源MAC修改为虚拟MAC2,网络类型修改为RARP,并且输出本文档来自技高网...

【技术保护点】
1.一种基于虚拟域的软件定义网络转发控制方法,其特征在于,具体步骤如下:步骤一、建立包括SDN交换机、SDN控制器、无线基站服务器和数据收、发终端设备的通信场景,每个设备具有唯一有效的网络标识信息;步骤二、针对某个待传输的视频数据,构建虚拟域,利用虚拟IP地址、虚拟MAC地址和虚拟UDP端口标识数据流和控制流;步骤三、根据虚拟域,对UDP数据包的头部和数据内容分别设计,得到控制流的控制信令;UDP数据包的头部携带虚拟IP2地址的字段信息,同时UDP数据包数据包负载为任意值;步骤四、SDN交换机和SDN控制器建立连接,SDN控制器把table_miss流表条目写入到SDN交换机中;步骤五、数据发送终端设备发出第一条ARP寻址包信令,与SDN交换机中的流表条目table_miss匹配,table_miss流表项触发OpenFlow中Packet‑in消息,发送到SDN控制器;Packet‑in消息中包含虚拟IP的ARP寻址包消息作为负载信息;步骤六、SDN控制器回复Packet Out消息,同时下发业务定制的初始流表条目给SDN交换机;SDN控制器甄别控制流和数据流的虚拟IP值并对不同的ARP消息析构并逆向修改,最终利用Packet Out消息回复;业务定制的初始流表匹配域包含虚拟IP信息,共两套,每套分别有四个;第一套流表条目如下:a、匹配域为进端口为视频源服务器连接的交换机端口、目的IP地址是虚拟IP1,目的MAC地址是虚拟MAC1,协议类型是ARP数据包;优先级为4;动作是把ARP数据包作为Packet‑in消息的负载利用Packet‑in消息发送到SDN控制器;优先级为4是指大于0并且小于65535;b、匹配域为进端口为视频源服务器连接的交换机端口、目的IP地址是虚拟IP2,目的MAC地址是虚拟MAC2,协议类型是ARP数据包;优先级为4;动作是把ARP数据包作为Packet‑in消息的负载利用Packet‑in消息发送到SDN控制器;c、匹配域为进端口为视频源服务器连接的交换机端口、目的IP地址是虚拟IP1,源IP地址是视频源真实IP;目的UDP端口是虚拟UDP端口PORT1;优先级为65535;协议类型是UDP数据包,动作是利用OpenFlow中Set‑Field命令把UDP数据包的数据包头对应字段做修改,IP1修改为LTE/WiFi基站服务器真实IP,MAC1修改为LTE/WiFi基站服务器真实MAC,PORT1修改为LTE/WiFi基站服务器真实UDP端口,并且输出到LTE/WiFi基站服务器连接的交换机端口;d、匹配域为进端口为视频源服务器连接的交换机端口、目的IP地址是虚拟IP2,源IP地址是视频源真实IP;目的UDP端口是虚拟UDP端口PORT2;优先级为65535;协议类型是UDP数据包,动作是把UDP数据包作为Packet‑in消息的负载利用Packet‑in消息发送到控制器;第二套流表条目如下:e、匹配域为进端口为视频源服务器连接的交换机端口、目的IP地址是虚拟IP1,目的MAC地址是虚拟MAC1,协议类型是ARP数据包;优先级为4;动作是利用OpenFlow中Set‑Field命令把ARP数据包的数据包头对应字段做逆向修改,虚拟IP1修改为源IP,目的MAC修改为源MAC,源IP修改为虚拟IP1,源MAC修改为虚拟MAC1,网络类型修改为RARP,并且输出ARP数据包进入的交换机端口;f、匹配域为进端口为视频源服务器连接的交换机端口、目的IP地址是虚拟IP2,目的MAC地址是虚拟MAC2,协议类型是ARP数据包;优先级为4;动作是利用OpenFlow中Set‑Field命令把ARP数据包的数据包头对应字段做逆向修改,虚拟IP2修改为源IP,目的MAC修改为源MAC,源IP修改为虚拟IP2,源MAC修改为虚拟MAC2,网络类型修改为RARP,并且输出ARP数据包进入的交换机端口;g、匹配域为进端口为视频源服务器连接的交换机端口、目的IP地址是虚拟IP1,源IP地址是视频源真实IP;目的UDP端口是虚拟UDP端口PORT1;优先级为65535;协议类型是UDP数据包,动作是利用OpenFlow中Set‑Field命令把UDP数据包的数据包头对应字段做修改,IP1修改为LTE/WiFi基站服务器真实IP,MAC1修改为LTE/WiFi基站服务器真实MAC,PORT1修改为LTE/WiFi基站服务器真实UDP端口,并且输出到LTE/WiFi基站服务器连接的交换机端口;h、匹配域为进端口为视频源服务器连接的交换机端口、目的IP地址是虚拟IP2,源IP地址是视频源真实IP;目的UDP端口是虚拟UDP端口PORT2;优先级为65535;协议类型是UDP数据包,动作是把UDP数据包作为Packet‑in消息的负载利用...

【技术特征摘要】
1.一种基于虚拟域的软件定义网络转发控制方法,其特征在于,具体步骤如下:步骤一、建立包括SDN交换机、SDN控制器、无线基站服务器和数据收、发终端设备的通信场景,每个设备具有唯一有效的网络标识信息;步骤二、针对某个待传输的视频数据,构建虚拟域,利用虚拟IP地址、虚拟MAC地址和虚拟UDP端口标识数据流和控制流;步骤三、根据虚拟域,对UDP数据包的头部和数据内容分别设计,得到控制流的控制信令;UDP数据包的头部携带虚拟IP2地址的字段信息,同时UDP数据包数据包负载为任意值;步骤四、SDN交换机和SDN控制器建立连接,SDN控制器把table_miss流表条目写入到SDN交换机中;步骤五、数据发送终端设备发出第一条ARP寻址包信令,与SDN交换机中的流表条目table_miss匹配,table_miss流表项触发OpenFlow中Packet-in消息,发送到SDN控制器;Packet-in消息中包含虚拟IP的ARP寻址包消息作为负载信息;步骤六、SDN控制器回复PacketOut消息,同时下发业务定制的初始流表条目给SDN交换机;SDN控制器甄别控制流和数据流的虚拟IP值并对不同的ARP消息析构并逆向修改,最终利用PacketOut消息回复;业务定制的初始流表匹配域包含虚拟IP信息,共两套,每套分别有四个;第一套流表条目如下:a、匹配域为进端口为视频源服务器连接的交换机端口、目的IP地址是虚拟IP1,目的MAC地址是虚拟MAC1,协议类型是ARP数据包;优先级为4;动作是把ARP数据包作为Packet-in消息的负载利用Packet-in消息发送到SDN控制器;优先级为4是指大于0并且小于65535;b、匹配域为进端口为视频源服务器连接的交换机端口、目的IP地址是虚拟IP2,目的MAC地址是虚拟MAC2,协议类型是ARP数据包;优先级为4;动作是把ARP数据包作为Packet-in消息的负载利用Packet-in消息发送到SDN控制器;c、匹配域为进端口为视频源服务器连接的交换机端口、目的IP地址是虚拟IP1,源IP地址是视频源真实IP;目的UDP端口是虚拟UDP端口PORT1;优先级为65535;协议类型是UDP数据包,动作是利用OpenFlow中Set-Field命令把UDP数据包的数据包头对应字段做修改,IP1修改为LTE/WiFi基站服务器真实IP,MAC1修改为LTE/WiFi基站服务器真实MAC,PORT1修改为LTE/WiFi基站服务器真实UDP端口,并且输出到LTE/WiFi基站服务器连接的交换机端口;d、匹配域为进端口为视频源服务器连接的交换机端口、目的IP地址是虚拟IP2,源IP地址是视频源真实IP;目的UDP端口是虚拟UDP端口PORT2;优先级为65535;协议类型是UDP数据包,动作是把UDP数据包作为Packet-in消息的负载利用Packet-in消息发送到控制器;第二套流表条目如下:e、匹配域为进端口为视频源服务器连接的交换机端口、目的IP地址是虚拟IP1,目的MAC地址是虚拟MAC1,协议类型是ARP数据包;优先级为4;动作是利用OpenFlow中Set-Field命令把ARP数据包的数据包头对应字段做逆向修改,虚拟IP1修改为源IP,目的MAC修改为源MAC,源IP修改为虚拟IP1,源MAC修改为虚拟MAC1,网络类型修改为RARP,并且输出ARP数据包进入的交换机端口;f、匹配域为进端口为视频源服务器连接的交换机端口、目的IP地址是虚拟IP2,目的MAC地址是虚拟MAC2,协议类型是ARP数据包;优先级为4;动作是利用OpenFlow中Set-Field命令把ARP数据包的数据包头对应字段做逆向修改,虚拟IP2修改为源IP,目的MAC修改为源MAC,源IP修改为虚拟IP2,源MAC修改为虚拟MAC2,网络类型修改为RARP,并且输出ARP数据包进入的交换机端口;g、匹配域为进端口为视频源服务器连接的交换机端口、目的IP地址是虚拟IP1,源IP地址是视频源真实IP;目的UDP端口是虚拟UDP端口PORT1;优先级为65535;协议类型是UDP数据包,动作是利用OpenFlow中Set-Field命令把UDP数据包的数据包头对应字段做修改,IP1修改为LTE/WiFi基站服务器真实IP,MAC1修改为LTE/WiFi基站服务器真实MAC,PORT1修改为LTE/WiFi基站服务器真实UDP端口,并且输出到LTE/WiFi基站服务器连接的交换机端口;h、匹配域为进端口为视频源服务器连接的交换机端口、目的IP地址是虚拟IP2,源IP地址是视频源真实IP;目的UDP端口是虚拟UDP端口PORT2;优先级为65535;协议类型是UDP数据包,动作是把UDP数据包作为Packet-in消息的负载利用Packet-in消息发送到控制器;步骤七、针对数据发送终端设备发出的第二个及之后的ARP寻址包信令,将当前ARP寻址包信令与SDN交换机中的流表条目进行匹配,并根据不同的流表条目进行SDN交换机回复消息或SDN控制器回复消息;匹配的SDN交换机中的流表条目为第一套,触发OpenFlow中Packet-in消息,将当前ARP寻址包信令作为Packet-in消息的负载,发送到SDN控制器并利用Packet-out消息回复;匹配的SDN交换机中的流表条目为第二套,流表条目...

【专利技术属性】
技术研发人员:张奇勋冯志勇张栋张轶凡黄赛尉志青
申请(专利权)人:北京邮电大学
类型:发明
国别省市:北京,11

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

1