链路连接状态维护方法、装置及网络设备的制作方法

文档序号:7719124阅读:129来源:国知局
专利名称:链路连接状态维护方法、装置及网络设备的制作方法
技术领域
本发明涉及网络通信技术,尤其涉及一种链路连接状态维护方法、装置及网络设备。
背景技术
以太网通信中,通信双方通过他们之间的链路进行通信。目前,通信双方主要是以自动协商(Auto Negotiation ;简称为AN)的方式来建立链路连接。美国电气电子工程师协、会(Institute of Electrical and Electronics Engineers ;简禾尔为:IEEE) 802. 3 定义 自动协商允许一台设备向链路远端的设备通告自己所运行的工作方式,并且侦测远端设备通告的工作方式。自动协商给共享一条链路的两台设备提供了一种交换信息的方法,使两台设备自动配置工作在最优能力下。换句话说,自动协商是一种使两台设备间达到最佳链路能力(即传输能力)的方式,其中链路能力主要包括传输速率和双工方式。使用自动协商机制的两台设备使用快速链路脉冲(Fast Link Pulse ;简称为 FLP)向对方通告自身的链路能力,即FLP可以让对方知道自己的链路能力是怎样的,以便于选择出双方均可接受的链路能力。例如第一设备和第二设备正在进行自动协商,其中第一设备具有传输速率分别为10BASE、100BASE和1000BASE的全双工和半双工的链路能力, 但是第二设备只有传输速率为10BASE和100BASE的全双工和半双工的链路能力,这样双方共有的最高连接链路能力为传输速率为100BASE的全双工。一旦两台设备进行自动协商结束,链路就会运行在两台设备能够支持的最佳链路能力下。其中,自动协商结束也就意味着链路建立连接的过程结束。其中,自动协商是根据链路两端设备的链路能力进行链路连接建立的,但是在连接建立后的运行过程中,链路本身可能出现故障,这就使得链路本身不再支持自动协商出的链路能力,从而导致链路数据传输的不可靠。针对该问题,现有技术采用环形网络冗余的方案,即使用一个连续的环将每台设备连接在一起。当出现链路连接中断时,链路连接中断的设备检测到此信息并激活其后备端口,以维持正常通信。同时,链路连接中断的设备向管理用户发出错误警报,提醒用户进行链路维护,并在链路修复正常后恢复正常的链路连接状态。这种方法需要额外的硬件链路进行连接,并且需要增加相应的软件才能实现,成本比较高,一般网络中很少使用。

发明内容
本发明提供一种链路连接状态维护方法、装置及网络设备,用以维持链路连接状态的稳定性,提高链路数据传输的可靠性,降低实现成本。本发明提供一种链路连接状态维护方法,包括对与对端设备之间的链路连接状态进行稳定性检测;当确定所述链路连接状态不稳定时,断开与所述对端设备的链路连接,并判断当前链路能力是否为最低级别的链路能力;
当所述当前链路能力不是最低级别的链路能力时,将所述当前链路能力的下一级链路能力配置为最高连接链路能力,并重新根据所述最高连接链路能力与所述对端设备进行自动协商,以重新建立链路连接。本发明提供一种链路连接状态维护装置,包括稳定性检测模块,用于对与对端设备之间的链路连接状态进行稳定性检测;第一判断模块,用于在确定所述链路连接状态不稳定时,断开与所述对端设备的链路连接,并判断当前链路能力是否为最低级别的链路能力;第一配置连接模块,用于在所述当前链路能力不是最低级别的链路能力时,将所述当前链路能力的下一级链路能力配置为最高连接链路能力,并重新根据所述最高连接链路能力与所述对端设备进行自动协商,以重新建立链路连接。本发明又提供一种网络设备,包括本发明提供的任一链路连接状态维护装置。本发明的链路连接状态维护方法、装置及系统,通过对链路连接状态进行检测,判断链路连接状态是否稳定,并在链路连接状态不稳定且当前链路能力不是最低级别的链路能力时,断开链路连接,并将当前链路能力的下一级链路能力配置为最高连接链路能力,以重新与对端设备进行链路连接建立,使得链路能力与链路状态相适应,进而保证了链路连接状态的稳定性,提高了链路数据传输的可靠性。


