一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

发送网络性能参数、计算网络性能的方法和网络节点与流程

2022-06-08 19:05:28 来源:中国专利 TAG:

表中包括:在第一网络节点获得第一报文的段列表中的第二网络节点的段标识后,第 一网络节点修改段列表中的第二网络节点的段标识以将网络性能参数添加到段列表 中的第二网络节点的段标识中。在srv6技术中,段列表用于指导报文的转发,段列 表中按顺序排列的段标识指定了一条显示转发路径,段列表中的每个段标识对应一个 网络节点。第一网络节点根据段列表将报文的目的地址设置为段列表中第一网络节点 的下一跳段节点的段标识后,段列表中该下一跳段节点的段标识并不删除,并且该下 一跳段节点的段标识在后续转发过程中不会再使用,因此,在第一网络节点将报文的 目的地址设置为该下一跳段节点的段标识后,段列表中的该下一跳段节点的段标识的 用于报文转发的作用也就消失了,第一网络节点可以继续使用段列表中该下一跳段节 点的段标识字段,将第一网络节点的网络性能参数包括到第二网络节点的段标识中, 不需要额外的报文头来携带第一网络节点的网络性能参数,节省了网络资源。
10.在一种可能的设计中,该方法还包括:第一网络节点根据第二报文的目的地址和 报文转发策略确定所述段列表,所述报文转发策略包括所述第二报文的目的地址和所 述段列表的对应关系,所述第二报文为所述第一网络节点接收的报文或为所述第一网 络节点生成的报文;所述第一网络节点将所述转发策略中的所述段列表添加到所述第 二报文中以生成所述第一报文。
11.在一种可能的设计中,所述网络性能参数包括以下一个或多个:
12.所述第一网络节点发送所述第一报文时的时间;
13.所述第一网络节点在发送所述第一报文前接收到的用所述段列表发送的业务报 文的数量;和所述第一网络节点的报文发送队列的队列占用率,所述报文发送队列为 存储所述第一报文的先进先出队列。
14.在一种可能的设计中,第二网络节点的段标识包括网络性能参数类型,第一网络 节点的网络性能参数为网络性能参数类型所指示的网络性能参数。可选地,网络性能 参数类型包括:时间类型、发包数类型和队列占用类型。通过在段标识中包含网络性 能参数类型,可以实现按需发送网络性能参数。
15.在一种可能的设计中,当网络参数的类型为时间类型时,第一网络节点将发送第 一报文时的时间添加到段列表中,当网络参数的类型为发包数类型时,第一网络节点 将发送第一报文前接收到的用段列表发送的业务报文的数量添加到段列表中,当网络 参数的类型为队列占用类型时,第一网络节点将存储第一报文的报文发送队列的队列 占用率添加到段列表中。
16.在一种可能的设计中,网络性能参数包括第一网络节点发送第一报文的出接口的 接口信息,该接口信息可以为接口标识(interface identifier),通过在网络性能参数中 包括发送报文的出接口的接口信息,有助于网络中的网管设备或控制器实现对网络报 文转发路径的监控,从而有利于实现网络报文的负载分担或转发路径优化。
17.在一种可能的设计中,当第一网络节点为srv6网络转发该第一报文的入口节点 时,该段列表也可以包括第一网络节点的段标识,在这种情况下可以将第一网络节点 的网络性能参数添加到第一网络节点的段标识中。可选地,第一网络节点修改段列表 中的第一网络节点的段标识以在第一网络节点的段标识的第65比特(bit)至第128 比特中添加所述网络性能参数。在srv6技术中,在srv6网络的入口节点使用段列 表进行报文转发时,段列
参数,所述第三网络节点为所述报文的转发路径上所述第一网络节点和所述第二网络 节点之间的网络节点,所述第三网络节点的网络性能参数包括:所述第三网络节点转 发所述报文时接收到的用所述段列表转发的业务报文的第三数量,所述第二网络节点 根据所述第一网络性能参数计算网络性能包括:所述第二网络节点计算用所述段列表 转发的业务报文从所述第一网络节点转发到所述第三网络节点的丢包数,所述丢包数 等于所述第三数量与所述第一数量之间的差值。
27.在一种可能的设计中,用该段列表发送的业务报文的业务标识可以是业务标签、 或互联网协议(internet protocol,ip)地址或ip地址和端口号的组合。
28.在一种可能的设计中,该第一段标识为该第二网络节点的段标识,第二网络节点 为第一网络节点的下一跳段节点。第一网络节点将网络性能参数添加到了第一网络节 点的下一跳段节点的段标识中。
29.在一种可能的设计中,该段列表包括该第一网络节点的段标识,该第一段标识为 该第一网络节点的段标识。第一网络节点将网络性能参数添加到了第一网络节点的段 标识中。
30.第三方面,本发明实施例提供了一种网络节点,执行第一方面或第一方面的任意 一种可能的实现方式中第一网络节点执行的方法。具体地,该网络节点包括用于执行 第一方面或第一方面的任意一种可能的实现方式中的方法的单元。
31.第四方面,本发明实施例提供了一种网络节点,执行第二方面或第二方面的任意 一种可能的实现方式中的第二网络节点执行方法。具体地,该网络节点包括用于执行 第二方面或第二方面的任意一种可能的实现方式中的方法的单元。
32.第五方面,提供了一种网络节点,该网络节点包括:处理器、网络接口和存储器。 网络接口可以是收发器。存储器可以用于存储程序代码,处理器用于调用存储器中的 程序代码执行前述第一方面或第一方面的任意一种可能的实现方式中第一网络节点 执行的方法,此处不在赘述。
33.第六方面,提供了一种网络节点,该网络节点包括:处理器、网络接口和存储器。 网络接口可以是收发器。存储器可以用于存储程序代码,处理器用于调用存储器中的 程序代码执行前述第二方面或第二方面的任意一种可能的实现方式中第二网络节点 执行的方法,此处不在赘述。
34.第七方面,提供了一种网络节点,该网络节点为多个网络节点中的第一网络节点, 该多个网络节点还包括第二网络节点,该网络节点包括:主控板和接口板。主控板包 括:第一处理器和第二存储器。接口板包括:第二处理器、第二存储器和接口卡。主 控板和接口板耦合。第一存储器可以用于存储程序代码,第一处理器用于调用第一存 储器中的程序代码执行如下操作:
35.获得第一报文的段列表中的第二网络节点的段标识,第二网络节点为第一报文的 转发路径上的该第一网络节点的下一跳段节点;将所述第一网络节点的网络性能参数 添加到所述段列表中。
36.第二存储器可以用于存储程序代码,第二处理器用于调用第二存储器中的程序代 码执行如下操作:向所述第二网络节点发送添加了该网络节点的网络性能参数的所述 第一报文。
37.第八方面,提供了一种网络节点,该网络节点为多个网络节点中的第二网络节点, 该多个网络节点还包括第一网络节点,该网络节点包括:主控板和接口板。主控板包 括:第一处理器和第二存储器。接口板包括:第二处理器、第二存储器和接口卡。主 控板和接口板耦合。第二存储器可以用于存储程序代码,第二处理器用于调用第二存 储器中的程序代码执行如下操作:接收第一网络节点发送的包括段列表的报文,段列 表中的第一段标识包括第一网络节点的网络性能参数。
38.第一存储器可以用于存储程序代码,第一处理器用于调用第一存储器中的程序代 码执行如下操作:确定所述报文的目的地址与该第二网络节点的段标识匹配;获得所 述第一网络节点的网络性能参数;根据所述第一网络节点的网络性能参数计算网络性 能。
39.在一种可能的实现方式中,主控板和接口板之间建立进程间通信协议 (inter-process communication,ipc)通道,主控板和接口板之间通过ipc通道进行通 信。
40.第九方面,提供了一种计算网络性能的系统,该系统包括前述第三方面提供的网 络节点和第四方面提供的网络节点,或该系统包括前述第五方面和第六方面提供的网 络节点,或该系统包括前述第七方面和第八方面提供的网路节点。
41.第十方面,提供了一种计算机存储介质,用于储存为上述网络节点所用的计算机 软件指令,其包括用于执行上述方面所涉及的程序。
42.第十一方面,提供了一种包括计算机程序指令的计算机程序产品,当该计算机程 序产品在网络节点上运行时,使得网络节点执行第一方面、第二方面、第一方面的任 意一种可能的实现方式或第二方面的任意一种可能的实现方式中提供的方法。
附图说明
43.图1为本发明实施例提供的一种网络场景示意图;
44.图2为本发明实施例提供的一种计算网络性能的方法流程示意图;
45.图3为本发明实施例提供的一种sid格式的示意图;
46.图4为本发明实施例提供的一种发送网络性能参数的示意图;
47.图5为本发明实施例提供的一种发送网络性能参数的示意图;
48.图6为本发明实施例提供的一种发送计算网络性能的流程示意图;
49.图7为本发明实施例提供的一种网络节点的结构示意图;
50.图8为本发明实施例提供的一种网络节点的结构示意图;
51.图9为本发明实施例提供的一种网络节点的结构示意图;
52.图10为本发明实施例提供的一种网络节点的结构示意图;
53.图11为本发明实施例提供的一种网络节点的结构示意图;
54.图12为本发明实施例提供的一种网络节点的结构示意图;
55.图13为本发明实施例提供的一种网络节点的结构示意图;
56.图14为本发明实施例提供的一种网络节点的结构示意图;
57.图15为本发明实施例提供的一种计算网络性能系统的示意图。
具体实施方式
58.下面结合附图,对本发明的实施例进行描述。
59.在srv6网络的报文转发过程中,srv6网络的入口设备会对报文添加段路由头 (segment routing header,srh),该srh包括用于标识转发路径的段列表(segment list)。 该段列表包括报文转发路径上的经过的支持srv6功能的网络节点的ipv6地址。srv6 网络的报文转发的入口设备也可以称为入口节点(ingress node)或入口运营商边界 (provider edge,pe)设备。在srv6技术中段列表中的网络节点的ipv6地址也可以称 为网络节点的段标识(segment identifier,sid)。段列表也可以称为segment list或sidlist。每个sid占用128比特(bit)。sid可以包括:位置(locator)和功能(function)。 locator占用sid的字节数并不限定,例如:locator包括在网络节点的sid的前64bit 或前55bit。locator被用于将报文路由到sid对应的网络节点,例如,转发节点可以 根据sid中包括的locator将报文转发到sid对应的网络节点,具体地,用sid的locator 部分查找路由表,然后根据匹配到的路由表项将报文向sid对应的网络节点发送。 function用于指示sid对应的网络节点执行相应的功能。举例来说,当网络节点接收 到报文,判断报文的目的地址为所述网络节点的地址,也就是网络节点的段标识,则 网络节点根据该段标识中的function执行相应的功能。每个网络节点的sid需要通告 给网络中的其他网络节点,例如通告给srv6网络的边界节点或控制器,边界节点或 控制器根据收集到的网络节点的sid生成用于转发报文的段列表。sid是一个段标识 用于代表段路由域中的一个特定的段。关于段列表和sid的定义可以参见互联网工程 任务小组(internet engineering task force,ietf)公开的与srv6相关的草案,例如: draft-filsfils-spring-srv6-network-programming-04。
60.在本发明实施例中提到的控制器可以为网络管理设备或者为软件定义网络 (software-defined networking,sdn)架构下的控制器。本发明实施例中的网络节点 可以为网络设备,例如:路由器、交换机、或者为sdn网络中的转发器。
61.图1示出了本发明实施例的一种可能的应用场景示意图。该应用场景包括支持 srv6功能的网络,即:srv6网络,该网络包括支持srv6功能的网络节点,如:网 络节点101、网络节点102、网络节点103、网络节点104、网络节点105和网络节点 106。在srv6网络中,网络节点支持srv6功能也就是网络节点支持ipv6段路由功能。 网络节点101的段标识为sid1,该sid1也为网络节点101的ipv6地址,例如a::。 网络节点102的段标识为sid2,该sid2也为网络节点102的ipv6地址,例如b::。 网络节点103的段标识为sid3,该sid3也为网络节点103的ipv6地址,例如c::。 网络节点106的段标识为sid6,该sid6也为网络节点106的ipv6地址,例如d::。 当报文从网络节点101转发到网络节点106时,网络节点101称为srv6网络的入口 节点(ingress node),网络节点106称为srv6网络的出口节点(egress node)。该应用 场景还包括通过srv6网络连接的用户设备107和用户设备108。可选地,用户设备 107还可以通过用户接入设备与网络节点101连接,用户设备108也可以通过用户接 入设备与网络节点106连接。
62.本发明实施例提供了发送网络性能参数的方法、计算网络性能的方法及基于该方 法的网络节点和系统。该方法、网络节点和系统基于同一发明构思。方法、网络节点 和系统解决问题的原理相似,因此,网络节点、方法和系统的实施例可以相互参见, 相同或类似之处不再赘述。
63.结合图1所示的应用场景,参阅图2,本发明实施例提供了发送网络性能参数、 计
算网络性能的方法,该方法中第一网络节点将第一网络节点的网络性能添加到报文 的段列表中,然后将该报文向第二网络节点发送,第二网络节点接收到该报文后,从 报文的段列表中获得第一网络节点的网络性能参数,然后根据第一网络节点的网络性 能参数计算网络性能。该方法包括:
64.s201,第一网络节点获得第一报文的段列表中的第二网络节点的段标识,第二网 络节点为第一报文的转发路径上的该第一网络节点的下一跳段节点。该第一网络节点 的下一跳段节点是指该转发路径上沿报文转发方向离第一网络节点最近的支持段路 由功能的网络节点。所述第一报文的转发路径也就是用于转发所述第一报文的转发路 径。
65.以第一网络节点为图1中的网络节点101为例进行举例说明。在图1所示的应用 场景中,从网络节点101到网络节点106有两条路径,第一条路径经过的网络节点包 括:网络节点102、网络节点103和网络节点106,第二条路径经过的网络节点包括: 网络节点104、网络节点105和网络节点106。网络节点101获得两条路径中最优的 第一条路径的段列表。该段列表中的sid可以按照报文经过第一路径的网络节点的倒 序排列,例如,段列表为《sid6,sid3,sid2》。该段列表中的sid也可以按照报文 经过第一路径的网络节点的正序排列,例如,段列表为《sid2,sid3,sid6》。该段 列表可以是网络节点101生成的,或者是从控制器获取的。网络节点101获得第一报 文的目的地址和该段列表的对应关系。例如,第一报文的目的地址为d::,第一网络 节点获得地址d::和段列表《sid2,sid3,sid6》的对应关系。该对应关系可以预先 存储在网络节点101上,也可以存储在其他网络设备上。例如,该对应关系可以预先 存储在控制器上。在网络节点101接收到该第一报文时,网络节点101从控制器上获 取该对应关系。在该示例中,由于网络节点101通过该段列表获得了网络节点101的 下一跳段节点,就可以将第一报文沿着第一路径转发到网络节点106,因此,该段列 表中可以不包括网络节点101的段标识。可选地,该段列表中也可以包括网络节点101 的段标识,例如,该段列表可以为《sid6,sid3,sid2,sid1》,或者《sid1,sid2, sid3,sid6》。当段列表中包含网络节点101的段标识时,网络节点101的段标识不 用于转发报文,可以用于携带网络节点101的网络性能参数。
66.在一个示例中,第一网络节点获得第一报文是指第一网络节点从用户设备接收第 二报文,然后根据第二报文生成该第一报文。举例来说,第一网络节点为图1所示场 景中的网络节点101,第二网络节点为网络节点102,网络节点101与用户设备107 连接,网络节点106与用户设备108连接,用户设备107和用户设备108可以不支持 段路由功能。当用户设备107需要向用户设备108发送报文时,用户设备107生成目 的地址为用户设备108的地址的第二报文,然后将该第二报文发送到网络节点101。 网络节点101作为srv6网络中转发该第二报文的入口节点,接收第二报文,然后根 据第二报文的目的地址匹配转发策略,该转发策略是网络节点101预先从控制器接收 的,或者是网络节点101生成的。该转发策略包括目的地址和段列表的对应关系。当 网络节点101确定第二报文的目的地址与转发策略中的目的地址匹配时,在该第二报 文中插入srh以生成第一报文。该srh中包括段列表《ipv6 address,sid6,sid3, sid2》,其中ipv6地址(address)为目标用户设备的ipv6地址,如用户设备108的 地址。在本示例的另一种情况中,如果用户设备107只需向网络节点106发送报文, 例如,网络节点106为服务器设备,段列表包括转发路径上经过的支持段路由功能的 网络节点的段标识,如该段列表为《sid6,sid3,sid2》。
67.在一个示例中,第一网络节点获得第一报文是指第一网络节点从其他支持段路由 功能的网络节点接收该第一报文。举例来说,第一网络节点为图1所示场景中的网络 节点102,第二网络节点为网络节点103,第一网络节点为第一报文的转发路径上的 中间节点。第一网络节点从图1中的网络节点101接收该第一报文,网络节点101作 为第一报文转发的入口节点,已经在第一报文中添加了srh,该srh中包括段列表 《sid6,sid3,sid2》,或《ipv6 address,sid6,sid3,sid2》。
68.在一个示例中,第一网络节点获得第一报文是指该第一网络节点生成该第一报文, 举例来说,第一网络节点为图1所示场景中的网络节点101,第二网络节点为网络节 点102,第一网络节点为第一报文转发路径上的入口节点。在网络节点101需要向网 络节点106发送ipv6报文时,会根据网络节点106的ipv6地址d::查找段列表,然 后将srh插入到ipv6报文的ipv6报文头和报文净荷之间,srh中包括段列表。网络 节点101从段列表中获得网络节点101的下一跳段节点的段标识,即:网络节点102 的段节点标识sid2,然后将第一报文的目的地址(destination address,da)替换为 sid2,即:将第一报文的目的地址字段的值替换为sid2。
69.在一个示例中,该段列表可以以某种数据结构的形式保存在所述第一网络节点的 存储器中。所述数据结构可以是数组、链表或者结构体。例如,当所述数据结构是数 组时,sid6可以是所述数组中的第一个成员,sid3可以是所述数组中的第二个成员, sid2可以是所述数组中的第三个成员。第一网络节点的处理器可以对所述存储器中保 存的所述数组的第三个成员进行读操作,从而从所述存储器获取sid2的段标识。
70.s202,第一网络节点将所述第一网络节点的网络性能参数添加到所述段列表中。
71.在一个示例中,所述网络性能参数包括以下一个或多个:
72.第一网络节点发送所述第一报文时的时间;
73.第一网络节点在发送所述第一报文前接收到的用所述段列表发送的业务报文的 数量;和
74.第一网络节点的报文发送队列的队列占用率,所述报文发送队列为存储所述第一 报文的先进先出队列。
75.第一网络节点将第一报文的目的地址替换为第二网络节点的段标识,也就是将第 一报文的目的地址字段的值更新为第二网络节点的段标识。由于第二网络节点的段标 识也就是第二网络节点的ipv6地址,因此,第一网络节点将第一报文的目的地址替 换为第二网络节点的段标识,也就是将第一报文的目的地址替换为第二网络节点的 ipv6地址。
76.在一个示例中,第二网络节点的段标识包括网络性能参数类型,所述第一网络节 点的网络性能参数为所述网络性能参数类型所指示的网络性能参数。网络性能参数类 型包括:时间类型、发包数类型和队列占用类型。当网络参数的类型为时间类型时, 第一网络节点将发送第一报文时的时间添加到段列表中;当网络参数的类型为发包数 类型时,第一网络节点将发送第一报文前接收到的用段列表发送的业务报文的数量添 加到段列表中;当网络参数的类型为队列占用类型时,第一网络节点将存储第一报文 的报文发送队列的队列占用率添加到段列表中。通过在段标识中包含网络性能参数类 型,可以实现按需发送网络性能参数。例如,当需要计算网络中报文转发的时延时, 将段标识中的网络性能参数类型设置为时间类型。
77.在一个示例中,所述第一网络节点将所述第一网络节点的网络性能参数添加到所 述段列表中包括:
78.在第一网络节点获得第一报文的段列表中的第二网络节点的段标识后,第一网络 节点修改所述段列表中的所述第二网络节点的段标识以将所述网络性能参数添加到 所述段列表中的所述第二网络节点的段标识中。可选地,第一网络节点修改段列表中 第二网络节点段标识以在该第二网络节点的段标识的第65比特至第128比特中添加 所述网络性能参数。
79.图3为该本发明实施例提供的一种段标识的格式示意图,图2所示实施例中用于 携带网络性能参数的段标识可以采用图3所示的段标识的格式,例如第二网络节点段 标识采用图3所述的段标识的格式。段标识共占用128字节,如图0-127字节。其中,
80.locator(位置)字段占用0-56字节,存放ipv6地址的前缀部分,用于实现报文 的路由转发,也可以标识一个网络节点;
81.flag(标志)字段占用57-63字节,用于表示网络性能参数类型;
82.function(功能)字段占用64-127字节为function字段。
83.该flag可有多种取值,可以标识多种网络性能参数类型。flag的取值可以如下:
84.flag=1,标识网络性能参数类型为时间类型,指示使用该段标识进行报文转发的 网络节点将报文发送的时间添加到段标识的function字段;
85.flag=2,标识网络性能参数类型为发包数类型,指示使用该段标识进行报文转发 的网络节点将接收到的用该段列表转发的报文的数量添加到段标识的function字段;
86.flag=3,标识网络性能参数类型为发队列占用类型,指示使用该段标识进行报文 转发的网络节点将存储报文的报文发送队列的队列深度添加到段标识的function字段, 该队列深度可以用队列的占用率来表示。
87.在一个示例中,第二网络节点向网络中其他节点通告的第二网络节点的sid包括 该flag字段。由于第二网络节点的sid中的flag可能有多种取值,因此需要向其他 网络节点通告多个sid。
88.在一个示例中,第二网络节点向网络中其他节点通告的第二网络节点的sid不包 括该flag字段,或者,第二网络节点向网络中其他节点通告的第二网络节点的sid包 括该flag字段,但该flag字段取值为0。第二网络节点只需向网络中其他节点发布一 个sid即可,但需要第二网络节点将支持的flag的值向网络中其他节点发布。例如, 通过段路由能力子类型长度值(sr-capabilities sub-tlv)字段来通告支持的flag类 型,sr-capabilities sub-tlv具体请参见ietf公开的 draft-ietf-isis-segment-routing-extensions-16。这样第二网络节点可以通过一个包括 sr-capabilities sub-tlv的报文来通告支持的flag的值。控制器或srv6网络入口节 点在接收到第二网络节点的sid和支持的flag后,在生成段列表时将flag值添加到 sid,添加了flag值的sid的格式可以参见图3。在生成段列表时,用添加了flag值 的sid作为第二网络节点的段标识。
89.举例来说,当第一网络节点为图1所示场景中的网络节点101,第二网络节点为 网络节点102时,将第一网络节点的网络性能参数存储在段列表《sid6,sid3,sid2》 中的sid2中,由于每个sid包括:locator、flag和function,在将第一报文的目的地 址字段的值替换为sid2后,段列表中的sid2就可以被作为其他用途使用,例如,将 第一网络节点的网络性
能参数存储在sid2的function部分,当function部分占用sid2 的第65bit到第128bit时,即将第一网络节点的网络性能参数存储在sid2的第65bit 到第128bit之间。在本示例中,locator可以只占用sid的第1到第64bit中的任意个 bit,相应的flag和function占用sid中除去locator占用的bit以外的bit,例如,locator 占用sid的第1bit到第57bit,flag占用sid的第58bit到第64bit,function可以占用 sid的第65bit到128bit。
90.在一个示例中,当第一网络节点为图1所示场景中的网络节点101,第二网络节 点为网络节点102时,段列表还包括第一网络节点的段标识,例如,段列表为《sid6, sid3,sid2,sid1》,第一网络节点可以将第一网络节点的网络性能参数包括到该段 列表中的第一网络节点段标识中,例如将第一网络节点的网络性能参数存储在段列表 《sid6,sid3,sid2,sid1》中的sid1中。
91.在一个示例中,当第一网络节点为图1所示场景中的网络节点101,第二网络节 点为网络节点102时,该段列表不包括第一网络节点的段标识,例如,段列表为《sid6, sid3,sid2》,第一网络节点可以将第一网络节点的网络性能参数包括到第一报文的 其他字段中,例如srh中的ingress node类型-长度-值(type length value,tlv)中。 其他网络节点可以将对应的网络性能参数存储在对应的sid中,例如将第二网络节点 的网络性能参数存储在段列表《sid6,sid3,sid2》中的sid2中,第三网络节点的网 络性能参数存储在sid3中。
92.s203,第一网络节点向所述第二网络节点发送添加了所述第一网络节点的网络性 能参数的所述第一报文。
93.s204,第二网络节点接收第一网络发送的第一报文。
94.s205,第二网络节点确定该第一报文的目的地址与第二网络节点的段标识匹配。
95.s206,第二网络节点获得第一报文的段列表中的第一网络节点的网络性能参数, 根据第一网络节点的网络性能参数计算网络性能。该网络性能参数包含在所述段列表 中的一个段标识中。
96.在一个示例中,当该第一段标识包含网络性能参数类型时,该第二网络节点获得 该第一网络节点的网络性能参数包括:
97.第二网络节点根据该网络性能参数类型获该第一网络节点的网络性能参数。举例 来说,当第二网络节点确定网络性能参数类型为时间类型时,确定网络性能参数为第 一网络节点发送该第一报文的时间。
98.在一个示例中,第二网络节点确定第一报文的目的地址与第二网络节点的段标识 相同,则确定第一报文的目的地址字段的值与第二网络节点的段标识匹配。或者,第 二网络节点确定第一报文的目的地址字段中的locator部分与第二网络节点的段标识 的locator部分相同,则确定第一报文的目的地址字段的值与第二网络节点的段标识匹 配。
99.在一个示例中,当第二网络节点向网络中其他网络节点发布的sid不包括flag时, 控制器或srv6网络入口节点在接收到第二网络节点的sid和支持的flag后,在生成 段列表时会将flag值添加到sid,因此,第二网络节点在接收到第二报文后,并不能 够识别第二报文的目的地址字段中包含的sid,第二网络节点需要先将第二报文的目 的地址字段中的flag字段设置成0,然后再将第二报文的目的地址字段的值和第二网 络节点的段标识匹配。例如,该flag在第二报文的目的地址字段的第58-64bit,则需 要先将第二报文的目的地址字段的第58-64bit的值清零。第二网络节点在确定第二报 文的目的地址字段的值与
用段列表来携带网络节点的网络性能参数,第二网络节点可以直接使用段列表中的网 络性能参数进行网络性能计算。由于不再需要额外的报文头来携带网络性能参数,减 少了报文头长度,节省了网络资源。
116.参阅图4、图5和图6,本发明实施例提供一种计算网络性能参数的方法,图4 和图5为图1所示应用场景的发送网络性能参数方法的示意图,其中,网络节点101 的段标识为sid1,网络节点102的段标识为sid2,网络节点103的段标识为sid3, 网络节点106的段标识为sid6。图6为本发明实施例提供的一种计算网络性能的方法 的流程示意图,参阅图6,该方法包括:
117.s601,网络节点101获得向网络节点106发送的报文,该报文包括ipv6报文头、 srh和payload,如图4中的报文格式示意表,示例性的,ipv6报文头部分只示出了 目的地址(destination address,da)部分,srh部分只示出了段列表部分。其中,flag 字段为网络性能参数类型,npp字段为网络性能参数(network performance parameters, npp)。网络节点101将报文的目的地址替换为sid2,并将网络节点101的网络性能 参数添加到段列表中,并将添加了网络节点101的网络性能参数的报文向网络节点102 发送。
118.在一个示例中,srh包括段列表为《sid6,sid3,sid2》,网络节点101根据sid2 中flag所标识的网络性能参数类型获得对应的网络性能参数,并将网络性能参数添加 到段列表的sid2中。如图4所示将网络节点101的网络性能参数npp1存储在sid2 的function字段中。
119.在一个示例中,srh包括段列表为《sid6,sid3,sid2,sid1》,网络节点101 根据sid1中flag所标识的网络性能参数类型获得对应的网络性能参数,并将网络性 能参数添加到段列表的sid1中,如图5所示将npp1存储在sid1的function字段中。
120.s602,网络节点102接收该报文,在确定该报文的目的地址字段的值与sid2匹 配时,网络节点102从该报文中的段列表中获得sid3,并将该报文的目的地址替换为 sid3。将网络节点102的网络性能参数添加到段列表中,并添加了网络节点102的网 络性能参数的报文向网络节点103发送。
121.在一个示例中,srh包括段列表为《sid6,sid3,sid2》,网络节点102根据sid3 中flag所标识的网络性能参数类型获得对应的网络性能参数,并将网络性能参数添加 到段列表的sid3中,如图4所示将网络节点102的网络性能参数npp2存储在sid3 的function字段中。
122.在一个示例中,srh包括段列表为《sid6,sid3,sid2,sid1》,网络节点102 根据sid2中flag所标识的网络性能参数类型获得对应的网络性能参数,并将网络性 能参数添加到段列表的sid2中,如图5所示将npp2存储在sid2的function字段中。
123.在一个示例中,网络节点101为图2所示实施例中的第一网络节点,网络节点102 可为图2所示实施例中的第二网络节点。网络节点102可以根据段列表中的网络性能 参数进行网络性能计算,具体计算网络性能的方式可以参考图2所示实施例,此处不 在赘述。
124.s603,网络节点103接收该报文,在确定该报文的目的地址字段的值与sid3匹 配时,网络节点103从该报文中的段列表中获得sid6,并将该报文的目的地址替换为 sid6。将网络节点103的网络性能参数添加到段列表中,并将添加了网络节点103的 网络性能参数的报文向网络节点106发送。
125.在一个示例中,srh包括段列表为《sid6,sid3,sid2》,网络节点103根据sid6 中flag所标识的网络性能参数类型获得对应的网络性能参数,并将网络性能参数添加 到段列表的sid6中,如图4所示将网络节点103的网络性能参数npp2存储在sid6 的function字段中。
126.在一个示例中,srh包括段列表为《sid6,sid3,sid2,sid1》,网络节点103 根据sid3中flag所标识的网络性能参数类型获得对应的网络性能参数,并将网络性 能参数添加到段列表的sid3中,如图5所示将npp3存储在sid3的function字段中。
127.在一个示例中,网络节点101为图3所示实施例中的第一网络节点,网络节点102 为图2所示实施例中的第二网络节点,网络节点103为图2所示实施例中的第三网络 节点。网络节点103可以根据段列表中的网络性能参数进行网络性能计算,具体计算 网络性能的方式可以参考图2所示实施例,此处不在赘述。
128.s604,网络节点106接收该报文,在判断该报文的目的地址字段的值与sid6匹 配时,根据段列表中的网络性能参数计算网络性能。
129.在一个示例中,当段列表不包含入口节点的段标识时,例如段列表为《sid6,sid3, sid2》时,参阅图4,每个网络节点的网络性能参数都存储在该网络节点对应的下一 跳段节点的段标识中。例如,网络节点101的网络性能参数npp1存储在网络节点102 的sid2中,网络节点102的网络性能参数npp2存储在网络节点103的sid3中,网 络节点103的网络性能参数npp3存储在网络节点106的sid6中。当段列表包含入 口节点的段标识时,例如段列表为《sid6,sid3,sid2,sid1》,参阅图5,每个网络 节点的网络性能参数都存储在该网络节点的段标识中。例如,网络节点101的网络性 能参数npp1存储在网络节点101的sid1中,网络节点102的网络性能参数npp2存 储在网络节点102的sid2中,网络节点103的网络性能参数npp3存储在网络节点 103的sid3中。当网络节点106接收到第四报文后,由于是段列表所指示的最后一个 段节点,不需要再将网络节点106的网络性能参数包括到段列表中,只需要根据段列 表中的各个网络节点的网络性能参数计算网络性能。可选地,当段列表中包含有入口 节点的段标识时,网络节点106确定每个sid中包含的是对应该sid的网络节点的网 络性能参数。当段列表中不包含入口节点的段标识时,网络节点106可以确定每个sid 中包含的是该sid对应的网络节点的上一跳网络节点的网络性能参数。可选地,段列 表中每个sid中的flag类型相同,当网络节点106接收到该报文后,根据报文的目的 地址字段中的flag的值就可以计算针对该flag所指示的类型的网络性能,举例来说, 当报文的目的地址字段中的flag取值为1时,也就是说段列表中每个sid中记录的都 是和报文发送时间相关的网络性能参数,则网络节点106进行报文转发时延相关的网 络性能计算。
130.在一个示例中,网络节点106还连接用户设备108,该报文的目的地为该用户设 备108的目的地址,srh还包括用户设备的ipv6地址,如:srh包括的段列表为《ipv6 address,sid6,sid3,sid2》或《ipv6 address,sid6,sid3,sid2,sid1》,其中ipv6 address为该用户设备的ipv6地址(address)。网络节点106将srh从该报文中删除, 并将该报文的目的地址修改为该用户设备的ipv6地址以生成用户报文,然后网络节点 106将用户报文向用户设备108发送。
131.在一个示例中,网络节点101为图2所示实施例中的第一网络节点,网络节点102 或网络节点103为图2所示实施例中的第三网络节点,网络节点106可以是图2所示 实施例
中的第二网络节点。网络节点106可以根据段列表中的网络性能参数进行网络 性能计算,具体的网络性能计算的方式可以参考图2所示实施例,此处不在赘述。
132.本实施例中网络节点的网络性能参数的含义与图2所示实施例中的网络性能参数 类似,此处不在赘述。
133.图7示出了上述实施例中所涉及的第一网络节点的一种可能的结构示意图,网络 节点700可以实现图2或图6所示的实施例中的第一网络节点的功能。参阅图7,该 网络节点700包括:获得单元701、处理单元702和发送单元703。这些单元可以执 行上述方法示例中第一网络节点的相应功能,例如,获得单元701,用于执行上述方 法实施例中第一网络节点执行的报文获取;处理单元702,执行上述方法实施例中第 一网络节点执行的报文处理;发送单元703,用于执行上述方法实施例中第一网络节 点执行的报文发送。举例来说,获得单元701,用于获得第一报文的段列表中的第二 网络节点的段标识;处理单元702,用于将第一网络节点700的网络性能参数添加到 段列表中;发送单元703,用于向第二网络节点发送添加了网络节点700的网络性能 参数的第一报文。
134.在采用集成的单元的情况下,图8示出了上述实施例中所涉及的第一网络节点的 另一种可能的结构示意图,该网络节点800同样可以实现图2或图6所示的实施例中 的第一网络节点的功能。
135.网络节点800包括:存储单元801、处理单元802和通信单元803。处理单元802 用于对第一网络节点800的动作进行控制管理,例如,处理单元802用于支持网络节 点800执行图2中的过程s201,s202和s203,图6中的过程s601,和/或用于本文 所描述的技术的其它过程。通信单元803用于支持网络节点800与其他网络实体的通 信,例如与图2中的第二网络节点或图6中的网络节点102之间的通信。存储单元801, 用于存储网络节点800的程序代码和数据。
136.其中,处理单元802可以是处理器,例如可以是中央处理器(central processing unit, cpu)、通用处理器,数字信号处理器(digital signal processor,dsp)、专用集成电路 (application-specific integrated circuit,asic)、现场可编程门阵列(field programmablegate array,fpga)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任 意组合。其可以实现或执行结合本发明实施例公开内容所描述的各种示例性的逻辑方 框、模块和电路。所述处理器也可以是实现计算功能的组合,例如包括一个或多个微 处理器组合,dsp和微处理器的组合等等。通信单元803可以是收发器,存储单元801 可以是存储器。
137.当处理单元802为处理器,通信单元803为收发器,存储单元801为存储器时, 本发明实施例所涉及的第一网络节点可以为图9所示的网络节点900。
138.参阅图9所示,图9示出上述实施例中所涉及的第一网络节点的另一种可能的结 构示意图,网络节点900包括:处理器902、收发器903、存储器901以及总线904。 其中,收发器903、处理器902以及存储器901通过总线904相互连接;总线904可 以是外设部件互连标准(peripheral component interconnect,简称pci)总线或扩展工 业标准结构(extended industry standard architecture,简称eisa)总线等。所述总线可 以分为地址总线、数据总线、控制总线等。为便于表示,图9中仅用一条粗线表示, 但并不表示仅有一根总线或一种类型的总线。
139.参阅图10所示,图10示出上述实施例中所涉及的第一网络节点的另一种可能的 结构示意图。网络节点1000包括:主控板1001和接口板1002。主控板1001包括: 处理器1003和存储器1004。接口板1002包括:处理器1005、存储器1006和接口卡 1007。主控板1001和接口板1002耦合。
140.这些硬件可以实现图2或图6方法示例中的第一网络节点的相应功能,例如,存 储器1006用于存储接口板1002的程序代码,处理器1005用于调用存储器1006中 的程序代码触发接口卡1007执行上述方法实施例中第一网络节点执行的各种信息接 收和发送。存储器1004可以用于存储主控板1001的程序代码,处理器1003用于调 用存储器1004中的程序代码执行上述方法实施例中第一网络节点除了信息收发之外 的其他处理。举例来说,处理器1003,用于获得第一报文的段列表中的第二网络节 点的段标识;将第一网络节点1000的网络性能参数添加到段列表中;处理器1005用 于触发接口卡1007向第二网络节点发送添加了网络节点1000的网络性能参数的第一 报文。存储器1004,用于存储主控板1001的程序代码和数据;存储器1006,用于 存储接口板1002的程序代码和数据。
141.在一种可能的实现方式中,主控板1001和接口板1002之间建立ipc通道,主控 板1001和接口板1002之间利用该ipc通道进行通信。例如,主控板1001通过ipc 通道向接口板1002发送该第二报文。
142.网络节点1000可以为路由器或交换器或有转发功能的网络节点,网络节点1000 能够实现前述方法实施例中的第一网络节点的功能,具体执行步骤可以参见前述方法 实施例,此处不在赘述。
143.图11示出了上述实施例中所涉及的第二网络节点的一种可能的结构示意图,该网 络节点1100可以实现图2或图6所示的实施例中的第二网络节点的功能。参阅图11, 网络节点1100包括:接收单元1101,确定单元1102,获得单元1103和处理单元1104。 这些单元可以执行上述方法示例中第二网络节点的相应功能,例如,接收单元1101, 用于执行上述方法实施例中第二网络节点执行的各种信息接收;确定单元1102,用于 执行上述方法实施例中第二网络节点执行的各种信息确定;获得单元1103,用于执行 上述方法实施例中第二网络节点执行的各种信息的获得;处理单元1104,用于执行上 述方法实施例中第二网络节点除了信息收发、信息确定和获得之外的其他处理。举例 来说,接收单元1101,用于接收第一网络节点发送的包括段列表的报文,段列表中的 第一段标识包括第一网络节点的网络性能参数;确定单元1102,用于确定报文的目的 地址与第二网络节点1100的段标识匹配;获得单元1103,用于获得第一网络节点的 网络性能参数;处理单元1104,用于根据第一网络节点的网络性能参数计算网络性能。
144.需要说明的是,本发明实施例中对单元的划分是示意性的,仅仅为一种逻辑功能 划分,实际实现时可以有另外的划分方式。本发明实施例中的各功能单元可以集成在 一个单元中,也可以是各个单元单独存在,也可以两个或两个以上单元集成在一个单 元中。例如,上述实施例中,接收单元和发送单元可以是同一个单元,也可以是不同 的单元。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形 式实现。
145.在采用集成的单元的情况下,图12示出了上述实施例中所涉及的第二网络节点 的另一种可能的结构示意图,该第二网络节点1200同样可以实现图2所述实施例中 第二网络节点的功能,或实现图6所示的实施例中的网络节点106的功能。
用于实现前述方法实施例中的计算网络性能的方法。该系统1500包括第一网络节点 1501和第二网络节点1502。该第一网络节点1501和第二网络节点1502可以分别实 现图2所示的实施例中的第一网络节点和第二网络节点的功能,或实现图6所示的实 施例中的网络节点101和网络节点106的功能。例如,第一网络节点1501执行图2 中的过程s201、s202和s203,图6中的过程s601,和/或用于本文所描述的技术的 第一网络节点执行的其它过程。第二网络节点1502,用于实现图2中的过程s204、 s205和s206,和/或用于本文所描述的技术的第二网络节点执行的其它过程。
155.在一个示例中,该系统1500还包括第三网络节点,该第三网络节点用于实现图2 所示的实施例中的第二网络节点的功能。
156.本发明实施例还提供了一种非易失性存储介质,用于储存前述实施例中所用的软 件指令,其包括用于执行前述实施例所示的方法的程序,当其在计算机或网络节点上 执行时,使得所示计算机或网络节点执行前述方法实施例中的方法。
157.本发明实施例还提供了一种包括计算机程序指令的计算机程序产品,当该计算机 程序产品在网络节点上运行时,使得网络节点执行前述方法实施例中的方法。
158.本发明实施例中提到的第一网络节点中的“第一”只是用来做名字标识,并不代表顺 序上的第一。该规则同样适用于“第二”和“第三”。
159.需说明的是,以上描述的任意装置实施例都仅仅是示意性的,其中所述作为分离部件 说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以 不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际 的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本发明提供的网 络节点实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为 一条或多条通信总线或信号线。本领域普通技术人员在不付出创造性劳动的情况下,即可 以理解并实施。
160.本发明实施例公开内容所描述的方法或者算法的步骤可以硬件的方式来实现,也 可以是由处理器执行软件指令的方式来实现。软件指令可以由相应的软件模块组成, 软件模块可以被存放于随机存取存储器(random access memory,ram)、闪存、只读 存储器(read only memory,rom)、可擦除可编程只读存储器(erasable programmablerom,eprom)、电可擦可编程只读存储器(electrically eprom,eeprom)、硬盘、 移动硬盘、光盘或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介 质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入 信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于asic 中。另外,该asic可以位于网络节点中。当然,处理器和存储介质也可以作为分立 组件存在于网络节点中。
161.本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可 以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存 储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计 算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一 个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可 用介质。
162.以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步
详细 说明,所应理解的是,以上所述仅为本发明的具体实施方式而已。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献