CN114826998B - 基于业务功能链的报文转发方法、控制器以及存储介质 - Google Patents

基于业务功能链的报文转发方法、控制器以及存储介质 Download PDF

Info

Publication number
CN114826998B
CN114826998B CN202110128198.1A CN202110128198A CN114826998B CN 114826998 B CN114826998 B CN 114826998B CN 202110128198 A CN202110128198 A CN 202110128198A CN 114826998 B CN114826998 B CN 114826998B
Authority
CN
China
Prior art keywords
sff
forwarding table
sfc
service
value
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.)
Active
Application number
CN202110128198.1A
Other languages
English (en)
Other versions
CN114826998A (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.)
China Telecom Corp Ltd
Original Assignee
China Telecom Corp 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 China Telecom Corp Ltd filed Critical China Telecom Corp Ltd
Priority to CN202110128198.1A priority Critical patent/CN114826998B/zh
Priority to PCT/CN2021/133591 priority patent/WO2022160908A1/zh
Publication of CN114826998A publication Critical patent/CN114826998A/zh
Application granted granted Critical
Publication of CN114826998B publication Critical patent/CN114826998B/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
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/54Organization of routing tables
    • 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/12Discovery or management of network topologies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/028Dynamic adaptation of the update intervals, e.g. event-triggered updates

Abstract

本公开提供了一种基于业务功能链的报文转发方法、系统、控制器以及存储介质,涉及SDN技术领域,其中的方法包括:控制器生成与业务功能路径SFP中的全部业务功能处理器SF相对应的第一SFC转发表;其中,多条转发信息的多个SI值被设置为不连续的多个数值;控制器如果确定插入第三SF,则增加与第三SF相对应的第三转发信息,生成第二SFC转发表,其中,控制器在第一转发信息的SI值和第二转发信息的SI值之间确定一个数值,作为第三转发信息的SI值。本公开的方法、系统、控制器以及存储介质,通过非均匀递减的方式设置SI值,用于给SF的插入提供空间,只需对更新的SF及其前一跳SF所对应的SFF进行转发表的更新,能够减少数据发送量。

Description

