CN105577579B - 业务功能链中协议报文的处理方法、系统及业务功能节点 - Google Patents
业务功能链中协议报文的处理方法、系统及业务功能节点 Download PDFInfo
- Publication number
- CN105577579B CN105577579B CN201410554999.4A CN201410554999A CN105577579B CN 105577579 B CN105577579 B CN 105577579B CN 201410554999 A CN201410554999 A CN 201410554999A CN 105577579 B CN105577579 B CN 105577579B
- Authority
- CN
- China
- Prior art keywords
- message
- protocol
- service function
- attribute
- component
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 45
- 230000004044 response Effects 0.000 claims description 79
- 238000004806 packaging method and process Methods 0.000 claims description 23
- 238000005538 encapsulation Methods 0.000 claims description 19
- 230000006870 function Effects 0.000 description 221
- 238000010586 diagram Methods 0.000 description 19
- 238000004590 computer program Methods 0.000 description 7
- 238000003672 processing method Methods 0.000 description 6
- 238000003860 storage Methods 0.000 description 3
- 238000009826 distribution Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 230000004083 survival effect Effects 0.000 description 1
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Telephonic Communication Services (AREA)
Abstract
本发明公开了一种业务功能链(SFC)中协议报文的处理方法,包括:第一业务功能节点将协议报文的协议类型及报文属性进行封装;所述第一业务功能节点将封装的所述协议报文的协议类型及报文属性和所述协议报文封装后发出。本发明同时还公开了一种业务功能节点及SFC中协议报文的处理系统。
Description
技术领域
本发明涉及互联网设备领域,尤其涉及一种业务功能链(SFC,Service FunctionChaining)中协议报文的处理方法、系统及业务功能节点。
背景技术
随着网络技术的发展,数据中心网络逐渐向叠加(Overlay)网络发展,然而Overlay技术并未能解决所有问题,数据中心还有很多中间件(Middleware)如防火墙、负载均衡器等,这些设备都是基于用户业务来部署的。
通常,将虚拟防火墙、负载均衡器、网关等业务处理功能,称为业务功能(ServiceFunction),而流量经过一系列Service Function的处理,形成SFC,如图1中粗实线和粗虚线所示的两条业务链(Service Chain)。
SFC技术是目前正在研究和标准化的一种网络技术,是一种将网络设备业务功能和转发分离开来,从而实现业务功能的独立运算、处理并形成一条业务链的技术,这种技术能够提升网络设备的转发性能。
但是,现有SFC技术中,SFC中各个节点针对数据流的处理并不区分用户数据报文和协议报文,如此,会使得各个节点不能够正确识别协议报文,从而会使得协议报文被当作用户数据报文而进行错误地处理和转发。
发明内容
为解决现有存在的技术问题,本发明实施例提供一种SFC中协议报文的处理方法、系统及业务功能节点。
本发明实施例提供了一种SFC中协议报文的处理方法,包括:
第一业务功能节点将协议报文的协议类型及报文属性进行封装;
所述第一业务功能节点将封装的所述协议报文的协议类型及报文属性和所述协议报文封装后发出。
上述方案中,所述第一业务功能节点将协议报文的协议类型及报文属性进行封装之前,所述方法还包括:
所述第一业务功能节点的协议组件为与自身关联的业务功能实例产生所述协议报文。
上述方案中,所述第一业务功能节点将所述协议报文的协议类型及报文属性封装在业务功能报文头(NSH,Network Service Header)中。
本发明实施例还提供了一种SFC中协议报文的处理方法,包括:
第二业务功能节点接收报文;
所述第二业务功能节点解析接收的报文的协议类型及报文属性;
所述第二业务功能节点根据解析的协议类型确定所述接收的报文为协议报文后,根据解析的报文属性,对所述接收的报文进行协议相关处理。
上述方案中,所述根据解析的报文属性,对所述接收的报文进行协议相关处理,包括:
根据所述解析的报文属性确定所述接收的报文为请求报文时,所述第二业务功能节点的协议组件为所述接收的报文对应的与自身关联的业务功能实例产生相应的应答报文;
所述第二业务功能节点的报文封装组件将产生的所述应答报文的协议类型及报文属性进行封装;并将封装的所述应答报文的协议类型及报文属性和所述应答报文封装后发出。
上述方案中,所述报文封装组件将所述应答报文的协议类型及报文属性封装在NSH中。
上述方案中,所述接收的报文的协议类型及报文属性封装在NSH中。
本发明实施例又提供了一种SFC中协议报文的处理方法,包括:
第一业务功能节点将协议报文的协议类型及报文属性进行封装;并将封装的所述协议报文的协议类型及报文属性和对应的协议报文封装后发送给第二业务功能节点;
所述第二业务功能节点收到报文后,解析接收的报文的协议类型及报文属性;并根据解析的协议类型确定所述接收的报文为协议报文后,根据解析的报文属性,对接收的报文进行协议相关处理。
上述方案中,所述第一业务功能节点将协议报文的协议类型及报文属性进行封装之前,所述方法还包括:
所述第一业务功能节点的协议组件为与自身关联的业务功能实例产生所述协议报文。
上述方案中,所述第一业务功能节点将所述协议报文的协议类型及报文属性封装在NSH中。
上述方案中,所述根据解析的报文属性,对接收的报文进行协议相关处理,包括:
根据所述解析的报文属性确定所述接收的报文为请求报文时,所述第二业务功能节点的协议组件为所述接收的报文对应的与自身关联的业务功能实例产生相应的应答报文;
所述第二业务功能节点的报文封装组件将产生的所述应答报文的协议类型及报文属性进行封装;并将封装的所述应答报文的协议类型及报文属性和所述应答报文封装后发送给所述第一业务功能节点。
上述方案中,所述第二业务功能节点的报文封装组件将所述应答报文的协议类型及报文属性封装在NSH中。
本发明实施例还提供了一种业务功能节点,包括:第一报文封装组件及第一发射机;其中,
所述第一报文封装组件,用于将协议报文的协议类型及报文属性进行封装;并将封装的所述协议报文的协议类型及报文属性和所述协议报文封装;
所述第一发射机,用于将封装后的报文发出。
上述方案中,所述业务功能节点还包括:第一协议组件,用于为与自身关联的业务功能实例产生所述协议报文。
本发明实施例又提供了一种业务功能节点,包括:第一接收机、第二报文封装组件及第二协议组件;其中,
所述第一接收机,用于接收报文;
所述第二报文封装组件,用于解析接收的报文的协议类型及报文属性;并根据解析的协议类型确定所述接收的报文为协议报文后,将所述接收的报文发送给所述第二协议组件;
所述第二协议组件,用于根据解析的报文属性,对所述接收的报文进行协议相关处理。
上述方案中,所述业务功能节点还包括:第二发射机;其中,
所述第二协议组件,具体用于:根据所述解析的报文属性确定所述接收的报文为请求报文时,为所述接收的报文对应的与自身关联的业务功能实例产生相应的应答报文;
相应地,所述第二报文封装组件,还用于将产生的所述应答报文的协议类型及报文属性进行封装;并将封装的所述应答报文的协议类型及报文属性和所述应答报文封装;
所述第二发射机,用于将封装后的报文发出。
本发明实施例还提供了一种SFC中协议报文的处理系统,包括:第一业务功能节点及第二业务功能节点;其中,
所述第一业务功能节点,用于将协议报文的协议类型及报文属性进行封装;并将封装的所述协议报文的协议类型及报文属性和对应的协议报文封装后发送给所述第二业务功能节点;
所述第二业务功能节点,用于收到所述第一业务功能节点发送的报文后,解析接收的报文的协议类型及报文属性;并根据解析的协议类型确定所述接收的报文为协议报文后,根据解析的报文属性,对接收的报文进行协议相关处理。
上述方案中,所述第一业务功能节点包括:第一报文封装组件及第一发射机;所述第二业务功能节点包括:第一接收机、第二报文封装组件及第二协议组件;其中,
所述第一报文封装组件,用于将协议报文的协议类型及报文属性进行封装;并将封装的所述协议报文的协议类型及报文属性和所述协议报文封装;
所述第一发射机,用于将封装后的报文发送给所述第二功能节点;
所述第一接收机,用于接收所述第一功能节点发送的报文;
所述第二报文封装组件,用于解析接收的报文的协议类型及报文属性;并根据解析的协议类型确定所述接收的报文为协议报文后,将所述接收的报文发送给所述第二协议组件;
所述第二协议组件,用于根据解析的报文属性,对所述接收的报文进行协议相关处理。
上述方案中,所述第一业务功能节点还包括:第一协议组件,用于为与自身关联的业务功能实例产生所述协议报文。
上述方案中,所述第二业务功能节点还包括:第二发射机;所述第一业务功能节点还包括:第二接收机;其中,
所述第二协议组件,具体用于:根据所述解析的报文属性确定所述接收的报文为请求报文时,所述第二业务功能节点的协议组件为所述接收的报文对应的与自身关联的业务功能实例产生相应的应答报文;
相应地,所述第二报文封装组件,还用于将产生的所述应答报文的协议类型及报文属性进行封装;并将封装的所述应答报文的协议类型及报文属性和所述应答报文封装;
所述第二发射机,用于将封装后的报文发送给所述第一业务功能节点;
所述第二接收机,还用于接收所述第二业务功能节点发送的报文。
本发明实施例提供的SFC中协议报文的处理方法、系统及业务功能节点,第一业务功能节点将协议报文的协议类型及报文属性进行封装;并将封装的所述协议报文的协议类型及报文属性和对应的协议报文封装后发送给第二业务功能节点;所述第二业务功能节点收到报文后,解析接收的报文的协议类型及报文属性;并根据解析的协议类型确定所述接收的报文为协议报文后,根据解析的报文属性,对接收的报文进行协议相关处理,如此,能有效地实现业务功能节点之间正确地处理协议报文,能解决业务功能节点之间将协议报文当作数据报文进行业务功能处理的技术问题。
附图说明
在附图(其不一定是按比例绘制的)中,相似的附图标记可在不同的视图中描述相似的部件。具有不同字母后缀的相似附图标记可表示相似部件的不同示例。附图以示例而非限制的方式大体示出了本文中所讨论的各个实施例。
图1为一种SFC网络结构示意图;
图2为一种SFP结构示意图;
图3为一种NSH格式示意图;
图4为本发明实施例一SFC中协议报文的处理方法流程示意图;
图5为本发明实施例二SFC中协议报文的处理方法流程示意图;
图6为本发明实施例三SFC中协议报文的处理方法流程示意图;
图7为本发明实施例整体架构示意图;
图8为本发明实施例协议类型及报文属性在NSH中的格式示意图;
图9为本发明实施例四应用场景示意图;
图10为本发明实施例四SFC中协议报文的处理方法流程示意图;
图11为本发明实施例五应用场景示意图;
图12为本发明实施例五SFC中协议报文的处理方法流程示意图;
图13为本发明实施例六业务功能节点结构示意图;
图14为本发明实施例七业务功能节点结构示意图;
图15为本发明实施例八SFC中协议报文的处理系统结构示意图;
图16为本发明实施例SFC中协议报文的处理系统具体结构示意图。
具体实施方式
为了能更好的理解本发明实施例的内容,本文先介绍SFC的框架,目前现有技术中基本可以包含以下技术及组件:
1、业务叠加(Service Overlay),即各个网络边缘节点需要通信的Overlay叠加技术;
2、通用业务控制平面(GSCP,Generic Service Control Plane),即形成SFC的控制器;
3、业务分类(Service Classification),即需要进行流识别,然后特定的流,进行特定的SFC处理;
4、控制平面元数据(Dataplane Metadata),这是一大特点,元数据(Metadata)允许各个边缘业务处理节点能够互相交换信息,达到某种业务处理目的。
6、业务功能转发器(SFF,Service Function Forwarder)组件,如图3所示,数据报文在业务功能链的各个节点之间传递,会在数据帧以外封装一层NSH;这个NSH由业务功能节点上的SFF组件来进行解析、封装和解封装。
目前,如果在SFC中各个节点之间运行某种协议,并不能够满足业务功能链的应用场景。举个例子来说,例如,在分类器和业务功能节点(Service function node)之间建立因特网协议安全(IPSec,Internet Protocol Security)通道并创建安全联盟(SA,Security Association),分类器和业务功能节点之间运行密钥交换协议(IKE,InternetKey Exchange Protocol);现有技术中,由于IKE协商的两端是两个业务功能实例,所以当IKE协议报文从分类器发送到业务功能节点时会被封装NSH;而对端业务功能节点的SFF组件无法识别出来这是一个IKE信令协商报文,会认为这是一个数据报文并将其发送到业务功能实例,这样就造成该报文被错误地处理和转发。
基于此,在本发明的各种实施例中:第一业务功能节点将协议报文的协议类型及报文属性进行封装;并将封装的所述协议报文的协议类型及报文属性和对应的协议报文封装后发送给第二业务功能节点;所述第二业务功能节点收到报文后,解析接收的报文的协议类型及报文属性;并根据解析的协议类型确定所述接收的报文为协议报文后,根据解析的报文属性,对接收的报文进行协议相关处理。
下面结合附图及实施例对本发明再作进一步详细地描述。
实施例一
本实施例SFC中协议报文的处理方法,如图4所示,包括以下步骤:
步骤401:第一业务功能节点将协议报文的协议类型及报文属性进行封装;
具体地,所述第一业务功能节点可以将所述协议报文的协议类型及报文属性封装在NSH中。
这里,所述第一业务功能节点将协议报文的协议类型及报文属性进行封装之前,该方法还可以包括:
所述第一业务功能节点的协议组件为与自身关联的业务功能实例产生所述协议报文。
这里,实际应用时,需要先在所述第一业务功能节点配置对应的所述协议组件;并配置所述协议组件与某个业务功能实例关联,从而使得所述协议组件可以为与自身关联的业务功能实例产生所述协议报文。其中,所述协议可以是IPSec及IKE协议、端口控制协议(PCP,Port Control Protocol)等等。
所述协议组件是指能运行规定协议功能的组件。
所述协议报文是指各种网络协议报文,此报文区别于用户数据报文。例如,在路由器处理中,协议报文即各种路由协议传递所产生的报文。其中,数据报文是用户使用各种应用的流量。
所述协议类型用于标识所述协议报文所属的协议;所述报文属性用于标识所述协议报文是请求报文或应答报文。
步骤402:所述第一业务功能节点将封装的所述协议报文的协议类型及报文属性和所述协议报文封装后发出。
实施例二
本实施例SFC中协议报文的处理方法,如图5所示,包括以下步骤:
步骤501:第二业务功能节点接收报文;
步骤502:所述第二业务功能节点解析接收的报文的协议类型及报文属性;
这里,实际应用时,所述接收的报文的协议类型及报文属性封装在NSH中。
步骤503:所述第二业务功能节点根据解析的协议类型确定所述接收的报文为协议报文后,根据解析的报文属性,对所述接收的报文进行协议相关处理。
这里,所述根据解析的报文属性,对所述接收的报文进行协议相关处理,具体包括:
根据所述解析的报文属性确定所述接收的报文为请求报文时,所述第二业务功能节点的协议组件为所述接收的报文对应的与自身关联的业务功能实例产生相应的应答报文;
所述第二业务功能节点的报文封装组件将产生的所述应答报文的协议类型及报文属性进行封装;并将封装的所述应答报文的协议类型及报文属性和所述应答报文封装后发出。
这里,当根据所述解析的报文属性确定所述接收的报文为应答报文时,所述协议组件不进行任何处理。
实际应用时,所述报文封装组件可以将所述应答报文的协议类型及报文属性封装在NSH中。
所述报文封装组件的功能可以由SFF组件等来实现。
所述协议报文是指各种网络协议报文,此报文区别于用户数据报文。例如,在路由器处理中,协议报文即各种路由协议传递所产生的报文。其中,数据报文是用户使用各种应用的流量。
实际应用时,需要先在所述第二业务功能节点配置对应的协议组件;并配置所述协议组件与某个业务功能实例关联,从而使得所述协议组件可以处理与自身关联的业务功能实例对应的协议报文。其中,所述协议可以是IPSec及IKE协议、PCP等等。
当根据解析的协议类型确定所述接收的报文是非协议报文后,对所述接收的报文进行业务功能链的处理并转发。
实施例三
本实施例SFC中协议报文的处理方法,如图6所示,包括以下步骤:
步骤601:第一业务功能节点将协议报文的协议类型及报文属性进行封装中;并将封装的所述协议报文的协议类型及报文属性和对应的协议报文封装后发送给第二业务功能节点;
其中,所述第一业务功能节点将协议报文的协议类型及报文属性进行封装之前,该方法还可以包括:
所述第一业务功能节点的协议组件为与自身关联的业务功能实例产生所述协议报文。
这里,实际应用时,如图7所示,需要先在所述第一业务功能节点及所述第二业务功能节点之间配置端到端的协议组件;并分别在所述第一业务功能节点及所述第二业务功能节点上配置协议组件与某个业务功能实例关联,从而使得所述协议组件可以为与自身关联的业务功能实例处理协议报文。其中,所述协议可以是IPSec及IKE协议、PCP等等。
所述协议组件是指能运行规定协议功能的组件。
所述协议报文是指各种网络协议报文,此报文区别于用户数据报文。例如,在路由器处理中,协议报文即各种路由协议传递所产生的报文。其中,数据报文是用户使用各种应用的流量。
所述协议类型用于标识所述协议报文所属的协议;所述报文属性用于标识所述协议报文是请求报文或应答报文。
实际应用时,所述第一业务功能节点可以将所述协议报文的协议类型及报文属性封装在NSH中。
如图8所示,NSH及对应的协议报文封装成数据帧,然后发送给所述第二业务功能节点;其中,协议类型具体的设置可以为:0表示非协议报文,1表示IKE报文,2表示开放式最短路径优先(OSPF,Open Shortest Path First)报文、3表示标签分发协议(LDP,LabelDistribution Protocol)报文等等;报文属性具体的设置可以为:1表示请求报文,2表示应答报文等等。
步骤602:所述第二业务功能节点收到报文后,解析接收的报文的协议类型及报文属性;并根据解析的协议类型确定所述接收的报文为协议报文后,根据解析的报文属性,对接收的报文进行协议相关处理。
这里,所述根据解析的报文属性,对接收的报文进行协议相关处理,具体包括:
根据所述解析的报文属性确定所述接收的报文为请求报文时,所述第二业务功能节点的协议组件为所述接收的报文对应的与自身关联的业务功能实例产生相应的应答报文;
所述第二业务功能节点的报文封装组件将产生的所述应答报文的协议类型及报文属性进行封装中;并将封装的所述应答报文的协议类型及报文属性和所述应答报文封装后发送给所述第一业务功能节点。
这里,当根据所述解析的报文属性确定所述接收的报文为应答报文时,所述第二业务功能节点的协议组件不进行任何处理。
所述第二业务功能节点的报文封装组件可以将产生的所述应答报文的协议类型及报文属性封装在NSH中。
所述第二业务功能节点的报文封装组件的功能可以由SFF组件等来实现。
本实施例提供的SFC中协议报文的处理方法,第一业务功能节点将协议报文的协议类型及报文属性进行封装;并将封装的所述协议报文的协议类型及报文属性和对应的协议报文封装后发送给第二业务功能节点;所述第二业务功能节点收到的报文后,解析接收的报文的协议类型及报文属性;并根据解析的协议类型确定所述接收的报文为协议报文后,根据解析的报文属性,对接收的报文进行协议相关处理,如此,能有效地实现业务功能节点之间正确地处理协议报文,能解决业务功能节点之间将协议报文当作数据报文进行业务功能处理的技术问题。
实施例四
如图9所示,本实施例的应用场景为:业务功能实例1->业务功能实例2->业务功能实例3的业务功能链中,在业务功能实例1和业务功能实例2创建安全联盟和IPSec安全通道;将业务功能实例1所在的业务功能节点称为节点A,将业务功能实例2所在的业务功能节点称为节点B。
本实施例SFC中协议报文的处理方法,如图10所示,包括以下步骤:
步骤1001:在业务功能实例1和业务功能实例2所在的节点A、B上分别配置业务功能实例1和业务功能实例2为一对SA、IPSec及IKE协议相关的信息,之后执行步骤1002;
步骤1002:配置节点A的IPSec协议组件与业务功能实例1关联,并配置节点B的IPSec协议组件和业务功能实例2关联,之后执行步骤1003;
步骤1003:节点A的IPSec组件产生一个IKE报文;
这里,产生的IKE报文的内容为:本地所支持的ISAKMP的策略,该策略的内容包含加密算法、哈希(hash)算法、D-H组、认证方式、SA的生存时间五个元素;
步骤1004:节点A的SFF组件对产生的IKE报文的协议类型及报文属性进行NSH的封装;
其中,将报文属性设置为1,表明该报文的报文属性为请求报文;将协议类型设置为1,表明该报文的协议类型为IKE报文。
步骤1005:节点A的SFF组件将封装后的NSH封装在协议报文前部,并将封装后的协议报文发送到节点B;
步骤1006:节点B的SFF组件收到节点A发送的协议报文后,解析协议报文NSH中的报文属性和协议类型字段,确定接收的报文为IKE的请求报文;
步骤1007:节点B的IPSec组件进行IKE协商处理,并根据自身支持的ISAKMP的策略,产生相应的响应报文;
步骤1008:节点B的SFF组件对产生的响应报文的协议类型及报文属性进行NSH的封装;
其中,将报文属性设置为2,表明该报文的报文属性为响应报文;将协议类型设置为1,表明该报文的协议类型为IKE报文。
步骤1009:节点B的SFF组件将封装后的NSH封装在响应报文前部,并将封装后的响应报文发送到节点A;
步骤1010:节点A的SFF组件收到节点B的响应报文后,解析响应报文NSH中的报文属性和协议类型字段,确定接收的报文为IKE的响应报文,之后执行步骤1011;
这里,本步骤执行完成后,表明策略协商成功。
步骤1011:节点A与节点B进行IKE后续阶段的协商和身份认证流程。
这里,节点A与节点B进行IKE后续阶段的协商和身份认证流程中的协议报文的处理过程与上述的策略协商流程中的协议报文的处理过程类似,这里不再赘述。
实施例五
如图11所示,本实施例的应用场景为:业务功能实例1->业务功能实例2->业务功能实例3的业务功能链中,业务功能实例1本身没有地址池,业务功能实例1通过PCP向业务功能实例2请求IP地址池资源;将业务功能实例1所在的业务功能节点称为节点A,将业务功能实例2所在的业务功能节点称为节点B。
本实施例SFC中协议报文的处理方法,如图12所示,包括以下步骤:
步骤1201:在业务功能实例1和业务功能实例2所在的节点A、B上分别配置相关的信息,之后执行步骤1202;
具体地,在节点B上配置IP地址池,并在节点A、B上分别配置PCP相关的信息。
步骤1202:配置节点A的PCP组件与业务功能实例1关联,并配置节点B的PCP组件和业务功能实例2关联,之后执行步骤1203;
步骤1203:节点A的PCP组件产生PCP请求报文;
这里,产生的PCP请求报文,要求业务功能实例2提供IP地址为192.168.1.1,端口范围1024至32767之间的端口给业务功能实例1使用,分配策略为尽量分配(try best)。
步骤1204:节点A的SFF组件对产生的协议报文的协议类型及报文属性进行NSH的封装;
其中,将报文属性设置为1,表明该报文的报文属性为请求报文;将协议类型设置为18,表明该报文的协议类型为PCP报文。
步骤1205:节点A的SFF组件将封装后的NSH封装在协议报文前部,并将封装后的协议报文发送到节点B;
步骤1206:节点B的SFF组件收到节点A发送的协议报文后,解析协议报文NSH中的报文属性和协议类型字段,确定接收的报文为PCP的请求报文;
步骤1207:节点B的SFF组将报文发送到节点B的PCP组件,节点B的PCP组件发现业务功能实施例2的地址池中并没有192.168.1.1这个IP地址,之后执行步骤1208;
步骤1208:节点B的PCP组件根据尽量分配的原则,分配192.168.1.2的IP地址,端口范围是1024至32767,并将相关的IP地址和端口段值封装在响应报文中;
步骤1209:节点B的SFF组件对响应报文的协议类型及报文属性进行NSH的封装;
其中,将报文属性设置为2,表明该报文的报文属性为响应报文;将协议类型设置为18,表明该报文的协议类型为PCP报文。
步骤1210:节点B的SFF组件将封装后的NSH封装在响应报文前部,并将封装后的响应报文发送到节点A;
步骤1211:节点A的SFF组件收到节点B的响应报文后,解析响应报文NSH中的报文属性和协议类型字段,确定接收的报文为PCP的响应报文,获取IP地址和端口段值并交付业务功能实例1,结束当前处理流程。
这里,本步骤完成后,表明业务功能实例1获取IP地址和端口段资源成功。
实施例六
为实现实施例一的方法,本实施例提供一种业务功能节点,如图13所示,该业务功能节点包括:第一报文封装组件131及第一发射机132;其中,
所述第一报文封装组件131,用于将协议报文的协议类型及报文属性进行封装;并将封装的所述协议报文的协议类型及报文属性和所述协议报文封装;
所述第一发射机132,用于将封装后的报文发出。
具体地,所述第一报文封装组件131以将所述协议报文的协议类型及报文属性封装在NSH中。
实际应用时,第一报文封装组件131的功能可由SFF组件等来实现。
其中,该业务功能节点还可以包括:第一协议组件,用于为与自身关联的业务功能实例产生所述协议报文。
这里,实际应用时,需要先在所述业务功能节点配置对应的所述第一协议组件;并配置所述第一协议组件与某个业务功能实例关联,从而使得所述第一协议组件可以为与自身关联的业务功能实例产生所述协议报文。其中,所述协议可以是IPSec及IKE协议、PCP等等。
所述第一协议组件是指能运行规定协议功能的部件。
所述协议报文是指各种网络协议报文,此报文区别于用户数据报文。例如,在路由器处理中,协议报文即各种路由协议传递所产生的报文。其中,数据报文是用户使用各种应用的流量。
所述协议类型用于标识所述协议报文所属的协议;所述报文属性用于标识所述协议报文是请求报文或应答报文。
实施例七
为实现实施例二的方法,本实施例提供一种业务功能节点,如图14所示,该业务功能节点包括:第一接收机141、第二报文封装组件142及第二协议组件143;其中,
所述第一接收机141,用于接收报文;
所述第二报文封装组件142,用于解析接收的报文的协议类型及报文属性;并根据解析的协议类型确定所述接收的报文为协议报文后,将所述接收的报文发送给所述第二协议组件143;
所述第二协议组件143,用于根据解析的报文属性,对所述接收的报文进行协议相关处理。
这里,实际应用时,所述接收的报文的协议类型及报文属性封装在NSH中。
该业务功能节点还可以包括:第二发射机;其中,
所述第二协议组件143,具体用于:根据所述解析的报文属性确定所述接收的报文为请求报文时,为所述接收的报文对应的与自身关联的业务功能实例产生相应的应答报文;
相应地,所述第二报文封装组件142,还用于将产生的所述应答报文的协议类型及报文属性进行封装;并将封装的所述应答报文的协议类型及报文属性和所述应答报文封装;
所述第二发射机,用于将封装后的报文发出。
这里,当根据所述解析的报文属性确定所述接收的报文为应答报文时,所述第二协议组件143不进行任何处理。
实际应用时,所述第二报文封装组件142可以将所述应答报文的协议类型及报文属性封装在NSH中。
所述第二报文封装组件142的功能可由SFF组件等来实现。
所述协议报文是指各种网络协议报文,此报文区别于用户数据报文。例如,在路由器处理中,协议报文即各种路由协议传递所产生的报文。其中,数据报文是用户使用各种应用的流量。
实际应用时,需要先在所述业务功能节点配置对应的所述第二协议组件143;并配置所述第二协议组件143与某个业务功能实例关联,从而使得所述第二协议组件143可以处理与自身关联的业务功能实例对应的协议报文。其中,所述协议可以是IPSec及IKE协议、PCP等等。
所述第二协议组件143是指能运行规定协议功能的组件。
当根据解析的协议类型确定所述接收的报文是非协议报文后,对所述接收的报文进行业务功能链的处理并转发。
实施例八
为实现实施例三的方法,本实施例提供一种SFC中协议报文的处理系统,如图15所示,该处理系统包括:第一业务功能节点151及第二业务功能节点152;其中,
所述第一业务功能节点151,用于将协议报文的协议类型及报文属性进行封装;并将封装的所述协议报文的协议类型及报文属性和对应的协议报文封装后发送给所述第二业务功能节点152;
所述第二业务功能节点152,用于收到所述第一业务功能节点发送的报文后,解析接收的报文的协议类型及报文属性;并根据解析的协议类型确定所述接收的报文为协议报文后,根据解析的报文属性,对接收的报文进行协议相关处理。
其中,如图16所示,所述第一业务功能节点151可以包括:第一报文封装组件1511及第一发射机1512;所述第二业务功能节点152可以包括:第一接收机1521、第二报文封装组件1522及第二协议组件1523;其中,
所述第一报文封装组件1511,用于将协议报文的协议类型及报文属性进行封装;并将封装的所述协议报文的协议类型及报文属性和所述协议报文封装;
所述第一发射机1512,用于将封装后的报文发送给所述第二功能节点152;
所述接收机1521,用于接收所述第一功能节点151发送的报文;
所述第二报文封装组件1522,用于解析接收的报文的协议类型及报文属性;并根据解析的协议类型确定所述接收的报文为协议报文后,将所述接收的报文发送给所述第二协议组件1523;
所述第二协议组件1523,用于根据解析的报文属性,对所述接收的报文进行协议相关处理。
这里,所述第一业务功能节点151还可以包括:第一协议组件1513,用于为与自身关联的业务功能实例产生所述协议报文。
这里,实际应用时,如图7所示,需要先在所述第一业务功能节点及所述第二业务功能节点之间配置端到端的第一协议组件1513及第二协议组件1523;并分别在所述第一业务功能节点及所述第二业务功能节点上配置协议组件与某个业务功能实例关联,从而使得所述第一协议组件1513及所述第二协议组件1523可以为与自身关联的业务功能实例处理协议报文。其中,所述协议可以是IPSec及IKE协议、PCP等等。
所述协议报文是指各种网络协议报文,此报文区别于用户数据报文。例如,在路由器处理中,协议报文即各种路由协议传递所产生的报文。其中,数据报文是用户使用各种应用的流量。
所述协议类型用于标识所述协议报文所属的协议;所述报文属性用于标识所述协议报文是请求报文或应答报文。
实际应用时,所述第一报文封装组件1511可以将所述协议报文的协议类型及报文属性封装在NSH中。
如图8所示,NSH及对应的协议报文封装成数据帧,然后发送给所述第二业务功能节点;其中,协议类型具体的设置可以为:0表示非协议报文,1表示IKE报文,2表示OSPF报文、3表示LDP报文等等;报文属性具体的设置可以为:1表示请求报文,2表示应答报文等等。
所述第二业务功能节点152还可以包括:第二发射机1524;所述第一业务功能节点151还可以包括:第二接收机1514;其中,
所述第二协议组件1523,具体用于:根据所述解析的报文属性确定所述接收的报文为请求报文时,所述第二业务功能节点的协议组件为所述接收的报文对应的与自身关联的业务功能实例产生相应的应答报文;
相应地,所述第二报文封装组件1522,还用于将产生的所述应答报文的协议类型及报文属性进行封装;并将封装的所述应答报文的协议类型及报文属性和所述应答报文封装;
所述第二发射机1524,用于将封装后的报文发送给所述第一业务功能节点151;
相应地,所述第二接收机1514用于接收所述第二业务功能节点发送的报文。
这里,当根据所述解析的报文属性确定所述接收的报文为应答报文时,所述第二协议组件1523不进行任何处理。
所述第二报文封装组件可以将产生的所述应答报文的协议类型及报文属性封装在NSH中。
当根据解析的协议类型确定所述接收的报文是非协议报文后,对所述接收的报文进行业务功能链的处理并转发。
所述第一协议组件1513及所述第二协议组件1523是指能运行规定协议功能的组件。
实际应用时,所述第一报文封装组件1511及所述第二报文封装组件1522的功能可由SFF组件等来实现。
本实施例提供的SFC中协议报文的处理系统,第一业务功能节点151将协议报文的协议类型及报文属性进行封装;并将封装的所述协议报文的协议类型及报文属性和对应的协议报文封装后发送给第二业务功能节点152;所述第二业务功能节点152收到的报文后,解析接收的报文的协议类型及报文属性;并根据解析的协议类型确定所述接收的报文为协议报文后,根据解析的报文属性,对接收的报文进行协议相关处理,如此,能有效地实现业务功能节点之间正确地处理协议报文,能解决业务功能节点之间将协议报文当作数据报文进行业务功能处理的技术问题。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
Claims (8)
1.一种业务功能链SFC中协议报文的处理方法,其特征在于,所述方法包括:
第一业务功能节点将所述协议报文的协议类型及报文属性封装在业务功能报文头NSH中;所述报文属性用于标识所述协议报文是请求报文或应答报文;
所述第一业务功能节点将封装的所述协议报文的协议类型及报文属性和所述协议报文封装后发出;
所述第一业务功能节点将协议报文的协议类型及报文属性进行封装之前,所述方法还包括:
所述第一业务功能节点的协议组件为与自身关联的业务功能实例产生所述协议报文。
2.一种SFC中协议报文的处理方法,其特征在于,所述方法包括:
第二业务功能节点接收报文;
所述第二业务功能节点解析接收的报文的协议类型及报文属性;所述报文属性用于标识所述协议报文是请求报文或应答报文;
所述第二业务功能节点根据解析的协议类型确定所述接收的报文为协议报文后,根据解析的报文属性,对所述接收的报文进行协议相关处理;
所述根据解析的报文属性,对所述接收的报文进行协议相关处理,包括:
根据所述解析的报文属性确定所述接收的报文为请求报文时,所述第二业务功能节点的协议组件为所述接收的报文对应的与自身关联的业务功能实例产生相应的应答报文;
所述第二业务功能节点的报文封装组件将产生的所述应答报文的协议类型及报文属性封装在NSH中;并将封装的所述应答报文的协议类型及报文属性和所述应答报文封装后发出。
3.根据权利要求2所述的方法,其特征在于,所述接收的报文的协议类型及报文属性封装在NSH中。
4.一种SFC中协议报文的处理方法,其特征在于,所述方法包括:
第一业务功能节点将协议报文的协议类型及报文属性封装在业务功能报文头NSH中;并将封装的所述协议报文的协议类型及报文属性和对应的协议报文封装后发送给第二业务功能节点;所述报文属性用于标识所述协议报文是请求报文或应答报文;
所述第二业务功能节点收到报文后,解析接收的报文的协议类型及报文属性;并根据解析的协议类型确定所述接收的报文为协议报文后,根据解析的报文属性,对接收的报文进行协议相关处理;
所述第一业务功能节点将协议报文的协议类型及报文属性进行封装之前,所述方法还包括:
所述第一业务功能节点的协议组件为与自身关联的业务功能实例产生所述协议报文;
所述根据解析的报文属性,对接收的报文进行协议相关处理,包括:
根据所述解析的报文属性确定所述接收的报文为请求报文时,所述第二业务功能节点的协议组件为所述接收的报文对应的与自身关联的业务功能实例产生相应的应答报文;
所述第二业务功能节点的报文封装组件将产生的所述应答报文的协议类型及报文属性进行封装;并将封装的所述应答报文的协议类型及报文属性和所述应答报文封装后发送给所述第一业务功能节点。
5.根据权利要求4所述的方法,其特征在于,所述第二业务功能节点的报文封装组件将所述应答报文的协议类型及报文属性封装在NSH中。
6.一种业务功能节点,其特征在于,所述业务功能节点包括:第一报文封装组件及第一发射机;其中,
所述第一报文封装组件,用于将协议报文的协议类型及报文属性封装在业务功能报文头NSH中;并将封装的所述协议报文的协议类型及报文属性和所述协议报文封装;所述报文属性用于标识所述协议报文是请求报文或应答报文;
所述第一发射机,用于将封装后的报文发出;
所述业务功能节点还包括:第一协议组件,用于为与自身关联的业务功能实例产生所述协议报文。
7.一种业务功能节点,其特征在于,所述业务功能节点包括:第一接收机、第二报文封装组件及第二协议组件;其中,
所述第一接收机,用于接收报文;
所述第二报文封装组件,用于解析接收的报文的协议类型及报文属性;并根据解析的协议类型确定所述接收的报文为协议报文后,将所述接收的报文发送给所述第二协议组件;所述报文属性用于标识所述协议报文是请求报文或应答报文;
所述第二协议组件,用于根据解析的报文属性,对所述接收的报文进行协议相关处理;
所述业务功能节点还包括:第二发射机;其中,
所述第二协议组件,具体用于:根据所述解析的报文属性确定所述接收的报文为请求报文时,为所述接收的报文对应的与自身关联的业务功能实例产生相应的应答报文;
相应地,所述第二报文封装组件,还用于将产生的所述应答报文的协议类型及报文属性封装在NSH中;并将封装的所述应答报文的协议类型及报文属性和所述应答报文封装;
所述第二发射机,用于将封装后的报文发出。
8.一种SFC中协议报文的处理系统,其特征在于,所述处理系统包括:第一业务功能节点及第二业务功能节点;其中,
所述第一业务功能节点,用于将协议报文的协议类型及报文属性封装在业务功能报文头NSH中;并将封装的所述协议报文的协议类型及报文属性和对应的协议报文封装后发送给所述第二业务功能节点;所述报文属性用于标识所述协议报文是请求报文或应答报文;
所述第二业务功能节点,用于收到所述第一业务功能节点发送的报文后,解析接收的报文的协议类型及报文属性;并根据解析的协议类型确定所述接收的报文为协议报文后,根据解析的报文属性,对接收的报文进行协议相关处理;
所述第一业务功能节点包括:第一报文封装组件及第一发射机;所述第二业务功能节点包括:第一接收机、第二报文封装组件及第二协议组件;其中,
所述第一报文封装组件,用于将协议报文的协议类型及报文属性进行封装;并将封装的所述协议报文的协议类型及报文属性和所述协议报文封装;
所述第一发射机,用于将封装后的报文发送给所述第二业务功能节点;
所述第一接收机,用于接收所述第一业务功能节点发送的报文;
所述第二报文封装组件,用于解析接收的报文的协议类型及报文属性;并根据解析的协议类型确定所述接收的报文为协议报文后,将所述接收的报文发送给所述第二协议组件;
所述第二协议组件,用于根据解析的报文属性,对所述接收的报文进行协议相关处理;
所述第一业务功能节点还包括:第一协议组件,用于为与自身关联的业务功能实例产生所述协议报文;
所述第二业务功能节点还包括:第二发射机;所述第一业务功能节点还包括:第二接收机;其中,
所述第二协议组件,具体用于:根据所述解析的报文属性确定所述接收的报文为请求报文时,为所述接收的报文对应的与自身关联的业务功能实例产生相应的应答报文;
相应地,所述第二报文封装组件,还用于将产生的所述应答报文的协议类型及报文属性封装至NSH中;并将封装的所述应答报文的协议类型及报文属性和所述应答报文封装;
所述第二发射机,用于将封装后的报文发送给所述第一业务功能节点;
所述第二接收机,还用于接收所述第二业务功能节点发送的报文。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410554999.4A CN105577579B (zh) | 2014-10-17 | 2014-10-17 | 业务功能链中协议报文的处理方法、系统及业务功能节点 |
PCT/CN2015/089082 WO2016058463A1 (zh) | 2014-10-17 | 2015-09-07 | 业务功能链中协议报文的处理方法、系统及业务功能节点 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410554999.4A CN105577579B (zh) | 2014-10-17 | 2014-10-17 | 业务功能链中协议报文的处理方法、系统及业务功能节点 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105577579A CN105577579A (zh) | 2016-05-11 |
CN105577579B true CN105577579B (zh) | 2020-09-01 |
Family
ID=55746110
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410554999.4A Active CN105577579B (zh) | 2014-10-17 | 2014-10-17 | 业务功能链中协议报文的处理方法、系统及业务功能节点 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN105577579B (zh) |
WO (1) | WO2016058463A1 (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111884933B (zh) | 2016-07-01 | 2021-07-09 | 华为技术有限公司 | 业务功能链sfc中用于转发报文的方法、装置和系统 |
CN109150720B (zh) * | 2017-06-19 | 2022-04-12 | 中兴通讯股份有限公司 | 业务链报文转发方法、装置、设备及计算机可读存储介质 |
CN110099011B (zh) * | 2019-04-30 | 2022-05-10 | 烽火通信科技股份有限公司 | 一种实体网关接入虚拟家庭网关的方法及系统 |
CN113839872B (zh) * | 2021-11-29 | 2022-02-15 | 军事科学院系统工程研究院网络信息研究所 | 一种面向虚链路的安全标签分发协议方法和系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1968163A (zh) * | 2006-10-25 | 2007-05-23 | 华为技术有限公司 | 检测业务通道的方法及提供检测业务通道方法的系统 |
CN101155107A (zh) * | 2006-09-25 | 2008-04-02 | 华为技术有限公司 | 在弹性分组环上承载点到点协议的方法、装置及系统 |
CN101925058A (zh) * | 2009-06-16 | 2010-12-22 | 杭州华三通信技术有限公司 | 一种身份认证的方法、系统和鉴别器实体 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101471923B (zh) * | 2007-12-27 | 2012-06-20 | 华为技术有限公司 | 发送协议报文、识别协议报文类型的方法、设备和系统 |
CN102055645A (zh) * | 2009-11-11 | 2011-05-11 | 上海贝尔股份有限公司 | 一种接入网络中ip业务数据流自动分类的方法及其装置 |
CN102238164B (zh) * | 2011-01-18 | 2015-06-03 | 济南纳维信息技术有限公司 | 面向ip电信网的多协议报文适配方法 |
US10097452B2 (en) * | 2012-04-16 | 2018-10-09 | Telefonaktiebolaget Lm Ericsson (Publ) | Chaining of inline services using software defined networking |
-
2014
- 2014-10-17 CN CN201410554999.4A patent/CN105577579B/zh active Active
-
2015
- 2015-09-07 WO PCT/CN2015/089082 patent/WO2016058463A1/zh active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101155107A (zh) * | 2006-09-25 | 2008-04-02 | 华为技术有限公司 | 在弹性分组环上承载点到点协议的方法、装置及系统 |
CN1968163A (zh) * | 2006-10-25 | 2007-05-23 | 华为技术有限公司 | 检测业务通道的方法及提供检测业务通道方法的系统 |
CN101925058A (zh) * | 2009-06-16 | 2010-12-22 | 杭州华三通信技术有限公司 | 一种身份认证的方法、系统和鉴别器实体 |
Also Published As
Publication number | Publication date |
---|---|
WO2016058463A1 (zh) | 2016-04-21 |
CN105577579A (zh) | 2016-05-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10122629B2 (en) | Systems and methods for externalizing network functions via packet trunking | |
EP3424183B1 (en) | System and method for dataplane-signaled packet capture in ipv6 environment | |
US11979322B2 (en) | Method and apparatus for providing service for traffic flow | |
US9451056B2 (en) | Method for mapping packets to network virtualization instances | |
US8824506B2 (en) | Fragmentation of link layer discovery protocol packets | |
US10050870B2 (en) | Handling multipath flows in service function chaining | |
CN105591971B (zh) | 一种QoS的实现方法和装置 | |
CN105591768B (zh) | 故障检测方法及装置 | |
CN105577579B (zh) | 业务功能链中协议报文的处理方法、系统及业务功能节点 | |
CN105577416B (zh) | 一种业务功能链操作、管理和维护方法及节点设备 | |
US10178017B2 (en) | Method and control node for handling data packets | |
CN105515816B (zh) | 检测层次信息的处理方法及装置 | |
WO2013113171A1 (zh) | 流识别的方法、设备和系统 | |
Alani et al. | OSI model | |
CN112910774B (zh) | 通信方法、系统以及网络转发设备 | |
CN108064441B (zh) | 一种加速网络传输优化方法以及系统 | |
CN107231309B (zh) | 获取sdn全网视图的方法、控制器及目的交换节点 | |
CN114205185B (zh) | 一种控制报文的代理方法及装置 | |
US10298454B2 (en) | Communication path switching apparatus, method for controlling communication path switching apparatus, and computer program product | |
CN106656786B (zh) | 一种流量保护方法及装置 | |
CN106067864B (zh) | 一种报文处理方法及装置 | |
CN115866653A (zh) | 数据传输方法、系统以及客户端、服务端 | |
CN112839009A (zh) | 处理报文的方法、装置及系统 | |
WO2020161523A1 (en) | System for detecting short duration attacks on connected vehicles |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | 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 |