一种分布式网络中转发信息的方法及系统的制作方法
【专利摘要】本发明公开了一种分布式网络中转发信息的方法,包括:转发设备收到应用(APP)协议的消息时,根据软件定义网络(SDN)/OpenFlow控制器发来的所述APP协议对应的转发规则,将所述消息直接发送给对应的应用服务器、或将所述消息直接发送给对应的终端。本发明还公开了一种分布式网络中转发信息的系统,采用本发明能够保证网络控制层与转发层之间控制消息的传输带宽,从而保证网络控制层和转发层之间的SDN/OpenFlow消息的稳定性,保证系统的可扩展性。
【专利说明】一种分布式网络中转发信息的方法及系统
【技术领域】
[0001] 本发明涉及移动通信领域的转发技术,尤其涉及一种分布式网络中转发信息的方 法及系统。
【背景技术】
[0002] 基于传输控制协议(TCP,Transmission Control Protocol)/ 互联网协议(IP, Internet Protocol)的互联网(Internet)经过四十多年的发展,已成为工作、学习和生活 必不可少的基础设施之一。目前,伯克利大学的Scott Shenker等人提出的软件定义网络 (SDN,Software Defined Networking),以及斯坦福大学的工程人员提出的OpenFlow网络, 所述SDN/OpenFlow网络为一种开放可编程网络,实现了协议快速、灵活的部署。
[0003] 上述SDN/OpenFlow网络的网络控制层需要处理大量终端用户相关的应用(APP, Application)协议对应的消息,比如,点对点协议(PPP,Point to Point Protocol)、 动态主机设置协议(DHCP, Dynamic Host Configuration Protocol)、远程用户拨号认 证(RADIUS,Remote Authentication Dial In User Service)协议等,或处理与非 SDN/ OpenFlow网络间的路由协议消息时;另外,所述网络控制层还需要实时转发大量的终端与 应用层、应用层与非SDN/OpenFlow网络设备间的路由协议消息。但是,上述消息并不完全 需要所述网络控制层进行解析和处理,因此,导致无法保证网络控制层与转发层之间控制 消息的传输带宽。
[0004] 可见,现有技术中SDN/OpenFlow网络中无法保证网络控制层与转发层之间控制 消息的传输带宽,从而影响网络控制层和转发层之间的SDN/OpenFlow消息的稳定性、加重 网络控制层的负担,进而影响系统的可扩展性。
【发明内容】
[0005] 有鉴于此,本发明的目的在于提供一种分布式网络中转发信息的方法及系统,能 够保证网络控制层与转发层之间控制消息的传输带宽,从而保证网络控制层和转发层之间 的SDN/OpenFlow消息的稳定性,保证系统的可扩展性。
[0006] 为达到上述目的,本发明的技术方案是这样实现的:
[0007] 本发明提供了一种分布式网络中转发信息的方法,该方法包括:
[0008] 转发设备收到APP协议的消息时,根据SDN/OpenFlow控制器发来的所述APP协议 对应的转发规则,将所述消息直接发送给对应的应用服务器、或将所述消息直接发送给对 应的终端。
[0009] 上述方案中,所述根据SDN/OpenFlow控制器发来的所述APP协议对应的转发规 贝IJ,将所述消息直接发送给对应的应用服务器、或将所述消息直接发送给对应的终端,包 括:
[0010] 转发设备查看自身是否存有所述APP协议对应的转发规则,若没有,则所述转发 设备从SDN/OpenFlow控制器获取所述APP协议对应的转发规则,所述转发设备根据所述 APP协议对应的转发规则,将所述消息直接发送给对应的应用服务器、或将所述消息直接发 送给对应的终端;
[0011] 若有,则所述转发设备根据所述APP协议对应的转发规则,将所述消息直接发送 给对应的应用服务器、或将所述消息直接发送给对应的终端。
[0012] 上述方案中,所述根据SDN/OpenFlow控制器发来的所述APP协议对应的转发规 贝IJ,将所述消息直接发送给对应的应用服务器、或将所述消息直接发送给对应的终端之前, 该方法还包括:
[0013] SDN/OpenFlow控制器根据预设的条件选定转发设备,向所述转发设备下发APP协 议对应的转发规则。
[0014] 上述方案中,所述转发设备从SDN/OpenFlow控制器获取所述APP协议对应的转发 规则,包括:所述转发设备向所述SDN/OpenFlow控制器发起查询消息,所述SDN/OpenFlow 控制器根据所述查询消息向所述转发设备发送APP协议对应的转发规则。
[0015] 上述方案中,所述将所述消息直接发送给对应的应用服务器、或将所述消息直接 发送给对应的终端之后,该方法还包括:
[0016] 应用服务器周期性、或按需、或实时的向所述SDN/OpenFlow控制器发送状态更新 消息;
[0017] 所述SDN/OpenFlow控制器根据所述状态更新消息更新数据报文的转发规则,主 动或收到转发设备的请求后,将更新后的数据报文的转发规则发送给转发设备。
[0018] 本发明还提供了一种分布式网络中转发信息的系统,该系统包括:转发设备和 SDN/OpenFlow控制器;其中,
[0019] 转发设备,用于收到应用APP协议的消息时,根据SDN/OpenFlow控制器发来的所 述APP协议对应的转发规则,将所述消息直接发送给对应的应用服务器、或将所述消息直 接发送给对应的终端;
[0020] SDN/OpenFlow控制器,用于向转发设备发送APP协议对应的转发规则。
[0021] 上述方案中,所述转发设备,具体用于查看自身是否存有所述APP协议对应的转 发规则,若没有,则从SDN/OpenFlow控制器获取所述APP协议对应的转发规则,根据所述 APP协议对应的转发规则,将所述消息直接发送给对应的应用服务器、或将所述消息直接发 送给对应的终端;若有,则根据所述APP协议对应的转发规则,将所述消息直接发送给对应 的应用服务器、或将所述消息直接发送给对应的终端。
[0022] 上述方案中,所述SDN/OpenFlow控制器,具体用于根据预设的条件选定转发设 备,向所述转发设备下发APP协议对应的转发规则。
[0023] 上述方案中,所述转发设备,具体用于向所述SDN/OpenFlow控制器发起查询消 息;
[0024] 相应的,所述SDN/OpenFlow控制器,具体用于根据转发设备发来的所述查询消 息,向所述转发设备发送APP协议对应的转发规则。
[0025] 上述方案中,所述SDN/OpenFlow控制器,还用于根据应用服务器周期性、或按需、 或实时发来的状态更新消息更新数据报文的转发规则,主动或收到转发设备的请求后,将 更新后的终端报文的转发规则发送给转发设备。
[0026] 本发明所提供的分布式网络中转发信息的方法及系统,转发设备能够在收到APP 协议的消息时,根据从SDN/OpenFlow控制器获取的所述APP协议对应的转发规则,将所述 消息发送给对应的应用服务器或将所述消息发送给对应的终端。如此,将非SDN/OpenFlow 协议的信息,不经过网络控制层,直接发送至目的地址,这样,就能够保证网络控制层与转 发层之间控制消息的传输带宽,从而保证网络控制层和转发层之间的SDN/OpenFlow消息 的稳定性,保证系统的可扩展性。
【专利附图】
【附图说明】
[0027] 图1为本发明分布式网络中转发信息的方法流程示意图;
[0028] 图2为本发明分布式网络中转发信息的系统组成结构示意图;
[0029] 图3为本发明实施例一中系统组成结构示意图;
[0030] 图4为本发明实施例一中分布式网络中转发信息的方法流程示意图;
[0031] 图5为本发明实施例二中系统组成结构示意图;
[0032] 图6为本发明实施例二中分布式网络中转发信息的方法流程示意图;
[0033] 图7为本发明实施例三中系统组成结构示意图;
[0034] 图8为本发明实施例三中分布式网络中转发信息的方法流程示意图。
【具体实施方式】
[0035] 本发明的基本思想是:转发设备收到APP协议的消息时,根据从SDN/OpenFlow控 制器获取的所述APP协议对应的转发规则,将所述消息发送给对应的应用服务器或将所述 消息发送给对应的终端。
[0036] 具体的,转发设备收到APP协议的消息时,查看自身是否存有所述APP协议对应的 转发规则,若没有,则所述转发设备从SDN/OpenFlow控制器获取所述APP协议对应的转发 规则,所述转发设备根据所述APP协议对应的转发规则,将所述消息转发至对应的应用服 务器、或将所述消息发送给对应的终端;若有,则所述转发设备根据所述APP协议对应的转 发规则,将所述消息转发至对应的应用服务器或将所述消息发送给对应的终端。
[0037] 下面结合附图及具体实施例对本发明再作进一步详细的说明。
[0038] 本发明提出分布式网络中转发信息的方法,如图1所示,包括以下步骤:
[0039] 步骤101 :转发设备收到任意一条APP协议的消息时,查看自身是否存有所述APP 协议对应的转发规则,若没有,则执行步骤102 ;若有,则执行步骤103。
[0040] 这里,所述APP协议为:除SDN/OpenFlow控制器与转发设备之间的SDN/OpenFlow 协议之外的,任意一种包括用户终端和应用层之间的通信协议和非SDN/OpenFlow网络的 设备与SDN/OpenFlow网络之间的通信协议的APP协议,比如,可以为点对点协议(PPPoE, Point-to-Point Protocol over Ethernet)、开放式最短路径优先(0SPF,Open Shortest Path First)协议、网络组管理协议(IGMP,Internet Group Management Protocol) v2 等。
[0041] 所述APP协议对应的转发规则为:对所述APP协议对应的全部类型的消息的匹 配条件及匹配结果;其中,所述匹配条件包括:协议类型、目的介质访问控制(MAC,Media Access Control)地址;所述匹配结果为转发设备的出接口信息。
[0042] 所述APP协议的消息可以为终端发来的APP协议的消息,也可以为应用服务器返 回的APP协议的消息的响应消息。
[0043] 进一步的,执行步骤101之前,所述转发设备还可以接收SDN/OpenFlow控制器下 发的APP协议对应的转发规则。其中,所述SDN/OpenFlow控制器可以为根据预设的条件选 定的一台或多台转发设备。
[0044] 进一步的,所述SDN/OpenFlow控制器还会根据一个或多个应用服务器发来的注 册消息,生成该应用服务器对应的APP协议的转发规则。
[0045] 步骤102 :所述转发设备从SDN/OpenFlow控制器获取所述APP协议对应的转发规 则。
[0046] 具体的,所述转发设备向所述SDN/OpenFlow控制器发起查询消息,所述SDN/ OpenFlow控制器根据所述查询消息向所述转发设备发送APP协议对应的转发规则。
[0047] 这里,所述查询消息可以包括所述APP协议的消息全部SDN/OpenFlow,所述获取 转发规则的请求可以为SDN/OpenFlow协议中规定的查询消息。
[0048] 步骤103 :所述转发设备根据所述APP协议对应的转发规则,将所述消息直接发送 给对应的应用服务器、或将所述消息直接发送给对应的终端。
[0049] 具体的,当所述转发设备接收到的消息为终端发出的请求消息时,所述转发设备 根据所述APP协议对应的转发规则,将所述消息直接发送给对应的应用服务器;当所述转 发设备接收到的消息为应用服务器返回的响应消息时,所述转发设备根据所述APP协议对 应的转发规则,将所述消息直接发送给对应的终端。
[0050] 这里,所述将所述消息直接发送给对应的应用服务器可以为:所述转发设备根据 所述APP协议对应的转发规则,将所述消息经过一台或多台转发设备形成的路由发送至对 应的应用服务器;其中,所述一台或多台转发设备形成的路由为现有技术,这里不做赘述。
[0051] 所述将所述消息直接发送给对应的终端可以为:所述转发设备根据所述APP协议 对应的转发规则,将所述消息经过一台或多台转发设备形成的路由发送至对应的终端或外 网设备;其中,所述一台或多台转发设备形成的路由为现有技术,这里不做赘述。
[0052] 进一步的,完成上述步骤103之后,该方法还可以包括:应用服务器周期性、或按 需、或实时的向所述SDN/OpenFlow控制器发送状态更新消息;所述SDN/OpenFlow控制器根 据所述状态更新消息更新数据报文的转发规则,主动或收到转发设备的请求后,将更新后 的数据报文的转发规则发送给转发设备。
[0053] 其中,所述状态更新消息包括:用户信息的变更和/或路由信息的变更;所述用户 信息的变更包括但不限于:用户表项的增加更改和删除、用户授权信息的变更;所述路由 信息的变更包括但不限于:各种单播/组播路由协议的路由更新、用户路由更新。
[0054] 本发明分布式网络中转发信息的系统,如图2所示,该系统包括:转发设备21和 SDN/OpenFlow 控制器 22 ;其中,
[0055] 转发设备21,用于收到应用APP协议的消息时,根据SDN/OpenFlow控制器22发来 的所述APP协议对应的转发规则,将所述消息直接发送给对应的应用服务器、或将所述消 息直接发送给对应的终端;
[0056] SDN/OpenFlow控制器22,用于向转发设备21发送APP协议对应的转发规则。
[0057] 所述转发设备21,具体用于收到任意一条APP协议的消息时,查看自身是否存有 所述APP协议对应的转发规则,若没有,则从SDN/OpenFlow控制器22获取所述APP协议 对应的转发规则,若有,则根据所述APP协议对应的转发规则,将所述消息直接发送给对 应的应用服务器、或将所述消息直接发送给对应的终端。其中,所述APP协议为:除SDN/ OpenFlow控制器与转发设备之间的SDN/OpenFlow协议之外的,任意一种包括用户终端和 应用层之间的通信协议和非SDN/OpenFlow网络的设备与SDN/OpenFlow网络之间的通信协 议的APP协议,比如,可以为PPPoE、0SPF协议、IGMP v2等。
[0058] 所述转发设备21,还可以接收SDN/OpenFlow控制器22下发的APP协议对应的转 发规则。其中,所述SDN/OpenFlow控制器可以为根据预设的条件选定的一台或多台转发设 备。
[0059] 所述SDN/OpenFlow控制器22,还用于根据一个或多个应用服务器发来的注册消 息,生成该应用服务器对应的APP协议的转发规则。
[0060] 所述转发设备21,具体用于向所述SDN/OpenFlow控制器22发起查询消息,并接收 SDN/OpenFlow控制器22APP协议对应的转发规则;相应的,所述SDN/OpenFlow控制器22, 还用于根据转发设备21发来的所述查询消息,向所述转发设备21发送APP协议对应的转 发规则。其中,所述查询消息可以包括所述APP协议的消息全部SDN/OpenFlow,所述获取转 发规则的请求可以为SDN/OpenFlow协议中规定的查询消息。
[0061] 所述转发设备21,具体用于根据所述APP协议对应的转发规则,将所述消息直接 发送给对应的应用服务器、或将所述消息直接发送给对应的终端。
[0062] 所述转发设备21,具体用于当接收到的消息为终端发出的请求消息时,根据所述 APP协议对应的转发规则,将所述消息直接发送给对应的应用服务器;当接收到的消息为 应用服务器返回的响应消息时,根据所述APP协议对应的转发规则,将所述消息直接发送 给对应的终端。
[0063] 所述转发设备21,具体用于根据所述APP协议对应的转发规则,将所述消息经过 一台或多台转发设备形成的路由发送至对应的应用服务器;其中,所述一台或多台转发设 备形成的路由为现有技术,这里不做赘述。
[0064] 所述转发设备21,还用于根据所述APP协议对应的转发规则,将所述消息经过一 台或多台转发设备形成的路由发送至对应的终端或外网设备;其中,所述一台或多台转发 设备形成的路由为现有技术,这里不做赘述。
[0065] 所述SDN/OpenFlow控制器22,还用于根据应用服务器周期性、或按需、或实时发 来的状态更新消息更新终端数据报文的转发规则,主动或收到转发设备的请求后,将更新 后的终端数据报文的转发规则。其中,所述状态更新消息包括:用户信息的变更和/或路由 信息的变更;所述用户信息的变更包括但不限于:用户表项的增加更改和删除、用户授权 信息的变更;所述路由信息的变更包括但不限于:各种单播/组播路由协议的路由更新、用 户路由更新。
[0066] 实施例一、以太网上的点对点协议(PPPoE,Point-to-Point Protocol over Ethernet)接入用户为例,组网示意图参见图3,其中,点对点(PPP)应用(APP, Application)表示处理PPP APP所在的网络设备。详细流程图参见图4所示:
[0067] 步骤401 :终端用户A向转发设备1发送PPPoE发现阶段消息(PADI);
[0068] 步骤402 :转发设备1查看是否有匹配的转发规则,若有,则执行步骤404 ;否则, 则执行步骤403。
[0069] 步骤403 :转发设备1向控制器发送查询消息,当控制器确定查询消息中的内容是 PPPoE的发现阶段消息时,向转发设备1发送转发规则。
[0070] 这里,所述查询消息可以包含PADI消息的全部内容。
[0071] 所述转发规则为:以太类型字段为PPPoE协议消息类型(0x8863)或PPP协议消息 (0x8864),目的MAC地址为广播地址、或PPP APP的MAC地址作为匹配条件,转发设备1的 出接口信息作为匹配结果。所述转发规则还可以包括:当其它终端的PPPoE或PPP消息命 中该规则的匹配条件,但PADI消息的源MAC地址为目的MAC的转发规则在转发设备1上不 存在时,所述转发设备1将该消息复制一份发送给控制器,控制器对所述终端的MAC地址及 与其直连的转发设备1的接口进行学习和存储。
[0072] 其中,所述转发设备1的出接口信息可以为:转发设备1与转发设备2直连的接 口,即转发设备1的b接口;或者,当转发设备1与PPP APP直连时,出接口信息为所述转发 设备1与PPP APP设备的直连接口。
[0073] 进一步地,若所述PPP APP所在的网络设备并非与转发设备1直连,则控制器同时 向转发设备1、与所述网络设备间的其它转发设备(本实施例中为转发设备2)发送相应的 转发规则;其中,所述转发规则匹配条件相同、出接口信息根据其它转发设备的不同进行变 更,已存储该规则的转发设备无需再次发送,或控制器等待其它转发设备的查询消息后向 其它转发设备发送相应的转发规则。
[0074] 步骤404 :转发设备1根据匹配到的转发规则,将PADI经转发设备2发送给PPP APP。
[0075] 进一步地,若控制器在步骤403同时向转发设备2发送了相应的转发规则(匹配 条件相同,出接口为d),则转发设备2根据该转发规则发送PADI ;否则,转发设备2重新向 控制器发送查询消息后由控制器下发转发规则,类似步骤402和步骤403。
[0076] 步骤405 :所述PPP APP所在的网络设备收到PADI消息后,向转发设备2返回PAD0 消息。
[0077] 步骤406 :转发设备2收到所述PAD0消息后,没有查找到匹配的转发规则(以太 类型字段为0x8863,目的MAC为终端MAC),向控制器发送查询消息。
[0078] 步骤407 :控制器根据存储的所述终端的标识信息和位置信息进行查询,根据查 询结果向转发设备2发送转发规则(目的MAC为终端MAC,出接口为c)。
[0079] 步骤408 :转发设备2根据接收到的转发规则由出接口 c发送该消息。
[0080] 步骤409 :转发设备1收到所述PAD0消息后,若本地没有匹配的转发规则(以太 类型字段为0x8863,目的MAC为终端MAC),则向控制器发送查询消息。
[0081] 步骤410 :控制器根据存储的所述终端的标识信息和位置信息进行查询,根据查 询结果向转发设备1发送转发规则(目的MAC为终端MAC,出接口为a)。
[0082] 步骤411 :转发设备1根据接收到的转发规则由出接口 a发送该消息;
[0083] 步骤412 :终端A收到PAD0消息后,继续与所述PPP APP交互完成PPPoE阶段和 PPP阶段的协议消息交互流程,转发设备1和转发设备2根据命中的转发规则对协议消息进 行转发,最终完成终端A的PPPoE接入。
[0084] 步骤413 :PPP APP与控制器交互进行用户信息更新(如用户表添加),控制器根 据用户的QoS或会话时长信息等授权信息向转发设备发送转发规则更新消息。
[0085] 进一步地,其它用户接入方式如DHCP、静态用户、Web认证Portal认证接入等也可 以通过相同或类似的方法实现。
[0086] 实施例二、外网路由协议交互,以0SPF协议的建立阶段为例。组网示意图参见图 5,外网设备B表示SDN/OpenFlow网络外的一台路由器设备,SDN/OpenFlow网络内的转发 设备3与其直连,开放式最短路径优先(0SPF)应用服务器,表示处理0SPF的应用所在的网 络设备。详细流程图参见图6所示:
[0087] 步骤601 :外网设备B以组播形式发送Hello消息;
[0088] 步骤602 :转发设备3查看是否已有0SPF协议对应的转发规则,若命中,则转步骤 604 ;若未命中,则向SDN/OpenFlow控制器发送查询消息,执行步骤603 ;
[0089] 步骤603 :SDN/0penFl〇W控制器收到查询消息后,向转发设备3发送0SPF协议对 应的转发规则;
[0090] 包含IP报文协议字段值为0SPF协议消息类型(89)、目的IP为组播地址或0SPF APP的IP地址作为匹配条件,同时包含转发设备3的出接口信息,出接口为转发设备3与转 发设备4直连的接口,即转发设备3上的f接口;
[0091] 进一步地,若转发设备3与0SPF APP直连,则出接口为直连接口;
[0092] 进一步地,若所述处理0SPF协议的应用所在的网络设备并非与转发设备3直连, 则控制器同时向转发设备3与所述网络设备间的其它转发设备(本实施例中为转发设备4) 发送相应的转发规则,匹配条件相同、出接口根据其它转发设备的不同进行变更,已存储该 规则的转发设备无需同步发送,或控制器等待其它转发设备的查询消息后向其它转发设备 发送相应的转发规则。
[0093] 进一步的,所述转发规则还包括,若其它外网设备的0SPF消息命中该规则的匹配 条件,但以该消息的源IP地址为目的IP的转发规则在转发设备3上不存在,则所述转发设 备3将该消息复制一份发送给控制器,控制器对所述外网设备的IP地址及与其直连的转发 设备3的接口进行学习和存储。
[0094] 步骤604 :转发设备3按该0SPF协议对应的转发规则经转发设备4转发到0SPF应 用服务器;
[0095] 进一步地,若控制器在步骤403同时向转发设备4发送了相应的转发规则(匹配 条件相同,出接口为h),则转发设备4根据该规则转,否则转发设备4重新向控制器发送查 询消息后由控制器下发转发规则,类似步骤602和步骤603。
[0096] 步骤605 :所述0SPF应用服务器收到该协议消息后,返回单播的Hello消息,目的 IP地址为外网设备B的IP地址,即0SPF APP收到的组播Hello消息的源IP地址;
[0097] 步骤606 :转发设备4收到所述单播Hello消息后,若本地没有匹配的转发规则 (IP协议字段为89,目的IP为路由器IP),则向控制器发送查询消息;
[0098] 步骤607 :SDN/0penFl〇W控制器根据存储的所述终端的标识信息和位置信息进行 查询,根据查询结果向转发设备4发送转发规则(目的IP为外网设备B的IP,出接口为g);
[0099] 步骤608 :转发设备4根据接收到的转发规则由出接口 c发送该消息;
[0100] 步骤609 :转发设备3收到所述单播Hello消息后,若本地没有匹配的转发规则 (IP协议字段为89,目的IP为外网设备B的IP),则向控制器发送查询消息;
[0101] 步骤610 :SDN/0penFl〇W控制器根据存储的所述终端的标识信息和位置信息进行 查询,根据查询结果向转发设备3发送转发规则(目的IP为外网设备B的IP,出接口为e);
[0102] 步骤611 :转发设备3根据接收到的转发规则由出接口 e发送该消息;
[0103] 步骤612 :外网设备B收到Hello消息后,继续与所述0SPF应用服务器交互完成 0SPF协议消息交互流程;
[0104] 转发设备3和转发设备4根据命中的转发规则对协议消息进行转发,最终完成外 网设备B与0SPF应用服务器的0SPF邻居关系建立。
[0105] 进一步地,0SPF路由更新等其它控制消息交互流程也可通过相同或类似的方法实 现。
[0106] 进一步地,其它路由协议如RIP、ISIS、BGP等也可以通过相同或类似的方法实现。
[0107] 步骤613 :0SPF应用服务器周期性或按需的或实时的向所述控制器发送消息进行 状态更新网络信息(如网络拓扑变化、路由更新)。
[0108] 实施例三、用户业务定制,以通过IGMPv2协议实现组播业务的加入、查询和离开 为例。(场景描述)。组网示意图参见图7,组播APP表示处理组播业务的应用所在的网络 设备。详细流程图参见图8所示:
[0109] 步骤801 :SDN/0penFlow控制器分别向转发设备5、转发设备6和转发设备7发送 转发规则一,转发规则一均为目的IP地址为224. 0. 0. 1,IP报文协议字段值为2的消息(表 示查询器发出的IGMP消息),转发设备5的出接口为除接口 η之外的所有接口,转发设备6 的出接口为除接口 j之外的所有接口,转发设备6的出接口为除接口 ρ之外的所有接口。
[0110] 步骤802 :SDN/0penFlow控制器分别向转发设备5、转发设备6和转发设备7发送 转发规则二,转发规则二均为目的IP地址为224. 0. 0. 2, IP报文协议字段值为2的消息(表 示用户主机发出的IGMP消息),转发设备5的出接口为接口 n,转发设备6的出接口为接口 j,转发设备6的出接口为接口 ρ。
[0111] 进一步地,步骤801和步骤802不分先后。
[0112] 步骤803 :用户主机C发送IGMP Report消息请求加入某个组播组X ;
[0113] 步骤804 :转发设备5匹配本地转发规则,经接口 j发送所述R印ort消息;
[0114] 进一步的,若转发设备5在步骤802收到的转发规则已失效,则向控制器发送查询 消息,查询器重复步骤802的步骤向转发设备5发送所述转发规则。
[0115] 进一步的,转发设备5在命中转发规则并转步骤804执行的同时,将该消息复制并 发送一份给控制器,控制器对所述用户主机C的IP地址及与其直连的转发设备5的接口进 行学习和存储。
[0116] 步骤805 :转发设备6匹配本地转发规则,经接口 η发送所述R印ort消息;
[0117] 进一步的,若转发设备6在步骤402收到的转发规则已失效,则向控制器发送查询 消息,查询器重复步骤402的步骤向转发设备6发送所述转发规则。
[0118] 步骤806 :所述处理组播协议的应用所在的网络设备收到该协议消息后,周期性 或按需发送组播组Query (查询)消息,目的地址为224. 0. 0. 1 ;
[0119] 步骤807 :转发设备6收到所述Query消息后,根据匹配到的转发规则由向除接口 η之外的所有接口转发所述Query消息;
[0120] 进一步的,若转发设备6在步骤801收到的转发规则已失效,则向控制器发送查询 消息,查询器重复步骤801的步骤向转发设备6发送所述转发规则。
[0121] 进一步的,所述除接口 η之外的所有接口包括接口 m。
[0122] 步骤808 :转发设备5收到所述Query消息后,根据匹配到的转发规则由向除接口 j之外的所有接口转发所述Query消息;
[0123] 进一步的,若转发设备5在步骤401收到的转发规则已失效,则向控制器发送查询 消息,查询器重复步骤401的步骤向转发设备5发送所述转发规则。
[0124] 进一步的,所述除接口 j之外的所有接口包括接口 i。
[0125] 步骤809 :用户主机C收到Query消息后,重新发送Report消息,转发设备5和转 发设备6根据命中的转发规则对协议消息进行转发,最终转发至组播APP ;
[0126] 步骤810 :组播APP收到Report消息后,向SDN/OpenFlow控制器发送用户主机更 新消息,更新用户主机C的信息;
[0127] 步骤811 :SDN/0penFlow控制器在收到用户主机C的信息后,通过SDN/OpenFlow 消息更新转发设备5的转发规则,在目的地址为组播组X的转发规则中增加出接口 i ;
[0128] 进一步地,如果转发设备6上的目的地址为组播组X的转发规则中没有出接口 m, 则控制器同时向转发设备6发送SDN/OpenFlow消息更新转发设备5的转发规则,在目的地 址为组播组X的转发规则中增加出接口 m ;
[0129] 进一步地,用户主机离开某组播组的流程与步骤801至步骤811描述的加入流程 类似。
[0130] 进一步地,其它基于组播协议版本的组播业务定制也可以通过相同或类似的方法 实现。
[0131] 进一步地,其它用户业务如视频点播、带宽调整、P2P业务定制等也可以通过相同 或类似的方法实现。
[0132] 以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
【权利要求】
1. 一种分布式网络中转发信息的方法,其特征在于,该方法包括: 转发设备收到应用APP协议的消息时,根据软件定义网络SDN/OpenFlow控制器发来的 所述APP协议对应的转发规则,将所述消息直接发送给对应的应用服务器、或将所述消息 直接发送给对应的终端。
2. 根据权利要求1所述的方法,其特征在于,所述根据SDN/OpenFlow控制器发来的所 述APP协议对应的转发规则,将所述消息直接发送给对应的应用服务器、或将所述消息直 接发送给对应的终端,包括: 转发设备查看自身是否存有所述APP协议对应的转发规则,若没有,则所述转发设备 从SDN/OpenFlow控制器获取所述APP协议对应的转发规则,所述转发设备根据所述APP协 议对应的转发规则,将所述消息直接发送给对应的应用服务器、或将所述消息直接发送给 对应的终端; 若有,则所述转发设备根据所述APP协议对应的转发规则,将所述消息直接发送给对 应的应用服务器、或将所述消息直接发送给对应的终端。
3. 根据权利要求1或2所述的方法,其特征在于,所述根据SDN/OpenFlow控制器发来 的所述APP协议对应的转发规则,将所述消息直接发送给对应的应用服务器、或将所述消 息直接发送给对应的终端之前,该方法还包括: SDN/OpenFlow控制器根据预设的条件选定转发设备,向所述转发设备下发APP协议对 应的转发规则。
4. 根据权利要求2所述的方法,其特征在于,所述转发设备从SDN/OpenFlow控制器获 取所述APP协议对应的转发规则,包括:所述转发设备向所述SDN/OpenFlow控制器发起查 询消息,所述SDN/OpenFlow控制器根据所述查询消息向所述转发设备发送APP协议对应的 转发规则。
5. 根据权利要求1所述的方法,其特征在于,所述将所述消息直接发送给对应的应用 服务器、或将所述消息直接发送给对应的终端之后,该方法还包括: 应用服务器周期性、或按需、或实时的向所述SDN/OpenFlow控制器发送状态更新消 息; 所述SDN/OpenFlow控制器根据所述状态更新消息更新数据报文的转发规则,主动或 收到转发设备的请求后,将更新后的数据报文的转发规则发送给转发设备。
6. -种分布式网络中转发信息的系统,其特征在于,该系统包括:转发设备和SDN/ OpenFlow控制器;其中, 转发设备,用于收到应用APP协议的消息时,根据SDN/OpenFlow控制器发来的所述APP 协议对应的转发规则,将所述消息直接发送给对应的应用服务器、或将所述消息直接发送 给对应的终端; SDN/OpenFlow控制器,用于向转发设备发送APP协议对应的转发规则。
7. 根据权利要求6所述的系统,其特征在于,所述转发设备,具体用于查看自身是否存 有所述APP协议对应的转发规则,若没有,则从SDN/OpenFlow控制器获取所述APP协议对 应的转发规则,根据所述APP协议对应的转发规则,将所述消息直接发送给对应的应用服 务器、或将所述消息直接发送给对应的终端;若有,则根据所述APP协议对应的转发规则, 将所述消息直接发送给对应的应用服务器、或将所述消息直接发送给对应的终端。
8. 根据权利要求6或7所述的系统,其特征在于,所述SDN/OpenFlow控制器,具体用于 根据预设的条件选定转发设备,向所述转发设备下发APP协议对应的转发规则。
9. 根据权利要求7所述的系统,其特征在于,所述转发设备,具体用于向所述SDN/ OpenFlow控制器发起查询消息; 相应的,所述SDN/OpenFlow控制器,具体用于根据转发设备发来的所述查询消息,向 所述转发设备发送APP协议对应的转发规则。
10. 根据权利要求6所述的系统,其特征在于,所述SDN/OpenFlow控制器,还用于根据 应用服务器周期性、或按需、或实时发来的状态更新消息更新数据报文的转发规则,主动或 收到转发设备的请求后,将更新后的终端报文的转发规则发送给转发设备。
【文档编号】H04L29/08GK104125244SQ201310142922
【公开日】2014年10月29日 申请日期:2013年4月23日 优先权日:2013年4月23日
【发明者】梁乾灯, 范亮, 甘玉玺 申请人:中兴通讯股份有限公司