基于业务功能链的报文转发方法、控制器以及存储介质
技术领域
本公开涉及SDN技术领域,尤其涉及一种基于业务功能链的报文转发方法、系统、控制器以及存储介质。
背景技术
SFC(Service Function Chaining,业务功能链)是一种部署增值业务的机制。目前,在同一个SFC中,不同的SFP(Service Function Path,业务功能路径)之间可以通过SPI(Service Path Index,业务路径标识)来区分,每个SPI对应一个SFP。SFC的业务节点的顺序使用SI(Service Index,业务索引)值表示,SI值每减1对应到下一跳的SF(ServiceFunction,业务功能处理器)。但是,在移动的环境下,SFC业务节点的更新较快,需要一个SFP在短时间内灵活地插入一个SF;当一个SFP插入一个SF时,原有的SI值不再对应原有的SF,当报文传输到SFF时,SFF将会查询到错误的下一跳SF信息;现有的解决方法是对整条路径上的全部SFF进行SFC转发表更新,在移动场景下频繁更新SFC转发表,将使转发面具有很大的数据发送量。
发明内容
有鉴于此,本发明要解决的一个技术问题是提供一种基于业务功能链的报文转发方法、系统、控制器以及存储介质。
根据本公开的第一方面,提供一种基于业务功能链SFC的报文转发方法,包括:控制器生成与业务功能路径SFP中的全部业务功能处理器SF相对应的第一SFC转发表;其中,所述第一SFC转发表包括多条转发信息,所述转发信息包括业务路径标识SPI、业务索引SI值和SF信息;所述多条转发信息的多个SI值被设置为不连续的多个数值;所述控制器如果确定在第一SF和第二SF之间插入第三SF,则基于所述第一SFC转发表确定分别与所述第一SF和所述第二SF相对应的第一转发信息和第二转发信息;所述控制器在所述第一SFC转发表中增加与所述第三SF相对应的第三转发信息,生成所述第二SFC转发表;其中,所述控制器在所述第一转发信息的SI值和所述第二转发信息的SI值之间确定一个数值,作为所述第三转发信息的SI值。
可选地,所述控制器在生成所述第一SFC转发表之后,将所述第一SFC转发表发送给所述SFP中的全部业务功能转发器SFF。
可选地,所述控制器在生成所述第二SFC转发表之后,确定分别与所述第一SF和所述第三SF相对应的第一SFF和第三SFF;所述控制器将所述第二SFC转发表发送给所述第一SFF和所述第三SFF,以使所述第一SFF使用所述第二SFC转发表替换所述第一SFC转发表。
可选地,所述控制器设置与所述SFP中的全部SF与全部SFF相对应的业务处理对应关系信息;所述控制器将所述业务处理对应关系信息发送给所述SFP中的全部SFF。
可选地,在所述第一SF处理第一业务报文之后,所述第一SFF基于所述第二SFC转发表确定下一个SF为所述第三SF,以及与所述第三SF相对应的SI值和SPI;所述第一SFF基于所述业务处理对应关系信息确定与所述第三SF对应的第三SFF;所述第一SFF生成第三业务报文并发送给所述第三SFF;其中,所述第三业务报文中携带有与所述第三SF相对应的SI值和SPI;所述第三SFF根据所述第三业务报文携带的与所述第三SF相对应的SI值和SPI,并基于所述第二SFC转发表确定当前SF为所述第三SF,控制所述第三SF对所述第三业务报文进行处理。
可选地,第二SFF接收到所述第三SFF发送的第二业务报文;所述第二SFF基于所述第一SFC转发表并根据从所述第二业务报文中提取的SI值和SPI,确定当前SF为所述第二SF,控制所述第二SF处理所述第二业务报文。
可选地,所述控制器如果确定删除了所述第三SF,则将所述第一SFC转发表发送给所述第一SFF,以使所述第一SFF使用所述第一SFC转发表替换所述第二SFC转发表,并控制所述第三SFF删除所述第二SFC转发表。
可选地,在所述第一SFC转发表中,任意相邻的两个转发信息的两个SI值之间的差值大于预设的间隔阈值。
可选地,在所述第一SFC转发表中,多个SI值被设置为由大到小的多个数值,并且,任意相邻的两个转发信息的两个SI值之间的差值都不相同。
根据本公开的第二方面,提供一种控制器,包括:转发表生成模块,用于生成与业务功能路径SFP中的全部业务功能处理器SF相对应的第一SFC转发表;其中,所述第一SFC转发表包括多条转发信息,所述转发信息包括业务路径标识SPI、业务索引SI值和SF信息;所述多条转发信息的多个SI值被设置为不连续的多个数值;转发表更新模块,用于如果确定在第一SF和第二SF之间插入第三SF,则基于所述第一SFC转发表确定分别与所述第一SF和所述第二SF相对应的第一转发信息和第二转发信息;在所述第一SFC转发表中增加与所述第三SF相对应的第三转发信息,生成所述第二SFC转发表;其中,在所述第一转发信息的SI值和所述第二转发信息的SI值之间确定一个数值,作为所述第三转发信息的SI值。
可选地,所述转发表生成模块,用于在生成所述第一SFC转发表之后,将所述第一SFC转发表发送给所述SFP中的全部业务功能转发器SFF。
可选地,所述转发表更新模块,还用于在生成所述第二SFC转发表之后,确定分别与所述第一SF和所述第三SF相对应的第一SFF和第三SFF;将所述第二SFC转发表发送给所述第一SFF和所述第三SFF,其中,所述第一SFF使用所述第二SFC转发表替换所述第一SFC转发表。
可选地,处理关系设置模块,用于设置与所述SFP中的全部SF与全部SFF相对应的业务处理对应关系信息,将所述业务处理对应关系信息发送给所述SFP中的全部SFF。
可选地,所述转发表更新模块,用于如果确定删除了所述第三SF,则将所述第一SFC转发表发送给所述第一SFF,以使所述第一SFF使用所述第一SFC转发表替换所述第二SFC转发表,并控制所述第三SFF删除所述第二SFC转发表。
可选地,在所述第一SFC转发表中,任意相邻的两个转发信息的两个SI值之间的差值大于预设的间隔阈值。
可选地,在所述第一SFC转发表中,多个SI值被设置为由大到小的多个数值,并且,任意相邻的两个转发信息的两个SI值之间的差值都不相同。
根据本公开的第三方面,提供一种基于业务功能链SFC的报文转发系统,包括:如上所述的控制器。
可选地,包括:第一SFF、第二SFF和第三SFF;所述第一SFF,用于在第一SF处理第一业务报文之后,基于第二SFC转发表确定下一个SF为第三SF,以及与所述第三SF相对应的SI值和SPI;基于所述业务处理对应关系信息确定与所述第三SF对应的所述第三SFF;生成第三业务报文并发送给所述第三SFF;其中,所述第三业务报文中携带有与所述第三SF相对应的SI值和SPI;所述第三SFF,用于根据所述第三业务报文携带的与所述第三SF相对应的SI值和SPI,并基于所述第二SFC转发表确定当前SF为所述第三SF,控制所述第三SF对所述第三业务报文进行处理。
可选地,所述第二SFF,用于接收所述第三SFF发送的第二业务报文,基于所述第一SFC转发表并根据从所述第二业务报文中提取的SI值和SPI,确定当前SF为所述第二SF,控制所述第二SF处理所述第二业务报文。
根据本公开的第四方面,提供一种控制器,包括:存储器;以及耦接至所述存储器的处理器,所述处理器被配置为基于存储在所述存储器中的指令,执行如上所述的方法。
根据本公开的第五方面,提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述指令被处理器执行如上的方法。
本公开的基于业务功能链的报文转发方法、系统、控制器以及存储介质,通过非均匀递减的方式设置SI值,用于给SF的插入提供空间,只需对更新的SF及其前一跳SF所对应的SFF进行转发表的更新,解决了移动环境下因为SFP业务节点的改变而导致全部下游SFF需进行转发表更新的问题,能够减少转发面的数据发送量,减少系统资源的占用量。
附图说明
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。
图1A为现有技术中的业务报文转发示意图;
图1B为根据本公开的基于业务功能链的报文转发方法的一个实施例的流程示意图;
图2为根据本公开的基于业务功能链的报文转发方法的一个实施例中的发送第二SFC转发表的流程示意图;
图3为根据本公开的基于业务功能链的报文转发方法的一个实施例中的对业务报文进行处理的流程示意图;
图4为根据本公开的基于业务功能链的报文转发方法的另一个实施例的业务报文转发示意图;
图5为根据本公开的控制器的一个实施例的模块示意图;
图6为根据本公开的控制器的另一个实施例的模块示意图;
图7为根据本公开的基于业务功能链的报文转发系统的一个实施例的模块示意图。
具体实施方式
下面参照附图对本公开进行更全面的描述,其中说明本公开的示例性实施例。下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本公开保护的范围。下面结合各个图和实施例对本公开的技术方案进行多方面的描述。
下文中的“第一”、“第二”等仅用于描述上相区别,并没有其它特殊的含义。
在现有技术中,如图1A所示,业务报文达到SFF1之后,查找转发表(SFC转发表)确定SI=255对应的SF为CGN(Carrier-Grade NAT,运营商级的NAT)处理器,简称CGN。SFF1将业务报文转发给CGN进行处理,CGN处理业务报文并将SI值减1后,将业务报文发送给SFF1。SFF1将报文进行NSH封装(SPI=22,SI=254),查找转发表确定SI=254对应的SF是DPI(Deep Packet Inspection,深度报文检测)处理器,简称DPI,确定DPI位于SFF2,将业务报文转发给SFF2。
SFF2接收到业务报文后将业务报文转给DPI处理,再将SI-1=253,查找转发表确定253对应FW,SFF2将业务报文转发给SFF3处理。如果这时需要在DPI之后进行Loadbalance的操作,则LB(新插入的SF)所对应的SI应该是253,而转发表的253对应的是FW,出现差错。控制器需将SFC转发表进行更新,其中,将SI=253对应于LB,并将SI=252对应于FW,对路径中的SFF2及其所有下游的SFF进行转发表的更新。
图1B为根据本公开的基于业务功能链的报文转发方法的一个实施例的流程示意图,如图1B所示:
步骤101,控制器生成与业务功能路径SFP中的全部业务功能处理器SF相对应的第一SFC转发表。第一SFC转发表包括多条转发信息,转发信息包括业务路径标识SPI、业务索引SI值和SF信息等;多条转发信息的多个SI值被设置为不连续的多个数值。
在一个实施例中,在第一SFC转发表中,任意相邻的两个转发信息的两个SI值之间的差值大于预设的间隔阈值,间隔阈值可以为2,3,4等。在第一SFC转发表中,多个SI值被设置为由大到小的多个数值,并且,任意相邻的两个转发信息的两个SI值之间的差值都不相同。控制器在生成第一SFC转发表之后,将第一SFC转发表发送给SFP中的全部业务功能转发器SFF。
步骤102,控制器如果确定在第一SF和第二SF之间插入第三SF,则基于第一SFC转发表确定分别与第一SF和第二SF相对应的第一转发信息和第二转发信息。
步骤103,控制器在第一SFC转发表中增加与第三SF相对应的第三转发信息,生成第二SFC转发表;其中,控制器在第一转发信息的SI值和第二转发信息的SI值之间确定一个数值,作为第三转发信息的SI值。
图2为根据本公开的基于业务功能链的报文转发方法的一个实施例中的发送第二SFC转发表的流程示意图,如图2所示:
步骤201,控制器在生成第二SFC转发表之后,确定分别与第一SF和第三SF相对应的第一SFF和第三SFF。
步骤202,控制器将第二SFC转发表发送给第一SFF和第三SFF,以使第一SFF使用第二SFC转发表替换第一SFC转发表。
上述实施例中的基于业务功能链的报文转发方法,修改了SI值单调减1的设置方式,通过非均匀递减的方式设置SI值,用于给SF的插入和移出提供空间,只需对更新的SF及其前一跳SF所对应的SFF进行转发表的更新,解决了移动环境下因为SFP业务节点的改变而导致全部下游SFF需进行转发表更新的问题。
在一个实施例中,控制器设置与SFP中的全部SF与全部SFF相对应的业务处理对应关系信息,控制器将业务处理对应关系信息发送给SFP中的全部SFF。例如,控制器设置的业务处理对应关系信息包括多条对应关系信息,每个对应关系信息都为SFF与SF的对应关系信息;在转发业务报文时,SFF通过查询业务处理对应关系信息确定下一跳SF对应的下游SFF,将业务报文转发给查询出的下游SFF。
图3为根据本公开的基于业务功能链的报文转发方法的一个实施例中的对业务报文进行处理的流程示意图,如图3所示:
步骤301,在第一SF处理第一业务报文之后,第一SFF基于第二SFC转发表确定下一个SF为第三SF,以及与第三SF相对应的SI值和SPI。
步骤302,第一SFF基于业务处理对应关系信息确定与第三SF对应的第三SFF。
步骤303,第一SFF生成第三业务报文并发送给第三SFF;其中,第三业务报文中携带有与第三SF相对应的SI值和SPI。
步骤304,第三SFF根据第三业务报文携带的与第三SF相对应的SI值和SPI,并基于第二SFC转发表确定当前SF为第三SF,控制第三SF对第三业务报文进行处理。NSH(NetworkService Header,网络服务报头)是为业务链设计的封装格式,可以使用NSH格式生成业务报文。
步骤305,第二SFF接收到第三SFF发送的第二业务报文。
步骤306,第二SFF基于第一SFC转发表并根据从第二业务报文中提取的SI值和SPI,确定当前SF为第二SF,控制第二SF处理第二业务报文。
在一个实施例,控制器如果确定删除了第三SF,则将第一SFC转发表发送给第一SFF,以使第一SFF使用第一SFC转发表替换第二SFC转发表,并控制第三SFF删除第二SFC转发表。第一SFF和第三SFF基于第一SFC转发表进行业务报文的处理以及转发。
在一个实施例中,如图4所示,控制器生成与业务功能路径SFP中的4个SF相对应的第一SFC转发表(位于图4中左侧的转发表);其中,第一SFC转发表包括4条转发信息,转发信息包含SPI、SI值和SF信息;4条转发信息的4个SI值被设置为不连续的4个数值:255,240,220,210。
控制器生成第一SFC转发表时,使用不连续的SI值,并根据具体业务设计SI值之间的间隔,使得SI值和SI值之间有足够的空间可以插入或者移出SF,并将第一SFC转发表下发给SFP中所有的SFF。控制器设置业务处理对应关系信息,业务处理对应关系信息包括多条对应关系信息,对应关系信息为SFF与SF的对应信息。在转发业务报文时,SFF通过查询业务处理对应关系信息确定SF对应的下游SFF,将业务报文转发给查询出的下游SFF。
报文达到SFF1之后,查找第一SFC转发表确定SI=255对应的SF是CGN,将业务报文转发给CGN进行处理。这时临时需要在DPI和FW之间插入一个SF(load balance,位于SFF5)。控制器生成第二SFC转发表,将SI=235及其对应的LB加入第二SFC转发表(位于图4中右侧的转发表),其他的转发信息不变,并将第二SFC转发表下发给SFF2(第一SFF)和SFF5(第三SFF)。
控制器基于LB与SFF5的对应关系更新业务处理对应关系信息,并下发给全部SFF。SFF1对CGN处理后的业务报文进行NSH封装,并在业务报文中加入SPI=22,SI值=240;SFF1通过查询业务处理对应关系信息确定与DPI对应的SFF为SFF2,将业务报文发送给SFF2。
SFF2查找第二SFC转发表确定下一个SI值是235,将DPI处理后的报文进行NSH封装并加入SPI=22,SI=235;SFF2查询业务处理对应关系信息确定与LB对应的SFF为SFF5,将业务报文转发给SFF5。基于相同的处理方式,SFF5根据第二SFC转发表以及业务处理对应关系信息将业务报文转发给SFF3(第二SFF),业务报文包含SPI=22,SI=220。SFF3收到业务报文后,查找第一SFC转发表,将业务报文转发给SFF4,业务报文包含SPI=22,SI=210。SFF4查找第一SFC转发表继续转发报文,所有的下游SFF都使用旧的第一SFC转发表。
在一个实施例中,如图5所示,本公开提供一种控制器50,包括:转发表生成模块51、转发表更新模块52和处理关系设置模块53。转发表生成模块51生成与业务功能路径SFP中的全部业务功能处理器SF相对应的第一SFC转发表。第一SFC转发表包括多条转发信息,转发信息包括业务路径标识SPI、业务索引SI值和SF信息;多条转发信息的多个SI值被设置为不连续的多个数值;
转发表更新模块52如果确定在第一SF和第二SF之间插入第三SF,则基于第一SFC转发表确定分别与第一SF和第二SF相对应的第一转发信息和第二转发信息。转发表更新模块52在第一SFC转发表中增加与第三SF相对应的第三转发信息,生成第二SFC转发表;其中,在第一转发信息的SI值和第二转发信息的SI值之间确定一个数值,作为第三转发信息的SI值。
在第一SFC转发表中,任意相邻的两个转发信息的两个SI值之间的差值大于预设的间隔阈值。在第一SFC转发表中,多个SI值被设置为由大到小的多个数值,并且,任意相邻的两个转发信息的两个SI值之间的差值都不相同。
转发表生成模块51在生成第一SFC转发表之后,将第一SFC转发表发送给SFP中的全部SFF。转发表更新模块52在生成第二SFC转发表之后,确定分别与第一SF和第三SF相对应的第一SFF和第三SFF,将第二SFC转发表发送给第一SFF和第三SFF,其中,第一SFF使用第二SFC转发表替换第一SFC转发表。
在一个实施例中,处理关系设置模块53设置与SFP中的全部SF与全部SFF相对应的业务处理对应关系信息,将业务处理对应关系信息发送给SFP中的全部SFF。转发表更新模块52如果确定删除了第三SF,则将第一SFC转发表发送给第一SFF,以使第一SFF使用第一SFC转发表替换第二SFC转发表,并控制第三SFF删除第二SFC转发表。
在一个实施例中,图6为根据本公开的控制器的另一个实施例的模块示意图。如图6所示,该装置可包括存储器61、处理器62、通信接口63以及总线64。存储器61用于存储指令,处理器62耦合到存储器61,处理器62被配置为基于存储器61存储的指令执行实现上述的基于业务功能链的报文转发方法。
存储器61可以为高速RAM存储器、非易失性存储器(non-volatile memory)等,存储器61也可以是存储器阵列。存储器61还可能被分块,并且块可按一定的规则组合成虚拟卷。处理器62可以为中央处理器CPU,或专用集成电路ASIC(Application SpecificIntegrated Circuit),或者是被配置成实施本公开的基于业务功能链的报文转发方法的一个或多个集成电路。
在一个实施例中,如图7所示,本公开提供一种基于业务功能链SFC的报文转发系统,包括如上任一个实施例中的控制器71、第一SFF 72、第二SFF 73和第三SFF 74。第一SFF72在第一SF 75处理第一业务报文之后,基于第二SFC转发表确定下一个SF为第三SF 74,以及与第三SF 77相对应的SI值和SPI。第一SFF 72基于业务处理对应关系信息确定与第三SF77对应的第三SFF 74。第一SFF 72生成第三业务报文并发送给第三SFF 74,其中,第三业务报文中携带有与第三SF相对应的SI值和SPI。
第三SFF 74根据第三业务报文携带的与第三SF相对应的SI值和SPI,并基于第二SFC转发表确定当前SF为第三SF 77,控制第三SF 77对第三业务报文进行处理。第二SFF 73接收第三SFF 74发送的第二业务报文,基于第一SFC转发表并根据从第二业务报文中提取的SI值和SPI,确定当前SF为第二SF 76,控制第二SF 76处理第二业务报文。
在一个实施例中,本公开提供一种计算机可读存储介质,计算机可读存储介质存储有计算机指令,指令被处理器执行时实现如上任一个实施例中的基于业务功能链的报文转发方法。
上述实施例提供的基于业务功能链的报文转发方法、系统、控制器以及存储介质,通过非均匀递减的方式设置SI值,用于给SF的插入提供空间,只需对更新的SF及其前一跳SF所对应的SFF进行转发表的更新,解决了移动环境下因为SFP业务节点的改变而导致全部下游SFF需进行转发表更新的问题,能够减少转发面的数据发送量,减少系统资源的占用量。
可能以许多方式来实现本公开的方法和系统。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本公开的方法和系统。用于方法的步骤的上述顺序仅是为了进行说明,本公开的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本公开实施为记录在记录介质中的程序,这些程序包括用于实现根据本公开的方法的机器可读指令。因而,本公开还覆盖存储用于执行根据本公开的方法的程序的记录介质。
本公开的描述是为了示例和描述起见而给出的,而并不是无遗漏的或者将本公开限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显然的。选择和描述实施例是为了更好说明本公开的原理和实际应用,并且使本领域的普通技术人员能够理解本公开从而设计适于特定用途的带有各种修改的各种实施例。

