本发明涉及网络数据通信,尤其涉及一种聚合口业务流检测方法、装置、设备及存储介质。
背景技术:
1、现场流量信息遥测(in-situ flow information telemetry,ifit)是一种标准化检测协议,它通过在真实业务报文中插入ifit报文头进行特征标记,以直接检测网络的时延、丢包、抖动等性能指标。ifit采用telemetry技术实时上送检测数据,可通过可视化界面直观呈现检测结果,能够实现随流质量感知与故障定界。ifit与传统网络运维技术相比,具有高精度、实时性、可视化的优点,可以灵活适配多种业务场景,并进一步通过与大数据平台和智能算法的结合为智能运维提供支撑。
2、ifit利用正常转发的业务流量,由在指定的业务流量中插入控制信息,经过转发设备对其进行处理,将采集到的信息上报给分析器,检测识别网络中细微的异常,精准检测每个业务的时延、丢包等性能信息,使得服务级别协议(service level agreement,sla)内容实时可视,做到快速故障定界和定位。根据不同应用场景的检测要求,基于业务流量的随流检测可以分为端到端测量和逐跳测量两种检测类型。
3、端到端测量是指当用户希望测量整个网络的丢包和时延性能时,可以选择端到端测量的一种测量类型,端到端测量会测量流量在进入网络的设备(ingress流量入口)和离开网络的设备(egress流量出口)之间是否存在丢包以及时延参数。
4、逐跳测量类型是指当用户希望准确定位每个网络节点的丢包和时延性能时,可以选择逐段测量的类型。当根据测量结果发现端到端统计场景有丢包或者时延不满足业务要求时,可以将端到端之间的网络划分为多个更小的测量区段,测量每两个网元之间是否存在丢包、时延值,进一步定位影响网络性能的网元位置。在ipv6版本的段路由(segementroute,sr)部署场景下,逐跳测量指的是转发路径中每个支持srv6功能的端点endpoint节点之间的测量,也称为逐段检测。
5、目前,在配置ifit时,需要绑定业务流量的接口,当前路由器设备支持配置聚合trunk端口(也称为汇聚端口),trunk口是一个逻辑口,可以由多个物理口一起组成一个trunk口,但是在ifit配置里,设备只能支持绑定物理口,而trunk口广泛应用于各种应用场景中,因此,目前ifit技术还无法实现基于逻辑聚合trunk口业务流检测。
技术实现思路
1、有鉴于此,本发明提供一种聚合口业务流检测方法、装置、设备及存储介质,用于解决ifit不支持绑定逻辑聚合trunk口的技术问题。
2、基于本发明实施例的一部分,本技术提供一种聚合口业务流检测方法,该方法应用于支持现场流量信息遥测ifit技术的网络设备,该方法包括:
3、在头节点网络设备配置并使能ifit功能,在ifit配置中绑定聚合端口即trunk口;
4、网络操作系统层接收并解析ifit配置,根据绑定的trunk口的聚合成员端口数量,将ifit配置转换为针对每个聚合成员端口的子ifit配置,将子ifit配置下发给驱动层,所述子ifit配置中包括为聚合成员端口分配的业务流标识flowid;
5、驱动层针对每个聚合成员端口向网络操作系统层上报业务流检测数据,业务流检测数据中包括所述业务流标识flowid及ifit配置要求检测上报的数据;
6、网络操作系统层基于ifit配置的检测周期,根据trunk口的聚合成员端口与分配的业务流标识flowid的对应关系向网络管理系统上报ifit检测数据。
7、进一步地,所述网络操作系统层通过驱动接口向trunk口的每个聚合成员端口下发相应的子ifit配置;
8、驱动层根据所述子ifit配置向trunk口的聚合成员端口下发acl表项给转发芯片,在acl表项的结果字段中包括与聚合成员端口对应的业务流标识flowid;
9、转发芯片基于acl表项对业务流进行匹配,对匹配的业务流报文封装ifit头并向驱动层上报流量统计消息,所述流量统计消息中包括聚合成员端口的业务流标识flowid;
10、驱动层根据转发芯片上报的流量统计消息向网络操作系统层上报业务流检测数据,业务流检测数据中包括业务流标识flowid及ifit配置要求检测上报的数据。
11、进一步地,所述网络操作系统层向网络管理系统上报ifit检测数据的方法为:
12、网络操作系统层接收到驱动层上报的每个聚合成员端口的业务流检测数据后,按ifit配置的检测周期,根据trunk口、聚合成员端口以及分配的业务流标识flowid之间的对应关系在本地对trunk口的业务流检测数据做聚合;
13、网络操作系统层向网络管理系统上报聚合后的trunk口的业务流检测数据,上报的消息中携带trunk口的接口索引。
14、进一步地,所述网络操作系统层向网络管理系统上报ifit检测数据的方法为:
15、网络操作系统层接收到驱动层上报的每个聚合成员端口的业务流检测数据后,按ifit配置的检测周期向网络管理系统分别上报每个trunk口的聚合成员端口的ifit检测数据,上报的消息中携带trunk口的接口索引以及为每个聚合成员端口分配的业务流标识flowid,以使网络管理系统根据trunk口、聚合成员端口对应的业务流标识flowid之间的对应关系进行trunk口的业务流检测数据的聚合。
16、进一步地,所述将ifit配置转换为针对每个聚合成员端口的子ifit配置的方法为:
17、网络操作系统层查询trunk口的聚合成员端口信息;
18、网络操作系统层为每个trunk口的聚合成员端口分配唯一的业务流标识flowid;
19、网络操作系统层将绑定trunk口的ifit配置转换为绑定每个聚合成员端口的子ifit配置,所述子ifit配置中包括聚合成员端口对应的业务流标识flowid。
20、进一步地,所述trunk口的业务流检测数据的聚合方法为:
21、按ifit配置的检测周期,将trunk口的每个聚合成员端口的业务流检测数据中的报文统计数据做累加;
22、在ifit配置要求检测时延的情况下,还包括将trunk口的每个聚合成员端口的业务流检测数据中的时延统计数据做统计平均。
23、基于本发明实施例的另一方面,本技术还提供一种聚合口业务流检测装置,该装置可以软件、硬件或软硬结合的方式实现。当以软件模块方式实现时,该软件模块的程序代码被加载到设备的存储介质中,由处理器读取存储介质中的程序代码并执行,从而实现该装置中各组成模块的功能。该装置应用于支持现场流量信息遥测ifit技术的网络设备,该装置包括:
24、配置模块,用于在头节点网络设备配置并使能ifit功能,在ifit配置中绑定聚合端口trunk;
25、配置转换模块,位于网络操作系统层,用于接收并解析ifit配置,根据绑定的trunk口的聚合成员端口数量,将ifit配置转换为针对每个聚合成员端口的子ifit配置,将子ifit配置下发给驱动层,所述子ifit配置中包括为聚合成员端口分配的业务流标识flowid;
26、检测数据上报模块,位于网络操作系统层,用于接收驱动层针对每个聚合成员端口上报的业务流检测数据,业务流检测数据中包括所述业务流标识flowid及ifit配置要求检测上报的数据;基于ifit配置的检测周期,根据trunk口的聚合成员端口与分配的业务流标识flowid的对应关系向网络管理系统上报ifit检测数据。
27、进一步地,所述装置还包括:
28、表项下发模块,位于驱动层,用于根据所述子ifit配置向trunk口的聚合成员端口下发acl表项给转发芯片,在acl表项的结果字段中包括与聚合成员端口对应的业务流标识flowid;
29、数据上报模块,位于驱动层,用于根据转发芯片上报的流量统计消息向网络操作系统层上报业务流检测数据,业务流检测数据中包括业务流标识flowid及ifit配置要求检测上报的数据。
30、进一步地,所述检测数据上报模块包括:
31、检测数据聚合单元,用于接收驱动层上报的每个聚合成员端口的业务流检测数据,按ifit配置的检测周期,根据trunk口、聚合成员端口以及分配的业务流标识flowid之间的对应关系在本地对trunk口的业务流检测数据做聚合;
32、检测数据上报单元,用于向网络管理系统上报聚合后的trunk口的业务流检测数据,上报的消息中携带trunk口的接口索引。
33、进一步地,所述检测数据上报模块接收到驱动层上报的每个聚合成员端口的业务流检测数据后,按ifit配置的检测周期向网络管理系统分别上报每个trunk口的聚合成员端口的ifit检测数据,上报的消息中携带trunk口的接口索引以及为每个聚合成员端口分配的业务流标识flowid,以使网络管理系统根据trunk口、聚合成员端口对应的业务流标识flowid之间的对应关系进行trunk口的业务流检测数据的聚合。
34、本发明技术方案在头节点网络设备配置并使能ifit,在ifit配置中允许绑定聚合trunk口,网络操作系统层在向设备驱动下发ifit配置时,为聚合口的每个成员端口分配一个业务流标识flowid,在下发给聚合成员端口的访问控制列表acl表项中携带业务流标识,在聚合成员端口基于acl匹配到业务流后,向网络操作系统层上报的检测数据中携带为聚合成员端口分配的flowid,网络操作系统层根据trunk口与分配给聚合成员端口的flowid之间的对应关系对检测数据进行汇总或将检测数据上报给网络管理系统进行汇总从而得到trunk口的检测数据。通过本发明能够实现针对trunk口的业务流检测。