为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本发明第一实施例提供的链路连接状态维护方法的流程图;图2为本发明第二实施例提供的链路连接状态维护方法的流程图;图3A为本发明第三实施例提供的链路连接状态维护方法的流程图;图;3B本发明第四实施例提供的链路连接状态维护方法的流程图;图3C为本发明第五实施例提供的链路连接状态维护方法的流程图;图3D为本发明第六实施例提供的链路连接状态维护方法的流程图;图4为本发明第七实施例提供的链路连接状态维护方法的流程图;图5为本发明一实施例提供的链路连接状态维护装置的结构示意图;图6为本发明另一实施例提供的链路连接状态维护装置的结构示意图。
具体实施例方式为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。图1为本发明第一实施例提供的链路连接状态维护方法的流程图。如图1所示, 本实施例的方法包括
步骤101、对与对端设备之间的链路连接状态进行稳定性检测。本端设备与对端设备通过物理连接线相连接,连接两端设备的物理连接线构成两端设备之间的链路。其中,在本发明各实施例中提到的设备可以是任何以太网设备,例如交换机、服务器等。在实施过程中,本端设备与对端设备使用FLP相互通告各自具有的链路能力,以通过自动协商确定链路传输所使用的链路能力。其中,链路能力包括传输速率和双工方式, 较为常见的传输速率包括1000BASE-T、100BASE-T、10BASE-T等,目前双工方式主要有全双工方式和半双工方式。最高连接链路能力是本端设备设定的所允许使用的最高链路能力,则在自动协商过程中,本端设备根据链路能力的级别仅将所设定的最高连接链路能力以及级别比最高连接链路能力低的链路能力通过FLP通告给对端设备,以完成链路能力的自动协商。例如假设本端设备具有级别由高到低的传输速率为1000BASE-T的全双工(简称为1000BASE-T全双工)、传输速率为100BASE-T的全双工(简称为100BASE-T全双工) 和传输速率为10BASE-T的全双工(简称为10BASE-T全双工)的链路能力,但是设置最高连接链路能力为100BASE-T全双工,则本端设备仅能将100BASE-T全双工和10BASE-T全双工两种链路能力通告给对端设备,而不能将级别比100BASE-T全双工高的1000BASE-T全双工通告给对端设备。如果自动协商的结果为本端设备与对端设备均具有本端设备设定的最高连接链路能力,则该最高连接链路能力也就是两端设备建立起链路连接时使用的链路能力。例如当本端设备具有传输速率分别为1000BASE-T、100BASE-T和10BASE-T的全双工和半双工的链路能力,且设置1000BASE-T全双工作为最高连接链路能力;而对端设备具有传输速率为100BASE-T和10BASE-T的全双工和半双工的链路能力,且设置100BASE-T全双工作为最高连接链路能力,则本端设备通过FLP将1000BASE-T全双工、1000BASE-T半双工、 100BASE-T全双工、100BASE-T半双工、10BASE-T全双工和10BASE-T半双工通告给对端设备,对端设备将100BASE-T全双工、100BASE-T半双工、10BASE-T全双工和10BASE-T半双工通告给本端设备,以进行链路能力的协商;最终两端设备自动协商的结果为使用传输速率为100BASE的全双工作为所使用的链路能力,并基于该链路能力建立链路连接。其中,本端设备与对端设备建立链路连接是指两端设备协商确定出所使用的链路能力,并使链路运行在两端设备所协商出的链路能力下,即用协商出的链路能力在链路上进行数据传输。当本端设备与对端设备建立起链路连接后,本端设备对链路连接状态进行稳定性检测,即判断链路连接状态是否稳定。通常情况下,如果链路连接状态稳定,则在链路上传输的数据很少甚至不会发生丢弃,也很少甚至不会发生错误;如果链路连接状态不稳定,则在链路上传输的数据就会频繁的发生丢失或者经常出错。换句话说,本端设备可以通过检测链路上传输数据的情况来判断链路连接状态是否稳定。其中,导致链路连接状态不稳定的原因主要是由于链路故障,导致链路状态与当前使用的链路能力不相适应。例如交换机具有1000BASE-T、100BASE-T、10BASE-T的传输速率。其中,以太网中的两台交换机使用双4对绞线连接,当同时使用4对双绞线时,两台交换机可以使用1000BASE-T的传输速率;当使用2对双绞线时,两台交换机可以使用 10BASE-T或100BASE-T的传输速率。当两台交换机使用4对双绞线,并采用1000BASE-T的传输速率建立链路连接之后,其中有2对或者1对双绞线损坏了,则1000BASE-T的传输速率将不能正常连接,如果交换机仍使用1000BASE-T的传输速率在剩下的双绞线上传输数据时,由于传输通道减少了,被传输的数据就会发生错误。另外,链路两端接触不良或存在损坏,也会导致1000BASE-T的信号不能正常解析出来,从而发生链路故障。步骤102、当与对端设备的链路连接状态不稳定时,断开与对端设备的链路连接, 并判断当前链路能力是否为最低级别的链路能力;如果判断结果为是,即当前链路能力是最低级别的链路能力,执行步骤103 ;如果判断结果为否,即当前链路能力不是最低级别的链路能力,执行步骤104。在本实施例中,当本端设备检测到链路连接状态不稳定时,为了保证链路上数据传输的可靠性,断开当前链路连接。其中,如果链路维持连接状态,那么在链路上就会有数据或者无效(IDLE)信号存在。其中,无效信号是两端设备为维持链路处于连接状态,而定时发送的信号。换句话说,只要本端设备在一段时间内不收发任何信号,链路就会断开。因此,本端设备可以通过配置在一段时间内不收发任何信号,从而将当前链路连接断开。同时,本端设备判断当前用于建立链路连接的链路能力(即当前链路能力)是否为最低级别的链路能力;如果判断结果为否,说明可以采用降低链路能力的方式来保证链路连接状态的稳定;如果判断结果为是,说明即使以最低级别的链路能力与对端设备建立链路连接,也已经不能正常工作,故采用将链路连接断开,并重新尝试建立连接直到链路能够正常工作,来保证链路传输不出错误。步骤103、重新根据当前链路能力与对端设备进行自动协商,以重新建立链路连接,并结束此次操作。当本端设备发现当前链路能力已经是其所支持的最低链路能力时,表明已经无法通过降低链路能力与当前链路相适应,为保证链路传输的正确性,故本实施例采用断开链路连接并重新尝试与对端设备建立链路连接的方式来达到链路连接状态的稳定。步骤104、将当前链路能力的下一级链路能力配置为最高连接链路能力,并重新根据最高连接链路能力与对端设备进行自动协商,以重新建立链路连接,并结束此次操作。当本端设备发现当前使用的链路能力不是最低级别的链路能力时,将其下一级链路能力配置为最高连接链路能力,即将当前链路能力的下一级链路能力作为与对端设备自动协商过程中使用的最高链路能力,这样在重新进行自动协商时,本端设备会将当前链路能力的下一级链路能力以及级别比当前链路能力的下一级链路能力低的其他链路能力级别通告给对端设备,也就是说降低链路能力后重新与对端设备进行自动协商过程,以重新确定链路所使用的链路能力并重新建立链路连接。这样降低后的链路能力可能会得到当前链路的支持,从而使链路连接处于稳定状态。在本实施例中,各链路能力的级别主要是根据以太网协议中规定的各个链路能力的优先级来确定的。当前链路能力的下一级链路能力可以认为是下一个优先级定义的链路能力。其中,自动协商也是以各链路能力对应的优先级顺序来选择的。各链路能力的优先级顺序通常优先以传输速率进行划分,然后在按照双工方式进行划分。其中,传输速率大的优先级高;对于传输速率相同的,全双工方式比半双工方式的优先级高。以上述方式划分,目前以太网主要支持的链路能力的优先级关系为1000BASE-T全双工、1000BASE-T半双工、 100BASE-T2 全双工、100BASE-TX 全双工、100BASE-T2 半双工、100BASE-T4、100BASE-TX 半双工、10BASE-T全双工、10BASE-T半双工。其中T,Τ2,Τ4,TX表明链路所使用的物理材料 (例如电缆类型)不同,这属于本领域技术人员的公知常识,在此不做过多说明。
例如当一台交换机同时支持传输速率分别为1000BASE-T、100BASE-T和 10BASE-T的全双工和半双工时,如果前链路能力为传输速率为1000BASE的全双工时,则其下一级链路能力为传输速率为1000BASE的半双工;如果当前链路能力为传输速率为 1000BASE-T的半双工时,则其下一级链路能力为传输速率为100BASE-T的全双工。在此说明,对各链路能力的优先级排序方式并不限于上述一种方式,还可以采用其他方式。例如 优先以双工方式进行划分,然后再按照传输速率划分。本实施例的链路连接状态维护方法,通过对与对端设备之间的链路连接状态进行稳定性检测,在链路连接状态不稳定时,断开与对端设备的链路连接,并在当前链路能力不是最低级别的链路能力时,将链路能力降级并根据降级后的链路能力重新与对端设备进行链路连接的建立,以使链路能力与链路的状态相适应,进而保证链路连接状态的稳定,提高了链路数据传输的可靠性。另外,当当前链路能力是最低级别链路能力时,在断开链路连接之后重新根据当前链路能力进行链路连接的建立,通过重新建立链路连接的方式提高了链路连接状态的稳定性。进一步,与现有技术采用环形网络冗余的方案相比,本实施例不需要额外的硬件链路,降低了维护链路连接状态稳定的成本。图2为本发明第二实施例提供的链路连接状态维护方法的流程图。如图2所示, 本实施例的方法包括步骤201、对与对端设备之间的链路连接状态进行稳定性检测,并判断链路连接状态是否稳定;当判断结果为否,即链路连接状态不稳定时,执行步骤202 ;当判断结果为是, 即链路连接状态稳定时,执行步骤205。其中,本端设备可以通过检测链路上传输数据的情况来判断链路连接状态是否稳定;当链路连接状态不稳定时,说明链路可能发生故障,已经无法适应当前的链路能力;当链路连接状态稳定时,说明当前链路能够支持当前链路能力,且当前链路还可能会支持更高级别的链路能力,例如当链路由故障又恢复到正常状态的情况。对步骤201的详细描述可参见步骤101,在此不再赘述。步骤202、断开与对端设备的链路连接,并执行步骤203。步骤203、判断当前链路能力是否为最低级别的链路能力;如果判断结果为否,即当前链路能力不是最低级别的链路能力,执行步骤204 ;如果判断结果为是,即当前链路能力是最低级别的链路能力,执行步骤207。步骤204、将当前链路能力的下一级链路能力配置为最高连接链路能力,并执行步骤 207。其中,上述步骤202-步骤204可详见上述步骤102和步骤104的描述,在此不再赘述。步骤205、判断当前链路能力是否为最高级别的链路能力;如果判断结果为否,即当前链路能力不是最高级别的链路能力,执行步骤206 ;如果判断结果为是,即当前链路能力是最高级别的链路能力,执行步骤208。当本端设备检测到链路连接状态稳定时,说明当前链路有可能支持更高级别的链路能力,故判断当前链路能力是否为最高级别的链路能力,也就是判断链路能力是否可以被升级。当判断出当前链路能力还可以被升级时,执行步骤206。反之,执行步骤208,也就是保持当前使用最高级别的链路能力建立起的链路连接。
步骤206、断开与对端设备的链路连接,并将当前链路能力的上一级链路能力配置为最高连接链路能力,并执行步骤207。步骤207、重新根据最高连接链路能力与对端设备进行自动协商,以重新建立链路连接,并结束此次操作。其中,当由步骤203转到步骤207时,最高连接链路能力即为当前链路能力,也就是最低级别的链路能力。则该步骤207主要描述本端设备主要通过重新尝试与对端设备建立链路连接,以在链路故障恢复后成功与对端设备建立起链路连接,来提高链路连接的稳定性。当由步骤204转到步骤207时,最高连接链路能力即为当前链路能力的下一级的链路能力。则步骤207主要描述本端设备通过降低链路能力以与链路相适应,来保证链路连接的稳定性。当由步骤206转到步骤207时,最高连接链路能力即为当前链路能力的上一级的链路能力。则上述步骤206和步骤207主要描述当本端设备判断出当前链路能力还可以被升级时,断开与对端设备的链路连接,并升级当前链路能力为其上一级链路能力,也就是将当前链路能力的上一级链路能力配置为最高连接链路能力,进而将重新配置的最高连接链路能力以及级别比重新配置的最高连接链路能力低的其他链路能力通告给对端设备,以与对端设备重新进行自动协商过程,以重新建立链路连接。其中,如果自动协商的结果为重配置的最高连接链路能力,则本端设备和对端设备之间将使用重配置后的最高连接链路能力(也就是升级后的链路能力)重新建立起链路连接,这将提高链路的传输能力。例如当链路能力由100BASE-T全双工提升到1000BASE半双工时,将极大地提高链路数据传输的速率和质量。步骤208、保持当前链路连接,并结束此次操作。当本端设备判断出链路连接状态稳定,且当前链路能力又为最高级别的链路能力,则保持当前链路连接。本实施例的链路连接状态维护方法,通过对与对端设备之间的链路连接状态进行稳定性检测,在链路连接状态不稳定时,断开与对端设备的链路连接,并在当前链路能力不是最低级别的链路能力时,将链路能力降级并根据降级后的链路能力重新与对端设备进行链路连接的建立,以使链路能力与链路的状态相适应,保证了链路连接状态的稳定,提高了链路数据传输的可靠性;在当前链路能力是最低级别链路能力时,通过重新与对端设备建立链路连接的方式提高链路连接状态的稳定性。进一步,本实施例在链路连接状态稳定, 且当前链路能力不是最高级别的链路能力时,断开当前链路连接,将链路能力升级并根据升级后的链路能力重新与对端设备进行链路连接的建立,以使链路能力与链路的状态相适应,在保证链路连接状态的稳定、链路数据传输可靠的基础上,提高了链路能力级别,提高了链路数据传输的速率和质量。进一步,与现有技术采用的环形网络冗余的方案相比,具有成本较低的优势。图3A为本发明第三实施例提供的链路连接状态维护方法的流程图。如图3A示, 本实施例的方法包括步骤301、接收对端设备发送的链路检测报文。在本实施例中,本端设备与对端设备通过传输在链路上的链路检测报文来判断链路连接状态是否稳定。具体的,为了进行链路连接状态的稳定性检测,对端设备向本端设备发送链路检测报文,对端设备接收链路检测报文。进一步说明,为了能够更加全面和准确的对链路连接状态进行稳定性检测,对端设备也可以采用与本端设备相类似的操作流程对链路连接状态进行检测,并可以根据检测结果执行与本端设备相类似的其他处理流程。则本端设备也会向对端设备发送链路检测报文,以便于对端设备根据链路检测报文对链路连接状态进行检测。由于对端设备的处理流程与本端设备相类似,在此不再赘述。其中,链路检测报文可以是对端设备为了进行链路连接状态检测而专门在链路上传输的满足预先约定格式的专用报文。另外,当链路上有数据报文传输时,本端设备也可以直接采用数据报文作为链路检测报文。步骤302、对链路检测报文进行循环冗余码校验(Cyclical Redundancy Check ;简称为CRC),并在预设时间内统计发生错误的链路检测报文的数目。其中,以太网中传送的各种数据均是以以太网帧的格式传送的,也就说说步骤301 中的链路检测报文是以以太网帧的格式传送的。以太网帧的格式包括帧头字段、数据字段和CRC字段。具体的,对端设备对即将发送的以太网帧(也就是链路检测报文)的帧头和帧数据进行计算,得到校验码一 CRC值并添加到以太网帧中相应位置,然后将以太网帧发送给本端设备。本端设备在接收到以太网帧后,对接收到的以太网帧的帧头和帧数据进行计算,得到校验码另一 CRC值,并将计算出的CRC值与以太网帧中携带的CRC值进行比较, 若两者相等说明接收到的以太网帧是正确的,否则说明接收到的以太网帧中有错误存在。为了判断链路连接状态是否稳定,本实施例预先设定了进行CRC统计的时间。在这段时间内,每接收到一个以太网帧就对以太网帧进行CRC,并统计当前出错的以太网帧的数目。步骤303、判断发生错误的链路检测报文的数目是否大于错误计数阈值;当判断结果为是,即发生错误的链路检测报文的数目大于错误计数阈值时,执行步骤304;当判断结果为否,即发生错误的链路检测报文的数目不大于错误计数阈值时,执行步骤305。在本实施例中,预先设定了表征链路连接状态是否稳定的错误计数阈值。本端设备每统计一次出错的以太网帧的数目,就将统计出的出错的以太网帧的数目与错误计数阈值进行比较,判断发生错误的以太网帧的数目大于错误计数阈值;如果判断结果为是,说明这段时间内发生错误的以太网帧的数目较多,表明链路连接状态不稳定;反之,说明链路连接状态稳定。步骤304、确定链路连接状态不稳定,并执行步骤306。步骤305、确定链路连接状态稳定,并执行步骤309。上述步骤301-步骤305可视为上述步骤101或步骤102的一种具体实施方式
。步骤306、断开与对端设备的链路连接,并执行步骤307。步骤307、判断当前链路能力是否为最低级别的链路能力;如果判断结果为否,即当前链路能力不是最低级别的链路能力,执行步骤308 ;如果判断结果为是,即当前链路能力是最低级别的链路能力,执行步骤311。步骤308、将当前链路能力的下一级链路能力配置为最高连接链路能力,并执行步骤 311。
步骤309、判断当前链路能力是否为最高级别的链路能力;如果判断结果为否,即当前链路能力不是最高级别的链路能力,执行步骤310 ;如果判断结果为是,即当前链路能力是最高级别的链路能力,执行步骤312。步骤310、断开与对端设备的链路连接,并将当前链路能力的上一级链路能力配置为最高连接链路能力,并执行步骤311。步骤311、重新根据最高连接链路能力与对端设备进行自动协商,以重新建立链路连接,并结束此次操作。 步骤312、保持当前链路连接,并结束此次操作。上述步骤306-步骤312具体可参见上述步骤202-步骤208的描述,在此不再赘述。本实施例的链路连接状态维护方法,本端设备通过在一定时间内对来自对端设备的链路检测报文进行错误统计,并根据出现错误的链路检测报文的数目与预先设定的错误计数阈值的比较结果来确定链路连接状态是否稳定,该方法简单易于实现,判断准确率较
尚ο图;3B本发明第四实施例提供的链路连接状态维护方法的流程图。本实施例可基于图3A所示实施例实现,如图:3B所示,本实施例的方法在步骤301之前包括步骤300a、根据预设检测周期,向对端设备发送进行链路连接状态检测的通告报文,以使对端设备发送检测报文。在本实施例中,预先约定了对链路连接状态进行检测的周期,以周期性的对链路连接状态进行检测。本实施例尤其适用于在链路连接进入稳定状态后对链路连接状态进行检测。当检测周期到达时,本端设备先向对端设备发送通告报文,以告知对端设备准备进行链路连接状态检测。对端设备收到通告报文后会向本端设备发送链路检测报文,以使本端设备开始进行检测。另外,当本端设备向对端设备发送通告报文后,还可以向对端设备发送链路检测报文,以使对端设备也进行链路连接状态检测。其中,在对端设备上也可以设置检测周期,且对端设备上设置的检测周期可以与本端设备的检测周期相同,也可以不同。另外,两个设备上设置的检测周期可以同时触发, 也可以不同时触发。其中,不同时触发时,可以更加频繁的对链路连接状态进行检测。图3C为本发明第五实施例提供的链路连接状态维护方法的流程图。本实施例基于图3A所示实施例实现,如图3C所示,本实施例的方法在步骤301之前包括步骤300b、接收对端设备根据预设检测周期发送的进行链路连接状态检测的通告报文。与图IBB所示实施例不同,本实施例主要描述由对端设备上的检测周期触发进行链路连接状态检测的操作。具体的,在对端设备上设置检测周期,当检测周期到达时,对端设备向本端设备发送通告报文,以告知本端设备准备进行链路连接状态检测。本端设备收到通告报文后准备接收对端设备发送链路检测报文,以开始进行检测。另外,当本端设备接收对端设备发送的通告报文后,还可以向对端设备发送链路检测报文,以使对端设备也进行链路连接状态检测。
图3D为本发明第六实施例提供的链路连接状态维护方法的流程图。本实施例可基于图3A所示实施例实现,本实施例与图3A所示实施例的区别在于图3A中的步骤301 具体由以下步骤300c和步骤300d实现。如图3D所示,本实施例的方法包括步骤300c、与对端设备进行链路连接建立。在实施过程中,本端设备与对端设备之间通过FLP相同通告所配置的最高连接链路能力以及所支持的级别比最高连接链路能力低的其他链路能力,以协商建立链路连接所使用的链路能力。当协商出所使用的链路能力时,两端设备之间的链路连接也就建立起来了。步骤300d、在与对端设备的链路连接建立完成时,接收对端设备在链路连接建立完成时发送的链路检测报文。当链路连接建立完成时,本端设备直接向对端设备发送链路检测报文,以启动对链路连接状态进行检测的操作。对于对端设备来说,也会检测到链路连接建立完成,也会在链路连接建立完成时直接向本端设备发送链路检测报文,以启动对链路连接状态进行检测的操作。本端设备接收对端设备发送的链路检测报文,并通过后续CRC等操作完成对链路连接状态的检测。在本实施例中,链路连接状态检测过程是在链路连接建立完成时通过直接发送链路检测报文启动的,与上述图3B和图3C所示实施例在检测周期到达时通过通告报文来启动的方式不同。本实施例更加适用于在设备启机后首次进行链路连接建立的情况,通过在首次建立链路连接时对链路连接状态进行检测,可以降低后续链路连接出现不稳定状态的概率。图4为本发明第七实施例提供的链路连接状态维护方法的流程图。在本实施例中,第一设备和第二设备之间通过物理连接线相连接,即第一设备和第二设备之间存在物理链路,本实施例重点从第一设备的角度描述如何对第一设备和第二设备之间的链路连接状态进行稳定性维护。如图4所示,本实施例的方法包括步骤401、第一设备和第二设备分别初始化最高连接链路能力为最高链路能力。步骤402、第一设备和第二设备根据最高连接链路能力进行链路连接建立。具体的,第一设备与第二设备通过FLP相互通告所配置的最高连接链路能力以及所支持的级别比最高连接链路能力低的其他链路能力,以进行链路能力协商。当协商出所要使用的链路能力时,第一设备和第二设备之间的链路连接也就建立起来了,并且链路将会运行在所协商出的链路能力下。步骤403、在链路连接建立完成时,第一设备和第二设备分别向对端发送链路检测报文,并分别在预设时间内统计出错的链路检测报文的数目,将统计出的出错的链路检测报文的数目与预设错误计数阈值进行比较,判断统计出的数目是否大于错误计数阈值。其中,当其中一方的判断结果为是时,就转去执行步骤404 ;反之,执行步骤406。其中,错误计数阈值可预先设定,具体数值可以根据以太网环境、所使用的业务等进行适应性设置。其中,对链路检测报文进行错误统计的时间也可以预先设定,具体数值也可以根据以太网环境、具体业务等进行适应性设置。本实施例通过统计一段时间内发生错误的链路检测报文的数目,当统计出的数目大于错误计数阈值时,确定链路连接状态不稳定,反之确定链路连接状态稳定的方案具有简单、易于实施,且判断准确性较高的优势。在本实施例中,假设第一设备判断出在预设时间内出错的链路检测报文的数目大于错误计数阈值,则转去执行步骤404。步骤404、第一设备将其与第二设备之间的链路连接断开,并判断当前链路能力是否为最低级别的链路能力;如果判断结果为否,执行步骤405 ;如果判断结果为是,转去执行步骤402。当前链路能力是指当前链路正在使用的链路能力。如果当前链路能力不是最低级别的链路能力,表明可以通过对链路能力进行降级以适应当前的链路状态。如果当前链路能力已经是最低级别的链路能力,表明已经无法通过降低链路能力来适应当前链路状态。步骤405、第一设备将当前链路能力的下一级链路能力配置为最高连接链路能力, 并转去执行步骤402。具体的,第一设备将链路能力降级后,重新根据所配置的最高连接链路能力与对端设备协商所使用的链路能力,以重新与对端设备发起建立链路连接。步骤406、第一设备和第二设备之间的链路连接进入稳定状态,并执行步骤407。步骤407、第一设备根据预设检测周期,向第二设备发送进行链路连接状态检测的通告报文,并启动一定时器,设置定时器的初始值为0,同时设置错误计数器的初始值为0, 然后执行步骤408。其中,该步骤也可以由第二设备执行,则第一设备将接收通告报文,并在接收到通告报文之后向第二设备发送链路检测报文,同时接收第二设备发送的链路检测报文。具体的,该步骤用于在链路连接处于稳定状态时,周期性的对链路连接状态进行检测。其中,定时器用于计时统计错误链路检测报文的时间,当定时器定时结束时,停止对链路检测报文的CRC。其中,定时器的定时时间可以预先设置,例如2分钟。错误计数器用于记录CRC出错的链路检测报文的个数。步骤408、第一设备向第二设备发送链路检测报文,同时接收第二设备发送的链路检测报文,并执行步骤409。步骤409、第一设备对链路检测报文进行CRC,判断链路检测报文是否发生错误; 当判断结果为是时,执行步骤410 ;当判断结果为否时,执行步骤411。步骤410、第一设备将错误计数器加1,并判断错误计数器的计数值是否大于错误计数阈值;如果判断结果为否,执行步骤411 ;如果判断结果为是,转去执行步骤404及其后续步骤。即当链路检测报文的CRC出错时,将错误计数器加1,记录CRC出错的链路检测报文的个数。同时,判断错误计数器的计数值是否大于错误计数阈值。如果大于,说明链路连接状态不稳定,如果小于说明链路连接还处于稳定状态。步骤411、第一设备判断定时器是否定时结束;如果判断结果为否,转去执行步骤 408 ;如果判断结果为是,执行步骤412。该步骤用于判断统计时间是否结束。步骤412、第一设备判断当前链路能力是否为最高级别的链路能力,如果判断结果为否,执行步骤413,如果判断结果为是,转去执行步骤406。步骤413、第一设备断开与第二设备的链路连接,并将当前链路能力的上一级链路能力配置为最高连接链路能力,并转去执行步骤402。上述步骤412和步骤413主要描述当定时器定时结束,而错误计数器的计数值又不大于错误计数阈值时,说明链路连接处于稳定状态。其中,链路一直处于正常状态会使链路连接处于稳定状态,而链路由故障又恢复到正常状态(此时链路状态所能支持的链路能力的级别要高于当前链路能力)时也会使链路连接处于稳定状态,因此,通过该步骤将链路能力升级,有可能使链路运行在更高级别的链路能力下,进而提高链路传输质量。其中,对于链路由之前的故障装置重新恢复到正常状态(例如维护人员对链路进行了维护)的情况,当前链路能力是经过降级后的链路能力,例如由1000BSAE-T半双工降到了 100BASE-T全双工,而对于恢复到正常状态的链路而言是能够支持1000BASE-T半双工的链路能力的,故本实施例在链路连接处于稳定状态时,升级链路能力并重新进行链路连接建立,能够使链路运行故障前所能支持的最高链路能力下,有利于提高链路数据传输的质量。本实施例的链路连接状态维护方法,两台设备通过对其之间的链路连接的状态进行检测,根据检测结果对其链路能力进行重新配置,使两台设备的链路能力与连接两台设备的链路的状态相适应,即在发生链路故障时进行链路能力的降级以维持正常通信,提高链路数据传输的可靠性,在链路故障恢复时自动进行链路能力的升级以提高链路的通信效率。另外,本实施例在链路连接建立时进行链路连接状态的检测,可以降低后续链路连接状态出现不稳定的概率;而在链路连接进入稳定状态之后定期对链路连接状态进行检测,可以跟踪链路的运行状态,能够及时检测到运行过程发生的链路故障问题,并进行及时处理, 进一步提高了链路数据传输的可靠性。且与现有技术相比,本实施例不需要环形网络冗余方案中的冗余线路和网络管理软件,可以在现有的链路和软件上实现提高链路的安全可靠性能,成本较低。进一步,在上述各实施例中,链路两端的设备还可以与控制设备连接,用于在将当前链路能力降级时,也就是在将当前链路能力的下一级链路能力配置为最高连接链路能力时,向控制设备发送来链路故障报警信号。这样可以通知用户对链路进行排查,并且可以在不切断通信的情况下,让用户对链路进行排查并直至恢复链路的功能,进而提高链路传输的质量。图5为本发明一实施例提供的链路连接状态维护装置的结构示意图。如图5所示, 本实施例的装置包括稳定性检测模块51、第一判断模块52和第一配置连接模块53。稳定性检测模块51,用于对与对端设备之间的链路连接状态进行稳定性检测。第一判断模块52,与稳定性检测模块51连接,用于在稳定性检测模块51确定链路连接状态不稳定时,断开与对端设备的链路连接,并判断当前链路能力是否为最低级别的链路能力。第一配置连接模块53,与第一判断模块52连接,用于在第一判断模块52判断出当前链路能力不是最低级别的链路能力时,将当前链路能力的下一级链路能力配置为最高连接链路能力,并重新根据最高连接链路能力与对端设备进行自动协商,以重新建立链路连接。本实施例的链路连接状态维护装置的上述各功能模块可用于执行图1所示链路连接状态维护方法的流程,其具体工作原理不再赘述,详见方法实施例的描述。本实施例的链路连接状态维护装置,通过上述各功能模块对链路连接状态进行稳定性检测,在链路连接状态不稳定时,断开与对端设备的链路连接,并在当前链路能力不是最低级别的链路能力时,将链路能力降级并根据降级后的链路能力重新与对端设备进行链路连接的建立,以使链路能力与链路的状态相适应,进而保证链路连接状态的稳定,提高了链路数据传输的可靠性。进一步,与现有技术采用环形网络冗余的方案相比,本实施例不需要额外的硬件链路,降低了维护链路连接状态稳定的成本。图6为本发明另一实施例提供的链路连接状态维护装置的结构示意图。本实施例基于图5所示实施例实现,如图6所示,本实施例的装置还包括重新连接模块61。重新连接模块61,与第一判断模块52连接,用于在第一判断模块52判断出当前链路能力是最低级别的链路能力时,重新根据当前最高连接链路能力与对端设备进行自动协商,以重新建立链路连接。进一步,本实施例的装置还包括第二判断模块62和第二配置连接模块63。其中,第二判断模块62,与稳定性检测模块51连接,用于在稳定性检测模块51确定链路连接状态稳定时,判断当前链路能力是否为最高级别的链路能力。第二配置连接模块63,与第二判断模块62连接,用于在第二判断模块62判断出当前链路能力不是最高级别的链路能力时,断开与对端设备的链路连接,并将当前链路能力的上一级链路能力配置为最高连接链路能力,重新根据最高连接链路能力与对端设备进行自动协商,以重新建立链路连接。另外,当当前链路能力是最低级别链路能力时,在断开链路连接之后重新根据当前链路能力进行链路连接的建立,通过重新建立链路连接的方式提高了链路连接状态的稳定性。上述功能模块具体可用于执行图2所示链路连接状态维护方法中的相应流程,其具体工作原理不再赘述,详见方法实施例的描述。在本实施例中,稳定性检测模块51包括第一接收单元511、检测统计单元512、第一确定单元513和第二确定单元514。具体的,第一接收单元511,用于接收对端设备发送的链路检测报文。检测统计单元512,与第一接收单元511连接,用于对第一接收单元511接收到的链路检测报文进行 CRC,并在预设时间内统计发生错误的链路检测报文的数目。第一确定单元513,与检测统计单元512连接,用于在检测统计单元512统计出发生错误的链路检测报文的数目大于错误计数阈值时,确定链路连接状态不稳定,并将确定出的信息提供给第一判断模块52。第二确定单元514,与检测统计单元512连接,用于在检测统计单元512统计出发生错误的链路检测报文的数目不大于错误计数阈值时,确定链路连接状态稳定,并将确定出的信息提供给第二判断模块62。上述各功能单元可用于执行图3A所示方法实施例的流程,其具体工作原理不再赘述。进一步,稳定性检测模块51还包括发送单元515和第二接收单元516。其中,发送单元515,用于在第一接收单元511接收链路检测报文之前,根据预设检测周期,向对端设备发送进行链路连接状态检测的通告报文,以使对端设备发送检测报文,同时触发第一接收单元511接收链路检测报文。发送单元515可用于执行图:3B所示方法实施例中步骤300a的流程,其具体工作原理不再赘述。
第二接收单元516,用于在第一接收单元511接收链路检测报文之前,接收对端设备根据预设检测周期发送的进行链路连接状态检测的通告报文,并触发第一接收单元511 接收链路检测报文。第二接收单元516可用于执行图3C所示方法实施例中步骤300b的流程,其具体工作原理不再赘述。基于上述发送单元515和第二接收单元516,本实施例的链路连接状态维护装置还包括第一报文发送模块64。第一报文发送模块64,分别与发送单元515和第二接收单元516连接,用于在发送单元515向对端设备发送所述通告报文后,或者在第二接收单元516接收对端设备发送的通告报文后,向对端设备发送链路检测报文。另外,本实施例的稳定性检测模块51还可以用于在链路连接建立完成时立即对链路连接状态进行稳定性检测。在具体实施时,第一接收单元511具体用于在与对端设备的链路连接建立完成时,接收对端设备在链路连接建立完成时发送的链路检测报文。此时, 第一接收单元511可用于执行图3D所示方法实施例中步骤300d的流程,其具体工作原理不再赘述。基于上述,本实施例的链路连接状态维护装置还包括第二报文发送模块65。第二报文发送模块65,与第一接收单元511连接,用于在与对端设备的链路连接建立完成时(即第一接收单元511接收链路检测报文时),向对端设备发送链路检测报文, 以使对端设备也进行链路连接状态稳定性检测。其中,链路检测报文可以是发送在链路上专门用于对链路连接状态进行检测的检测报文,该检测报文的格式可以预先约定。另外,当链路上有数据报文传输时,也可以将数据报文作为链路检测报文,该方式具有节约链路带宽的优势。更进一步,本实施例的链路连接状态维护装置还包括报警信号发送模块66。报警信号发送模块66,与第一配置连接模块53和外部的控制设备连接,用于在第一配置连接模块53将当前链路能力的下一级链路能力配置为最高连接链路能力时,也就是将当前链路能力降级时,向控制设备发送链路故障报警信号,以使管理用户对链路进行排查,及时修复链路,进而提高链路传输质量。本实施例的链路连接状态维护装置,通过对链路连接状态进行检测,根据检测结果对其链路能力进行重新配置,使链路能力与链路的状态相适应,即在发生链路故障时进行链路能力的降级以维持正常通信,提高链路数据传输的可靠性,在链路故障恢复时自动进行链路能力的升级以提高链路的通信效率。另外,本实施例的链路连接状态维护装置, 在链路连接建立时进行链路连接状态的检测,可以降低后续链路连接状态出现不稳定的概率;而在链路连接进入稳定状态之后定期对链路连接状态进行检测,可以跟踪链路的运行状态,能够及时检测到运行过程发生的链路故障问题,并进行及时处理,进一步提高了链路数据传输的可靠性。且与现有技术相比,本实施例的链路连接状态维护装置,不需要环形网络冗余方案中的冗余线路和网络管理软件,可以在现有的链路和软件上实现提高链路的安全可靠性能,成本较低。本发明一实施例提供一种网络设备,包括本发明上述实施例提供的链路连接状态维护装置。本实施例的网络设备可以为任意以太网设备,例如交换机、服务器等。其中,链路连接状态维护装置作为网络设备的功能模块设置于网络设备之内。链路连接状态维护装置的结构详见图5或图6所示,其工作原理详见图1-图4所示任意实施例的描述,在此均不再赘述。本实施例的网络设备,同样可以维持链路连接状态的稳定性,提高链路数据传输的可靠性,并且不需要环形网络冗余方案中的冗余线路和网络管理软件,具有实现成本较低的优势。本领域普通技术人员可以理解实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括R0M、RAM、磁碟或者光盘等各种可以存储程序代码的介质。最后应说明的是以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
权利要求
1.一种链路连接状态维护方法,其特征在于,包括 对与对端设备之间的链路连接状态进行稳定性检测;当确定所述链路连接状态不稳定时,断开与所述对端设备的链路连接,并判断当前链路能力是否为最低级别的链路能力;当所述当前链路能力不是最低级别的链路能力时,将所述当前链路能力的下一级链路能力配置为最高连接链路能力,并重新根据所述最高连接链路能力与所述对端设备进行自动协商,以重新建立链路连接。
2.根据权利要求1所述的链路连接状态维护方法,其特征在于,还包括当所述当前链路能力是最低级别的链路能力时,重新根据当前最高连接链路能力与所述对端设备进行自动协商,以重新建立链路连接。
3.根据权利要求1所述的链路连接状态维护方法,其特征在于,还包括当确定所述链路连接状态稳定时,判断当前链路能力是否为最高级别的链路能力; 当所述当前链路能力不是最高级别的链路能力时,断开与所述对端设备的链路连接, 并将所述当前链路能力的上一级链路能力配置为最高连接链路能力,重新根据所述最高连接链路能力与所述对端设备进行自动协商,以重新建立链路连接。
4.根据权利要求1或2或3所述的链路连接状态维护方法,其特征在于,所述对与对端设备之间的链路连接状态进行稳定性检测包括接收所述对端设备发送的链路检测报文;对所述链路检测报文进行循环冗余码校验,并在预设时间内统计发生错误的链路检测报文的数目;当发生错误的链路检测报文的数目大于错误计数阈值时,确定所述链路连接状态不稳定;当发生错误的链路检测报文的数目不大于所述错误计数阈值时,确定所述链路连接状态稳定。
5.根据权利要求4所述的链路连接状态维护方法,其特征在于,所述接收所述对端设备发送的链路检测报文之前包括根据预设检测周期,向所述对端设备发送进行链路连接状态检测的通告报文,以使所述对端设备发送所述检测报文;或者接收所述对端设备根据预设检测周期发送的进行链路连接状态检测的通告报文; 所述链路连接状态维护方法还包括在向所述对端设备发送所述通告报文后,或者在接收所述对端设备发送的所述通告报文后,向所述对端设备发送所述链路检测报文。
6.根据权利要求4所述的链路连接状态维护方法,其特征在于,所述接收所述对端设备发送的链路检测报文包括在与所述对端设备的链路连接建立完成时,接收所述对端设备在所述链路连接建立完成时发送的所述链路检测报文;所述链路连接状态维护方法还包括在与所述对端设备的链路连接建立完成时,向所述对端设备发送所述链路检测报文。
7.根据权利要求1所述的链路连接状态维护方法,其特征在于,还包括当将所述当前链路能力的下一级链路能力配置为最高连接链路能力时,向控制设备发送链路故障报警信号。
8.根据权利要求4所述的链路连接状态维护方法,其特征在于,所述链路检测报文为数据报文。
9.一种链路连接状态维护装置,其特征在于,包括稳定性检测模块,用于对与对端设备之间的链路连接状态进行稳定性检测;第一判断模块,用于在确定所述链路连接状态不稳定时,断开与所述对端设备的链路连接,并判断当前链路能力是否为最低级别的链路能力;第一配置连接模块,用于在所述当前链路能力不是最低级别的链路能力时,将所述当前链路能力的下一级链路能力配置为最高连接链路能力,并重新根据所述最高连接链路能力与所述对端设备进行自动协商,以重新建立链路连接。
10.根据权利要求9所述的链路连接状态维护装置,其特征在于,还包括重新连接模块,用于在所述当前链路能力是最低级别的链路能力时,重新根据当前最高连接链路能力与所述对端设备进行自动协商,以重新建立链路连接。
11.根据权利要求9所述的链路连接状态维护装置,其特征在于,还包括第二判断模块,用于在确定所述链路连接状态稳定时,判断当前链路能力是否为最高级别的链路能力;第二配置连接模块,用于在所述当前链路能力不是最高级别的链路能力时,断开与所述对端设备的链路连接,并将所述当前链路能力的上一级链路能力配置为最高连接链路能力,重新根据所述最高连接链路能力与所述对端设备进行自动协商,以重新建立链路连接。
12.根据权利要求9或10或11所述的链路连接状态维护装置,其特征在于,所述稳定性检测模块包括第一接收单元,用于接收所述对端设备发送的链路检测报文;检测统计单元,用于对所述链路检测报文进行循环冗余码校验,并在预设时间内统计发生错误的链路检测报文的数目;第一确定单元,用于在发生错误的链路检测报文的数目大于错误计数阈值时,确定所述链路连接状态不稳定;第二确定单元,用于在发生错误的链路检测报文的数目不大于所述错误计数阈值时, 确定所述链路连接状态稳定。
13.根据权利要求12所述的链路连接状态维护装置,其特征在于,所述稳定性检测模块还包括发送单元,用于根据预设检测周期,向所述对端设备发送进行链路连接状态检测的通告报文,以使所述对端设备发送所述检测报文;第二接收单元,用于接收所述对端设备根据预设检测周期发送的进行链路连接状态检测的通告报文;所述链路连接状态维护装置还包括第一报文发送模块,用于在向所述对端设备发送所述通告报文后,或者在接收所述对端设备发送的所述通告报文后,向所述对端设备发送所述链路检测报文。
14.根据权利要求12所述的链路连接状态维护装置,其特征在于,所述第一接收单元具体用于在与所述对端设备的链路连接建立完成时,接收所述对端设备在所述链路连接建立完成时发送的所述链路检测报文;所述链路连接状态维护装置还包括第二报文发送模块,用于在与所述对端设备的链路连接建立完成时,向所述对端设备发送所述链路检测报文。
15.根据权利要求9所述的链路连接状态维护装置,其特征在于,还包括报警信号发送模块,用于在将所述当前链路能力的下一级链路能力配置为最高连接链路能力时,向控制设备发送链路故障报警信号。
16.根据权利要求12所述的链路连接状态维护装置,其特征在于,所述链路检测报文为数据报文。
17.—种网络设备,其特征在于,包括如权利要求9-16任一项所述的链路连接状态维护装置。
全文摘要
本发明提供一种链路连接状态维护方法、装置及网络设备。其中方法包括对与对端设备之间的链路连接状态进行稳定性检测;当确定链路连接状态不稳定时,断开与对端设备的链路连接,并判断当前链路能力是否为最低级别的链路能力;当当前链路能力不是最低级别的链路能力时,将当前链路能力的下一级链路能力配置为最高连接链路能力,并重新根据最高连接链路能力与对端设备进行自动协商,以重新建立链路连接。采用本发明技术方案,可以维持链路连接状态的稳定性,提高链路数据传输的可靠性,且实现成本较低。
文档编号H04L12/24GK102238034SQ201110190158
公开日2011年11月9日 申请日期2011年7月7日 优先权日2011年7月7日
发明者黄锦川 申请人:北京星网锐捷网络技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1