一种环回口地址分配方法及装置与流程

文档序号:17072953发布日期:2019-03-08 23:28阅读:388来源:国知局
一种环回口地址分配方法及装置与流程

本发明涉及网络通信技术领域,尤其涉及一种环回口地址分配方法及装置。



背景技术:

在spine(核心)-leaf(分支)组网中,存在主spine设备。主spine设备负责为网络中设备(包括spine设备和leaf设备)分配环回口地址。

当需要替换主spine设备时,比如,主spine设备故障,则需要用户指定新的主spine设备,为网络中新接入的设备分配环回口地址。

由于主spine设备通常将已分配的环回口地址记录在缓存中,因此,当替换主spine设备时,原主spine设备中记录的环回口地址信息会丢失。这导致新的主spine设备无法获知原主spine设备已分配的环回口地址。

若新的主spine设备将已分配的环回口地址分配给新接入的设备,会导致网络中地址冲突。该地址冲突会触发所有设备重新向主spine设备请求环回口地址,导致基于环回口地址的相关业务中断。



技术实现要素:

本发明为了解决现有环回口地址分配过程中存在的业务中断问题,提出一种环回口地址分配方法及装置,用以在环回口地址分配过程中避免业务中断。

为实现上述发明目的,本发明提供了如下技术方案:

第一方面,本发明提供一种环回口地址分配方法,应用于spine设备,所述方法包括:

若所述spine设备启动且所述spine设备为主spine设备,向tftp(trivialfiletransferprotocol,简单文件传输协议)服务器发送第一请求报文,所述第一请求报文用于获取所述tftp服务器保存的记录文件,所述记录文件用于记录已分配的第一环回口地址;

接收所述tftp服务器根据所述第一请求报文回应的第一响应报文,所述第一响应报文包括所述记录文件;

根据所述记录文件中记录的第一环回口地址,为接入网络的设备分配第二环回口地址,所述第二环回口地址与所述第一环回口地址不同。

第二方面,本发明提供一种环回口地址分配方法,应用于tftp服务器,所述方法包括:

若接收到主spine设备发送的第一请求报文,获取本地保存的记录文件,所述记录文件用于记录已分配的第一环回口地址;

向所述主spine设备发送第一响应报文,所述第一响应报文包括所述记录文件,以使所述主spine设备根据所述第一环回口地址,为接入网络的设备分配第二环回口地址,所述第二环回口地址与所述第一环回口地址不同。

第三方面,本发明提供一种环回口地址分配装置,应用于spine设备,所述装置包括:

发送单元,用于若所述spine设备启动且所述spine设备为主spine设备,向tftp服务器发送第一请求报文,所述第一请求报文用于获取所述tftp服务器保存的记录文件,所述记录文件用于记录已分配的第一环回口地址;

接收单元,用于接收所述tftp服务器根据所述第一请求报文回应的第一响应报文,所述第一响应报文包括所述记录文件;

分配单元,用于根据所述记录文件中记录的第一环回口地址,为接入网络的设备分配第二环回口地址,所述第二环回口地址与所述第一环回口地址不同。

第四方面,一种环回口地址分配装置,应用于tftp服务器,所述装置包括:

获取单元,用于若接收到主spine设备发送的第一请求报文,获取本地保存的记录文件,所述记录文件用于记录已分配的第一环回口地址;

发送单元,用于向所述主spine设备发送第一响应报文,所述第一响应报文包括所述记录文件,以使所述主spine设备根据所述第一环回口地址,为接入网络的设备分配第二环回口地址,所述第二环回口地址与所述第一环回口地址不同。

由以上描述可以看出,本发明利用tftp服务器保存记录有已分配的环回口地址的记录文件。当主spine设备启动时,从tftp服务器获取记录文件,从而避免将已分配的环回口地址分配给新接入的设备。因此,不会触发全网设备重新向主spine设备请求环回口地址,避免了基于环回口地址的相关业务中断。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明实施例示出的一种环回口地址分配方法流程图;

图2是本发明实施例示出的一种确定主spine设备的实现流程;

图3是本发明实施例示出的一种更新记录文件的实现流程;

图4是本发明实施例示出的另一种环回口地址分配方法流程图;

图5是本发明实施例示出的另一种确定主spine设备的实现流程;

图6是本发明实施例示出的一种spine-leaf组网示意图;

图7是本发明实施例示出的各设备之间的交互流程;

图8是本发明实施例示出的一种环回口地址分配装置的结构示意图;

图9是本发明实施例示出的另一种环回口地址分配装置的结构示意图。

具体实施方式

这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。

在本发明使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。

