基于SDN控制器的以太网广播优化处理方法技术

技术编号:14802944 阅读:155 留言:0更新日期:2017-03-14 23:19
一种基于SDN控制器的以太网广播优化处理方法,终端接入网络时,广播发送GARP或DHCP请求报文,宣告自身IP地址或请求IP地址;SDN控制器实时解析交换机的packet-in消息,提取其中终端信息,执行终端接入处理:以key-value形式存储终端和交换机之间信息映射关系;并对终端通信的ARP请求报文构造ARP应答包,封装成packet-out消息作为应答回送终端。同时执行环路避免处理:根据从广播报文中提取的key和value映射关系查询节点信息字典,保证同一个交换机接收到的广播报文只有一个接入端口,同时丢弃来自其他不同交换机接入端口的相同的广播报文,以避免因网络中形成广播环路而触发广播报文的洪泛。本发明专利技术降低网络控制器、交换机和终端的负担和资源浪费,避免广播报文转发环路。

【技术实现步骤摘要】

本专利技术涉及一种改进以太网广播的优化处理方法,确切地说,涉及一种基于SDN控制器的以太网广播优化处理方法,属于计算机网络通信的

技术介绍
当今世界的网络技术日新月异,基于传输控制协议TCP/互联网协议IP(TransmissionControlProtocol/InternetProtocol)等技术的传统互联网在服务质量体验、业务部署、业务适应等许多方面都遇到越来越多的问题和挑战。斯坦福大学提出的软件定义网络SDN(SoftwareDefinedNetwork)逐渐成为下一代互联网发展的重要技术方向,已经受到学术界和产业界的广泛关注。SDN网络主要包括两部分:网络控制器组成的控制网络和底层交换机组成的数据网络。它将传统网络中的智能控制的功能集中在控制器组成的控制网络中,底层交换机不具有网络智能功能,其仅仅按照控制器的指令转发数据。其中SDN网络通过将网络设备控制面与数据面分离开来,从而实现了网络流量的灵活控制,使网络作为管道变得更加智能化。图1所示为SDN的网络架构图。图中的控制层和数据转发层分别为控制网络和数据网络,两者之间通过控制/数据的接口平面(如OpenFlow协议)构成通路。由于SDN架构的特性,采用OpenFlow协议能够在一定程度上解决传统网络中地址解析协议ARP(AddressResolutionProtocol)广播风暴的问题,但是,目前的SDN架构对于广播报文的处理方式,通常仍采用了传统以太网处理网络广播报文的方法。例如采用基于生成树协议STP(SpanningTreeProtocol)的模型消除环路问题。然而,这种模型会造成根节点交换机的流量负载呈指数级增大,无法利用网络中可能存在的多路径传输优势。因此,如何改进广播报文的处理方法,并解决环路问题就成为业内科技人员关注的一个焦点。在以太网协议中规定,同一局域网中的一台主机要和另一台主机进行直接通信,必须要知道目标主机的MAC地址。而在TCP/IP协议中,网络层和传输层只关心目标主机的IP地址。这就导致在以太网中使用IP协议时,数据链路层的以太网协议接到上层IP协议提供的数据中,只包含目标主机的IP地址。于是需要一种方法用于根据目标主机的IP地址来获得其对应的MAC地址,即进行地址解析。地址解析协议ARP(AddressResolutionProtocol)就是用来确定这些映射的协议。ARP工作时,以太网广播数据包中含有通信对端的IP地址,但是,由于发送时只知道对端的目标IP地址,不知道其MAC地址,因此需要发送ARP请求,并广播至网络内所有终端,直到通信对端回复ARP应答告知其MAC地址。中国专利技术专利申请《一种基于ARP事件触发代理的SDN广播处理方法》(公开号CN103259732A)的技术方案目的是解决以太网中ARP广播问题:通过在主机接入网络初始阶段建立全网主机信息IP-to-MAC映射表,使得网络中任何一个主机发起的ARP请求都可以由SDN控制器统一处理并响应,从而避免ARP报文在以太网中广播。该技术方案能够在一定程度上减少广播报文的数量,但不涉及对网络环路的处理。目前的SDN网络对广播报文的处理,仍旧采用传统以太网处理网络广播报文的方法。参见图2和图3,分别介绍SDN网络中的SDN控制器基于二层转发学习的操作步骤及其在传统以太网中处理广播报文的下述方法:(1)主机A向其相邻的交换机S1发出ARP请求报文。(2)交换机S1将该ARP请求报文封装成packet-in消息提交给SDN控制器。(3)SDN控制器接收该packet-in消息,以packet-out消息方式通知交换机S1,并将ARP请求报文洪泛。(4交换机S1将ARP请求packet-in分别转发给交换机S2和S3。(5)交换机S2和交换机S3分别将ARP请求报文封装成packet-in消息,再分别提交给SDN控制器;也就是两者的操作步骤内容都与步骤(2)相同。(6)SDN控制器接收该packet-in消息,以packet-out消息方式分别通知交换机S2和S3,并将ARP请求报文泛洪;该操作内容与步骤(3)相同。(7)交换机S2和3分别将ARP请求报文转发给交换机S4,该两者的操作步骤内容都与步骤(4)相同。(8)交换机S4将ARP请求报文封装成packet-in消息提交给SDN控制器,该操作内容与步骤(2)相同。(9)SDN控制器接收到该packet-in消息,以packet-out消息方式通知交换机S4,并将ARP请求报文泛洪;其操作内容与步骤(3)相同。(10)主机B接收到ARP请求,构造ARP应答,发送给交换机S4。(11)交换机转发ARP应答消息给发出请求报文的主机。综上所述,虽然传统以太网基于广播的地址解析机制(如ARP等)简单有效,但是存在资源开销大、安全隐患多等缺点,限制了其在较大规模网络的应用。其主要原因如下:大量的广播报文占用网络带宽,造成资源消耗巨大。且规模大的网络可能存在环路,广播报文容易造成广播风暴。虽然也有一定的解决办法,例如基于生成树STP协议(SpanningTreeProtocol)模型的消除环路措施,但会造成根节点交换机的流量负载呈指数级增大,同时故障恢复时延也会增大。再者,网络控制器、交换机和终端都要增加额外的处理负担和资源浪费;而且,基于洪泛转发学习,路径流表的建立大多呈现串行模式,极大地影响网络传输性能。因为广播报文到达SDN交换机时,没有匹配流表,就自动发往SDN控制器,然后SDN控制器通过packet-in和packet-out消息进行处理。随着网络广播报文的增加,SDN控制器负载也随之迅速增大,还有网络中所有终端都会接收并处理洪泛的广播报文,对于终端来说,这些操作都是不必要的资源浪费。
技术实现思路
有鉴于此,本专利技术的目的是提供一种基于SDN控制器的以太网广播优化处理方法,本专利技术方法是对现有SDN网络中的SDN控制器处理功能进行扩展,使得SDN网络能够处理以太网广播、避免环路问题,降低网络控制器、交换机节点和终端的负担和资源浪费,实现无环路的广播报文转发,同时增加了网络的可编程性,使得SDN网络灵活且可扩展。为了达到上述目的,本专利技术提供了一种基于SDN控制器的以太网广播的优化处理方法,其特征在于:终端接入网络时,SDN控制器对来自交换机的、包含该终端信息的packet-in消息执行实时解析,判断该终端若是初次接入网络时,提取其中的终端信本文档来自技高网
...

【技术保护点】
一种基于软件定义网络SDN(Software Defined Network)控制器的以太网广播优化处理方法,其特征在于:终端接入网络时,SDN控制器对来自交换机的、包含该终端信息的packet‑in消息执行实时解析,判断该终端若是初次接入网络时,提取其中的终端信息,执行终端接入处理:在SDN控制器上对以key‑value形式存储终端和交换机转发节点之间信息映射关系的节点信息字典执行更新操作,录入该终端信息;再对终端之间通信时发起的ARP请求报文,执行代理回复ARP响应:查询节点信息字典,得到ARP请求报文的目的终端MAC地址,再构造ARP应答包,封装成packet‑out消息作为应答回送给该终端;因网络可能存在环路,执行环路避免处理:根据从广播报文中提取的每个终端及其对应交换机接入端口之间的状态信息所形成的key和value映射关系,查询节点信息字典,是否存在同一个key对应存储有不同的value、即对应不同的交换机接入端口的情况;若有,则执行丢弃操作:下发packet‑out消息,告知丢弃来自该终端的广播报文,以避免环路问题;若没有,则更新当前key‑value的映射信息于节点信息字典,表明该种类型的广播报文来自于该交换机的某个特定端口;然后执行传统的报文转发处理。...

【技术特征摘要】
1.一种基于软件定义网络SDN(SoftwareDefinedNetwork)控制器的以太
网广播优化处理方法,其特征在于:终端接入网络时,SDN控制器对来自交换
机的、包含该终端信息的packet-in消息执行实时解析,判断该终端若是初次接
入网络时,提取其中的终端信息,执行终端接入处理:在SDN控制器上对以
key-value形式存储终端和交换机转发节点之间信息映射关系的节点信息字典执
行更新操作,录入该终端信息;再对终端之间通信时发起的ARP请求报文,执
行代理回复ARP响应:查询节点信息字典,得到ARP请求报文的目的终端MAC
地址,再构造ARP应答包,封装成packet-out消息作为应答回送给该终端;因
网络可能存在环路,执行环路避免处理:根据从广播报文中提取的每个终端及
其对应交换机接入端口之间的状态信息所形成的key和value映射关系,查询
节点信息字典,是否存在同一个key对应存储有不同的value、即对应不同的交
换机接入端口的情况;若有,则执行丢弃操作:下发packet-out消息,告知丢
弃来自该终端的广播报文,以避免环路问题;若没有,则更新当前key-value的
映射信息于节点信息字典,表明该种类型的广播报文来自于该交换机的某个特
定端口;然后执行传统的报文转发处理。
2.根据权利要求1所述的方法,其特征在于:该方法包括下列具体操作步骤:
步骤1,终端接入网络时,获取IP地址的方式分为动态获取和静态配置;
采用动态获取方式时,SDN控制器对于终端广播发送的动态主机配置协议
DHCP(DynamicHostConfigurationProtocol)请求报文,按照传统方式进行处
理后,转发给DHCP服务器;并对DHCP服务器反馈的DHCPACK确认报文执
行终端接入处理;或
采用静态配置方式时,终端广播发送的无偿地址解析协议GARP(Gratuitous
AddressResolutionProtocol)请求报文,被交换机以packet-in消息封装交给SDN
控制器接收和解析,SDN控制器执行终端接入处理;
终端接入处理的具体操作内容是:提取packet-in消息中的终端信息,创建
或更新存储于其维护的节点信息字典,实现终端接入就将该终端的MAC地址、
IP地址及其接入交换机端口的相应信息都存储于SDN控制器;
步骤2,SDN控制器执行代理回复GARP响应处理:对终端之间通信时发起
的GARP请求报文,查询节点信息字典,得到GARP请求的目的终端MAC地址,
直接构造GARP应答报文,封装成packet-out消息作为应答回送给该终端,完成
GARP的及时响应;以避免GARP应答报文的洪泛,造成交换机产生大量packet-in
消息回送给SDN控制器,增添SDN控制器和终端的资源负担和浪费;
步骤3,SDN控制器执行环路避免处理:查询节点信息字典中的key和value
映射关系处理packet-in消息时,保证同一个交换机接收到的广播报文只有一个
接入端口,同时丢弃来自其他不同交换机接入端口的相同的广播报文,以避免
因网络中形成广播环路而触发广播报文的洪泛。
3.根据权利要求2所述的方法,其特征在于:所述节点信息字典是采用下
述key-value形式存储终端节点和交换机转发节点之间的状态信息映射关系:
(DPID,IP_SRC,ETH_SRC,IP_DS...

【专利技术属性】
技术研发人员:胡博陈山枝王竞豪陈品殿李英司琳
申请(专利权)人:北京邮电大学
类型:发明
国别省市:北京;11

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

1