CN113489640A - 报文转发方法、装置及网关系统 - Google Patents

报文转发方法、装置及网关系统 Download PDF

Info

Publication number
CN113489640A
CN113489640A CN202110983604.2A CN202110983604A CN113489640A CN 113489640 A CN113489640 A CN 113489640A CN 202110983604 A CN202110983604 A CN 202110983604A CN 113489640 A CN113489640 A CN 113489640A
Authority
CN
China
Prior art keywords
message
programmable switch
service
gateway cluster
forwarding
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.)
Granted
Application number
CN202110983604.2A
Other languages
English (en)
Other versions
CN113489640B (zh
Inventor
李澍桐
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Kingsoft Cloud Network Technology Co Ltd
Original Assignee
Beijing Kingsoft Cloud Network Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Kingsoft Cloud Network Technology Co Ltd filed Critical Beijing Kingsoft Cloud Network Technology Co Ltd
Priority to CN202110983604.2A priority Critical patent/CN113489640B/zh
Publication of CN113489640A publication Critical patent/CN113489640A/zh
Application granted granted Critical
Publication of CN113489640B publication Critical patent/CN113489640B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0663Performing the actions predefined by failover planning, e.g. switching to standby network elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/25Routing or path finding in a switch fabric
    • H04L49/252Store and forward routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/35Switches specially adapted for specific applications

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明实施例提供了一种报文转发方法、装置及网关系统,应用于数据通信技术领域。该方法应用于网关系统中的可编程交换机,网关系统还包括网关集群,可编程交换机和网关集群具有相同的第一路由地址,且可编程交换机的路由优先级高于网关集群,该方法包括:接收前端网络设备发送的业务报文;其中,业务报文是前端网络设备在确定出第一路由地址为转发地址、且可编程交换机的路由优先级高于网关集群后,转发至可编程交换机的;判断业务报文是否为可编程交换机的可处理报文;若是,对业务报文进行报文转发;否则,将业务报文重定向至述网关集群,以利用网关集群对业务报文进行报文转发。通过本方案,可以将可编程交换机引入到云网络场景。

Description

报文转发方法、装置及网关系统
技术领域
本发明涉及数据通信技术领域,特别是涉及一种报文转发方法、装置及网关系统。
背景技术
随着网络流量的日益增长,现有的常规网关设备,由于处理能力存的限制,面对大容量的网络吞吐需求时,仅通过对常规网关设备进行横向扩展已不适应于网络流量增长趋势。
而相比于常规的网关设备,可编程交换机具有高吞吐、低时延的特性,可以很好的适用于大容量的网络吞吐需求的场景。但是,由于可编程交换机硬件技术的限制,其不具有通用编程模型,使得利用可编程交换机很难实现云网络场景中一些复杂的业务处理逻辑。同时,可编程交换机作为新型网络硬件产品,其稳定性较差,而云网络场景对稳定性要求较高,因此,使得可编程交换机很难应用于云网络场景。
因此,如何将可编程交换机引入到云网络场景中是亟需解决的技术问题。
发明内容
本发明实施例的目的在于提供一种报文转发方法、装置及网关系统,以实现将可编程交换机引入到云网络场景。具体技术方案如下:
第一方面,本发明实施例提供一种报文转发方法,应用于网关系统中的可编程交换机,所述网关系统还包括网关集群,所述可编程交换机和所述网关集群具有相同的第一路由地址,且所述可编程交换机的路由优先级高于所述网关集群;所方法包括:
接收前端网络设备发送的业务报文;其中,所述业务报文是所述前端网络设备在确定出所述第一路由地址为转发地址、且所述可编程交换机的路由优先级高于所述网关集群后,转发至所述可编程交换机的;
判断所述业务报文是否为所述可编程交换机的可处理报文;
若是,对所述业务报文进行报文转发;
否则,将所述业务报文重定向至述所述网关集群,以利用所述网关集群对所述业务报文进行报文转发。
可选的,所述判断所述业务报文是否为所述可编程交换机的可处理报文,包括:
确定所述可编程交换机的可处理报文的报文信息;
判断所述业务报文的报文信息与所确定的报文信息是否匹配;
若相匹配,则判定所述业务报文为所述可编程交换机的可处理报文,否则,判定所述业务报文为所述可编程交换机的不可处理报文。
可选的,所述报文信息为报文三元组。
可选的,所述将所述业务报文重定向至述所述网关集群,包括:
利用所述网关集群的第二路由地址,将所述业务报文重定向至所述网关集群;其中,所述第二路由地址不同于所述第一路由地址。
可选的,所述可编程交换机对所述业务报文进行报文转发的步骤,包括:
确定预先为所述可编程交换机配置的第一网段;其中,所述第一网段为所述可编程交换机的出口网段;
基于所述第一网段中的一地址,对所述业务报文进行报文转发。
可选的,所述网关集群对所述业务报文进行报文转发的步骤,包括:
确定预先为所述网关集群配置的第二网段;其中,所述第二网段为所述网关集群的出口网段;
基于所述第二网段中的一地址,对所述业务报文进行报文转发。
第二方面,本发明实施例提供一种网关系统,包括可编程交换机和网关集群;所述可编程交换机和所述网关集群具有相同的第一路由地址,且所述可编程交换机的路由优先级高于所述网关集群;其中,
所述可编程交换机,用于接收前端网络设备发送的第一业务报文;判断所述第一业务报文是否为所述可编程交换机的可处理报文;若是,对所述第一业务报文进行报文转发;否则,将所述第一业务报文重定向至述所述网关集群;其中,所述第一业务报文是所述前端网络设备在确定出所述第一路由地址为转发地址、且所述可编程交换机的路由优先级高于所述网关集群后,转发至所述可编程交换机的;
所述网关集群,用于在接收到重定向后的所述第一业务报文后,对所述第一业务报文进行报文转发。
可选的,所述网关集群,还用于接收前端网络设备发送的第二业务报文,并对所述第二业务报文进行报文转发;其中,所述第二业务报文是所述前端网络设备在检测到所述第一路由地址为转发地址且所述可编程交换机的路由地址失效时,转发至所述网关集群的。
第三方面,本发明实施例提供一种报文转发装置,应用于网关系统中的可编程交换机,所述网关系统还包括网关集群,所述可编程交换机和所述网关集群具有相同的第一路由地址,且所述可编程交换机的路由优先级高于所述网关集群;所装置包括:
报文接收模块,用于接收前端网络设备发送的业务报文;其中,所述业务报文是所述前端网络设备在确定出所述第一路由地址为转发地址、且所述可编程交换机的路由优先级高于所述网关集群后,转发至所述可编程交换机的;
报文判断模块,用于判断所述业务报文是否为所述可编程交换机的可处理报文;
报文转发模块,用于若是,对所述业务报文进行报文转发;
重定向模块,用于否则,将所述业务报文重定向至述所述网关集群,以利用所述网关集群对所述业务报文进行报文转发。
第四方面,本发明实施例提供一种可编程交换机,包括处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令,所述处理器被所述机器可执行指令促使:实现第一方面所述的方法步骤。
第五方面,本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现第一方面所述的方法步骤。
本发明实施例有益效果:
本发明实施例提供的报文转发方法、装置及网关系统,当可编程交换机接收到业务报文后,可以判断业务报文是否为可编程交换机的可处理报文,若是,则由可编程交换机对业务报文进行报文转发,若否,则可编程交换机将业务报文重定向至述网关集群,由网关集群对业务报文进行报文转发。从而使得当可编程交换机在面对云网络场景需要复杂的业务处理逻辑的业务报文时,可以将其重定向至网关集群,由网关集群进行报文转发。同时,由于可编程交换机和网关集群具有相同的第一路由地址,且可编程交换机的路由优先级高于网关集群,从而在可编程交换机失效时,前端网络设备可以向具有低优先级的第一路由地址的网关集群发送业务报文,从而实现网关路由的无损切换,避免由于可编程交换机失效对云网络场景的影响,确保了高可用。可见,通过本方案,可以将可编程交换机引入到云网络场景。
当然,实施本发明的任一产品或方法并不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的实施例。
图1为基于网关集群的报文转发流程示意图;
图2为本发明实施例从网关系统中的可编程交换机的角度所提供的报文转发方法的流程图;
图3为本发明实施例从网关系统中的可编程交换机的角度所提供的报文转发方法的另一流程图;
图4为本发明实施例所提供的报文信息配置示意图;
图5为本发明实施例从网关系统中的可编程交换机的角度所提供的报文转发方法的另一流程图;
图6为本发明实施例提供的引入可编程交换机后的组合架构示意图;
图7为本发明实施例提供的可编程交换机故障后组合架构示意图;
图8为本发明实施例提供的网关系统的结构示意图;
图9为本发明实施例从网关系统中的可编程交换机的角度所提供的报文转发装置的结构示意图;
图10为本发明实施例所提供的可编程交换机的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员基于本申请所获得的所有其他实施例,都属于本发明保护的范围。
为了更清楚的阐述本发明实施例的技术方案,对现有基于网关集群的报文转发流程进行介绍。
如图1所示,为现有的基于网关集群的报文转发流程示意图,其中,网关集群由常规的网关设备组成。网关集群通过发布网关路由(记为gwip1),从而可以接收前端网络设备发送的转发地址为gwip1的业务报文,即图中所示入向业务流量。在接收到业务报文后,网关集群可以将该业务报文转发至后端网络设备。而对于反向流量,即反向的业务报文,网关集群可以通过发布网段路由(记为localip1网段),接收反向流量,并进一步将该反向流量转发至前端网络设备。
而随着网络流量的日益增长,现有的基于x86服务器等常规的网关设备,由于处理能力存的限制,例如,单台常规的网关设备处理能力约100Gbps(GigaBit Per Second,千兆比特每秒)的级别,在面对大容量的网络吞吐需求,如以Tbps(Tera-Bits Per Second,兆兆比特每秒)计的网络吞吐需求时,通常采用对常规的网络设备进行横向扩展的方式,即增加网络设备的数量。然而采用横向扩展会导致硬件成本高,且带来集群管理逻辑复杂等缺点,因此仅通过对常规的网关设备进行横向扩展已不适应于网络流量增长趋势。
而相比于常规的网关设备,可编程交换机作为网络数据转发的平面设施,将可编程性赋能ASIC(Application Specific Integrated Circuit,专用集成电路)芯片。使得可编程交换机具有高吞吐、低时延的特性,从而可以很好的适用于大容量的网络吞吐需求的场景。
但是,由于可编程交换机硬件技术的限制,其不具有通用编程模型,使得利用可编程交换机很难实现云网络场景中一些复杂的业务处理逻辑,同时,可编程交换机作为新型网络硬件产品,其稳定性较差,而云网络场景对稳定性要求较高,使得可编程交换机很难应用于云网络场景。即,将可编程交换机引入云网络场景中,存在如下问题:
问题1:可编程交换机虽具有可编程能力,但由于各种硬件技术限制,其不具有通用编程模型,使得一些复杂的业务处理逻辑通过可编程交换机还不能实现。
问题2:可编程交换机作为新型网络硬件产品,还不具备完全稳定性。因此,在面对网络稳定性及容灾要求较高的云网络场景,如何在引入可编程交换机后还能保证云网络场景的故障恢复时延成为关键问题。
基于上述问题,在最小化改造自身网络产品逻辑、架构的同时,如何将可编程交换机引入到云网络场景中,从而充分发挥可编程交换机高性能网络转发能力是亟待解决的问题。也就是,如何将可编程交换机引入到云网络场景中是亟需解决的技术问题。
为了将可编程交换机引入到云网络场景中,本发明实施例提供了一种报文转发方法,应用于网关系统中的可编程交换机,网关系统还包括网关集群,可编程交换机和网关集群具有相同的第一路由地址,且可编程交换机的路由优先级高于网关集群,可以包括步骤:
接收前端网络设备发送的业务报文;其中,业务报文是前端网络设备在确定出第一路由地址为转发地址、且可编程交换机的路由优先级高于网关集群后,转发至可编程交换机的;
判断业务报文是否为可编程交换机的可处理报文;
若是,对业务报文进行报文转发;
否则,将业务报文重定向至述网关集群,以利用网关集群对业务报文进行报文转发。
本发明实施例提供上述方案,当可编程交换机在面对云网络场景需要复杂的业务处理逻辑的业务报文时,可以将其重定向至网关集群,由网关集群进行报文转发。同时,在可编程交换机失效时,前端网络设备可以向具有低优先级的第一路由地址的网关集群发送业务报文,从而实现网关路由的无损切换,避免由于可编程交换机失效对云网络场景的影响,确保了高可用。可见,通过本方案,可以将可编程交换机引入到云网络场景。
需要说明的是,上述网关集群可以为由常规的网关设备组成的集群。在网关系统运行的时,可编程交换机发布高优先级的第一路由地址,网关集群发布低优先级的第一路由地址。从而使得网关系统所在网络中各网络设备的路由表中包含高优先级的第一路由地址以及低优先级的第一路由地址,使得前端网络设备在进行路由路径规划时,优先选择高优先级的第一路由地址进行转发。其中,高优先级的第一路由地址的网络出端口为可编程交换机,而低优先级的第一路由地址的网络出端口为网关集群。
上述可编程交换机与网关集群发布路由使所使用的路由发布协议不限于OSPF(Open Shortest Path First,开放式最短路径优先)、BGP(Border Gateway Protocol,边界网关协议)等路由发布标准,发布方法不限于Quagga、FRR(Fast Reroute,快速重路由)等开源路由软件。
下面结合附图对本发明实施例所提供的一种报文转发方法进行介绍。
如图2所示,本发明实施例提供的一种报文转发方法,应用于网关系统中可编程交换机,网关系统还包括网关集群,可编程交换机和网关集群具有相同的第一路由地址,且可编程交换机的路由优先级高于网关集群,包括如下步骤:
S201,接收前端网络设备发送的业务报文;其中,业务报文是前端网络设备在确定出第一路由地址为转发地址、且可编程交换机的路由优先级高于网关集群后,转发至可编程交换机的;
其中,本领域技术人员所知的,当网络中一网络设备需要向另一网络设备发送报文时,该发送报文的网络设备为源端设备,而接收报文的网络设备为目的端设备。在发送报文时,基于路由机制,需要根据路由表中所记录的网络中各网络设备的路由地址,规划从源端设备至目的端设备的路由路径,并按照路由路径将报文从源端设备发送至目的端设备。路由路径包含报文在不同网络设备的路由地址之间的转发顺序,如一路由路径为:路由地址a-路由地址b-路由地址c,其意味着报文先由路由地址a的网络设备发送至路由地址b的网络设备,再由路由地址b的网络设备转发至路由地址c的网络设备。
本发明实施例中,前端网络设备为包含第一路由地址的路由路径中,位于第一路由地址之前的路由地址所属的网络设备。也就是说,前端网络设备在转发业务报文时的转发地址为第一路由地址。
可编程交换机的路由优先级高于网关集群则意味着,在前端网络设备在转发业务报文,且确定转发地址为第一路由地址后,优先将该业务报文转发至具有高优先级第一路由地址的可编程交换机。需要强调的是,若可编程交换机的第一路由地址失效,如可编程交换机出现故障,则前端网络设备在转发业务报文,且确定转发地址为第一路由地址后,可以无缝的将业务报文转发至具有低优先级第一路由地址的网关集群。
需要说明是,本发明实施例对路由优先级的表征形式不做具体限定,示例性的,可以通过1,表征高优先级的路由,而0表征低优先级的路由。
S202,判断业务报文是否为可编程交换机的可处理报文;
其中,由于各种硬件技术限制,可编程交换机不具有通用编程模型,使得可编程交换机无法处理一些需要复杂的业务处理逻辑的报文。因此,在可编程交换机接收到业务报文后,需要判断业务报文是否为可编程交换机可以处理的报文,即可处理报文。若业务报文为可编程交换机的可处理报文,则执行步骤S203,若业务报文不是可编程交换机的可处理报文,则执行步骤S204。
示例性的,可处理报文可以为大象流业务、时延敏感业务等业务的报文,其中,大象流业务为吞吐量较大的业务。而可编程交换机不可处理的报文一般为高并发的老鼠流业务、复杂逻辑业务等业务的报文,其中老鼠流业务指吞吐量较小的业务,如数据库业务、抢票业务等。
可选的,由于不同的业务可以部署于不同的设备或者同一设备但通过不同的端口进行访问,或者,不同的业务需要通过采用不同的协议类型进行访问,因此,示例性的,可以基于业务报文的报文信息判断业务报文是否为可编程交换机的可处理报文,从而方便快捷地识别业务报文是否可以可编程交换机的可处理报文。上述报文信息可以为报文三元组,即业务报文携带的目的端IP(Internet Protocol,网际互连协议)地址、目的端的端口和Vxlan(网络虚拟化)中租户ID(Identity document,身份证标识号)信息(VNI)。可选的,报文信息还可以包括协议类型等。需要强调的是,上述的判断业务报文是否为可编程交换机的可处理报文的实现方式仅仅作为示例,并不应该构成对本发明实施例的限定。在具体应用中,可以根据实际需求,设定可编程交换机可以处理的报文或业务,并基于所设定的相关信息,来判断接收到的任一业务报文是否为可编程交换机的可处理报文。
S203,对业务报文进行报文转发;
其中,可编程交换机在接收到业务报文后,可以对业务报文进行处理,并在处理后,对业务报文进行报文转发。本领域技术人员所知的,交换机等网关设备在接收到报文后均会进行相关处理,如对业务报文进行流表匹配、负载均衡处理、地址转换、隧道封装、解封装等等处理,由于本发明实施例不涉及到处理过程,因此对于报文的处理过程将不再赘述。
本发明实施例中,若业务报文为可编程交换机的可处理报文,则说明业务报文可以由可编程交换机进行处理,并在可编程交换机处理之后,对业务报文进行报文转发,将业务报文转发至后端网络设备。
可选的,在一种实现方式中,对业务报文进行报文转发的步骤,可以包括步骤A-B:
步骤A:确定预先为可编程交换机配置的第一网段;其中,第一网段为可编程交换机的出口网段;
其中,第一网段可以是可编程交换机的本地或内网IP段,第一网段包含的多个IP地址,如192.168.1.x的255.255.255.0的网段就是指IP地址集合:192.168.1.1~192.168.1.254。又如192.168.1.x的255.255.0.0的网段指的就是是指IP地址集合192.168.1.1~192.168.254.254。
可编程交换机配置的第一网段可以是预先配置的,具体配置过程将在后续介绍,在此不再赘述。
步骤B:基于第一网段中的一地址,对业务报文进行报文转发。
具体而言,从第一网段的多个IP地址中,确定一IP地址,并基于该IP地址对业务报文进行报文转发,也就是,以该IP地址作为该可编程交换机的地址,来将业务报文转发至后端设备,该后端设备为用于处理业务报文的设备。
可选的,为了实现负载均衡,在另一种实现方式中,可以基于负载均衡策略,从第一网段的多个IP地址中,确定用于转发业务报文的IP地址。
S204,将业务报文重定向至述网关集群,以利用网关集群对业务报文进行报文转发。
其中,若业务报文不是可编程交换机的可处理报文,则说明可编程交换机无法处理该业务报文,因此,需要由网关集群对业务报文进行处理。故而,可编程交换机需要将业务报文重定向至述网关集群,以利用网关集群对业务报文进行报文转发。当网关集群接收到可编程交换机发送的业务报文后,可以对业务报文进行报文转发。
可选的,在一种实现方式中,上述网关集群对业务报文进行报文转发,可以包括步骤:
步骤一:确定预先为网关集群配置的第二网段;其中,第二网段为网关集群的出口网段;
其中,与第一网段相似的,第二网段也可以是预先配置的,具体配置过程将在后续介绍,在此不再赘述。从而网关集群可以获取网关集群。其中,第二网段可以为与第一网段不同的网段。
步骤二:基于第二网段中的一地址,对业务报文进行报文转发。
具体而言,网关集群可以从第二网段的多个IP地址中,确定一IP地址,并基于该IP地址对业务报文进行报文转发,也就是,以该IP地址作为该网关集群的地址,来将业务报文转发至后端设备,该后端设备为用于处理业务报文的设备。
可选的,为了实现负载均衡,在另一种实现方式中,网关集群可以基于负载均衡策略,从第一网段的多个IP地址中,确定用于转发业务报文的IP地址。
本发明实施例提供上述方案,当可编程交换机在面对云网络场景需要复杂的业务处理逻辑的业务报文时,可以将其重定向至网关集群,由网关集群进行报文转发。同时,在可编程交换机失效时,前端网络设备可以向具有低优先级的第一路由地址的网关集群发送业务报文,从而实现网关路由的无损切换,避免由于可编程交换机失效对云网络场景的影响,确保了高可用。可见,通过本方案,可以将可编程交换机引入到云网络场景。
基于图2的实施例,如图3所示,本发明的另一实施例所提供的报文转发方法,上述S202,可以包括:
S2021,确定可编程交换机的可处理报文的报文信息;
其中,可编程交换机的可处理报文的报文信息可以预先配置的。
如图4所示,为本发明实施例提供的报文信息配置示意图。其中,网络控制平面可以基于业务识别逻辑,将可编程交换机可以处理的业务对应报文的报文信息发送至可编程交换机,或者,在一种实现方式中,将可编程交换机不可处理的业务对应报文的报文信息(即图中可卸载业务配置)发送至可编程交换机,并由可编程交换机在本地存储。而将全量业务对应报文的报文信息(即图中全部业务配置)配置于网关集群。
若可编程交换机所配置的是可处理业务对应报文的报文信息,则当可编程交换机接收到业务报文后,可以直接读取预先配置的报文信息,作为可编程交换机的可处理报文的报文信息。
若可编程交换机所配置的是不可处理业务对应报文的报文信息,则当可编程交换机接收到业务报文后,可以在读取预先配置的报文信息后,将该报文信息作为不可处理报文的报文信息,而与该报文信息不同的其他报文信息作为可处理报文的报文信息。
S2022,判断业务报文的报文信息与所确定的报文信息是否匹配;
若相匹配,则判定所述业务报文为所述可编程交换机的可处理报文,否则,判定所述业务报文为所述可编程交换机的不可处理报文。
可选的,在一种实现方式中,业务报文的报文信息与所确定的报文信息匹配可以为业务报文的报文信息与所确定的报文信息相同,反之,业务报文的报文信息与所确定的报文信息不匹配可以为业务报文的报文信息与所确定的报文信息不相同。
若业务报文的报文信息与所确定的报文信息匹配,则判定业务报文为可编程交换机的可处理报文。若业务报文的报文信息与所确定的报文信息不匹配,则判定业务报文为可编程交换机的不可处理报文。
本发明实施例提供上述方案,当可编程交换机在面对云网络场景需要复杂的业务处理逻辑的业务报文时,可以将其重定向至网关集群,由网关集群进行报文转发。同时,在可编程交换机失效时,前端网络设备可以向具有低优先级的第一路由地址的网关集群发送业务报文,从而实现网关路由的无损切换,避免由于可编程交换机失效对云网络场景的影响,确保了高可用。可见,通过本方案,可以将可编程交换机引入到云网络场景。
基于图2的实施例,如图5所示,本发明的另一实施例所提供的报文转发方法,上述S204,可以包括:
S2041,利用网关集群的第二路由地址,将业务报文重定向至网关集群;其中,第二路由地址不同于第一路由地址,以利用网关集群对业务报文进行报文转发。
可选的,在一种实现方式中,可编程交换机可以将业务报文的转发地址修改为网关集群的第二路由地址,进而将业务报文转发至第二路由地址。其中,第二路由地址可以为网关集群发布的不同于第一路由地址的路由地址。
举例而言,网关集群的第二路由地址为gwip2,在可编程交换机接收到业务报文时,其转发地址应当为gwip1,而在可编程交换机确定业务报文为不可处理的报文时,则可以将该gwip1修改为gwip2,并对业务报文进行转发,使得业务报文到达地址为gwip2的网关集群。
本发明实施例提供上述方案,当可编程交换机在面对云网络场景需要复杂的业务处理逻辑的业务报文时,可以将其重定向至网关集群,由网关集群进行报文转发。同时,在可编程交换机失效时,前端网络设备可以向具有低优先级的第一路由地址的网关集群发送业务报文,从而实现网关路由的无损切换,避免由于可编程交换机失效对云网络场景的影响,确保了高可用。可见,通过本方案,可以将可编程交换机引入到云网络场景。
为了更好的理解本公开所提供的方案,如图6所示,为引入可编程交换机后的组合架构示意图。图6中,可编程交换机发布高优先级gwip1、localip1网段。网关集群发布低优先级gwip1、localip2网段,另发布一gwip2。因为可编程交换机发布高优先级gwip1,因此转发地址为gwip1的业务报文会到达可编程交换机。可编程交换机根据预先配置的报文信息判断业务报文是否为可处理报文。若为可处理包括,则处理后经由localip1网段将报文发出,且后续该业务报文的反向流量也会回落至可编程交换机。若为不可处理的报文,则可编程交换机将该报文的转发地址改写为gwip2后发出。该业务报文会重新路由至网关集群。网关集群接收到业务报文后对该业务报文进行处理,并将处理后的业务报文由localip2网段发出,且后续反向流量会回落至网关集群。
当可编程交换机无效时,如图7为可编程交换机故障后组合架构示意图。当可编程交换机所发布的高优先级gwip1以及localip1网段路由失效时。基于现有的路由策略,网络中网络设备会进行路由收敛,其中,路由收敛指网络的拓扑结构发生变化后,路由表重新建立到发送再到学习直至稳定,并通告网络中所有相关网关设备都得知该变化的过程。简单而言,当网络中发布高优先级路由地址的节点故障后,运行在该节点上的路由软件及协议将不能正常工作。此时,其前一级节点会感知该节点故障,并逐跳向其他节点同步该节点的故障路由。在一段时间(收敛时间)内,网络中的所有节点都将感知到该节点的路由故障,使得后续的报文将不再向该节点进行转发。当路由收敛结束后,网关集群所发布的低优先级gwip1将生效,使得全部转发地址为gwip1的业务报文可以漂移至网关集群处理。从而保证了路由的自动切换以及流量的无损承接。
本发明实施例提供上述方案,当可编程交换机在面对云网络场景需要复杂的业务处理逻辑的业务报文时,可以将其重定向至网关集群,由网关集群进行报文转发。同时,在可编程交换机失效时,前端网络设备可以向具有低优先级的第一路由地址的网关集群发送业务报文,从而实现网关路由的无损切换,避免由于可编程交换机失效对云网络场景的影响,确保了高可用。可见,通过本方案,可以将可编程交换机引入到云网络场景。
基于上述的方法,本发明实施例还提供了一种网关系统。如图8所示,本发明实施例所提供的一种网关系统,可以包括可编程交换机801和网关集群802;可编程交换机801和网关集群802具有相同的第一路由地址,且可编程交换机801的路由优先级高于网关集群802;其中,
可编程交换机801,用于接收前端网络设备发送的第一业务报文;判断第一业务报文是否为可编程交换机的可处理报文;若是,对第一业务报文进行报文转发;否则,将第一业务报文重定向至述网关集群;其中,第一业务报文是前端网络设备在确定出第一路由地址为转发地址、且可编程交换机的路由优先级高于网关集群后,转发至可编程交换机的;
网关集群802,用于在接收到重定向后的第一业务报文后,对第一业务报文进行报文转发。
可选地,在一实施例中,网关集群802,还用于接收前端网络设备发送的第二业务报文,并对第二业务报文进行报文转发;其中,第二业务报文是前端网络设备在检测到第一路由地址为转发地址且可编程交换机801的路由地址失效时,转发至网关集群802的。
其中,当可编程交换机失效,如可编程交换机出现故障,导致可编程交换机所发布的第一路由地址和/或第一网段内失效时,前端网络设备可以将第二业务报文发送至具有低优先级第一路由地址的网关集群,由网关集群接收第二业务报文,并对第二业务报文进行报文转发。从而实现网关路由的无损切换,避免由于可编程交换机失效对云网络场景的影响,确保了高可用。
其中,可编程交换机出现故障可以通过路由收敛进行确定,具体实现方式与现有技术相同,在此不再赘述。
本发明实施例提供上述方案,当可编程交换机在面对云网络场景需要复杂的业务处理逻辑的业务报文时,可以将其重定向至网关集群,由网关集群进行报文转发。同时,在可编程交换机失效时,前端网络设备可以向具有低优先级的第一路由地址的网关集群发送业务报文,从而实现网关路由的无损切换,避免由于可编程交换机失效对云网络场景的影响,确保了高可用。可见,通过本方案,可以将可编程交换机引入到云网络场景。
关于本发明实施例所提供的一种网关系统,由于与上述的从网关系统中的可编程交换机角度所提供的方法是相对应的,所以描述的比较简单,相关之处参见从网关系统中的可编程交换机角度所提供的方法的说明即可。
相应于上述从网关系统中的可编程交换机角度所提供的方法,如图9所示,本申请还提供了一种报文转发装置,应用于网关系统中的可编程交换机,所述网关系统还包括网关集群,所述可编程交换机和所述网关集群具有相同的第一路由地址,且所述可编程交换机的路由优先级高于所述网关集群;所装置包括:
报文接收模块901,用于接收前端网络设备发送的业务报文;其中,所述业务报文是所述前端网络设备在确定出所述第一路由地址为转发地址、且所述可编程交换机的路由优先级高于所述网关集群后,转发至所述可编程交换机的;
报文判断模块902,用于判断所述业务报文是否为所述可编程交换机的可处理报文;
报文转发模块903,用于若是,对所述业务报文进行报文转发;
重定向模块904,用于否则,将所述业务报文重定向至述所述网关集群,以利用所述网关集群对所述业务报文进行报文转发。
可选地,在一实施例中,所述报文判断模块,具体用于确定所述可编程交换机的可处理报文的报文信息;判断所述业务报文的报文信息与所确定的报文信息是否匹配;若相匹配,则判定所述业务报文为所述可编程交换机的可处理报文,否则,判定所述业务报文为所述可编程交换机的不可处理报文。
可选地,在一实施例中,所述报文信息为报文三元组。
可选地,在一实施例中,所述重定向模块,具体用于利用所述网关集群的第二路由地址,将所述业务报文重定向至所述网关集群;其中,所述第二路由地址不同于所述第一路由地址。
可选地,在一实施例中,所述报文转发模块,具体用于确定预先为所述可编程交换机配置的第一网段;其中,所述第一网段为所述可编程交换机的出口网段;基于所述第一网段中的一地址,对所述业务报文进行报文转发。
可选地,在一实施例中,所述重定向模块,具体用于确定预先为所述网关集群配置的第二网段;其中,所述第二网段为所述网关集群的出口网段;
基于所述第二网段中的一地址,对所述业务报文进行报文转发。
本发明实施例提供上述方案,当可编程交换机在面对云网络场景需要复杂的业务处理逻辑的业务报文时,可以将其重定向至网关集群,由网关集群进行报文转发。同时,在可编程交换机失效时,前端网络设备可以向具有低优先级的第一路由地址的网关集群发送业务报文,从而实现网关路由的无损切换,避免由于可编程交换机失效对云网络场景的影响,确保了高可用。可见,通过本方案,可以将可编程交换机引入到云网络场景。
本发明实施例还提供了一种可编程交换机,如图10所示,包括处理器1001和机器可读存储介质1002,所述机器可读存储介质存储1002有能够被所述处理器1001执行的机器可执行指令,所述处理器1001被所述机器可执行指令促使:实现上述任一报文转发方法的步骤。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
上述机器可读存储介质可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选地,机器可读存储介质还可以是至少一个位于远离前述处理器的存储装置。
在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一报文转发方法的步骤。
在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一报文转发方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统、装置、计算机可读存储介质、计算机程序产品实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (11)

1.一种报文转发方法,其特征在于,应用于网关系统中的可编程交换机,所述网关系统还包括网关集群,所述可编程交换机和所述网关集群具有相同的第一路由地址,且所述可编程交换机的路由优先级高于所述网关集群;所方法包括:
接收前端网络设备发送的业务报文;其中,所述业务报文是所述前端网络设备在确定出所述第一路由地址为转发地址、且所述可编程交换机的路由优先级高于所述网关集群后,转发至所述可编程交换机的;
判断所述业务报文是否为所述可编程交换机的可处理报文;
若是,对所述业务报文进行报文转发;
否则,将所述业务报文重定向至述所述网关集群,以利用所述网关集群对所述业务报文进行报文转发。
2.根据权利要求1所述的方法,其特征在于,所述判断所述业务报文是否为所述可编程交换机的可处理报文,包括:
确定所述可编程交换机的可处理报文的报文信息;
判断所述业务报文的报文信息与所确定的报文信息是否匹配;
若相匹配,则判定所述业务报文为所述可编程交换机的可处理报文,否则,判定所述业务报文为所述可编程交换机的不可处理报文。
3.根据权利要求2所述的方法,其特征在于,所述报文信息为报文三元组。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述将所述业务报文重定向至述所述网关集群,包括:
利用所述网关集群的第二路由地址,将所述业务报文重定向至所述网关集群;其中,所述第二路由地址不同于所述第一路由地址。
5.根据权利要求1-3任一项所述的所述的方法,其特征在于,所述可编程交换机对所述业务报文进行报文转发的步骤,包括:
确定预先为所述可编程交换机配置的第一网段;其中,所述第一网段为所述可编程交换机的出口网段;
基于所述第一网段中的一地址,对所述业务报文进行报文转发。
6.根据权利要求1-4任一项所述的方法,其特征在于,所述网关集群对所述业务报文进行报文转发的步骤,包括:
确定预先为所述网关集群配置的第二网段;其中,所述第二网段为所述网关集群的出口网段;
基于所述第二网段中的一地址,对所述业务报文进行报文转发。
7.一种网关系统,其特征在于,包括可编程交换机和网关集群;所述可编程交换机和所述网关集群具有相同的第一路由地址,且所述可编程交换机的路由优先级高于所述网关集群;其中,
所述可编程交换机,用于接收前端网络设备发送的第一业务报文;判断所述第一业务报文是否为所述可编程交换机的可处理报文;若是,对所述第一业务报文进行报文转发;否则,将所述第一业务报文重定向至述所述网关集群;其中,所述第一业务报文是所述前端网络设备在确定出所述第一路由地址为转发地址、且所述可编程交换机的路由优先级高于所述网关集群后,转发至所述可编程交换机的;
所述网关集群,用于在接收到重定向后的所述第一业务报文后,对所述第一业务报文进行报文转发。
8.根据权利要求7所述的网关系统,其特征在于,所述网关集群,还用于接收前端网络设备发送的第二业务报文,并对所述第二业务报文进行报文转发;其中,所述第二业务报文是所述前端网络设备在检测到所述第一路由地址为转发地址且所述可编程交换机的路由地址失效时,转发至所述网关集群的。
9.一种报文转发装置,其特征在于,应用于网关系统中的可编程交换机,所述网关系统还包括网关集群,所述可编程交换机和所述网关集群具有相同的第一路由地址,且所述可编程交换机的路由优先级高于所述网关集群;所装置包括:
报文接收模块,用于接收前端网络设备发送的业务报文;其中,所述业务报文是所述前端网络设备在确定出所述第一路由地址为转发地址、且所述可编程交换机的路由优先级高于所述网关集群后,转发至所述可编程交换机的;
报文判断模块,用于判断所述业务报文是否为所述可编程交换机的可处理报文;
报文转发模块,用于若是,对所述业务报文进行报文转发;
重定向模块,用于否则,将所述业务报文重定向至述所述网关集群,以利用所述网关集群对所述业务报文进行报文转发。
10.一种可编程交换机,其特征在于,包括处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令,所述处理器被所述机器可执行指令促使:实现权利要求1-6任一所述的方法步骤。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-6任一所述的方法步骤。
CN202110983604.2A 2021-08-25 2021-08-25 报文转发方法、装置及网关系统 Active CN113489640B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110983604.2A CN113489640B (zh) 2021-08-25 2021-08-25 报文转发方法、装置及网关系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110983604.2A CN113489640B (zh) 2021-08-25 2021-08-25 报文转发方法、装置及网关系统

Publications (2)

Publication Number Publication Date
CN113489640A true CN113489640A (zh) 2021-10-08
CN113489640B CN113489640B (zh) 2023-08-01

Family

ID=77947094

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110983604.2A Active CN113489640B (zh) 2021-08-25 2021-08-25 报文转发方法、装置及网关系统

Country Status (1)

Country Link
CN (1) CN113489640B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113965453A (zh) * 2021-10-26 2022-01-21 中国科学技术大学苏州高等研究院 基于网关集群的云计算网络流量健壮转发方法
CN115408127A (zh) * 2022-08-25 2022-11-29 科东(广州)软件科技有限公司 一种type1型操作系统中任务分担的装置与方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112367278A (zh) * 2020-11-03 2021-02-12 清华大学 基于可编程数据交换机的云网关系统及其报文处理方法
CN112804154A (zh) * 2021-01-04 2021-05-14 北京金山云网络技术有限公司 报文处理方法、装置、电子设备及介质
CN113285892A (zh) * 2020-02-20 2021-08-20 华为技术有限公司 报文处理系统、方法、机器可读存储介质以及程序产品

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113285892A (zh) * 2020-02-20 2021-08-20 华为技术有限公司 报文处理系统、方法、机器可读存储介质以及程序产品
CN112367278A (zh) * 2020-11-03 2021-02-12 清华大学 基于可编程数据交换机的云网关系统及其报文处理方法
CN112804154A (zh) * 2021-01-04 2021-05-14 北京金山云网络技术有限公司 报文处理方法、装置、电子设备及介质

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113965453A (zh) * 2021-10-26 2022-01-21 中国科学技术大学苏州高等研究院 基于网关集群的云计算网络流量健壮转发方法
CN113965453B (zh) * 2021-10-26 2023-07-28 中国科学技术大学苏州高等研究院 基于网关集群的云计算网络流量健壮转发方法
CN115408127A (zh) * 2022-08-25 2022-11-29 科东(广州)软件科技有限公司 一种type1型操作系统中任务分担的装置与方法

Also Published As

Publication number Publication date
CN113489640B (zh) 2023-08-01

Similar Documents

Publication Publication Date Title
US9887917B2 (en) Port extender
US20190020574A1 (en) Failure protection for traffic-engineered bit indexed explicit replication
US9019814B1 (en) Fast failover in multi-homed ethernet virtual private networks
JP5760083B2 (ja) プライマリマルチキャストツリーからスタンバイマルチキャストツリーに高速に切り換えるための方法および装置
EP2974166B1 (en) Method and apparatus for ip/mpls fast reroute
CN109714238B (zh) 一种用于实现虚拟机间通信的方法及设备
US10187290B2 (en) Method, system, and apparatus for preventing tromboning in inter-subnet traffic within data center architectures
US8547877B2 (en) RSTP tracking
US20230013366A1 (en) Route detection method and network device
CN104754025A (zh) 可编程分布式联网
CN113489640B (zh) 报文转发方法、装置及网关系统
CN108574634A (zh) 用于跨越共享标签的标签交换路径提供节点保护的装置、系统和方法
US11050655B2 (en) Route information distribution through cloud controller
US20240097940A1 (en) Packet Transmission Method, Device, and System
US11695693B2 (en) Packet transmission method, device, and system
US10027589B1 (en) Apparatus, system, and method for achieving redundancy and load-balancing across communication layers within networks
US20190297008A1 (en) Apparatus, system, and method for sharing labels across label-switched paths within networks
US20200341968A1 (en) Differential Update of Local Cache from Central Database
US11799749B1 (en) Systems and methods for facilitating traceroute operations across segment routing paths within networks
WO2023202639A1 (zh) 报文发送的方法、网络设备及通信系统
US11936559B2 (en) Fast receive re-convergence of multi-pod multi-destination traffic in response to local disruptions
US20240137314A1 (en) Service chaining in fabric networks
WO2022222884A1 (zh) 转发路径的故障感知方法、装置及系统
CN117499295A (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