一种报文传输方法和装置制造方法及图纸

技术编号:13360591 阅读:54 留言:0更新日期:2016-07-17 20:17
本发明专利技术提供一种报文传输方法和装置,该方法包括:当第一中间设备与第二中间设备在主转发路径上的链路发生故障时,计算第一中间设备与第二中间设备之间的备路径;为所述备路径上的位于所述第一中间设备与所述第二中间设备之间的各设备生成第一流表,并为所述第一中间设备生成第二流表;将所述第二流表下发给所述第一中间设备,所述第一中间设备利用所述第二流表在所述备路径上发送报文,并将所述第一流表下发给备路径上对应的设备,所述各设备利用第一流表在所述备路径上发送报文。通过本发明专利技术的技术方案,加快了链路故障时的收敛速度,加快了链路故障时的切换时间。

【技术实现步骤摘要】

本专利技术涉及通信
,尤其涉及一种报文传输方法和装置
技术介绍
SDN(SoftwareDefinedNetwork,软件定义网络)是一种新型网络架构,其核心思想是分离网络设备的控制层面与转发层面,通过SDN控制器对网络流量进行集中和灵活控制,从而为核心网络及应用的创新提供良好的平台。如图1所示,为在WAN(WideAreaNetwork,广域网)中部署SDN的组网示意图。由于MPLS(Multi-ProtocolLabelSwitching,多协议标签交换)SR(SegmentRouting,段路由)具有控制简单、收敛时间短等优势,因此,为了实现报文的传输过程,基于MPLSSR技术,SDN控制器可以向各设备下发标签栈,以通过标签栈控制各设备按照指定路径来传输报文。
技术实现思路
本专利技术提供一种报文传输方法,应用于包括源设备、目的设备、位于源设备与目的设备之间的中间设备、软件定义网络SDN控制器的系统中,所述方法应用在所述SDN控制器上,所述方法包括以下步骤:当确定源设备与目的设备之间的主转发路径上的第一中间设备与第二中间设备,在所述主转发路径上的链路发生故障时,计算第一中间设备与第二中间设备之间的备路径;第一中间设备与第二中间设备相比,更靠近所述源设备;为所述备路径上的位于所述第一中间设备与所述第二中间设备之间的各设备生成第一流表,并为所述第一中间设备生成第二流表;将所述第二流表下发给所述第一中间设备,以使所述第一中间设备利用所述第二流表在所述备路径上发送报文,并将所述第一流表下发给备路径上对应的设备,以使所述各设备利用第一流表在所述备路径上发送报文。本专利技术提供一种报文传输装置,应用于包括源设备、目的设备、位于源设备与目的设备之间的中间设备、软件定义网络SDN控制器的系统中,所述装置应用在所述SDN控制器上,且所述装置具体包括:确定模块,用于确定源设备与目的设备之间的主转发路径上的第一中间设备与第二中间设备,在主转发路径上的链路发生故障;其中,所述第一中间设备与所述第二中间设备相比,更靠近所述源设备;计算模块,用于当确定模块确定出所述第一中间设备与所述第二中间设备在主转发路径上的链路发生故障时,计算第一中间设备与第二中间设备之间的备路径;生成模块,用于为所述备路径上的位于所述第一中间设备与所述第二中间设备之间的各设备生成第一流表,并为所述第一中间设备生成第二流表;发送模块,用于将所述第二流表下发给所述第一中间设备,以使所述第一中间设备利用所述第二流表在所述备路径上发送报文,并将所述第一流表下发给备路径上对应的设备,以使所述各设备利用第一流表在所述备路径上发送报文。基于上述技术方案,本专利技术实施例中,当第一中间设备与第二中间设备在主转发路径上的链路发生故障时,只需要将第一中间设备对应的第二流表发送给第一中间设备,就可以使第一中间设备利用第二流表将报文发送到备路径上,且备路径上的各设备利用第一流表在备路径上发送报文。这样,当主转发路径上的链路发生故障时,除了需要将第一中间设备使用的流表由第三流表调整为第二流表之外,主转发路径上的其它设备的流表不需要调整,不会被撤销,从而加快了链路故障时的收敛速度,加快了链路故障时的切换时间。而且,本发明实施例中,是当第一中间设备与第二中间设备在主转发路径上的链路发生故障之后,才去计算第一中间设备与第二中间设备之间的备路径,并为备路径上的各设备生成第一流表,为第一中间设备生成第二流表,而不是在第一中间设备与第二中间设备在主转发路径上的链路发生故障之前,就计算备路径以及生成第一流表和第二流表,从而可以根据实际的故障情况来计算备路径以及生成第一流表和第二流表,避免计算无用的备路径,也不会生成无用的第一流表和第二流表,从而节省SDN控制器处理资源,提高SDN控制器的处理性能。附图说明图1是在WAN中部署SDN的组网示意图;图2是本专利技术一种实施方式中的报文传输方法的流程图;图3是本专利技术一种实施方式中的SDN控制器的硬件结构图;图4是本专利技术一种实施方式中的报文传输装置的结构图。具体实施方式在本申请使用的术语仅仅是出于描述特定实施例的目的,而非限制本申请。本申请和权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其它含义。还应当理解,本文中使用的术语“和/或”是指包含一个或多个相关联的列出项目的任何或所有可能组合。应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,此外,所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。如图1所示,针对SDN控制器向各设备下发标签栈,以通过标签栈控制各设备按照指定路径传输报文的过程,在一种实现方式中,设备A在接收到报文时,利用报文的地址信息(如源IP地址、目的IP地址等)查询流表。针对同一地址信息的首个报文,该流表中没有匹配该地址信息的表项,针对同一地址信息的非首个报文,该流表中有匹配该地址信息的表项。针对首个报文,无法查询到对应的流表,设备A会将报文发送给SDN控制器。SDN控制器在接收到该报文之后,计算该报文的转发路径,如主转发路径可以是设备A-->设备B-->设备C-->设备D-->设备E,备份转发路径可以是设备A-->设备B-->设备G-->设备H-->设备I-->设备D-->设备E。因此,SDN控制器向设备A下发主转发路径对应的流表,该流表的匹配选项为报文的地址信息,该流表的动作选项为在报文中依次封装设备E对应的标签栈1003,设备D对应的标签栈1002,设备C对应的标签栈1001,设备B对应的标签栈1000,并使用指定出端口A1发送报文。针对非首个报文,可以直接查询到对应的流表。基于该流表,设备A在接收到匹配该流表的报文时,会在该报文中依次封装标签栈1003,标签栈1002,标签栈1001,标签栈1000,并通过出端口A1发送报文。SDN控制器还可以向设备B下发流表,该流表的匹配选项为设备B的标签栈1000,动作选项为去除报文最外层标签栈,并使用指定出端口B2发送报文。SDN控制器还可以向设备C下发流表,该流表的匹配选项为设备C本文档来自技高网...