应当理解,尽管在本发明可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本发明范围的情况下,协商信息也可以被称为第二信息,类似地,第二信息也可以被称为协商信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。

在spine-leaf组网中,主spine设备负责为网络中的spine设备和leaf设备分配环回口地址,并在分配后,将已分配的环回口地址记录在主spine设备的缓存中。若主spine设备故障,缓存中的已分配环回口地址会丢失。新的主spine设备无法获取到已分配的环回口地址信息。

若新的主spine设备将已分配的环回口地址分配给新接入的spine设备或leaf设备,则会导致地址冲突。该地址冲突会触发网络中所有设备重新向主spine设备请求环回口地址,使基于环回口地址的业务发生中断。

针对上述问题,本发明实施例提供一种环回口地址分配方法,该方法利用tftp服务器保存记录有已分配的环回口地址的记录文件。当主spine设备启动时,从tftp服务器获取已分配的环回口地址,从而避免将已分配的环回口地址分配给新的设备。因此,不会触发全网设备重新向主spine设备请求环回口地址,避免基于环回口地址的相关业务中断。

为了使本发明实施例的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明实施例执行详细描述:

参见图1,为本发明实施例提供的一种环回口地址分配方法的流程图。该流程应用于spine设备。

如图1所示,该流程可包括以下步骤:

步骤101,若spine设备启动且spine设备为主spine设备,spine设备向tftp服务器发送第一请求报文。

在spine-leaf组网中,主spine设备通常由用户指定。在指定主spine设备后,需要重启主spine设备,以使主spine设备生效。

对于每一个spine设备,在启动时,需要确定自身是否为主spine设备。spine设备确定主spine设备的过程,在下文中描述,这里暂不赘述。

若spine设备确定自身为主spine设备,则生成第一请求报文。该第一请求报文用于获取tftp服务器保存的记录文件。该记录文件用于记录spine-leaf组网中主spine设备已分配的第一环回口地址。

spine设备预先获取tftp服务器的ip地址。作为一个实施例,spine设备可从dhcp(dynamichostconfigurationprotocol,动态主机配置协议)服务器获取预先配置的tftp服务器的ip地址。

spine设备基于获取的tftp服务器的ip地址,向tftp服务器发送第一请求报文。

这里,第一请求报文、第一环回口地址只是为便于描述而进行的命名,并非用于限定。

步骤102,接收tftp服务器根据第一请求报文回应的第一响应报文。

在本发明实施例中,tftp服务器接收到步骤101中的第一请求报文后,对第一请求报文进行解析,确定主spine设备需要获取记录文件(即获取已分配的环回口地址)。

tftp服务器获取记录文件,并生成第一响应报文。可以理解的是,第一响应报文包括记录文件。

tftp服务器向主spine设备发送第一响应报文。

这里,第一响应报文只是为便于描述而进行的命名,并非用于限定。

步骤103,根据记录文件中记录的第一环回口地址,spine设备为接入网络的设备分配第二环回口地址。

spine设备接收到第一响应报文后,解析并从中获取记录文件。

当spine-leaf组网中接入新的设备时,spine设备(作为主spine设备)需要为接入的设备分配环回口地址。此时,spine设备获取记录文件中记录的已分配的环回口地址(第一环回口地址)。根据已分配的第一环回口地址以及预先获取的环回口地址范围(获取环回口地址范围的过程在下文描述,这里暂不赘述),确定未分配的环回口地址,进而从未分配的环回口地址中,为接入设备分配第二环回口地址。可以理解的是,第二环回口地址与第一环回口地址不同,从而避免地址冲突,基于环回口地址的原有业务不会中断。

这里,第二环回口地址只是为便于描述而进行的命名,并非用于限定。

至此,完成图1所示流程。

通过图1所示流程可以看出,本发明利用tftp服务器保存记录有已分配的环回口地址的记录文件。当主spine设备启动时,从tftp服务器记录文件,从而避免将已分配的环回口地址分配给新接入的设备。因此,不会触发全网设备重新向主spine设备请求环回口地址,避免基于环回口地址的相关业务中断。

下面对spine设备确定自身是否为主spine设备的过程进行描述。参见图2,为本发明实施例示出的一种确定主spine设备的实现流程。

如图2所示,该流程可包括以下步骤:

步骤201,spine设备向tftp服务器发送第二请求报文。

如前所述,用户会指定spine-leaf组网中的主spine设备。

作为一个实施例,用户可在网络管理服务器上下发用于指定主spine设备的指令,该指令中包括指定的主spine设备的信息,比如,主spine设备的桥mac地址。

