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

接口地址的通告方法、网络设备可达性的校验方法及设备与流程

2022-04-30 06:04:08 来源:中国专利 TAG:


1.本技术涉及通信技术领域,特别涉及一种接口地址的通告方法、网络设备可达性的校验方法及设备。


背景技术:

2.段路由(segment routing,sr)是基于源路由的理念而设计的在网络中转发数据包的一种协议。sr将网络路径划分为一个个段,为这些段或节点分配段标识(segment id,sid),通过在数据包中携带依次排列的段标识,能够让数据包通过段标识指示的转发路径传输。互联网协议第6版段路由(segment routing internet protocol version 6,srv6)是指将sr技术与互联网协议第6版(internet protocol version 6,ipv6)协议结合起来,按照ipv6地址的格式定义为实例化的srv6 sid,基于ipv6的转发面来实现sr的功能。
3.端点三层交叉连接段标识(endpoint with layer-3cross-connect,end.x sid)是一种用于标识网络中一条链路的srv6 sid。在报文转发过程中,如果报文的目的地址命中本地sid表中的end.x sid,网络设备会通过end.x sid所标识的链路对应的出接口,即end.x sid绑定的出接口,向该链路连接的下一跳,即end.x sid绑定的下一跳转发报文。当网络设备上配置了end.x sid后,网络设备需要通告end.x sid,以供拓扑上报以及拓扑无关无环备份快速重路由(topology-independent loop-free alternate fast reroute,ti-lfa frr)算路使用。
4.如果end.x sid绑定的下一跳是不可达的,不仅造成通告end.x sid没有意义,反而占用大量的网络资源。


技术实现要素:

5.本技术实施例提供了一种接口地址的通告方法、网络设备可达性的校验方法及设备,有助于避免end.x sid绑定的下一跳不可达时仍然通告end.x sid所造成的网络资源浪费。所述技术方案如下:
6.第一方面,提供了一种通信方法,以该方法由第一网络设备执行为例,第一网络设备生成开放式最短路径优先第3版(open shortest path first for ipv6,ospfv3)报文,所述ospfv3报文为ospfv3问候(hello)报文或者ospfv3数据库描述(database description,dd)报文,所述ospfv3报文包括第一接口的或互联网协议第六版(internet protocol version 6,ipv6)全局单播地址(global unicast address,也称ipv6 global address),所述第一接口为所述第一网络设备包括的接口,所述第一网络设备通过所述第一接口与所述第二网络设备连接;所述第一网络设备向所述第二网络设备发送所述ospfv3报文。
7.以上方法中,第一网络设备在ospfv3 hello报文或者ospfv3 dd报文中携带本地接口的ipv6全局单播地址,并发给邻居(第二网络设备),便于邻居利用ipv6全局单播地址校验第一网络设备的可达性,有助于避免邻居在end.x sid绑定的下一跳不可达的情况下
通告end.x sid造成的网络资源浪费。进一步地,由于ospfv3 hello报文或者ospfv3 dd报文是ospfv3邻居建立过程full状态之前交互的报文,能够在邻居达到full状态之前提前让邻居获取到对端接口的ipv6全局单播地址,减少邻居获得对端接口的ipv6全局单播地址耗费的时延。
8.可选地,所述ospfv3报文包括本地链路信令数据块(link-local signaling data block,lls data block),所述lls数据块包括所述第一接口的ipv6全局单播地址。
9.通过以上方式,为如何扩展ospfv3 hello报文或者ospfv3 dd报文中携带本地接口的ipv6全局单播地址提供了一种兼容于ospfv3已有协议架构的实现方式,提高方案的可用性。
10.可选地,所述lls数据块包括接口地址类型长度值tlv,所述接口地址tlv的类型用于标识所述接口地址tlv携带接口的ipv6全局单播地址,所述接口地址tlv的值包括所述第一接口的ipv6全局单播地址。
11.通过新增一种类型的tlv携带接口的ipv6全局单播地址,在lls数据块中携带新增类型的tlv,实现复杂度较小,实用性高。
12.第二方面,提供了一种网络设备可达性的校验方法,在该方法中,第二网络设备从第一网络设备接收第一开放式最短路径优先第3版ospfv3报文,所述第一ospfv3报文为ospfv3问候hello报文或者ospfv3数据库描述dd报文,所述第一ospfv3报文包括第一接口的互联网协议第6版ipv6全局单播地址,所述第一接口为所述第一网络设备包括的接口,所述第一网络设备通过所述第一接口与所述第二网络设备连接;所述第二网络设备使用所述第一接口的ipv6全局单播地址,校验所述第一网络设备的可达性。
13.可选地,所述第二网络设备使用所述第一接口的ipv6全局单播地址,校验所述第一网络设备的可达性,包括:所述第二网络设备使用所述第一接口的ipv6全局单播地址,校验端点三层交叉连接段标识end.x sid绑定的下一跳的可达性,所述end.x sid为所述第二网络设备本地用于标识所述第一网络设备与所述第二网络设备之间的三层连接的互联网协议第6版段路由段标识srv6 sid,所述end.x sid绑定的下一跳为所述第一网络设备。
14.通过以上方法,一方面,能够保证通告出去的end.x sid绑定的下一跳是可达的,避免通告的下一跳不可达的end.x sid会带来的网络资源浪费以及设备性能开销。另一方面,避免仅用ipv6前缀校验下一跳可达性而导致错误的下一跳的地址也被校验通过的情况,因此显著提高校验end.x sid绑定的下一跳可达性的准确率,进而提高通告end.x sid操作的有效性。
15.可选地,所述第二网络设备使用所述第一接口的ipv6全局单播地址,校验端点三层交叉连接段标识end.x sid绑定的下一跳的可达性,包括:所述第二网络设备对所述end.x sid绑定的下一跳的地址与所述第一接口的ipv6全局单播地址进行匹配;若所述end.x sid绑定的下一跳的地址与所述第一接口的ipv6全局单播地址相同,所述第二网络设备确定所述end.x sid绑定的下一跳可达。
16.可选地,所述第二网络设备使用所述第一接口的ipv6全局单播地址,校验端点三层交叉连接段标识end.x sid绑定的下一跳的可达性,包括:所述第二网络设备对所述end.x sid绑定的下一跳的地址与所述第一接口的ipv6全局单播地址进行匹配;若所述end.x sid绑定的下一跳的地址与所述第一接口的ipv6全局单播地址不同,所述第二网络
设备确定所述end.x sid绑定的下一跳不可达。
17.可选地,所述第二网络设备使用所述第一接口的ipv6全局单播地址,校验end.x sid绑定的下一跳的可达性之后,所述方法还包括:若所述end.x sid绑定的下一跳可达,所述第二网络设备通告第二ospfv3报文,所述第二ospfv3报文用于发布所述end.x sid。
18.可选地,所述第二网络设备使用所述第一接口的ipv6全局单播地址,校验end.x sid绑定的下一跳的可达性之后,所述方法还包括:若所述end.x sid绑定的下一跳不可达,所述第二网络设备不通告所述end.x sid。
19.可选地,所述第一ospfv3报文包括本地链路信令lls数据块,所述lls数据块包括所述第一接口的ipv6全局单播地址。
20.可选地,所述lls数据块包括接口地址类型长度值tlv,所述接口地址tlv的类型用于标识所述接口地址tlv携带接口的ipv6全局单播地址,所述接口地址tlv的值包括所述第一接口的ipv6全局单播地址。
21.第三方面,提供了一种网络设备,该网络设备具有实现上述第一方面或第一方面任一种可选方式中第一网络设备的功能。该网络设备包括至少一个单元,至少一个单元用于实现上述第一方面或第一方面任一种可选方式所提供的方法。在一些实施例中,第三方面提供的网络设备中的单元通过软件实现,网络设备中的单元是程序模块。在另一些实施例中,第三方面提供的网络设备中的单元通过硬件或固件实现。第三方面提供的网络设备的具体细节可参见上述第一方面或第一方面任一种可选方式,此处不再赘述。
22.第四方面,提供了一种网络设备,该网络设备具有实现上述第二方面或第二方面任一种可选方式中第二网络设备的功能。该网络设备包括至少一个单元,至少一个单元用于实现上述第二方面或第二方面任一种可选方式所提供的方法。在一些实施例中,第四方面提供的网络设备中的单元通过软件实现,网络设备中的单元是程序模块。在另一些实施例中,第四方面提供的网络设备中的单元通过硬件或固件实现。第四方面提供的网络设备的具体细节可参见上述第二方面或第二方面任一种可选方式,此处不再赘述。
23.第五方面,提供了一种网络设备,该网络设备包括主控板和接口板。主控板包括:第一处理器和第一存储器。接口板包括:第二处理器、第二存储器和接口卡。主控板和接口板耦合。
24.第一存储器可以用于存储程序代码,第一处理器用于调用第一存储器中的程序代码执行如下操作:生成开放式最短路径优先第3版ospfv3报文,所述ospfv3报文为ospfv3问候hello报文或者ospfv3数据库描述dd报文,所述ospfv3报文包括第一接口的互联网协议第6版ipv6全局单播地址,所述第一接口为所述第一网络设备包括的接口,所述第一网络设备通过所述第一接口与所述第二网络设备连接;
25.第二存储器可以用于存储程序代码,第二处理器用于调用第二存储器中的程序代码,触发接口卡执行如下操作:向所述第二网络设备发送所述ospfv3报文。
26.第五方面提供的第一网络设备的具体细节可参见上述第一方面或第一方面任一种可选方式,此处不再赘述。
27.第六方面,提供了一种网络设备,该网络设备包括主控板和接口板。主控板包括:第一处理器和第一存储器。接口板包括:第二处理器、第二存储器和接口卡。主控板和接口板耦合。
28.第一存储器可以用于存储程序代码,第一处理器用于调用第一存储器中的程序代码执行如下操作:从第一网络设备接收第一开放式最短路径优先第3版ospfv3报文,所述第一ospfv3报文为ospfv3问候hello报文或者ospfv3数据库描述dd报文,所述第一ospfv3报文包括第一接口的互联网协议第6版ipv6全局单播地址,所述第一接口为所述第一网络设备包括的接口,所述第一网络设备通过所述第一接口与所述第二网络设备连接;
29.第二存储器可以用于存储程序代码,第二处理器用于调用第二存储器中的程序代码,触发接口卡执行如下操作:使用所述第一接口的ipv6全局单播地址,校验所述第一网络设备的可达性。
30.第六方面提供的网络设备的具体细节可参见上述第二方面或第二方面任一种可选方式,此处不再赘述。
31.第七方面,提供了一种计算机可读存储介质,该存储介质中存储有至少一条程序代码,该指令由处理器读取以使第一网络设备执行上述第一方面或第一方面任一种可选方式所提供的方法。
32.第八方面,提供了一种计算机可读存储介质,该存储介质中存储有至少一条程序代码,该指令由处理器读取以使第二网络设备执行上述第二方面或第二方面任一种可选方式所提供的方法。
33.第九方面,提供了一种计算机程序产品,该计算机程序产品包括计算机指令,该计算机指令存储在计算机可读存储介质中。第一网络设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该第一网络设备执行上述第一方面或第一方面任一种可选方式所提供的方法。
34.第十方面,提供了一种计算机程序产品,该计算机程序产品包括计算机指令,该计算机指令存储在计算机可读存储介质中。第二网络设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该第二网络设备执行上述第二方面或第二方面任一种可选方式所提供的方法。
35.第十一方面,提供了一种芯片,当该芯片在第一网络设备上运行时,使得第一网络设备执行上述第一方面或第一方面任一种可选方式所提供的方法。
36.第十二方面,提供了一种芯片,当该芯片在第二网络设备上运行时,使得第二网络设备执行上述第二方面或第二方面任一种可选方式所提供的方法。
37.第十三方面,提供了一种网络系统,该网络系统包括第一网络设备以及第二网络设备,该第一网络设备用于执行上述第一方面或第一方面任一种可选方式所述的方法,该第二网络设备用于执行上述第二方面或第二方面任一种可选方式所述的方法。
38.第十四方面,提供了一种网络设备,所述网络设备包括处理器和存储器,所述存储器中存储有至少一条程序代码,所述至少一条程序代码由所述处理器加载并执行以实现上述第一方面或第一方面任一种可选方式所提供的方法。
39.第十五方面,提供了一种网络设备,所述网络设备包括处理器和存储器,所述存储器中存储有至少一条程序代码,所述至少一条程序代码由所述处理器加载并执行以实现上述第二方面或第二方面任一种可选方式所提供的方法。
附图说明
40.图1是本技术实施例提供的一种系统架构100的示意图;
41.图2是本技术实施例提供的一种系统架构200的示意图;
42.图3是本技术实施例提供的一种报文格式的示意图;
43.图4是本技术实施例提供的一种报文格式的示意图;
44.图5是本技术实施例提供的一种报文格式的示意图;
45.图6是本技术实施例提供的一种报文格式的示意图;
46.图7是本技术实施例提供的一种网络设备可达性的校验方法的流程图;
47.图8是本技术实施例提供的一种网络设备400的结构示意图;
48.图9是本技术实施例提供的一种网络设备500的结构示意图;
49.图10是本技术实施例提供的一种网络设备600的结构示意图;
50.图11是本技术实施例提供的一种网络设备700的结构示意图;
51.图12是本技术实施例提供的一种网络系统800的结构示意图。
具体实施方式
52.为使本技术的目的、技术方案和优点更加清楚,下面将结合附图对本技术实施方式作进一步地详细描述。
53.本技术实施例提供的方法能够应用在srv6领域中通告end.x sid的场景。具体而言,本技术实施例的方法能够应用在基于开放式最短路径优先第3版(open shortest path first for ipv6,ospfv3)通告本地配置的end.x sid的场景,通过校验end.x sid下一跳ipv6全局单播地址(global unicast address,也称ipv6 global address)的可达性,从而根据下一跳是否可达确定是否通告end.x sid。
54.由于本技术实施例涉及srv6技术的应用,为了便于理解,下面先对本技术实施例涉及的srv6技术中的相关概念进行介绍。
55.srv6是基于源路由理念而设计的在网络上转发ipv6报文的一种协议。基于ipv6转发面的srv6,通过在ipv6报文中插入一个段路由头(segment routing header,srh,一种路由扩展头),在srh中压入一个显式的ipv6地址栈,通过中间节点不断的进行更新目的地址和偏移地址栈的操作来完成逐跳转发。
56.end.x sid是指用于标识三层连接的srv6 sid。在srv6数据报文转发过程中,目的地址为end.x sid的数据报文命中本地sid表后将会从指定接口发出,且发送到指定的邻居。该指定接口由end.x sid绑定的接口(interface)确定。该指定的邻居由end.x sid绑定的下一跳(next hop)确定。
57.其中,三层连接是指两个节点之间一跳可达,换句话说,两个节点之间具有上一跳与下一跳的关系。例如,节点a具有接口a,节点b具有接口b。节点a的接口a与节点b的接口b之间建立了一条三层连接的含义是,当节点a的接口a发送了ipv6报文时,该ipv6报文中的跳数限制(hop-limit)减一后,到达节点b的接口b,即节点b是节点a的下一跳。需要说明的一点是,两个节点建立一条三层连接,并不代表两个节点在物理上必须直接连接。两个节点建立一条三层连接包含两个节点在物理上直接连接的情况,当然也包含两个节点在物理上不是直接连接的情况。例如,节点a与节点b之间也可以经过二层交换网络(如一个或多个交
换机)。
58.例如,参见附图1,附图1所示的系统架构100中,中间节点rt2上手工配置了end.x sid(2001::1),该end.x sid用于标识rt2至pe2之间的链路rt2-》pe2。中间节点rt2通过ospfv3协议通告end.x sid(2001::1)。或者,中间节点rt2通过ospfv3将end.x sid(2001::1)上送至控制器。头节点pe1在收到中间节点rt2发布的ospfv3通告后,根据end.x sid进行算路。或者,控制器在收到中间节点rt2的上送消息后,根据end.x sid进行算路,将得出的路径发送至头节点pe1,头节点pe1接收控制器发送的路径。根据end.x sid计算的路径通过段标识列表(segment list)表示。
59.例如参见附图1,数据报文的目的地址为私网ip地址192.168.1.2。在数据报文到达头节点pe1后,头节点为数据报文封装srh,srh中携带计算好的段标识列表,段标识列表包含end.x sid(2001::1)。当中间节点接收包含srh的数据报文后,如果段标识列表中下一个sid就是end.x sid(2001::1),则中间节点使用end.x sid(2001::1)替换数据报文中的目的地址(destination address,da),向后一个节点转发替换后的数据报文。例如在附图1所示的场景中,中间节点rt2接收到数据报文后,使用数据报文中的目的地址匹配本地sid表中的sid。如果数据报文中的目的地址命中本地sid表中的sid,中间节点rt2将数据报文中的目的地址替换为下个sid,或者剥离数据报文中的srh,将数据报文按照命中的sid关联的链路rt2-》pe2转发出去。
60.参见附图2,附图2所示的系统架构200是对配置end.x sid场景的举例说明。系统架构200包括系统架构100中的两个网元。系统架构200涉及的网元包括两类节点,一类节点是ipv6全局单播地址的发送方,另一类节点是ipv6全局单播地址的接收方。系统架构200涉及的网元具有ospfv3协议处理能力以及srv6能力。系统架构200涉及的网元例如为路由器、交换机等网络设备。
61.系统架构200包括网络设备rt2以及网络设备pe2。网络设备rt2与网络设备pe2之间建立了三层连接。在一些实施例中,网络设备rt2与网络设备pe2均为路由器。在一些实施例中,发送ipv6全局单播地址的节点为网络设备pe2,接收ipv6全局单播地址的节点为网络设备rt2。
62.网络设备rt2包括接口名为ethernet3/0/0的接口。接口名ethernet3/0/0的含义为接口的类型是以太网(ethernet),槽位号(slot)为3,卡号(card)为0,端口号(port)为0。
63.网络设备pe2包括接口名为ethernet3/0/1的接口。接口名ethernet3/0/1的含义为接口的类型是ethernet,槽位号为3,卡号为0,端口号为1。接口ethernet3/0/0与接口ethernet3/0/1之间建立了三层连接。
64.网络设备rt2上配置了end.x sid。网络设备rt2上配置的end.x sid例如为2001::1。end.x sid(2001::1)用于标识接口ethernet3/0/0与接口ethernet3/0/1之间的三层连接。end.x sid(2001::1)绑定了出接口和下一跳的ipv6全局单播地址。
65.end.x sid(2001::1)绑定的出接口为ethernet3/0/0。在正常情况下,end.x sid(2001::1)绑定的下一跳的地址为对端接口ethernet3/0/1的ipv6全局单播地址。在一些实施例中,end.x sid(2001::1)绑定的下一跳的地址为接口ethernet3/0/1的不包含掩码信息的ipv6全局单播地址。在srv6转发过程中,数据报文的目的地址命中本地sid表中的end.x sid(2001::1),由于end.x sid(2001::1)绑定的出接口为ethernet3/0/0,因此数据
state update,lsu)报文和ospfv3链路状态应答(link state acknowledgment,lsack)报文。
72.(2)ospfv3的邻居建立过程以及邻居建立过程中的各种状态
73.邻居建立过程总共可能出现八种状态,分别是关闭(down)状态、初始(init)状态、双向(two-way)状态、准启动(exstart)状态、交换(exchange)状态、加载(loading)状态、完全(full)状态。例如,在邻居建立过程中,按照时间先后顺序而言,路由器的状态可能依次为down状态

