CN1859155A - 链路状态自协商方法 - Google Patents

链路状态自协商方法 Download PDF

Info

Publication number
CN1859155A
CN1859155A CN 200510035772 CN200510035772A CN1859155A CN 1859155 A CN1859155 A CN 1859155A CN 200510035772 CN200510035772 CN 200510035772 CN 200510035772 A CN200510035772 A CN 200510035772A CN 1859155 A CN1859155 A CN 1859155A
Authority
CN
China
Prior art keywords
link
state
bit
ascender
descender
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN 200510035772
Other languages
English (en)
Other versions
CN100417083C (zh
Inventor
王凯
罗柳柱
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CNB200510035772XA priority Critical patent/CN100417083C/zh
Publication of CN1859155A publication Critical patent/CN1859155A/zh
Application granted granted Critical
Publication of CN100417083C publication Critical patent/CN100417083C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

一种链路状态自协商方法,用于在发送端和接收端之间进行数据传输链路状态的自协商,其特征在于,包括以下步骤:接收端通过查询信元头中的序列号来按照正确的顺序接收数据;通过信元头的链路关比特和链路错误比特来传递链路状态;在接收端和发送端分别增加链路状态表;在链路出现故障和链路恢复的过程中,通过接收端和发送端的收发状态来控制数据的接收和发送,完成链路的自协商过程。在链路状态自协商的过程中还通过查询和设置并串/串并转换器开关状态表来完成链路的自协商过程。本发明的电路实现简单、耗费资源少,并且不需要软件干预,降低了软件开发成本,提高了协商的效率和系统的可靠性。

Description

链路状态自协商方法
技术领域
本发明涉及链路自协商方法(机制),尤其涉及一种可扩展的、通过在信元中加入开销的方式传递链路状态的链路自协商方法。
背景技术
随着网络对带宽的要求日益增加,交换网的接口往往需要高达10G甚至是40G的带宽,但是目前没有这么快的串行总线,业界的做法都是将几个2.5G或者3.125G的Serdes(SERializer/DESerializer,并串/串并转换器)捆绑来提供一个10G,或者是40G的端口,为了提供一个业务带宽为10G的端口,需要将8个2.5G的Serdes捆绑来支持,40G的带宽就需要32个2.5G的Serdes来支持。对于一个10G的接口来说,目前一般的做法都是将8个2.5G的Serdes捆绑来提供。
如图1所示,图1的左侧表示流量管理芯片102(TrafficManager,TM,其中TMI 106表示TM 102的上行部分,TME 112表示TM 102的下行部分),右侧表示交换网芯片104(Switch Fabric,SF,其中SFI 108表示SF 104的上行部分,SFE 110表示SF 104的下行部分)。TMI 106中有8个2.5G的Serdes(图1中以SD_TX0~SD_TX7表示)互相捆绑来支持一个10G端口,SFI 108中,8个2.5G的Serdes互相捆绑来支持一个10G接口,8个互相捆绑的Serdes用SD_RX0~SD_RX7表示。互为捆绑的几个Serdes由于链路延时不可能绝对相等,它们之间可能会存在一定的延时差异,为了保证接收方向的Serdes按照正确的顺序接收数据,所以在信元头中增加了序列号(LSN)信息。
图2示出了在信元头中增加的序列号信息的示意图。序列号信息占用8比特,比特0-5,即LSN[5:0]202用于存储序列号信息,比特6和比特7,即保留比特204,留待以后使用。
图3示出了根据现有技术的链路捆绑的信元序列号的示意图。如图所示,LSN标识的方法为:在第M个信元周期中,SD_TX0302发送的是第N个信元,SD_TX1304发送的是第N+1个信元,SD_TX2发送的是第N+2个信元,依次类推,SD_TX7306发送的是第N+7个信元。SD_TX0~SD_TX7发送信元携带的序列号都为M。在第M+1个信元周期中,SD_TX0302发送的是第N+8个信元,SD_TX1304发送的是第N+9个信元,SD_TX2发送的是第N+10个信元,依次类推,SD_TX7306发送的是第N+15个信元。SD_TX0~SD_TX7发送信元携带的序列号都为M+1。接收端接收到携带有序列号的信元以后,将序列号相等的信元按照从SD_RX0~SD_RX7的顺序将信元排序后顺序写入缓存中。
虽然这个方案解决了提供高带宽接口问题,但是这种简单的捆绑为系统的稳定性和可靠性带来了很大的隐患。比如其中有一条高速链路由于某种原因断掉,这种简单的捆绑将导致整个10G端口不能正常接收信元。比如图1中,从TMI 106到SFI 108的第一条高速链路ITX0114断掉,此时SFI 108可以通过SD_RX0检测到ITX0114链路出错,接收到的数据错误,SFI 108为了不带来乱序问题,必须将其他7个好的Serdes接收的数据全部丢弃(因为其实此时TMI 106还向ITX0 114发送数据信元,只是由于链路错误导致数据信元已经丢失)。这样就导致整个10G端口都不能接收数据,直到SFI 108的SD_RX0重新检测到ITX0 114链路恢复正常以后才能接收数据。
为了解决上面提出的问题,目前的解决方案是通过软件干预的方式来解决。具体操作如下:
当接收端Serdes检测到链路连续错误时,上报链路错误中断,单板上的CPU通过读取中断,判断是哪条高速链路错误,然后通过CPU通知发送端,关掉发送端的对应出错链路的Serdes调度器不再向此Serdes,调度数据信元,此Serdes只发空信元。当CPU确认已经成功关闭了调度器,调度器不再向出错的链路发送信元以后,再通知接收端Serdes,可以接收剩下几个链路正确的信元,此时接收的信元就不会带来乱序的问题了。
当出现错误的链路又恢复正常时,CPU需要查询接收端Serdes状态,发现Serdes状态恢复正常,此时需要开始接收来自这条恢复正常的端口数据,同时CPU需要通知发送端调度器,开始向此条恢复的链路发送数据信元。这样就可以比较好的解决上述的问题,不会导致互相捆绑的几条链路中,其中有一条由于某种原因链路错误导致整个端口都不可用的问题。
以图1为例,TMI 106到SFI 108的链路ITX0出现连续错误,此时SFI 108上报链路错误中断给单板上的CPU,单板上的CPU检测到SFI 108上报中断以后,查询中断,并判断是哪条链路出错,同时通知TMI 106关闭SD_TX0,控制调度器不再向SD_TX0调度数据信元,SD_TX0只发送空闲信元。当CPU确认已经成功关闭TMI106的调度器不向SD_TX0调度数据信元以后,再配置SFI 108接收来自其他七个正常的链路发送来的数据。如果ITX0 114又恢复正常,SFI 108的SD_TX0检测到链路ITX0 114恢复正常,此时通知信元重组和写缓存控制模块接收来自SD_RX0的信元,同时产生中断,通知CPU此条链路恢复正常,CPU发现链路恢复正常以后,必须及时通知TMI 106,TMI 106打开SD_TX0,重新向SD_TX0调度数据信元。
图4a示出根据现有技术的链路错误处理流程示意图。链路错误处理的流程可以分为以下几个步骤:
步骤402,SFI的接收端Serdes检测到高速链路连续上报链路错误,SFI产生中断,并上报中断给CPU。
步骤404,CPU查询中断,发现是某条高速链路出现错误。
步骤406,CPU发送命令关闭TMI的调度器,禁止调度器向出现错误的链路调度数据信元,同时CPU确认关闭成功。
步骤408,CPU确认关闭成功以后,通知SFI可以接收来自其他几个正确链路的数据信元。
图4b示出根据现有技术的链路恢复处理流程示意图。链路恢复的过程可以分为以下步骤:
步骤410,SFI的接收Serdes检测到出现错误的链路恢复正常,产生中断,并上报CPU。
步骤412,CPU查询SFI,发现链路恢复正常,并确认是哪条链路恢复正常。
步骤414,CPU通知TMI打开调度器,使调度器可以向恢复好的链路调度数据信元。
但是,通过CPU控制的方式需要软件干预,增加软件工作量。通过软件干预的方式速度太慢,效率不高。在某些应用中有严重的缺陷,不可实现。比如在多框方案中,TM和SF之间采用光纤互连。TM和SF不在同一个机框中,导致CPU无法让TM和SF之间协调工作。
发明内容
本发明的目的在于提供能够克服现有技术中存在的至少一个缺陷的链路状态自协商的方法(机制),用于在发送端和接收端之间进行数据传输链路状态的自协商,其特征在于,包括以下步骤:所述接收端通过查询信元头中的序列号(Link sequence number,LSN)来按照正确的顺序接收数据;通过信元头的链路关比特和链路错误比特来传递链路状态;在接收端和发送端分别增加链路状态表;在链路出现故障和链路恢复的过程中,通过接收端和发送端的收发状态来控制数据的接收和发送,完成链路的自协商过程。
在链路状态自协商的过程中还通过查询和设置并串/串并转换器开关状态表来完成链路的自协商过程。
其中,发送端和接收端可以为流量控制器的上行部分、流量控制器的下行部分、交换网的上行部分以及交换网的下行部分。
在信元头增加的链路关比特(Link_off)表示LSN对应的对端发送Serdes(并串/串并转换器)是否被关掉,是否有数据信元从对端Serdes发送。
在信元头增加的链路错误比特(Link_err)表示是否检测到链路错误。
增加的链路状态表具有n比特,分别代表n个接收Serdes检测到的n条链路状态。
增加的Serdes开关状态表具有n比特,分别代表n个Serdes的开关状态。
其中,Link_off为1时,表示LSN对应的Serdes被关掉,不向此通道发送数据信元。Link_off为0时,表示LSN对应的Serdes打开,对端已经开始发送数据信元。
其中,Link_err为1时,表示对端与LSN对应的接收Serdes检测到链路错误。Link_err为0时,表示对端与LSN对应的接收Serdes没有检测到链路错误。
如果某个Serdes检测到链路状态在连续N个信元周期都处于未准备好状态,则链路状态表对应的比特被置为高。如果某个Serdes检测到链路状态在连续M个信元周期都处于准备好状态,则链路状态表对应的比特被置为低。
Serdes开关状态表中的状态信息是从信元的信元头(LinkHead)中提取的Link_off状态信息。Serdes开关状态表中的对应比特位为1,表示对端对应的Serdes已经关闭,不从Serdes发送数据信元,只发空信元。Serdes开关状态表中的对应比特位为0,表示对端对应的Serdes没有关闭,对端对应的Serdes可以发送数据信元。
将链路状态表和Serdes开关状态表加入流量控制器的上行部分(TMI)、流量控制器的下行部分(TME)、交换网的上行部分(SFI)和交换网的下行部分(SFE)。
其中,TMI到SFI的链路出现故障的处理包括以下步骤:
步骤702,SFI检测到链路故障,并更新对应的链路状态表。
步骤704,SFE将链路状态表的信息周期性地通过Link Head的Link_err传递到TME。
步骤706,TME收集SFE传递过来的Link Head中的Link_err。
步骤708,TMI根据TME收集到的链路状态信息控制TMI中的调度器停止向出现故障的链路调度数据信元。
步骤710,确认关闭调度器后,TMI通过Link Head的Link_off将调度状态传递到SFI。
步骤712,SFI收集Link_off的状态信息,更新链路开关状态表的对应比特,同时根据Link_off状态和Link_err状态接收数据。
其中,TMI到SFI的链路恢复的过程包括以下步骤:
步骤714,SFI的Serdes检测到链路状态恢复正常,更新链路状态表的对应比特,同时开始接收恢复正常的链路数据。
步骤716,SFE周期性地将链路状态表的信息通过Link_err传递到TME。
步骤718,TME收集Link_err信息。
步骤720,TME根据收集到的Link_err信息控制TMI的调度器,打开被关闭的通道,开始向通道调度数据信元。
步骤722,打开恢复正常的链路后,TMI将链路开关状态通过Link Head的Link_off传递到SFI。
步骤724,SFI收集Link_off信息,更新Serdes开关状态表的对应比特。
SFE到TME的链路出现故障的处理包括以下步骤:
步骤802,TME检测到链路故障,并更新对应的链路状态表。
步骤804,将链路状态表的信息周期性地通过TMI的所有链路发送的信元的信元头的link_err传递到SFI。
步骤806,SFI收集TMI传递过来的信元头中的link_err。
步骤808,SFI根据收集到的链路状态信息控制SFE中的调度器停止向出现故障的链路调度数据信元。
步骤810,确认调度器不向出现错误的链路调度数据信元后,SFE通过信元的信元头的Link_off将调度状态传递到TME。
步骤812,TME收集Link_off的状态信息,更新链路开关状态表的对应比特,同时根据Link_off的状态和link_err的状态接收数据。
SFE到TME的链路恢复的过程包括以下步骤:
步骤814,TME的并串/串并转换器检测到链路状态恢复正常,更新链路状态表的对应比特,同时开始接收恢复正常的链路的数据。
步骤816,TMI周期性地将链路状态表的信息通过link_err传递到SFI。
步骤818,SFI收集link_err信息。
步骤820,SFE根据SFI收集的链路错误状态信息控制SFE的调度器,打开被关闭的通道,开始向通道调度数据信元。
步骤822,打开恢复正常的链路后,SFE将链路开关状态通过信元的信元头的Link_off传递到TME。
步骤824,TME收集Link_off信息,更新并串/串并转换器开关状态表的对应比特。
SFI到TMI的链路错误处理过程和链路恢复过程与SFE到TME的链路错误处理过程和链路恢复过程相同。
本发明电路实现简单,耗费资源少。不需要软件干预,降低了软件工作量,降低软件开发成本。由于不需要软件干预,提高了协商的效率,提高了系统的可靠性,很好地解决了软件协商在多框方案下的局限性。
附图说明
通过参考附图,本发明的特征和优点将变的更加明显,其中:
图1是根据现有技术的Serdes捆绑示意图;
图2示出了根据现有技术的在信元头中增加的序列号信息(LSN)的示意图;
图3示出了根据现有技术的链路捆绑的信元序号的示意图;
图4a示出根据现有技术的链路故障处理流程示意图;
图4b示出根据现有技术的链路恢复处理流程示意图;
图5示出根据本发明的信元头中增加的Link_off和Link_err示意图;
图6示出根据本发明的带自协商功能的链路捆绑示意图;
图7a示出根据本发明的TMI到SFI的高速链路故障的处理流程图;
图7b示出根据本发明的TMI到SFI的链路恢复的处理流程图;
图8a示出根据本发明的SFE到TME的高速链路故障的处理流程图;以及
图8b示出根据本发明的SFE到TME的链路恢复的处理流程图。
具体实施方式
现在参照附图对根据本发明的具体实施例进行说明,应当理解,此处所描述的具体实施例仅仅用于解释本发明,并不用于限定本发明。
图5示出根据本发明的信元头中增加的Link_off 506和Link_err 504的示意图。作为例子,在信元头中增加8比特开销,比特0-5为序列号502信息,是互为捆绑的Serdes编号。对于10G端口(共8个通道),只有低3位有效,但是序列号会从0至63递增。比如,当LSN[2:0]为3’b000,Link_off 506为1,Link_err 504为0,表示对端发送的Serdes0已经关闭,从对端的SD_TX0已经不再发送数据信元过来。Link_err 504为0表示对端SD_RX0没有检测到链路错误。互相捆绑的8个Serdes由于各个链路的传输延时存在差异,可能使发送端发送的LSN 502等于N的信元没有同时到达接收端,接收端必须知道到达信元的正确顺序,否则将会导致信元乱序。
比特7为Link_off 506,是TM芯片和SF芯片的交换信息的通道,表示LSN 502对应的对端发送Serdes是否被关掉(即,表示发送端Serdes的开关状态),是否有数据信元从对端Serdes发送。比特8为Link_err 504,表示是否检测到链路错误(即,接收端Serdes检测到的链路状态)。
其中,Link_off 506为1时,表示LSN 502对应的Serdes被关掉,不向此通道发送数据信元。Link_off 506为0时,表示LSN对应的Serdes打开,对端已经开始发送数据信元。
其中,Link_err 504为1时,表示对端与LSN 502对应的接收Serdes检测到链路错误。Link_err 504为0时,表示对端与LSN 502对应的接收Serdes没有检测到链路错误。
另外,Link Head中的LSN 502除了起到信元对齐的作用外,同时还起到表示本次携带的Link_err 504和Link_off 506是哪个Serdes的。
图6示出根据本发明的带自协商功能的链路捆绑示意图。其中,增加了链路状态表612和Serdes开关状态表614。链路状态表612具有n比特,分别代表n个接收Serdes检测到的n条链路状态。Serdes开关状态表614具有n比特,分别代表n个Serdes的开关状态。
如果某个Serdes检测到链路状态在连续N个(N的大小由CPU配置寄存器来决定)信元周期都处于未准备好状态,则链路状态表612对应的比特被置为高。如果某个Serdes检测到链路状态在连续M个(M值由CPU配置寄存器决定)信元周期都处于准备好状态,则链路状态表612对应的比特被置为低。
Serdes开关状态表614中的状态信息是从Link Head中提取的Link_off状态信息。Serdes开关状态表614中的对应比特位为1,表示对端对应的Serdes已经关闭,不从Serdes发送数据信元,只发空信元。Serdes开关状态表614中的对应比特位为0,表示对端对应的Serdes没有关闭,对端对应的Serdes可以发送数据信元。
链路状态表612和Serdes开关状态表614加入流量控制器的上行部分604(TMI)、流量控制器的下行部分606(TME)、交换网的上行部分610(SFI)和交换网的下行部分608(SFE)。
如上图6所示,TMI 604到SFI 606的第一条高速链路602(ITX0)出现故障,SFI接收端Serdes(SD_RX0)检测到链路故障,SFI 606将链路状态表612(lk_st_tbl)对应的比特0置为1。同时控制信元重组和写入控制模块将来自8个通道的数据全部丢弃。SFE 608的8个发送Serdes按照顺序将链路状态表的信息通过Link Head的Link_err发送出去。携带的标准是:当LSN[2:0]为0时将链路状态表的比特0填充到Link Head的Link_err,LSN[2:0]等于1时,将链路状态表612的比特1填充到Link Head的Link_err。依次类推,当LSN[2:0]等于7时,将链路状态表612的比特7发送出去。TME610的接收端口从信元中提取Link_err,并将8个互为捆绑的Serdes通道中提取的Link_err状态做逻辑“与”,逻辑“与”的结果用来控制TMI 604调度器,如果逻辑与的结果为1,则表示这条高速链路出现故障,不能向此条链路再调度数据信元。如果逻辑与的结果为0,则此条链路工作正常,可以从此条链路发送数据信元。当TMI604确认已经不再向出现故障的ITX0 602发送数据信元(只发送空闲信元)后,TMI 604将对应的Serdes开关状态表的比特0置为1,Serdes开关状态表614被TMI 604的发送Serdes周期性的通过LinkHead的link_off传递到SFI 606,SFI 606没有出现故障的Serdes通道提取其中的信元头中的link_off,并将从没有故障的通道提取出来的link_off状态做逻辑“与”操作,只有当与操作的结果为1时,才表示TMI 604已经成功的将出现链路故障的Serdes关闭,TMI 604已经成功禁止调度器向链路错误的链路发送数据信元。此时SFI 606才能开始接收其他7个通道(ITX1~ITX7)的数据信元。才不会导致信元乱序和丢失。
TMI 604到SFI 606的链路恢复处理过程为:
如果由于某种原因ITX0 602链路恢复正常,此时SFI 606的SD_RX0检测到链路恢复正常,则将对应的链路状态表612的比特0置为0,同时开始接收来自ITX0 602的数据(此时TMI 604的调度器并没有调度数据信元到此链路,直到SFE 608将链路状态传递到TME 610,然后TMI 604使调度器向此链路发送数据信元,所以此时此链路接收到的全是空闲信元),SFE 608的8个Serdes周期性的将此状态传递到TME 610,TME 610收集到此状态以后,发现ITX0602链路恢复正常,则通知调度器可以向ITX0 602调度数据信元,打开调度器以后,则将Serdes开关状态表614的比特0更新为0。Serdes开关状态表614被TMI 604的发送通道周期性地传递到SFI606。更新SFI 606的Serdes开关状态表。
图7a示出根据本发明的TMI到SFI的高速链路故障的处理流程图。TMI到SFI的链路出现故障的处理包括以下步骤:
步骤702,SFI检测到链路故障,并更新对应的链路状态表。
步骤704,SFE将链路状态表的信息周期性地通过link Head的Link_err传递到TME。
步骤706,TME收集SFE传递过来的link head中的Link_err。
步骤708,TMI根据TME收集到的链路状态信息控制TMI中的调度器停止向出现故障的链路调度数据信元。
步骤710,确认关闭调度器后,TMI通过Link Head的Link_off将调度状态传递到SFI。
步骤712,SFI收集Link_off的状态信息,更新链路开关状态表的对应比特,同时根据Link_off状态和Link_err状态接收数据。
图7b示出根据本发明的TMI到SFI的链路恢复的处理流程图。TMI到SFI的链路恢复的过程包括以下步骤:
步骤714,SFI的Serdes检测到链路状态恢复正常,更新链路状态表的对应比特,同时开始接收恢复正常的链路数据。
步骤716,SFE周期性地将链路状态表的信息通过Link_err传递到TME。
步骤718,TME收集Link_err信息。
步骤720,TME根据收集到的Link_err信息控制TMI的调度器,打开被关闭的通道,开始向通道调度数据信元。
步骤722,打开恢复正常的链路后,TMI将链路开关状态通过Link Head的Link_off传递到SFI。
步骤724,SFI收集Link_off信息,更新Serdes开关状态表的对应比特。
SFE到TME的链路错误处理过程和链路恢复过程与TMI到SFI的链路错误处理过程和链路恢复过程相同。
图8a示出根据本发明的SFE到TME的高速链路故障的处理流程图。SFE到TME的链路出现故障的处理包括以下步骤:
步骤802,TME检测到链路故障,并更新对应的链路状态表。
步骤804,将链路状态表的信息周期性地通过TMI的所有链路发送的信元的信元头的Link_err传递到SFI。
步骤806,SFI收集TMI传递过来的信元头中的link_err。
步骤808,SFI根据收集到的链路状态信息控制SFE中的调度器停止向出现故障的链路调度数据信元。
步骤810,确认调度器不向出现错误的链路调度数据信元后,SFE通过信元的信元头的Link_off将调度状态传递到TME。
步骤812,TME收集Link_off的状态信息,更新链路开关状态表的对应比特,同时根据Link_off的状态和link_err的状态接收数据。
图8b示出根据本发明的SFE到TME的链路恢复的处理流程图。SFE到TME的链路恢复的过程包括以下步骤:
步骤814,TME的并串/串并转换器检测到链路状态恢复正常,更新链路状态表的对应比特,同时开始接收恢复正常的链路的数据。
步骤816,TMI周期性地将链路状态表的信息通过link_err传递到SFI。
步骤818,SFI收集link_err信息。
步骤820,SFE根据SFI收集的链路错误状态信息控制SFE的调度器,打开被关闭的通道,开始向通道调度数据信元。
步骤822,打开恢复正常的链路后,SFE将链路开关状态通过信元的信元头的Link_off传递到TME。
步骤824,TME收集Link_off信息,更新并串/串并转换器开关状态表的对应比特。
另外本方案可以很方便的应用到更高带宽的应用中,比如用32个2.5GSerdes捆绑成一个能够提供40G业务接口的交换网端口。唯一不同的是链路状态表和Serdes开关状态表各需要32比特,另外Link Head中的LSN有效位数为LSN[4:0],而不是LSN[2:0]。其中LSN[4:0]=0,表示传递是捆绑在一起的32各Serdes的0号Serdes,为1表示1号Serdes,依此类推,LSN[4:0]=31,表示传递是Serdes31的信息。其他处理方式和10G端口相同。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (13)

1.一种链路状态自协商方法,用于在发送端和接收端之间进行数据传输链路状态的自协商,其特征在于,包括以下步骤:
所述接收端通过查询信元头中的序列号来按照正确的顺序接收数据;
通过所述信元头的链路关比特和链路错误比特来传递链路状态;
在所述接收端和所述发送端分别增加链路状态表来保存链路的状态;以及
在链路出现故障和链路恢复的过程中,通过所述接收端和所述发送端的收发状态来控制数据的接收和发送,完成链路的自协商过程。
2.根据权利要求1所述的方法,其特征在于,还包括:在所述链路状态自协商的过程中通过查询和设置并串/串并转换器开关状态表来完成链路自协商。
3.根据权利要求1所述的方法,其特征在于,所述发送端和接收端为流量控制器的上行部分、流量控制器的下行部分、交换网的上行部分以及交换网的下行部分。
4.根据权利要求1所述的方法,其特征在于,在所述方法中:
信元头中的所述链路关比特表示信元头中的序列号对应的对端发送并串/串并转换器是否被关掉,是否有数据信元从所述对端并串/串并转换器发送;
信元头中的所述链路错误比特表示是否检测到链路错误;
所述链路状态表具有n比特,分别代表n个接收并串/串并转换器检测到的n条链路状态;以及
所述并串/串并转换器链路开关状态表具有n比特,分别代表对端n个并串/串并转换器的开关状态。
5.根据权利要求1所述的方法,其特征在于,所述链路关比特为1时,表示信元头中的序列号对应的并串/串并转换器被关掉,不向此通道发送数据信元;所述链路关比特为0时,表示信元头中的序列号对应的并串/串并转换器打开,对端已经开始发送数据信元。
6.根据权利要求1所述的方法,其特征在于,所述链路错误比特为1时,表示对端与信元头中的序列号对应的接收并串/串并转换器检测到链路错误;所述链路错误比特为0时,表示对端与信元头中的序列号对应的接收并串/串并转换器没有检测到链路错误。
7.根据权利要求1所述的方法,其特征在于,如果某个并串/串并转换器检测到链路状态在连续N个信元周期都处于未准备好状态,则链路状态表对应的比特被置为高;如果某个并串/串并转换器检测到链路状态在连续M个信元周期都处于准备好状态,则链路状态表对应的比特被置为低。
8.根据权利要求1所述的方法,其特征在于,所述并串/串并转换器开关状态表中的状态信息是从所述信元的信元头中提取的链路关比特状态信息。
9.根据权利要求8所述的方法,其特征在于,所述并串/串并转换器开关状态表中的对应比特为1,表示对端对应的并串/串并转换器已经关闭,不从所述并串/串并转换器发送数据信元,只发空信元;所述并串/串并转换器开关状态表中的对应比特为0,表示对端对应的并串/串并转换器没有关闭,对端对应的并串/串并转换器可以发送数据信元。
10.根据权利要求1至9中任一所述的方法,其特征在于,所述流量控制器的上行部分到交换网的上行部分的链路出现故障的处理包括以下步骤:
步骤702,所述交换网的上行部分检测到链路故障,并更新所述对应的链路状态表;
步骤704,所述交换网的下行部分将链路状态表的信息周期性地通过交换网下行部分的所有链路的信元的信元头中的链路错误比特传递到流量控制器的下行部分;
步骤706,所述流量控制器的下行部分收集所述交换网的下行部分传递过来的信元头中的链路错误比特;
步骤708,所述流量控制器的上行部分根据所述流量控制器的下行部分收集到的所述链路状态信息控制所述流量控制器的上行部分的调度器停止向出现故障的链路调度数据信元;
步骤710,确认所述调度器不向出现错误的链路调度数据信元后,所述流量控制器的上行部分通过所述信元的信元头的链路关比特将调度状态传递到所述交换网的上行部分;以及
步骤712,所述交换网的上行部分收集链路关比特的状态信息,更新链路开关状态表的对应比特,同时根据所述链路关比特的状态和所述链路错误比特的状态接收数据。
11.根据权利要求1至9中任一所述的方法,其特征在于,所述流量控制器的上行部分到所述交换网的上行部分的链路恢复的过程包括以下步骤:
步骤714,所述交换网的上行部分的并串/串并转换器检测到链路状态恢复正常,更新链路状态表的对应比特,同时开始接收恢复正常的链路数据;
步骤716,所述交换网的下行部分周期性地将所述链路状态表的信息通过链路错误比特传递到所述流量控制器的下行部分;
步骤718,所述流量控制器的下行部分收集所述链路错误比特信息;
步骤720,所述流量控制器的下行部分根据收集到的所述链路错误比特信息控制所述流量控制器的上行部分的调度器,打开被关闭的通道,开始向所述通道调度数据信元;
步骤722,打开恢复正常的链路后,所述流量控制器的上行部分将链路开关状态通过信元的信元头的链路关比特传递到所述交换网的上行部分;以及
步骤724,所述交换网的上行部分收集所述链路关比特信息,更新并串/串并转换器开关状态表的对应比特。
12.根据权利要求1至9中任一所述的方法,其特征在于,所述交换网的下行部分到所述流量控制器的下行部分的链路出现故障的处理包括以下步骤:
步骤802,所述流量控制器的下行部分检测到链路故障,并更新所述对应的链路状态表;
步骤804,将所述链路状态表的信息周期性地通过流量控制器的上行部分的所有链路发送的信元的信元头中的链路错误比特传递到所述交换网的上行部分;
步骤806,所述交换网的上行部分收集所述流量控制器的上行部分传递过来的信元头中的所述链路错误比特;
步骤808,所述交换网的上行部分根据收集到的所述链路状态信息控制所述交换网的下行部分中的调度器停止向出现故障的链路调度数据信元;
步骤810,确认调度器不向出现错误的链路调度数据信元后,所述交换网的下行部分通过所述信元的信元头的链路关比特将调度状态传递到所述流量控制器的下行部分;以及
步骤812,所述流量控制器的下行部分收集所述链路关比特的状态信息,更新所述链路开关状态表的对应比特,同时根据所述链路关比特的状态和所述链路错误比特的状态接收数据。
13.根据权利要求1至9中任一所述的方法,其特征在于,所述交换网的下行部分到所述流量控制器的上行部分的链路恢复的过程包括以下步骤:
步骤814,所述流量控制器的下行部分的并串/串并转换器检测到链路状态恢复正常,更新所述链路状态表的对应比特,同时开始接收恢复正常的链路的数据;
步骤816,所述流量控制器的上行部分周期性地将所述链路状态表的信息通过链路错误比特传递到所述交换网的上行部分;
步骤818,所述交换网的上行部分收集所述链路错误比特信息;
步骤820,所述交换网的下行部分根据所述交换网的上行部分收集的链路错误状态信息控制所述交换网的下行部分的调度器,打开被关闭的通道,开始向所述通道调度数据信元;
步骤822,打开恢复正常的链路后,所述交换网的下行部分将链路开关状态通过信元的信元头的链路关比特传递到所述流量控制器的下行部分;以及
步骤824,所述流量控制器的下行部分收集链路关比特信息,更新并串/串并转换器开关状态表的对应比特。
CNB200510035772XA 2005-07-02 2005-07-02 链路状态自协商方法 Expired - Fee Related CN100417083C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB200510035772XA CN100417083C (zh) 2005-07-02 2005-07-02 链路状态自协商方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB200510035772XA CN100417083C (zh) 2005-07-02 2005-07-02 链路状态自协商方法

Publications (2)

Publication Number Publication Date
CN1859155A true CN1859155A (zh) 2006-11-08
CN100417083C CN100417083C (zh) 2008-09-03

Family

ID=37298022

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB200510035772XA Expired - Fee Related CN100417083C (zh) 2005-07-02 2005-07-02 链路状态自协商方法

Country Status (1)

Country Link
CN (1) CN100417083C (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101013928B (zh) * 2007-02-07 2011-09-14 华为技术有限公司 实现伪线仿真线路故障检测的装置及方法
CN102594484A (zh) * 2011-01-05 2012-07-18 中兴通讯股份有限公司 一种高速串行传输链路异常检测重组的方法及装置
CN103384204A (zh) * 2011-12-31 2013-11-06 华为数字技术(成都)有限公司 串行并行转换电路故障的处理方法及装置
CN106802876A (zh) * 2015-11-26 2017-06-06 中国科学院上海高等研究院 一种在高速Serdes中实现对端自协商功能的方法
US9705823B2 (en) 2013-09-13 2017-07-11 Huawei Technologies Co., Ltd. Port status synchronization method, related device, and system
CN110998509A (zh) * 2018-07-16 2020-04-10 华为技术有限公司 获取光模块链路协商信息的方法、设备和系统

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000067471A1 (en) * 1999-04-30 2000-11-09 Thomson Licensing S.A. A status monitoring and data processing system suitable for use in a bi-directional communication device
KR100379384B1 (ko) * 1999-11-24 2003-04-10 엘지전자 주식회사 공통 패킷 채널에 대한 제어정보 전송 방법
CN1533113A (zh) * 2003-03-20 2004-09-29 华为技术有限公司 利用媒体网关控制协议进行传输链路状态检测的方法
RU2360363C2 (ru) * 2003-11-10 2009-06-27 Эл Джи Электроникс Инк. Способ обновления данных о порядковом номере следующей ожидаемой передачи и окна получателя, чтобы избежать состояния останова

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101013928B (zh) * 2007-02-07 2011-09-14 华为技术有限公司 实现伪线仿真线路故障检测的装置及方法
CN102594484A (zh) * 2011-01-05 2012-07-18 中兴通讯股份有限公司 一种高速串行传输链路异常检测重组的方法及装置
CN103384204A (zh) * 2011-12-31 2013-11-06 华为数字技术(成都)有限公司 串行并行转换电路故障的处理方法及装置
CN103384204B (zh) * 2011-12-31 2016-03-30 华为数字技术(成都)有限公司 串行并行转换电路故障的处理方法及装置
US9705823B2 (en) 2013-09-13 2017-07-11 Huawei Technologies Co., Ltd. Port status synchronization method, related device, and system
CN106802876A (zh) * 2015-11-26 2017-06-06 中国科学院上海高等研究院 一种在高速Serdes中实现对端自协商功能的方法
CN106802876B (zh) * 2015-11-26 2019-06-21 中国科学院上海高等研究院 一种在高速Serdes中实现对端自协商功能的方法
CN110998509A (zh) * 2018-07-16 2020-04-10 华为技术有限公司 获取光模块链路协商信息的方法、设备和系统
CN110998509B (zh) * 2018-07-16 2021-11-09 华为技术有限公司 获取光模块链路协商信息的方法、设备和系统
US11256635B2 (en) 2018-07-16 2022-02-22 Huawei Technolgoies Co., Ltd. Optical module link negotiation information obtaining method, device, and system

Also Published As

Publication number Publication date
CN100417083C (zh) 2008-09-03

Similar Documents

Publication Publication Date Title
CN1238796C (zh) 一种实现接口转换的装置及方法
CN1859155A (zh) 链路状态自协商方法
CN1579064A (zh) 在以太网上支持同步数字系列/同步光纤网自动保护交换的方法
CN1933442A (zh) 实现虚拟路由器冗余协议主、备用设备切换的方法及系统
CN1968260A (zh) 在主备用设备之间实现虚拟路由器冗余协议切换的方法
CN1866859A (zh) 对包交换网络上的伪线进行保护倒换的方法
CN101047714A (zh) 一种处理网络数据的方法及系统
CN101060485A (zh) 拓扑改变报文的处理方法和处理装置
CN1859219A (zh) 基于设备容灾的业务接管方法、业务转接设备及备份机
CN1315288C (zh) 双网络通信系统的不间断切换方法
CN100341255C (zh) 一种交叉主备保护的热备份方法
CN1753354A (zh) 基于arq信息的基站tcp代理确认方法及其系统
CN1852086A (zh) Rpr中的捆绑接口及其实现方法和装置
CN1756187A (zh) 出口标签交换路由器与其相连数据设备间故障的处理方法
CN1917478A (zh) 转发报文的处理方法及处理模块
CN1805411A (zh) 一种处理标签绑定的方法
CN1741505A (zh) 组播静态组备份的方法及组播报文转发的方法
CN1723659A (zh) 双环路以太网
CN1968187A (zh) 一种数据速率适配的方法和装置
CN1885809A (zh) 弹性分组环的相交互连方法及相交站点、相交弹性分组环
CN1543136A (zh) 以太环路冗余保护方法
CN1722901A (zh) 一种服务无线网络子系统重定位的方法
CN101060518A (zh) 一种多线路绑定的业务信息发送和接收设备
CN1856128A (zh) 一种媒体网关双归属的实现方法
CN1264314C (zh) 实现以太环路冗余保护的状态转移方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20080903