一种协商报文处理方法、装置、设备及存储介质与流程
本技术涉及通信,尤其涉及一种协商报文处理方法、装置、设备及存储介质。
背景技术:
1、在通信设备中,转发平面负责执行数据包的快速转发与交换,控制平面则专注于协议处理、路由计算和策略决策。通常转发平面处理普通转发报文,但对于协商报文,需要上送至控制平面进行处理。
2、实施过程中,转发平面与控制平面之间通过通路传递协商报文。
技术实现思路
1、本发明各示例性实施例提供一种协商报文处理方法、装置、设备及存储介质。
2、第一方面,本技术实施例提供一种协商报文处理方法,所述方法包括:
3、针对接收到的多个协商报文,转发单元将同一会话的协商报文分配至第一收包队列;
4、当所述第一收包队列符合打包条件时,所述转发单元基于所述第一收包队列中的协商报文生成聚合协商报文;
5、所述转发单元将所述聚合协商报文发送至控制单元。
6、本技术实施例通过在转发单元预先设置发包队列,并将属于一个会话的协商报文分配至第一收包队列进行打包,从而增强对多个会话的管理能力,在大容量场景下便于管理多个会话各自的协商报文。并且,通过以队列为单位进行打包管理,相比于传统技术中直接传输每个协商报文的方案,能够有效保证通路的传输性能。
7、一种可能的实施方式,所述转发单元配置有多个收包队列,所述多个收包队列分别具有唯一的队列标识符;所述转发单元将同一会话的协商报文分配至所述第一收包队列,包括:
8、针对所述多个协商报文中的每个协商报文,分别执行以下操作:
9、所述转发单元基于所述协商报文携带的会话标识符,在所述多个收包队列中确定第一收包队列;所述会话标识符用于表示所述协商报文归属的会话;
10、所述转发单元将所述协商报文分配至所述第一收包队列。
11、本技术实施例协商报文携带的会话标识符进行分配的过程中,由于一个会话中的协商报文的会话标识符相同,则可以将同一个会话的协商报文分配至一个第一收包队列中。
12、一种可能的实施方式,所述转发单元基于所述协商报文携带的会话标识符,在所述多个收包队列中确定第一收包队列,包括:
13、所述转发单元基于所述协商报文携带的会话标识符,确定所述协商报文的分配标识符;
14、将所述多个收包队列中队列标识符与所述分配标识符相同的收包队列,确定为所述第一收包队列。
15、本技术实施例基于协商报文携带的会话标识符确定协商报文的分配标识符,并根据该协商报文的分配标识符以及每个收包队列的队列标识符确定该协商报文的第一收包队列,由使得将同一个会话的协商报文分配至一个第一收包队列中。
16、一种可能的实施方式,所述转发单元基于所述协商报文携带的会话标识符,在所述多个收包队列中确定第一收包队列,包括:
17、所述转发单元在存储的会话标识符与收包队列的映射关系中查询是否包含第一会话标识符,其中,所述第一会话标识符是所述协商报文携带的会话标识符;
18、若包含所述第一会话标识符,所述转发单元基于会话标识符与收包队列的映射关系,将所述第一会话标识符对应的收包队列确定为所述第一收包队列;
19、若未包含所述第一会话标识符,所述转发单元基于所述协商报文携带的会话标识符,确定所述协商报文的分配标识符;将所述多个收包队列中队列标识符与所述分配标识符相同的收包队列,确定为所述第一收包队列。
20、本技术实施例通过存储会话标识符与收包队列的映射关系,可以在接收到第一会话标识符后,通过查询映射关系确定第一收包队列,从而快速确定第一收包队列。并且,若收包队列的数量发生变化,也可以将同一个会话的协商报文分配至一个第一收包队列中。
21、一种可能的实施方式,所述转发单元基于所述协商报文携带的会话标识符,确定所述协商报文的分配标识符,包括:
22、所述转发单元根据所述协商报文的会话标识符,对配置的收包队列的数量进行取余处理,得到所述协商报文的分配标识符。
23、本技术实施例通过根据协商报文的会话标识符,对配置的第一收包队列的数量进行取余处理,可以便捷快速的得到协商报文的分配标识符。
24、一种可能的实施方式,通过以下至少一种方式确定所述第一收包队列符合打包条件:
25、所述第一收包队列的收包时长达到预设时长;
26、所述第一收包队列中包含的协商报文的长度大于或等于预设长度。
27、本技术实施例根据第一收包队列的收包时长达到预设时长,确定第一收包队列符合打包条件,可以确保报文的及时性。根据第一收包队列中包含的协商报文的长度大于或等于预设长度,确定第一收包队列符合打包条件,可以避免因报文长度过大导致网络传输性能降低的情况。
28、一种可能的实施方式,所述第一收包队列中的协商报文包含报文头部和数据部分;所述转发单元基于所述第一收包队列中的协商报文生成聚合协商报文,包括:
29、所述转发单元将所述第一收包队列中各个协商报文中的数据部分进行组合,得到聚合数据;
30、所述转发单元基于所述第一收包队列的第一队列标识符和所述聚合数据,确定聚合协商报文的私有头部;
31、所述转发单元基于所述报文头部、所述聚合协商报文的私有头部和所述聚合数据生成聚合协商报文。
32、本技术实施例通过将数据部分进行组合得到聚合数据,可以减少报文传输的数据量,降低通路的传输压力。
33、一种可能的实施方式,所述基于所述第一收包队列的第一队列标识符和所述聚合数据,确定聚合协商报文的私有头部,包括:
34、所述转发单元基于所述第一收包队列的第一队列标识符确定目标线程标识符,所述目标线程标识符用于指示所述控制单元中处理所述聚合协商报文的目标线程;
35、所述转发单元基于所述聚合数据确定聚合数据信息,所述聚合数据信息包括所述聚合数据中的报文个数和/或所述聚合数据中的报文长度;
36、基于所述目标线程标识符和所述聚合数据信息确定聚合协商报文的私有头部。
37、本技术实施例中的聚合报文私有头部包括目标线程标识符和聚合数据信息;其中,目标线程标识符是根据第一收包队列的第一队列标识符确定的,目标线程标识符用于指示控制单元中处理聚合协商报文的目标线程,聚合数据信息包括聚合数据中的报文个数和/或聚合数据中的报文长度。
38、本技术实施例在控制单元配置有多个线程时,每个线程用于处理一个收包队列发送的聚合协商报文,则一个会话的协商报文会由一个线程进行处理,使得该线程能够获得该会话的所有的处理结果,无需去其他线程获取,减少了上下文切换的过程,提高控制单元的处理效率。
39、一种可能的实施方式,所述协商报文包含报文头部和数据部分,所述数据部分包括所述协商报文的会话标识符;在所述接收到的多个协商报文之后,所述方法,还包括:
40、针对所述多个协商报文中的每个所述协商报文,所述转发单元存储所述协商报文的所述报文头部,以及所述报文头部与所述协商报文的会话标识符之间的映射关系;
41、则所述将所述聚合协商报文发送至控制单元之后,还包括:
42、所述转发单元接收控制单元发送的聚合响应报文,并将所述聚合响应报文拆分为多个报文;
43、针对所述多个报文中每个报文,所述转发单元基于所述报文携带的第二会话标识符,以及存储的报文头部与会话标识符之间的映射关系,将所述第二会话标识符对应的报文头部与所述报文进行组合,生成目标响应报文。
44、本技术实施例通过存储协商报文的所述报文头部,以及报文头部与协商报文的会话标识符之间的映射关系,可以在接收到控制单元发送的聚合响应报文之后,通过将聚合响应报文拆分为多个报文,并基于每个报文携带的第二会话标识符确定每个报文对应的报文头部,生成每个报文对应完整的目标响应报文。
45、一种可能的实施方式,所述转发平面还配置有多个发包队列;在所述接收控制单元发送的聚合响应报文之后,在所述将所述聚合响应报文拆分为多个报文之前,还包括:
46、所述转发单元基于所述聚合响应报文携带的目标线程标识符,在所述多个发包队列中确定第一发包队列,并将所述聚合响应报文分配至所述第一发包队列。
47、本技术实施例基于聚合响应报文携带的目标线程标识符,确定第一发包队列,可以规范转发平面的处理流程,并快速确定转发平面中处理聚合响应报文的发包队列。
48、一种可能的实施方式,所述多个发包队列分别具有唯一的队列标识符;所述基于所述聚合响应报文携带的目标线程标识符,在所述多个发包队列中确定第一发包队列,包括:
49、所述转发单元基于存储的线程与发包队列之间的映射关系,将所述目标线程标识符对应的发包队列确定为所述第一发包队列;或者
50、所述转发单元将所述多个发包队列中队列标识符与所述目标线程标识符相同的发包队列确定为所述第一发包队列。
51、本技术实施例可以通过线程与发包队列之间的映射关系,确定第一发包队列,也可以通过将多个发包队列中队列标识符与目标线程标识符相同的发包队列确定为第一发包队列。
52、第二方面,本技术实施例一种协商报文处理方法,所述方法包括:
53、控制单元基于转发单元发来的聚合协商报文,在所述控制单元配置的多个线程中确定目标线程;并通过所述目标线程对所述聚合协商报文进行处理,得到多个响应报文;其中,所述聚合协商报文携带目标线程标识符;
54、所述控制单元基于所述聚合协商报文生成聚合响应报文,并将所述聚合响应报文发送至所述转发单元。
55、一种可能的实施方式,所述在所述控制单元配置的多个线程中确定目标线程,包括:
56、所述控制单元将所述多个线程中线程标识符与所述目标线程标识符相同的线程,确定为所述目标线程。
57、一种可能的实施方式,所述控制单元配置有多个收包队列,所述多个收包队列分别具有唯一的队列标识符;
58、在所述目标线程对所述聚合协商报文进行处理之前,还包括:
59、所述控制单元基于所述聚合协商报文携带的目标线程标识符,在所述控制单元配置的所述多个收包队列中确定第二收包队列,并将所述聚合协商报文分配至所述第二收包队列;
60、所述控制单元通过所述目标线程从所述第二收包队列中获取所述聚合协商报文。
61、一种可能的实施方式,所述基于所述聚合协商报文携带的目标线程标识符,在所述控制单元配置的所述多个收包队列中确定第二收包队列,包括:
62、所述控制单元基于存储的线程与收包队列的映射关系,将所述目标线程标识符对应的收包队列确定为所述第二收包队列;或者
63、所述控制单元将所述多个收包队列中队列标识符与所述目标线程标识符相同的收包队列确定为所述第二收包队列。
64、一种可能的实施方式,所述控制单元配置有多个发包队列,所述基于所述多个响应报文生成聚合响应报文,包括:
65、所述控制单元基于所述目标线程标识符,在所述多个发包队列中确定第二发包队列,并将所述多个响应报文分配至所述第二发包队列;
66、当所述第二发包队列符合打包条件时,所述控制单元将所述多个响应报文进行组合,生成聚合响应数据;并基于所述聚合响应数据和所述目标线程标识符生成聚合响应报文。
67、一种可能的实施方式,所述控制单元配置的所述多个发包队列分别具有唯一的队列标识符;所述基于所述目标线程标识符,在所述多个发包队列中确定第二发包队列,包括:
68、所述控制单元基于线程与发包队列的映射关系,将所述目标线程对应的发包队列确定为所述第二发包队列;或者
69、所述控制单元将所述多个发包队列中队列标识符与所述目标线程标识符相同的发包队列确定为所述第二发包队列。
70、一种可能的实施方式,所述基于所述聚合响应数据和所述目标线程标识符生成聚合响应报文,包括:
71、所述控制单元基于所述聚合响应数据和所述目标线程标识符确定聚合响应报文的私有头部;
72、所述控制单元基于所述聚合响应报文私有头部和所述聚合响应数据生成聚合响应报文。
73、一种可能的实施方式,所述基于所述聚合响应数据和所述目标线程标识符确定聚合响应报文的私有头部,包括:
74、所述控制单元基于所述聚合响应数据确定聚合响应数据信息,所述聚合响应数据信息包括所述聚合响应数据中的报文个数和/或所述聚合响应数据中的报文长度;
75、所述控制单元基于所述目标线程标识符和所述聚合响应数据信息确定所述聚合响应报文的私有头部。
76、一种可能的实施方式,通过以下至少一种方式确定所述第二发包队列符合打包条件:
77、所述第二发包队列的收包时长达到预设时长;
78、所述第二发包队列中包含的响应报文的长度大于或等于预设长度。
79、第三方面,一种协商报文处理装置,包括:
80、分配模块,用于针对接收到的多个协商报文,将同一会话的协商报文分配至第一收包队列;
81、第一生成模块,用于当所述第一收包队列符合打包条件时,基于所述第一收包队列中的协商报文生成聚合协商报文;
82、发送模块,用于将所述聚合协商报文发送至控制单元。
83、第四方面,一种协商报文处理装置,包括:
84、确定模块,用于基于转发单元发来的聚合协商报文,在所述控制单元配置的多个线程中确定目标线程;并通过所述目标线程对所述聚合协商报文进行处理,得到多个响应报文;其中,所述聚合协商报文携带目标线程标识符;
85、第二生成模块,用于基于所述多个响应报文生成聚合响应报文,并将所述聚合响应报文发送至所述转发单元。
86、第五方面,本技术实施例还提供一种计算机可读存储介质,包括,
87、存储器,
88、所述存储器用于存储计算机程序,当所述计算机程序被处理器执行时,使得包括所述计算机可读存储介质的装置完成第一方面或第二方面中任一种可能的实施方式所述的方法。
89、第六方面,本技术实施例提供一种电子设备,包括:
90、存储器,用于存放计算机程序;
91、处理器,用于执行所述存储器上所存放的计算机程序时,以实现第一方面或第二方面中任一种可能的实施方式所述的方法。
92、第七方面,本技术实施例提供一种计算机程序产品,其包括计算机程序,所述计算机程序存储在计算机可读存储介质中;当电子设备的处理器从所述计算机可读存储介质读取所述计算机程序时,所述处理器执行该计算机程序,使得所述电子设备执行第一方面或第二方面中任一所述方法的步骤。
93、本技术的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本技术而了解。本技术的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
版权声明:本站专利文献数据主要来源于国家知识产权局等公开渠道,由 技术新讯 进行整理汇编。页面设计及数据汇编的著作权归本站所有。全部内容仅供个人学习、科研评估与技术交流参考,严禁用于任何商业用途(包括但不限于直接生产制造、技术转让、倒卖数据等)。
免责条款:专利技术具有时效性,本站不对资料的绝对准确性、完整性和可实施性提供任何明示或暗示的担保。因参考本站内容造成的直接或间接损失,本站不承担相关法律责任。若您认为本站内容有侵权问题,请及时提供权属证明与我们联系,本站将在核实后依法处理。反馈意见:yyfuon@163.com