init状态

two-way状态

exstart状态

exchange状态

loading状态

full状态。
74.具体地,ospfv3的邻居建立过程大致分为三个阶段:阶段(1)建立邻居关系;阶段(2)建立各自拓扑表;阶段(3)建立邻接关系。阶段(1)时间最先,其次是阶段(2),阶段(3)时间最晚。阶段(1)中,状态依次为down状态

init状态

two-way状态。在阶段(2)中,状态依次为exstart状态

exchange状态。在阶段(3)中,状态依次为loading状态

full状态。
75.(3)init状态
76.当处于init状态时,多个ospfv3节点之间会相互发送ospfv3 hello报文,从而建立邻居关系。当处于init状态时,多个ospfv3节点之间尚未同步路由信息。
77.(4)full状态
78.full状态也称完全邻接状态(full adjacency)。多个ospfv3节点之间在交互路由信息完成后会达到full状态。当处于full状态时,不同ospfv3节点已建立起邻接关系,达到lsdb同步。
79.(5)lls数据块
80.本地链路信令数据块(link-local signaling data block,lls data block)是用于供ospf路由器执行本地链路信令功能的数据块。lls数据块可以被附加至ospfv3 hello报文或者ospfv3 dd报文。ospfv3 hello报文中lls数据块包含的数据例如用于动态信令。ospfv3 dd报文中lls数据块包含的数据例如用于动态信令。ospfv3 dd报文中lls数据块包含的数据例如作为邻接建立过程中的一部分被传递。lls数据块的详细定义请参考请求评论(request for comments,rfc,一系列以编号排定的文件)中rfc 5613对“lls data block”的介绍。
81.(6)ospfv3 hello报文
82.ospfv3 hello报文用于建立和维护不同ospfv3节点之间的邻接关系。例如,ospfv3节点以固定的时间间隔向邻居节点周期性地发送ospfv3 hello报文。ospfv3 hello报文是在ospfv3节点处于init状态时互相发送的。
83.(7)ospfv3 dd报文
84.ospfv3 dd报文用来描述本地路由器的链路状态数据库(link state database,lsdb)。两个ospf节点初始化连接时会交换ospfv3 dd报文,从而进行lsdb同步。ospfv3 dd报文是在ospfv3节点处于exchange状态时互相发送的。
85.(8)ospfv3扩展-链路-链路状态通告(e-link-lsa)报文
86.ospfv3 e-link-lsa报文是对ospfv3 link-lsa报文的扩展。ospfv3 e-link-lsa报文是在不同ospfv3节点之间交换完ospfv3 dd报文之后发送的。
87.以上介绍了ospfv3协议相关的术语概念,下面对本实施例提供的报文格式进行具
体介绍。
88.携带接口的ipv6全局单播地址的ospfv3报文的整体格式可参考附图3。ospfv3 hello报文或者ospfv3 dd报文的作用可参考上文术语介绍部分的描述。
89.如何利用ospfv3 hello报文或者ospfv3 dd报文携带接口的ipv6全局单播地址包括多种方式。在一些实施例中,通过扩展lls block携带接口的ipv6全局单播地址。具体地,ospfv3hello报文或者ospfv3 dd报文包括lls数据块,所述lls数据块包括接口的ipv6全局单播地址。lls数据块可参考上文术语介绍部分的描述。其中,lls数据块位于ospfv3头和ospfv3数据部分之后。lls数据块的长度不包含在ospfv3报文的长度中。lls数据块的长度包含在ipv6基本报头(ipv6 header)携带的长度中。例如,ospfv3头的长度字段携带的长度表示ospfv3头(ospfv3 header)和ospfv3数据(ospfv3 data)部分这两部分的长度之和。ipv6基本报头的长度字段携带的长度表示ipv6基本报头、ospfv3头、ospfv3数据部分和lls数据块等部分的长度之和。
90.参见附图4,附图4示出了ospfv3中携带接口ipv6全局单播地址的lls数据块的格式。lls数据块包括校验和(checksum)字段、lls数据长度(lls data length)字段和至少一个lls tlv。其中,校验和字段携带整个lls数据块的校验和。lls data length字段携带整个lls数据块的长度。
91.其中,lls tlv的格式如附图5所示。lls tlv中包括类型(type)字段、长度(length)字段以及值(value)字段。类型字段包括lls tlv的类型。长度字段包括lls tlv的值字段的长度。值字段包括lls tlv携带的具体的ipv6全局单播地址。
92.在一些实施例中,通过新增一种tlv类型携带接口的ipv6全局地址。以携带接口的ipv6全局地址称为接口地址tlv为例,参见附图6,lls数据块包括如附图6所示的接口地址tlv。接口地址tlv例如在ospfv3 hello报文中携带,或者,接口地址tlv在ospfv3 dd报文中携带。接口地址tlv包括类型字段、长度字段以及值字段。其中,图6是对图5的举例说明,图6中接口的ipv6全局单播地址字段为图5中的值字段。图6所示的接口地址tlv包括多个ipv6全局单播地址,该多个ipv6全局单播地址之间是并列的关系。例如,在一个接口配置多个ipv6全局单播地址的场景下,网络设备将一个接口的多个ipv6全局单播地址均携带在一个接口地址tlv中,通过向邻居发送一个接口地址tlv,将接口的多个ipv6全局单播地址一起发给邻居。
93.接口地址tlv中的类型字段包括接口地址tlv的类型。在一些实施例中,接口地址tlv中类型字段占16比特(bit)。所述接口地址tlv的类型用于标识所述接口地址tlv携带接口的ipv6全局单播地址。可选地,接口地址tlv的类型为22。
94.接口地址tlv中的长度字段包括接口地址tlv的值字段的长度。在一些实施例中,接口地址tlv中长度字段占16bit。长度字段包括接口地址tlv的值字段的长度。
95.接口地址tlv中的值字段包括接口的ipv6全局单播地址。在一些实施例中,接口地址tlv中的值字段包括16字节的ipv6地址序列。
96.值得说明的一点是,本技术实施例中“接口地址tlv”可以具有不同的名称。例如,不同标准、同一标准的不同版本、不同厂商、不同应用场景对“接口地址tlv”可以具有不同的称呼。例如,“接口地址tlv”有时也可以被称为“local interface ipv6 address tlv”或本地接口ipv6地址tlv。
97.值得说明的一点是,本技术实施例对lls数据块包含的接口地址tlv的数量不做限定。lls数据块可选地包含一个接口地址tlv或者包含多个接口地址tlv。
98.本实施例利用以上报文格式来向邻居通告本端接口的ipv6全局单播地址,至少能达到以下两个方面的效果:
99.一方面,相对于在e-router-lsa中携带接口的ipv6全局单播地址从而发布给邻居的相关方案而言,由于相关方案需要通过e-router-lsa来发布global地址,所以邻居要在达到full状态时才能获取到global地址,获得global地址需要等待的时间很长。而本技术的一些实施例中,通过改进了报文格式,在lls数据块中携带接口的ipv6全局单播地址来发布给邻居,从而在邻居达到full状态之前提前让邻居获取到接口的ipv6全局单播地址。尤其是,当通过ospfv3 hello报文携带接口的ipv6全局单播地址时,能够提前至在init状态向邻居通告接口的ipv6全局单播地址,保证邻居在init状态就能获取到对端接口的ipv6全局单播地址。
100.另一方面,在一些实施例中,由于通告接口的ipv6全局单播地址、通告end.x sid这两种过程都使用ospfv3协议实现,无需借助ospfv3协议之外的其他协议,能复用ospfv3的软硬件基础设施,减少网络设备所支持的协议种类,降低对网络设备的要求;同时,也降低了网络管理人员的工作复杂度,不必要求管理人员对多种协议熟练掌握。因此,显著降低了实现复杂度。
101.以上介绍了系统架构和报文格式,以下介绍基于该系统架构和报文格式的方法流程。
102.参见附图7,附图7是本技术实施例提供的一种方法300的流程图。
103.方法300的交互主体包括第一网络设备和第二网络设备。例如,第一网络设备为附图1或附图2所示系统架构中的网络设备pe2。第二网络设备为附图1或附图2所示系统架构中的网络设备rt2。第一网络设备与第二网络设备之间建立了三层连接。
104.方法300涉及接口地址的通告流程以及网络设备可达性的校验流程。具体地,方法300涉及第一网络设备如何将本端接口的ipv6全局单播地址通告给第二网络设备,以及第二网络设备如何通过第一网络设备通告的接口ipv6全局单播地址来校验第一网络设备的可达性。
105.可选的,方法300由通用中央处理器(central processing unit,cpu)处理,也可以由cpu和网络处理器(network processer,np)共同处理,也可以不用np,而使用其他适合用于报文转发的处理器,本技术实施例不做限制。
106.示例性地,方法300包括s310至s340。
107.s310、第一网络设备生成第一ospfv3报文。
108.具体地,第一网络设备根据第一接口的ipv6全局单播地址生成第一ospfv3报文。
109.第一接口为第一网络设备包括的接口。可选地,第一接口为物理接口;或者,第一接口为逻辑接口。第一网络设备通过第一接口与第二网络设备连接。例如,参见附图2,pe2的接口ethernet3/0/1与rt2的接口ethernet3/0/0建立了三层连接。在这个场景中,pe2是对第一网络设备的举例说明,接口ethernet3/0/1是对第一接口的举例说明,接口ethernet3/0/1的ipv6全局单播地址2001:db8:2::2是对第一接口的ipv6全局单播地址的举例说明。
110.第一ospfv3报文为ospfv3 hello报文或者ospfv3 dd报文。第一ospfv3报文包括第一接口的ipv6全局单播地址。在一些实施例中,第一ospfv3报文包括lls数据块,lls数据块包括第一接口的ipv6全局单播地址。在一些实施例中,lls数据块包括接口地址tlv,接口地址tlv的类型用于标识接口地址tlv携带接口的ipv6全局单播地址,接口地址tlv的值包括第一接口的ipv6全局单播地址。
111.s320、第一网络设备向第二网络设备发送第一ospfv3报文。
112.s330、第二网络设备从第一网络设备接收第一ospfv3报文。
113.s340、第二网络设备使用第一接口的ipv6全局单播地址,校验第一网络设备的可达性。
114.在一些实施例中,第二网络设备使用第一接口的ipv6全局单播地址,校验end.x sid绑定的下一跳的可达性。
115.end.x sid为第二网络设备本地用于标识第一网络设备与第二网络设备之间的三层连接的srv6 sid。end.x sid绑定的下一跳为第一网络设备。end.x sid绑定的出接口为第二网络设备的接口。end.x sid用于指示第二网络设备在报文的目的地址命中end.x sid的情况下,通过end.x sid绑定的出接口向end.x sid绑定的下一跳转发报文。end.x sid例如为第二网络设备本地sid表中保存的sid。end.x sid绑定的下一跳通过下一跳的地址指明。可选地,下一跳的地址为第一接口的ipv6全局单播地址。可选地,下一跳的地址是不包含掩码信息的ipv6全局单播地址。
116.例如,请参考附图2,end.x sid为rt2上配置的2001::1。end.x sid(2001::1)用于标识rt2与pe2之间的三层连接。end.x sid(2001::1)绑定的出接口为rt2上的ethernet3/0/0。end.x sid(2001::1)绑定的下一跳为pe2。
117.在一些实施例中,第二网络设备对end.x sid绑定的下一跳的地址与第一接口的ipv6全局单播地址进行匹配;若end.x sid绑定的下一跳的地址与第一接口的ipv6全局单播地址相同,第二网络设备确定end.x sid绑定的下一跳可达,即校验通过。若end.x sid绑定的下一跳的地址与第一接口的ipv6全局单播地址不同,第二网络设备确定end.x sid绑定的下一跳不可达,即校验不通过。
118.在一些实施例中,第二网络设备接收对end.x sid的通告请求,在通告请求的触发下执行步骤s340,以便根据匹配结果确定是否通告。其中,通告请求用于指示第二网络设备在srv6网络中通告end.x sid。例如,请参考附图2,rt2基于ospfv3协议收到本地通告end.x sid(2001::1)的请求后,从rt2的本地配置中获得end.x sid的下一跳的地址,并读取对端节点pe2之前发来的接口ethernet3/0/1的ipv6全局单播地址(如2001:db8:2::2)。rt2将下一跳的地址与ethernet3/0/1的ipv6全局单播地址(如2001:db8:2::2)比对。
119.在一些实施例中,第二网络设备根据end.x sid绑定的下一跳的可达性,判断是否通告end.x sid。具体地,若end.x sid绑定的下一跳可达,第二网络设备通告(advertise)第二ospfv3报文。若end.x sid绑定的下一跳不可达,第二网络设备不通告end.x sid。
120.其中,第二ospfv3报文用于发布end.x sid。第二ospfv3报文包括ospfv3 lsa,ospfv3 lsa包括end.x sid。具体地,第二网络设备将end.x sid封装至ospfv3 lsa,从而根据end.x sid生成第二ospfv3报文。其中,利用ospfv3 lsa通告end.x sid的方式可参考draft-ietf-lsr-ospfv3-srv6-extensions。
121.本实施例对第二网络设备通告第二ospfv3报文或者end.x sid的对象不做限定。例如,第二网络设备向邻居(如第一网络设备)通告第二ospfv3报文或者end.x sid;又如,第二网络设备向控制器通告第二ospfv3报文或者end.x sid。
122.通过使用ospfv3协议发布直连接口的ipv6全局单播地址以及通告end.x sid,一方面,解决end.x sid的下一跳配置为ipv6全局单播地址时,ospfv3无法校验其可达性的问题。另一方面,由于end.x sid的发布和校验均使用ospfv3协议实现,无需借助ospfv3协议之外的其他协议,降低了网络管理人员的工作复杂度,不必要求管理人员对多种协议熟练掌握。此外,网络设备校验end.x sid的功能可复用处理ospfv3的软硬件基础设施,减少网络设备所支持的协议种类,降低对网络设备的要求,因此降低了实现复杂度。
123.本实施例提供了一种能够准确校验end.x sid绑定的下一跳的可达性的方法。通过在通告end.x sid之前,对end.x sid绑定的下一跳的地址与邻居上接口的ipv6全局单播地址进行匹配,从而校验end.x sid绑定的下一跳的可达性。在下一跳地址与接口的ipv6全局单播地址匹配成功的情况下,end.x sid校验通过,允许通告end.x sid。一方面,保证通告出去的end.x sid绑定的下一跳是可达的,避免通告的下一跳不可达的end.x sid会带来的网络资源浪费以及设备性能开销。另一方面,避免仅用ipv6前缀校验下一跳可达性而导致错误的下一跳的地址也被校验通过的情况,因此显著提高校验end.x sid绑定的下一跳可达性的准确率。
124.以上介绍了本技术实施例的方法300,以下介绍本技术实施例的网络设备。下面介绍的网络设备具有上述方法300中第一网络设备或第二网络设备的任意功能。
125.附图8示出了上述实施例中所涉及的第一网络设备的一种可能的结构示意图。附图8所示的网络设备400例如实现方法300中第一网络设备的功能,或者,网络设备400实现附图2所示的网络设备pe2的功能。
126.请参考附图8,网络设备400包括生成单元401和发送单元402。网络设备400中的各个单元用于执行上述方法300中第一网络设备或网络设备pe2的相应功能。具体地,生成单元401用于支持网络设备400执行s310。发送单元402用于支持网络设备400执行s320。网络设备500的具体执行过程请参考方法300中相应步骤的详细描述,这里不再一一赘述。
127.网络设备400中的各个单元全部或部分地通过软件、硬件、固件或者其任意组合来实现。
128.本技术实施例中对单元的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可选地有另外的划分方式。在一些实施例中,网络设备400中各个功能单元集成在一个处理单元中。例如,网络设备400中各个功能单元集成在同一个芯片上。该芯片包括处理电路和与该处理电路内部连接通信的输入接口以及输出接口。生成单元401通过芯片中的处理电路实现。发送单元402通过芯片中的输出接口实现。例如,该芯片通过一个或多个现场可编程门阵列(英文全称:field-programmable gate array,英文简称:fpga)、可编程逻辑器件(英文全称:programmable logic device,英文简称:pld)、控制器、状态机、门逻辑、分立硬件部件、任何其它适合的电路、或者能够执行本技术通篇所描述的各种功能的电路的任意组合实现。
129.在另一些实施例中,网络设备400各个功能单元单独物理存在。在另一些实施例中,网络设备400一部分功能单元单独物理存在,另一部分功能单元集成在一个单元中。例
如,在一些实施例中,生成单元401和发送单元402是同一个单元。在另一些实施例中,生成单元401和发送单元402是不同的单元。在一些实施例中,不同功能单元的集成采用硬件的形式实现,即,不同功能单元对应于同一个硬件。又如,不同功能单元的集成采用软件功能单元的形式实现。
130.在网络设备400中通过硬件实现的情况下,网络设备400中生成单元401例如通过网络设备600中的中央处理器631、中央处理器611、中央处理器641或者网络设备700中的处理器701实现。网络设备400中发送单元402例如通过网络设备600中物理接口卡633或网络设备700中的通信接口704实现。
131.在网络设备400中通过软件实现的情况下,网络设备400中各个单元例如为网络设备600中的中央处理器631、中央处理器611、中央处理器641或者网络设备700中的处理器701读取存储器中存储的程序代码后生成的软件。例如,网络设备400为虚拟化设备。虚拟化设备包括而不限于虚拟机、容器、pod中的至少一种。在一些实施例中,网络设备400以虚拟机的形式,部署在硬件设备(如物理服务器)上。例如,基于通用的物理服务器结合网络功能虚拟化(network functions virtualization,nfv)技术来实现网络设备400。采用虚拟机的方式实现时,网络设备400例如为虚拟主机、虚拟路由器或虚拟交换机。本领域技术人员通过阅读本技术即可结合nfv技术在通用物理服务器上虚拟出网络设备400。在另一些实施例中,网络设备400以容器(例如docker容器)的形式,部署在硬件设备上。例如,网络设备400执行上述方法实施例的流程被封装在镜像文件中,硬件设备通过运行镜像文件来创建网络设备400。在另一些实施例中,网络设备400以pod的形式,部署在硬件设备上。pod包括多个容器,每个容器用于实现网络设备400中的一个或多个功能单元。
132.附图9示出了上述实施例中所涉及的第二网络设备的一种可能的结构示意图。附图9所示的网络设备500例如实现方法300中第二网络设备的功能,或者,网络设备500实现附图2所示的网络设备rt2的功能。
133.请参考附图9,网络设备500包括接收单元501和校验单元502。网络设备500中的各个单元全部或部分地通过软件、硬件、固件或者其任意组合来实现。网络设备500中的各个单元用于执行上述方法实施例中第二网络设备或网络设备rt2的相应功能。具体地,接收单元501用于支持网络设备500执行s330。校验单元502用于支持网络设备500执行s340。在一些实施例中,网络设备500还包括发送单元,发送单元用于支持网络设备500通告第二ospfv3报文。网络设备500的具体执行过程请参考方法300中相应步骤的详细描述,这里不再一一赘述。
134.本技术实施例中对单元的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可选地有另外的划分方式。
135.在一些实施例中,网络设备500中各个功能单元集成在一个处理单元中。例如,网络设备500中各个功能单元集成在同一个芯片上。该芯片包括处理电路和与该处理电路内部连接通信的输入接口以及输出接口。接收单元501通过芯片中的输入接口实现。校验单元502通过芯片中的处理电路实现。例如,该芯片通过一个或多个fpga、pld、控制器、状态机、门逻辑、分立硬件部件、任何其它适合的电路、或者能够执行本技术通篇所描述的各种功能的电路的任意组合实现。
136.在另一些实施例中,网络设备500各个功能单元单独物理存在。在另一些实施例
中,网络设备500一部分功能单元单独物理存在,另一部分功能单元集成在一个单元中。在一些实施例中,不同功能单元的集成采用硬件的形式实现,即,不同功能单元对应于同一个硬件。又如,不同功能单元的集成采用软件功能单元的形式实现。
137.在网络设备500中通过硬件实现的情况下,网络设备500中接收单元501例如通过网络设备600中物理接口卡633或网络设备700中的通信接口704实现。网络设备500中校验单元502例如通过网络设备600中的中央处理器631、中央处理器611或者网络设备700中的处理器701实现。
138.在网络设备500中通过软件实现的情况下,网络设备500中各个单元例如为网络设备600中的中央处理器631、中央处理器611或者网络设备700中的处理器701读取存储器中存储的程序代码后生成的软件。例如,网络设备500为虚拟化设备。虚拟化设备包括而不限于虚拟机、容器、pod中的至少一种。在一些实施例中,网络设备500以虚拟机的形式,部署在硬件设备(如物理服务器)上。例如,基于通用的物理服务器结合nfv技术来实现网络设备500。采用虚拟机的方式实现时,网络设备500例如为虚拟主机、虚拟路由器或虚拟交换机。本领域技术人员通过阅读本技术即可结合nfv技术在通用物理服务器上虚拟出网络设备500。在另一些实施例,网络设备500以容器(例如docker容器)的形式,部署在硬件设备上。例如,网络设备500执行上述方法实施例的流程被封装在镜像文件中,硬件设备通过运行镜像文件来创建网络设备500。在另一些实施例中,网络设备500以pod的形式,部署在硬件设备上。pod包括多个容器,每个容器用于实现网络设备500中的一个或多个功能单元。
139.以上通过网络设备400和网络设备500,从逻辑功能的角度介绍了如何实现第一网络设备或第二网络设备。以下通过网络设备600和网络设备700,从硬件的角度介绍如何实现第一网络设备以及第二网络设备。附图9所示的网络设备600和网络设备700是对第一网络设备或第二网络设备的硬件结构的举例说明。
140.网络设备600或网络设备700对应于上述方法300中的第一网络设备或第二网络设备,网络设备600或网络设备700中的各硬件、模块和上述其他操作和/或功能分别为了实现方法实施例中第一网络设备或第二网络设备所实施的各种步骤和方法,关于网络设备600或网络设备700如何通告接口地址或者如何校验网络设备可达性的详细流程,具体细节可参见上述方法300,为了简洁,在此不再赘述。其中,方法300的各步骤通过网络设备600或网络设备700处理器中的硬件的集成逻辑电路或者软件形式的指令完成。结合本技术实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块例如位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤,为避免重复,这里不再详细描述。
141.参见附图10,附图10示出了本技术一个示例性实施例提供的网络设备的结构示意图,网络设备600例如配置为第一网络设备或第二网络设备。网络设备600包括:主控板610和接口板630。
142.主控板也称为主处理单元(main processing unit,mpu)或路由处理卡(route processor card),主控板610用于对网络设备600中各个组件的控制和管理,包括路由计算、设备管理、设备维护、协议处理功能。主控板610包括:中央处理器611和存储器612。
143.接口板630也称为线路接口单元卡(line processing unit,lpu)、线卡(line card)或业务板。接口板630用于提供各种业务接口并实现数据包的转发。业务接口包括而不限于以太网接口、pos(packet over sonet/sdh)接口等,以太网接口例如是灵活以太网业务接口(flexible ethernet clients,flexe clients)。接口板630包括:中央处理器631、网络处理器632、转发表项存储器634和物理接口卡(physical interface card,pic)633。
144.接口板630上的中央处理器631用于对接口板630进行控制管理并与主控板610上的中央处理器611进行通信。
145.网络处理器632用于实现报文的转发处理。网络处理器632的形态例如是转发芯片。具体而言,网络处理器632用于基于转发表项存储器634保存的转发表转发接收到的报文,如果报文的目的地址为网络设备600的地址,则将该报文上送至cpu(如中央处理器611)处理;如果报文的目的地址不是网络设备600的地址,则根据该目的地址从转发表中查找到该目的地址对应的下一跳和出接口,将该报文转发到该目的地址对应的出接口。其中,上行报文的处理包括:报文入接口的处理,转发表查找;下行报文的处理:转发表查找等等。
146.物理接口卡633用于实现物理层的对接功能,原始的流量由此进入接口板630,以及处理后的报文从该物理接口卡633发出。物理接口卡633也称为子卡,可安装在接口板630上,负责将光电信号转换为报文并对报文进行合法性检查后转发给网络处理器632处理。在一些实施例中,中央处理器也可执行网络处理器632的功能,比如基于通用cpu实现软件转发,从而物理接口卡633中不需要网络处理器632。
147.可选地,网络设备600包括多个接口板,例如网络设备600还包括接口板640,接口板640包括:中央处理器641、网络处理器642、转发表项存储器644和物理接口卡643。
148.可选地,网络设备600还包括交换网板620。交换网板620也例如称为交换网板单元(switch fabric unit,sfu)。在网络设备有多个接口板630的情况下,交换网板620用于完成各接口板之间的数据交换。例如,接口板630和接口板640之间例如通过交换网板620通信。
149.主控板610和接口板630耦合。例如。主控板610、接口板630和接口板640,以及交换网板620之间通过系统总线与系统背板相连实现互通。在一种可能的实现方式中,主控板610和接口板630之间建立进程间通信协议(inter-process communication,ipc)通道,主控板610和接口板630之间通过ipc通道进行通信。
150.在逻辑上,网络设备600包括控制面和转发面,控制面包括主控板610和中央处理器631,转发面包括执行转发的各个组件,比如转发表项存储器634、物理接口卡633和网络处理器632。控制面执行路由器、生成转发表、处理信令和协议报文、配置与维护设备的状态等功能,控制面将生成的转发表下发给转发面,在转发面,网络处理器632基于控制面下发的转发表对物理接口卡633收到的报文查表转发。控制面下发的转发表例如保存在转发表项存储器634中。在有些实施例中,控制面和转发面例如完全分离,不在同一设备上。
151.应理解,本技术实施例中接口板640上的操作与接口板630的操作一致,为了简洁,不再赘述。应理解,本实施例的网络设备600可对应于上述各个方法实施例中的网络设备,该网络设备600中的主控板610、接口板630和/或640例如实现上述各个方法实施例中的网络设备所具有的功能和/或所实施的各种步骤,为了简洁,在此不再赘述。
152.值得说明的是,主控板可能有一块或多块,有多块的时候例如包括主用主控板和备用主控板。接口板可能有一块或多块,网络设备的数据处理能力越强,提供的接口板越多。接口板上的物理接口卡也可以有一块或多块。交换网板可能没有,也可能有一块或多块,有多块的时候可以共同实现负荷分担冗余备份。在集中式转发架构下,网络设备可以不需要交换网板,接口板承担整个系统的业务数据的处理功能。在分布式转发架构下,网络设备可以有至少一块交换网板,通过交换网板实现多块接口板之间的数据交换,提供大容量的数据交换和处理能力。所以,分布式架构的网络设备的数据接入和处理能力要大于集中式架构的设备。可选地,网络设备的形态也可以是只有一块板卡,即没有交换网板,接口板和主控板的功能集成在该一块板卡上,此时接口板上的中央处理器和主控板上的中央处理器在该一块板卡上可以合并为一个中央处理器,执行两者叠加后的功能,这种形态设备的数据交换和处理能力较低(例如,低端交换机或路由器等网络设备)。具体采用哪种架构,取决于具体的组网部署场景,此处不做任何限定。
153.参见附图11,附图11示出了本技术一个示例性实施例提供的网络设备的结构示意图,该网络设备700可以配置为网络设备。该网络设备700可以是主机、服务器或个人计算机等。该网络设备700可以由一般性的总线体系结构来实现。
154.网络设备700包括至少一个处理器701、通信总线702、存储器703以及至少一个通信接口704。
155.处理器701例如是通用中央处理器(central processing unit,cpu)、网络处理器(network processer,np)、图形处理器(graphics processing unit,gpu)、神经网络处理器(neural-network processing units,npu)、数据处理单元(data processing unit,dpu)、微处理器或者一个或多个用于实现本技术方案的集成电路。例如,处理器701包括专用集成电路(application-specific integrated circuit,asic),可编程逻辑器件(programmable logic device,pld)或其组合。pld例如是复杂可编程逻辑器件(complex programmable logic device,cpld)、现场可编程逻辑门阵列(field-programmable gate array,fpga)、通用阵列逻辑(generic array logic,gal)或其任意组合。
156.通信总线702用于在上述组件之间传送信息。通信总线702可以分为地址总线、数据总线、控制总线等。为便于表示,附图11中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
157.存储器703例如是只读存储器(read-only memory,rom)或可存储静态信息和指令的其它类型的静态存储设备,又如是随机存取存储器(random access memory,ram)或者可存储信息和指令的其它类型的动态存储设备,又如是电可擦可编程只读存储器(electrically erasable programmable read-only memory,eeprom)、只读光盘(compact disc read-only memory,cd-rom)或其它光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其它磁存储设备,或者是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其它介质,但不限于此。存储器703例如是独立存在,并通过通信总线702与处理器701相连接。存储器703也可以和处理器701集成在一起。
158.通信接口704使用任何收发器一类的装置,用于与其它设备或通信网络通信。通信接口704包括有线通信接口,还可以包括无线通信接口。其中,有线通信接口例如可以为以
太网接口。以太网接口可以是光接口,电接口或其组合。无线通信接口可以为无线局域网(wireless local area networks,wlan)接口,蜂窝网络通信接口或其组合等。
159.在具体实现中,作为一种实施例,处理器701可以包括一个或多个cpu,如附图11中所示的cpu0和cpu1。
160.在具体实现中,作为一种实施例,网络设备700可以包括多个处理器,如附图11中所示的处理器701和处理器705。这些处理器中的每一个可以是一个单核处理器(single-cpu),也可以是一个多核处理器(multi-cpu)。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(如计算机程序指令)的处理核。
161.在具体实现中,作为一种实施例,网络设备700还可以包括输出设备和输入设备。输出设备和处理器701通信,可以以多种方式来显示信息。例如,输出设备可以是液晶显示器(liquid crystal display,lcd)、发光二级管(light emitting diode,led)显示设备、阴极射线管(cathode ray tube,crt)显示设备或投影仪(projector)等。输入设备和处理器701通信,可以以多种方式接收用户的输入。例如,输入设备可以是鼠标、键盘、触摸屏设备或传感设备等。
162.在一些实施例中,存储器703用于存储执行本技术方案的程序代码710,处理器701可以执行存储器703中存储的程序代码710。也即是,网络设备700可以通过处理器701以及存储器703中的程序代码710,来实现方法实施例提供的方法。
163.本技术实施例的网络设备700可对应于上述各个方法实施例中的第一网络设备或第二网络设备,并且,该网络设备700中的处理器701、通信接口704等可以实现上述各个方法实施例中的第一网络设备或第二网络设备所具有的功能和/或所实施的各种步骤和方法。为了简洁,在此不再赘述。
164.参见附图12,本技术实施例提供了一种网络系统800,网络系统800包括:第一网络设备801和第二网络设备802。可选的,第一网络设备801为如附图8所示的网络设备400或附图10所示的网络设备600或附图11所示的网络设备700,第二网络设备802为如附图9的网络设备500或附图10所示的网络设备600或附图11所示的网络设备700。
165.本领域普通技术人员可以意识到,结合本文中所公开的实施例中描述的各方法步骤和单元,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各实施例的步骤及组成。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。本领域普通技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
166.所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参见前述方法实施例中的对应过程,在此不再赘述。
167.在本技术所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,该单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
168.该作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本技术实施例方案的目的。
169.另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
170.该集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例中方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
171.本技术中术语“第一”“第二”等字样用于对作用和功能基本相同的相同项或相似项进行区分,应理解,“第一”、“第二”之间不具有逻辑或时序上的依赖关系,也不对数量和执行顺序进行限定。还应理解,尽管以下描述使用术语第一、第二等来描述各种元素,但这些元素不应受术语的限制。这些术语只是用于将一元素与另一元素区别分开。例如,在不脱离各种示例的范围的情况下,第一ospfv3报文可以被称为第二ospfv3报文,并且类似地,第二ospfv3报文可以被称为第一ospfv3报文。第一ospfv3报文和第二ospfv3报文都可以是ospfv3报文,并且在某些情况下,可以是单独且不同的ospfv3报文。
172.本技术中术语“至少一个”的含义是指一个或多个,本技术中术语“多个”的含义是指两个或两个以上。
173.还应理解,术语“如果”可被解释为意指“当...时”(“when”或“upon”)或“响应于确定”或“响应于检测到”。类似地,根据上下文,短语“如果确定...”或“如果检测到[所陈述的条件或事件]”可被解释为意指“在确定...时”或“响应于确定...”或“在检测到[所陈述的条件或事件]时”或“响应于检测到[所陈述的条件或事件]”。
[0174]
以上描述,仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以权利要求的保护范围为准。
[0175]
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。该计算机程序产品包括一个或多个计算机程序指令。在计算机上加载和执行该计算机程序指令时,全部或部分地产生按照本技术实施例中的流程或功能。该计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。
[0176]
该计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,该计算机程序指令可以从一个网站站点、计算
机、服务器或数据中心通过有线或无线方式向另一个网站站点、计算机、服务器或数据中心进行传输。该计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。该可用介质可以是磁性介质(例如软盘、硬盘、磁带)、光介质(例如,数字视频光盘(digital video disc,dvd)、或者半导体介质(例如固态硬盘)等。
[0177]
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,该程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
[0178]
以上,以上实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的范围。
再多了解一些

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

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

相关文献