网络管理服务器接收指令后,解析并从中获取主spine设备的信息,生成包括该主spine设备的桥mac地址的模板文件,并将该模板文件发送给tftp服务器。

tftp服务器保存该模板文件。

当spine设备启动时,生成第二请求报文。该第二请求报文用于获取tftp服务器保存的模板文件。

spine设备向tftp服务器发送第二请求报文。

这里,第二请求报文只是为便于描述而进行的命名,并非用于限定。

步骤202,spine设备接收tftp服务器根据第二请求报文回应的第二响应报文。

在本发明实施例中,tftp服务器接收到步骤201中的第二请求报文后,对第二请求报文进行解析,确定spine设备需要获取本地保存的模板文件。

tftp服务器获取模板文件,并生成第二响应报文。可以理解的是,第二响应报文包括模板文件。

tftp服务器向spine设备发送第二响应报文。

这里,第二响应报文只是为便于描述而进行的命名,并非用于限定。

步骤203,若模板文件中的主spine设备的桥mac地址与spine设备的桥mac地址相同,spine设备确定自身为主spine设备。

spine设备接收到步骤202中的第二响应报文后,解析并从中获取模板文件。

spine设备将模板文件中的主spine设备的桥mac地址与自身的桥mac地址进行比较。

若模板文件中的主spine设备的桥mac地址与自身的桥mac地址不同,则确定自身不为主spine设备。

若模板文件中的主spine设备的桥mac地址与自身的桥mac地址相同,则确定自身为主spine设备。

至此,完成图2所示流程。

通过图2所示流程,spine设备可确定自身是否为主spine设备。进而在确定自身为主spine设备时,执行前述步骤101~步骤103。

作为一个实施例,步骤201中,用户在网络管理服务器上下发用于指定主spine设备的指令时,该指令中的主spine设备的信息还可以包括环回口地址范围。网络管理服务器生成模板文件时,可在模板文件中包括该环回口地址范围。以使spine设备通过步骤202获取到环回口地址范围,进而在确定自身为主spine设备时,基于该环回口地址范围以及已分配的第一环回口地址,为新接入的设备分配第二环回口地址。

作为一个实施例,spine设备(作为主spine设备)在执行步骤103(为接入网络的设备分配第二环回口地址)之后,还需要更新tftp服务器保存的记录文件。参见图3,为本发明实施例示出的一种更新记录文件的实现流程。

如图3所示,该流程可包括以下步骤:

步骤301,spine设备将第二环回口地址记录在记录文件中。

步骤302,spine设备向tftp服务器发送第三请求报文。

spine设备生成第三请求报文,该第三请求报文包括记录文件,用于使tftp服务器保存更新后的记录文件。

spine设备向tftp服务器发送第三请求报文。

tftp服务器接收第三请求报文后,解析并从中获取记录文件进行保存。

至此,完成图3所示流程。

通过图3所示流程可以看出,spine设备在完成环回口地址分配后,及时更新tftp服务器中的记录文件。若重新指定主spine设备,则新的主spine设备可从tftp服务器获取到准确的环回口地址信息。

参见图4,为本发明实施例提供的另一种环回口地址分配方法的流程图。该流程应用于tftp服务器。作为一个实施例,该tftp服务器可与网络管理服务器为同一设备。

如图4所示,该流程可包括以下步骤:

步骤401,若接收到主spine设备发送的第一请求报文,tftp服务器获取本地保存的记录文件。

本发明实施例中,主spine设备发送第一请求报文的过程与前述实施例步骤101相同,在此不再复述。

tftp服务器接收到第一请求报文后,解析第一请求报文,确定主spine设备需要获取记录文件,因此,tftp服务器获取本地保存的记录文件。该记录文件用于记录已分配的第一环回口地址。

步骤402,tftp服务器向主spine设备发送第一响应报文。

tftp服务器生成第一响应报文,该第一响应报文包括记录文件。

tftp服务器向主spine设备发送第一响应报文。

主spine设备根据从记录文件中获取的第一环回口地址,为接入网络的设备分配第二环回口地址,该第二环回口地址与已分配的第一环回口地址不同。

主spine设备分配第二环回口地址的过程与前述实施例步骤103相同,在此不再复述。

至此,完成图4所示流程。

通过图4所示流程可以看出,本发明利用tftp服务器保存记录有已分配的环回口地址的记录文件。当主spine设备启动时,从tftp服务器记录文件,从而避免将已分配的环回口地址分配给新接入的设备。因此,不会触发全网设备重新向主spine设备请求环回口地址,避免基于环回口地址的相关业务中断。