【技术保护点】
一种报文传输方法,应用于包括源设备、目的设备、位于源设备与目的设备之间的中间设备、软件定义网络SDN控制器的系统中,其特征在于,所述方法应用在所述SDN控制器上,所述方法包括以下步骤:当确定源设备与目的设备之间的主转发路径上的第一中间设备与第二中间设备,在所述主转发路径上的链路发生故障时,计算第一中间设备与第二中间设备之间的备路径;第一中间设备与第二中间设备相比,更靠近所述源设备;为所述备路径上的位于所述第一中间设备与所述第二中间设备之间的各设备生成第一流表,并为所述第一中间设备生成第二流表;将所述第二流表下发给所述第一中间设备,以使所述第一中间设备利用所述第二流表在所述备路径上发送报文,并将所述第一流表下发给备路径上对应的设备,以使所述各设备利用第一流表在所述备路径上发送报文。

【技术特征摘要】
1.一种报文传输方法,应用于包括源设备、目的设备、位于源设备与目的
设备之间的中间设备、软件定义网络SDN控制器的系统中,其特征在于,所述
方法应用在所述SDN控制器上,所述方法包括以下步骤:
当确定源设备与目的设备之间的主转发路径上的第一中间设备与第二中间
设备,在所述主转发路径上的链路发生故障时,计算第一中间设备与第二中间
设备之间的备路径;第一中间设备与第二中间设备相比,更靠近所述源设备;
为所述备路径上的位于所述第一中间设备与所述第二中间设备之间的各设
备生成第一流表,并为所述第一中间设备生成第二流表;
将所述第二流表下发给所述第一中间设备,以使所述第一中间设备利用所
述第二流表在所述备路径上发送报文,并将所述第一流表下发给备路径上对应
的设备,以使所述各设备利用第一流表在所述备路径上发送报文。
2.根据权利要求1所述的方法,其特征在于,为所述各设备生成的第一流
表的匹配选项为本设备的标签栈,动作选项为去除报文最外层标签栈,并使用
位于所述备路径上的出端口发送报文;为所述第一中间设备生成的第二流表的
匹配选项为第一中间设备的标签栈,动作选项为去除报文最外层标签栈,封装
所述各设备的标签栈,使用位于所述备路径上的出端口发送报文。
3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
维护第一标签栈集合和第二标签栈集合,所述第一标签栈集合内的标签栈
与第二标签栈集合内的标签栈不同,所述第一标签栈集合内的标签栈用于生成
主转发路径,所述第二标签栈集合内的标签栈用于生成备路径;
所述为所述备路径上的位于所述第一中间设备与所述第二中间设备之间的
各设备生成第一流表,并为所述第一中间设备生成第二流表的过程,具体包括:
针对所述各设备中的每个设备,从所述第二标签栈集合内为该设备选择空
闲的标签栈,并利用当前选择的标签栈生成该设备对应的第一流表;
从所述第二标签栈集合内为所述第一中间设备选择空闲的标签栈,并利用

\t当前选择的标签栈生成所述第一中间设备对应的第二流表。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当第一中间设备与第二中间设备在所述主转发路径上的链路发生故障时,
通知第一中间设备无效第三流表;当第一中间设备与第二中间设备在所述主转
发路径上的链路故障恢复时,通知第一中间设备生效所述第三流表;或者,
当第一中间设备与第二中间设备在所述主转发路径上的链路发生故障时,
通知第一中间设备删除第三流表;当第一中间设备与第二中间设备在所述主转
发路径上的链路故障恢复时,则将所述SDN控制器存储的所述第三流表发送给
所述第一中间设备,并通知所述第一中间设备生效所述第三流表;
所述第三流表用于使所述第一中间设备在所述主转发路径上发送报文。
5.根据权利要求1所述的方法,其特征在于,当第一中间设备与第二中间
设备在所述主转发路径上的链路故障恢复时,所述方法还包括:
通知所述第一中间设备删除第二流表,并通知所述各设备删除第一流表。
6.一种报文传输装置,应用于包括源设备、目的设备、位于源设备与目的
设备之间的中间设备、软件定义网络SDN控制器的系统中,其特征在于,所述
装置应用在所述SDN控制器上,且所述装置具体包括:
确定模块,用于确定源设备与目的设备之间的主转发路径上的第一中间设
备与第二中间设...

【专利技术属性】
技术研发人员:黄李伟王伟
申请(专利权)人:杭州华三通信技术有限公司
类型:发明
国别省市:浙江;33

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

1