Claims (21)

1.一种基于业务功能链的报文转发方法,包括:
控制器生成与业务功能路径SFP中的全部业务功能处理器SF相对应的第一SFC转发表;
其中,所述第一SFC转发表包括多条转发信息,所述转发信息包括业务路径标识SPI、业务索引SI值和SF信息;所述多条转发信息的多个SI值被设置为不连续的多个数值;
所述控制器如果确定在第一SF和第二SF之间插入第三SF,则基于所述第一SFC转发表确定分别与所述第一SF和所述第二SF相对应的第一转发信息和第二转发信息;
所述控制器在所述第一SFC转发表中增加与所述第三SF相对应的第三转发信息,生成所述第二SFC转发表;
其中,所述控制器在所述第一转发信息的SI值和所述第二转发信息的SI值之间确定一个数值,作为所述第三转发信息的SI值。
2.如权利要求1所述的方法,还包括:
所述控制器在生成所述第一SFC转发表之后,将所述第一SFC转发表发送给所述SFP中的全部业务功能转发器SFF。
3.如权利要求1或2所述的方法,还包括:
所述控制器在生成所述第二SFC转发表之后,确定分别与所述第一SF和所述第三SF相对应的第一SFF和第三SFF;
所述控制器将所述第二SFC转发表发送给所述第一SFF和所述第三SFF,其中,所述第一SFF使用所述第二SFC转发表替换所述第一SFC转发表。
4.如权利要求3所述的方法,还包括:
所述控制器设置与所述SFP中的全部SF与全部SFF相对应的业务处理对应关系信息;
所述控制器将所述业务处理对应关系信息发送给所述SFP中的全部SFF。
5.如权利要求4所述的方法,还包括:
在所述第一SF处理第一业务报文之后,所述第一SFF基于所述第二SFC转发表确定下一个SF为所述第三SF,以及与所述第三SF相对应的SI值和SPI;
所述第一SFF基于所述业务处理对应关系信息确定与所述第三SF对应的第三SFF;
所述第一SFF生成第三业务报文并发送给所述第三SFF;其中,所述第三业务报文中携带有与所述第三SF相对应的SI值和SPI;
所述第三SFF根据所述第三业务报文携带的与所述第三SF相对应的SI值和SPI,并基于所述第二SFC转发表确定当前SF为所述第三SF,控制所述第三SF对所述第三业务报文进行处理。
6.如权利要求5所述的方法,还包括:
第二SFF接收到所述第三SFF发送的第二业务报文;
所述第二SFF基于所述第一SFC转发表并根据从所述第二业务报文中提取的SI值和SPI,确定当前SF为所述第二SF,控制所述第二SF处理所述第二业务报文。
7.如权利要求1所述的方法,还包括:
所述控制器如果确定删除了所述第三SF,则将所述第一SFC转发表发送给所述第一SFF,以使所述第一SFF使用所述第一SFC转发表替换所述第二SFC转发表,并控制所述第三SFF删除所述第二SFC转发表。
8.如权利要求1至7任一项所述的方法,其中,
在所述第一SFC转发表中,任意相邻的两个转发信息的两个SI值之间的差值大于预设的间隔阈值。
9.如权利要求8所述的方法,其中,
在所述第一SFC转发表中,多个SI值被设置为由大到小的多个数值,并且,任意相邻的两个转发信息的两个SI值之间的差值都不相同。
10.一种控制器,包括:
转发表生成模块,用于生成与业务功能路径SFP中的全部业务功能处理器SF相对应的第一SFC转发表;
其中,所述第一SFC转发表包括多条转发信息,所述转发信息包括业务路径标识SPI、业务索引SI值和SF信息;所述多条转发信息的多个SI值被设置为不连续的多个数值;
转发表更新模块,用于如果确定在第一SF和第二SF之间插入第三SF,则基于所述第一SFC转发表确定分别与所述第一SF和所述第二SF相对应的第一转发信息和第二转发信息;在所述第一SFC转发表中增加与所述第三SF相对应的第三转发信息,生成所述第二SFC转发表;其中,在所述第一转发信息的SI值和所述第二转发信息的SI值之间确定一个数值,作为所述第三转发信息的SI值。
11.如权利要求10所述的控制器,其中,
所述转发表生成模块,用于在生成所述第一SFC转发表之后,将所述第一SFC转发表发送给所述SFP中的全部业务功能转发器SFF。
12.如权利要求10或11所述的控制器,其中,
所述转发表更新模块,还用于在生成所述第二SFC转发表之后,确定分别与所述第一SF和所述第三SF相对应的第一SFF和第三SFF;将所述第二SFC转发表发送给所述第一SFF和所述第三SFF,其中,所述第一SFF使用所述第二SFC转发表替换所述第一SFC转发表。
13.如权利要求12所述的控制器,还包括:
处理关系设置模块,用于设置与所述SFP中的全部SF与全部SFF相对应的业务处理对应关系信息,将所述业务处理对应关系信息发送给所述SFP中的全部SFF。
14.如权利要求13所述的控制器,还包括:
所述转发表更新模块,用于如果确定删除了所述第三SF,则将所述第一SFC转发表发送给所述第一SFF,以使所述第一SFF使用所述第一SFC转发表替换所述第二SFC转发表,并控制所述第三SFF删除所述第二SFC转发表。
15.如权利要求13至14任一项所述的控制器,其中,
在所述第一SFC转发表中,任意相邻的两个转发信息的两个SI值之间的差值大于预设的间隔阈值。
16.如权利要求15所述的控制器,其中,
在所述第一SFC转发表中,多个SI值被设置为由大到小的多个数值,并且,任意相邻的两个转发信息的两个SI值之间的差值都不相同。
17.一种基于业务功能链SFC的报文转发系统,包括:
如权利要求13-16任一项所述的控制器。
18.如权利要求17所述的系统,包括:第一SFF、第二SFF和第三SFF;
所述第一SFF,用于在第一SF处理第一业务报文之后,基于第二SFC转发表确定下一个SF为第三SF,以及与所述第三SF相对应的SI值和SPI;基于所述业务处理对应关系信息确定与所述第三SF对应的所述第三SFF;生成第三业务报文并发送给所述第三SFF;其中,所述第三业务报文中携带有与所述第三SF相对应的SI值和SPI;
所述第三SFF,用于根据所述第三业务报文携带的与所述第三SF相对应的SI值和SPI,并基于所述第二SFC转发表确定当前SF为所述第三SF,控制所述第三SF对所述第三业务报文进行处理。
19.如权利要求18所述的系统,其中,
所述第二SFF,用于接收所述第三SFF发送的第二业务报文,基于所述第一SFC转发表并根据从所述第二业务报文中提取的SI值和SPI,确定当前SF为所述第二SF,控制所述第二SF处理所述第二业务报文。
20.一种控制器,包括:
存储器;以及耦接至所述存储器的处理器,所述处理器被配置为基于存储在所述存储器中的指令,执行如权利要求1-4,7-9中任一项所述的方法。
21.一种计算机可读存储介质,所述计算机可读存储介质非暂时性地存储有计算机指令,所述指令被处理器执行如权利要求1至9中任一项所述的方法。
CN202110128198.1A 2021-01-29 2021-01-29 基于业务功能链的报文转发方法、控制器以及存储介质 Active CN114826998B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202110128198.1A CN114826998B (zh) 2021-01-29 2021-01-29 基于业务功能链的报文转发方法、控制器以及存储介质
PCT/CN2021/133591 WO2022160908A1 (zh) 2021-01-29 2021-11-26 基于业务功能链的报文转发方法、控制器以及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110128198.1A CN114826998B (zh) 2021-01-29 2021-01-29 基于业务功能链的报文转发方法、控制器以及存储介质