作为一个实施例,在步骤401之前,tftp服务器还可执行图5所示流程。参见图5,为本发明实施例示出的另一种确定主spine设备的实现流程。

如图5所示,该流程可包括以下步骤:

步骤501,若接收到spine设备发送的第二请求报文,tftp服务器获取本地保存的模板文件。

本发明实施例中,spine设备发送第二请求报文的过程与前述实施例步骤201相同,在此不再复述。

tftp服务器接收到第二请求报文后,对第二请求报文进行解析,确定spine设备需要获取本地保存的模板文件,因此,tftp服务器获取本地保存的模板文件。该模板文件用于记录指定的主spine设备的桥mac地址。

步骤502,tftp服务器向spine设备发送第二响应报文。

tftp服务器生成第二响应报文。该第二响应报文包括模板文件。

spine设备根据模板文件中的主spine设备的桥mac地址,确定自身是否为主spine设备。

spine设备确定主spine设备的过程与前述实施例步骤203相同,在此不再复述。

至此,完成图5所示流程。

通过图5所示流程,spine设备可确定自身是否为主spine设备。

作为一个实施例,在步骤402之后,若tftp服务器接收到主spine设备发送的包括记录文件的第三请求报文,则tftp服务器保存该记录文件。该记录文件包括主spine设备通过步骤103分配的第二环回口地址。以使tftp服务器始终保存最新最准确的记录文件。

下面通过具体实施例对本发明实施例提供的方法进行描述:

参见图6,为本发明实施例示出的一种spine-leaf组网示意图。该组网包括:spine设备611、spine设备612、leaf设备621~leaf设备623、网络管理服务器630、tftp服务器640、dhcp服务器650。其中,dhcp服务器650预先配置有tftp服务器640的ip地址。3台leaf设备中,只有leaf621已接入网络。其中,应当说明的是,网络管理服务器630与tftp服务器640可以为同一物理服务器,tftp服务器640所提供的服务可以由网络管理服务器630中安装的网管软件的软件模块提供。

参见图7,为本发明实施例示出的各设备之间的交互流程。

步骤701,spine设备(spine设备611、spine设备612)启动后,向dhcp服务器650发送dhcp请求报文。

步骤702,dhcp服务器650向spine设备回应dhcp响应报文。

dhcp服务器650接收到步骤701中的dhcp请求报文后,获取预先配置的tftp服务器640的ip地址,将tftp服务器640的ip地址添加到dhcp响应报文的option字段。

dhcp服务器650向spine设备(spine设备611、spine设备612)回应dhcp响应报文。

步骤703,网络管理服务器630接收用于指定主spine设备的指令。

在具体实现时,可由用户在网络管理服务器630上指定主spine设备。本发明实施例中,用户指定spine设备611为主spine设备。

步骤704,网络管理服务器630生成模板文件。

模板文件中包括spine设备611的桥mac地址(记为mac611)以及环回口地址范围(比如,ip1~ip50)。

步骤705,网络管理服务器630向tftp服务器640发送请求tftp服务器640保存模板文件的请求报文。

请求报文中包括模板文件。

步骤706,tftp服务器640保存模板文件。

步骤707,spine设备611重启,基于步骤702获取到的tftp服务器640的ip地址,向tftp服务器640发送用于获取模板文件的请求报文。

步骤708,tftp服务器640向spine设备611返回响应报文。

响应报文中包括模板文件。

步骤709,spine设备611解析响应报文,获取响应报文中的模板文件。

将模板文件中的主spine设备的桥mac地址(mac611)与自身的桥mac地址(mac611)进行比较。两个桥mac地址相同,因此,确定自身为主spine设备。

步骤710,spine设备611基于tftp服务器640的ip地址,向tftp服务器640发送用于获取记录文件的请求报文。

步骤711,tftp服务器640向spine设备611返回响应报文。

响应报文中包括记录文件。

步骤712,spine设备611解析响应报文,保存记录文件。

步骤713,当leaf设备622接入网络时,spine设备611从本地保存的记录文件中获取已分配的环回口地址。

比如,spine设备611获取到的已分配的环回口地址为ip1~ip3。spine设备611根据已分配的环回口地址(ip1~ip3)以及从模板文件中获取的环回口地址范围(ip1~ip50),可确定未分配的环回口地址为ip4~ip50。spine设备611从未分配的环回口地址中,为leaf设备622分配环回口地址,比如,分配ip4作为leaf622的环回口地址。

步骤714,spine设备611将分配的环回口地址记录在记录文件中。

即,将ip4记录在记录文件中。

步骤715,spine设备611基于tftp服务器640的ip地址,向tftp服务器640发送请求tftp服务器640保存记录文件的请求报文。

请求报文中包括记录文件。

步骤716,tftp服务器640保存记录文件。

此时,记录文件中记录的已分配的环回口地址包括ip1~ip4。

若spine设备611故障,用户通过步骤703重新指定主spine设备,比如,指定spine设备612为新的主spine设备,则spine设备612作为主spine设备,与网络管理服务器630和tftp服务器640执行前述步骤704~步骤716的交互过程。

通过上述交互过程,spine设备612可为接入的leaf设备623分配与已分配环回口地址不存在冲突的环回口地址,比如,将ip5作为leaf设备623的环回口地址。具体分配过程,不再赘述。

至此,完成对本具体实施例的描述。

以上对本发明实施例提供的方法进行了描述,下面对本发明实施例提供的装置进行描述:

参见图8,为本发明实施例提供的一种装置的结构示意图。该环回口地址分配装置包括发送单元801、接收单元802以及分配单元803,其中:

发送单元801,用于若所述spine设备启动且所述spine设备为主spine设备,向tftp服务器发送第一请求报文,所述第一请求报文用于获取所述tftp服务器保存的记录文件,所述记录文件用于记录已分配的第一环回口地址;

接收单元802,用于接收所述tftp服务器根据所述第一请求报文回应的第一响应报文,所述第一响应报文包括所述记录文件;

分配单元803,用于根据所述记录文件中记录的第一环回口地址,为接入网络的设备分配第二环回口地址,所述第二环回口地址与所述第一环回口地址不同。

作为一个实施例,所述装置还包括:

所述发送单元801,还用于向所述tftp服务器发送第二请求报文,所述第二请求报文用于获取所述tftp服务器保存的模板文件,所述模板文件用于记录指定的主spine设备的桥mac地址;

所述接收单元802,还用于接收所述tftp服务器根据所述第二请求报文回应的第二响应报文,所述第二响应报文包括所述模板文件;

确定单元,用于若所述模板文件中的主spine设备的桥mac地址与所述spine设备的桥mac地址相同,确定所述spine设备为主spine设备。

作为一个实施例,所述装置还包括:

记录单元,用于将所述第二环回口地址记录在所述记录文件中;

所述发送单元801,还用于向所述tftp服务器发送包括所述记录文件的第三请求报文,所述第三请求报文用于使所述tftp服务器保存所述记录文件。

至此,完成图8所示装置的描述。

本发明实施例利用tftp服务器保存记录有已分配的环回口地址的记录文件。当主spine设备启动时,从tftp服务器获取记录文件,从而避免将已分配的环回口地址分配给新接入的设备。因此,不会触发全网设备重新向主spine设备请求环回口地址,避免了基于环回口地址的相关业务中断。

参见图9,为本发明实施例提供的另一种装置的结构示意图。该环回口地址分配装置包括获取单元901和发送单元902,其中:

获取单元901,用于若接收到主spine设备发送的第一请求报文,获取本地保存的记录文件,所述记录文件用于记录已分配的第一环回口地址;

发送单元902,用于向所述主spine设备发送第一响应报文,所述第一响应报文包括所述记录文件,以使所述主spine设备根据所述第一环回口地址,为接入网络的设备分配第二环回口地址,所述第二环回口地址与所述第一环回口地址不同。

作为一个实施例,所述获取单元901,还用于若接收到spine设备发送的第二请求报文,获取本地保存的模板文件,所述模板文件用于记录指定的主spine设备的桥mac地址;

所述发送单元902,还用于向所述spine设备发送第二响应报文,所述第二响应报文包括所述模板文件,以使所述spine设备根据所述模板文件中的主spine设备的桥mac地址,确定自身是否为主spine设备。

作为一个实施例,所述装置还包括:

保存单元,用于若接收到所述主spine设备发送的包括所述记录文件的第三请求报文,保存所述记录文件,其中,所述记录文件记录有所述第二环回口地址。

至此,完成图9所示系统的描述。

本发明实施例利用tftp服务器保存记录有已分配的环回口地址的记录文件。当主spine设备启动时,从tftp服务器获取记录文件,从而避免将已分配的环回口地址分配给新接入的设备。因此,不会触发全网设备重新向主spine设备请求环回口地址,避免了基于环回口地址的相关业务中断。

本发明另一实施例还提供了一种机器可读存储介质,该机器可读存储介质内存储有机器可执行的指令,所述指令由处理器加载并执行,以实现本发明实施例中tftp服务器所执行的方法。

以上所述仅为本发明实施例的较佳实施例而已,并不用以限制本发明,凡在本发明实施例的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1