Publications (2)

Publication Number Publication Date
CN114826998A CN114826998A (zh) 2022-07-29
CN114826998B true CN114826998B (zh) 2023-05-16

Family

ID=82525741

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110128198.1A Active CN114826998B (zh) 2021-01-29 2021-01-29 基于业务功能链的报文转发方法、控制器以及存储介质

Country Status (2)

Country Link
CN (1) CN114826998B (zh)
WO (1) WO2022160908A1 (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106921579A (zh) * 2015-12-28 2017-07-04 华为技术有限公司 基于业务功能链sfc的通信方法和装置
CN107465634A (zh) * 2016-06-06 2017-12-12 中兴通讯股份有限公司 业务功能链中的资源释放方法、系统及装置
WO2018000442A1 (zh) * 2016-07-01 2018-01-04 华为技术有限公司 业务功能链sfc中用于转发报文的方法、装置和系统
WO2018166325A1 (zh) * 2017-03-14 2018-09-20 华为技术有限公司 一种数据报文的转发方法和设备
CN109088821A (zh) * 2017-06-14 2018-12-25 中兴通讯股份有限公司 报文传输方法、业务链系统以及计算机可读存储介质
EP3468117A1 (en) * 2016-07-01 2019-04-10 Huawei Technologies Co., Ltd. Service function chaining (sfc)-based packet forwarding method, device and system
CN109922002A (zh) * 2017-12-13 2019-06-21 中国电信股份有限公司 基于SFC的业务数据转发方法以及Overlay系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109661037B (zh) * 2017-10-12 2023-07-04 中兴通讯股份有限公司 一种sfc报文转发方法及设备

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106921579A (zh) * 2015-12-28 2017-07-04 华为技术有限公司 基于业务功能链sfc的通信方法和装置
CN107465634A (zh) * 2016-06-06 2017-12-12 中兴通讯股份有限公司 业务功能链中的资源释放方法、系统及装置
WO2018000442A1 (zh) * 2016-07-01 2018-01-04 华为技术有限公司 业务功能链sfc中用于转发报文的方法、装置和系统
CN107925613A (zh) * 2016-07-01 2018-04-17 华为技术有限公司 业务功能链sfc中用于转发报文的方法、装置和系统
EP3468117A1 (en) * 2016-07-01 2019-04-10 Huawei Technologies Co., Ltd. Service function chaining (sfc)-based packet forwarding method, device and system
CN111884933A (zh) * 2016-07-01 2020-11-03 华为技术有限公司 业务功能链sfc中用于转发报文的方法、装置和系统
WO2018166325A1 (zh) * 2017-03-14 2018-09-20 华为技术有限公司 一种数据报文的转发方法和设备
CN109088821A (zh) * 2017-06-14 2018-12-25 中兴通讯股份有限公司 报文传输方法、业务链系统以及计算机可读存储介质
CN109922002A (zh) * 2017-12-13 2019-06-21 中国电信股份有限公司 基于SFC的业务数据转发方法以及Overlay系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
动态服务功能链(SFC)技术研究进展;刘益岑;卢昱;陈兴凯;乔文欣;张晨;;计算机工程与应用(第01期);全文 *

Also Published As

Publication number Publication date
CN114826998A (zh) 2022-07-29
WO2022160908A1 (zh) 2022-08-04

Similar Documents

Publication Publication Date Title
US6968393B1 (en) Method and apparatus for an attribute oriented routing update
US8817798B2 (en) Constraining topology size and recursively calculating routes in large networks
KR102640600B1 (ko) 하이브리드 네트워크에서 패킷을 포워딩하기 위한 방법, 디바이스, 및 시스템
CN109962847B (zh) 业务功能链报文的封装方法和装置及计算机可读存储介质
CN110401599B (zh) 数据包的处理方法及装置、存储介质、电子装置
CN107786437B (zh) 报文转发方法及装置
CN109218200B (zh) 一种报文处理方法及装置
CN108574638B (zh) 一种数据报文的转发方法和设备
CN110233801B (zh) 路由更新方法及装置
US20110128962A1 (en) Method for routing of messages within a data network
CN114826998B (zh) 基于业务功能链的报文转发方法、控制器以及存储介质
CN111464440A (zh) 一种通信方法及装置
CN109089331A (zh) 一种在无线局域网中实现多射频链路的方法和无线接入点
US11956146B2 (en) Controller, network system, and flow management method
CN112995053A (zh) 发送报文的方法及装置
CN112751752A (zh) 路由收敛的方法、装置、通信设备以及存储介质
CN111464441A (zh) 一种通信方法及装置
CN110661674A (zh) 检测业务链连通性的方法和系统
CN107241236B (zh) 转发信息库表项检测方法、检测设备及网络设备
CN114490129A (zh) 一种集群中的消息广播方法、设备及存储介质
CN102164094B (zh) 多链路流量重分配的方法和装置
CN112822105A (zh) 路径规划方法及装置、数据传输系统
CN117675697B (zh) 支持宽数据传输速率范围卫星通信的路由寻址方法及装置
CN109347737B (zh) Lsp发送方法、装置及网络系统
CN111200559B (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