用于异步数据通信网络的故障转移设备和方法

文档序号:7967993阅读:495来源:国知局

专利名称::用于异步数据通信网络的故障转移设备和方法
技术领域
:本发明通常涉及数据通信网络中用于提供通信链路的故障转移(failover)操作的设备和方法。
背景技术
:电信工业已经开发出用于传送和接收在多个时间帧(temporalframe)如同步光纤网络(SONET)帧中组织的数字数据信号的系统。SONET是一种用于传送不同类型通信信号如电话和视频信号的工业标准光纤网络。SONET帧组织于多个超帧中,每个超帧有1ms的持续时间且由持续时间各为125μs的8个帧组成。发自多个信道的数字数据可用时分复用(TDM)技术多路复用并形成用于在SONET物理层接口上传送的多个异步转移模式(ATM)信元。SONET帧可以包括多个ATM信元。在telecordiaSONET指定类别要求文献GR-253中描述了SONET;1995年12月,1997年12月-REV01,1999年1月-REV-02;TelecordiaTechnologied,Inc.,Morristown,NJ07960,USA,在此通过参考加以结合。一般的,ATM信元在两种匹配的物理设备间通过光纤在SONET链路上传送。本文使用的光纤被认为是一种传输介质,即用于传输数据的物理管道。术语“通信链路”和“链路”用于解释更高级的概念,并且不要求任何一种类型的传输介质。单个的链路可包括许多不同类型的传输介质,并可包括几种步骤、路径或媒介部件。ATM信元在许多不同类型的系统中在SONET链路上传送,一个例子是由美国得克萨斯Plano的AlcatelUSA制造的Litespan系统。Litespan系统可包括宽带光纤排(BFB)和又包括许多宽带复用单元(BMU)的宽带远程收发器(BRX)。光纤故障将造成BFB和BMU(因此也有BRX)间通信的中断。这种中断可导致事实上的停工期,对拥有者来说花费巨大。因此,冗余的设备和冗余光纤经常用于消除与单光纤故障有关的问题。在活动通信介质中的故障检测和切换到冗余介质的过程称为故障转移(failover)或保护切换。仅当有冗余即额外光纤或额外设备时,故障转移才是可能的。传统上,这意味着每个链路使用4根光纤,通信的每个方向用两根。装备这种额外的冗余的光纤极大提高了安装和维护链路的费用。用于减少装备这种链路的费用(或增加链路带宽以间接减少费用)的一种典型方法是双向使用光纤,因此对于每个链路只需要两根光纤。用这种方法的问题是对于双向链路的一端的设备没有确定的方法知道何时光纤出故障以及何时以协作方式切换到冗余光纤或设备。具体地说,除非传输设备无法在某一预定时间段接收预期的应答,否则它不一定知道光纤中的故障,即使那样,它在断定链路故障前仍可能一次或更多次重试传送。这种过程可花费相对长时间,此期间可损失可观数量的数据,最后仍无法证实故障是由于光纤破损而非一些其它的设备故障而导致的。用于支持故障转移的传统方法(如SONETspecificationTelecordiaGR-253中详细说明的)对于每个链路用两条单独的光纤,每条用于1个方向的数据传输(或4条光纤,如果想要冗余光纤的话,每个方向用2条)。当由接收设备通过信号损失检测到断线时,设备通过相反方向上的光纤通知发送设备。然而,这种系统比安装简单的非故障转移系统花费要高很多,原因是它对每对装置要求2条光纤电缆,减小了光纤网络的总容量。因此,需要提供用于异步数据网络的故障转移系统和方法,从而消除因单线故障导致的网络停工时间,同时最佳地利用现有光纤网络。
发明内容本发明处理这些需求。本发明涉及用于提供双向数据通信网络中的通信链路的故障转移操作的设备和方法。在本发明的一个实施例中包括用于提供双向数据通信网络中的故障转移保护的设备,包括第一通信设备,用于接收和传送带有标识签名的数据;第二通信设备,用于接收和传送带有标识签名的数据;用于双向数据通信的中继(relay)的第一通信接口,缺省情况下它是活动的;用于双向数据通信的中继的第二通信接口,缺省情况下它是非活动的;第一通信设备中用于确定到来数据的签名的逻辑装置,以确定数据源,和确定第一通信接口的损坏;第一通信设备中对系统确定通信链路损坏作出响应,用于将第一通信接口设为非活动、将第二通信接口设为活动的逻辑装置。在本发明的另一个实施例中包括用于提供双向数据通信网络中的故障转移保护的方法,包括为从第一设备向第二设备传输数据活动第一通信链路;与第一源标识符一起从第一设备向第二设备发送数据;检测第一设备接收的所有数据的源标识符;并且,当第一设备接收的数据源标识符等于第一设备发送的数据源标识符时,确定第一通信链路出现故障,禁止第一通信链路并活动第二通信链路。在本发明的另一个实施例中包括用于提供双向数据通信网络中的故障转移保护的方法,包括为从第一设备向第二设备传送数据活动第一通信链路;与第一源标识符一起从第一设备向第二设备发送数据;与第二源标识符一起从第二设备向第一设备发送数据;在第一设备中检测由第一设备接收到的所有数据的源标识符;在第二设备中检测由第二设备接收到的所有数据的源标识符;并且,当第一设备接收的数据源标识符等于第一设备发送的数据源标识符或第二设备接收的数据源标识符等于第二设备发送的数据源标识符时,确定第一通信链路中有故障,禁止第一通信链路,活动第二通信链路。图1是SONET环的方框图2示意性显示了典型的SONET帧格式;图3显示了本发明使用的一个抽象层节点;图4显示本发明使用的另一个抽象层节点;图5显示了ATM传输的有效负载包络;图6是本发明一个实施例的示意图7是显示故障转移保护系统的时限的图解说明;图8图解说明了K1和K2字节及其使用的布局图9图解说明了BMUs使用了K1和K2字节的哪些部分;图10是图解说明了伴有保护切换应用程序的步骤的流程图11是显示结合了本发明的典型Litespan/BRX系统的方框图12是图解说明了与从BRX发送ATM数据到BFB有关的步骤的流程图13是显示BRX硬件结构的方框图14是显示SONET通信系统的一个实施例的方框图,其中可以实现依据本发明的故障转移设备;图15是图解说明了通过依据本发明的设备可执行的故障转移方法示例的流程图;和图16是图解说明了通过依据本发明的设备可执行的故障转移方法的另一个示例的流程图。具体实施例方式本发明提供了允许在数据通信网络中两个设备间进行通信链路的故障转移操作的系统和方法。数字接入系统本发明的一个实施例可用于数字接入系统。与本文的应用相同,数字接入系统是在基干交换网络(如数字交换机)和一系列个人客户位置之间传送和/或转换信号的电信系统。这种接入系统包括由AlcatelSystems,Inc制造的Litespan接入系统。Litespan接入系统或简单地说Litespan系统包括一组连在一起的Litespan终端单元。物理连接器可以是多种介质类型但一般为光纤电缆。类似的,逻辑连接也可以是不同类型。Alcatel通常使用SONET或类似SONET的连接来提供Litespan终端单元间的连接。如本文使用的,“类似SONET”定义了一种协议,其操作与SONET基本相似,但可能在使用一个或更多的信元时与SONET规范相背离。通常是,一个Litespan终端单元放在中央局(中央局终端或COT),并直接与ATM云(cloud)和/或本地数字交换机通信。COT然后通过光纤/SONET链路与远程终端单元(远程终端或RT)通信。线路插件可安装在终端(COT和RT)中以提高其功能性。在一个实施例中,宽带光纤排(BFB)安装在COT中,通过光纤在交换机侧连于ATM云。BFB产生多个分布光纤。宽带光纤网络单元(ONU)如宽带远程发收器(BRX)安装在RT中。BFB的配电光纤用ATM连接到BRX的多路复用器一侧。然后,BRX的配电侧在铜线上为个人客户提供窄带和宽带服务。依据本发明,公开了在数据通信网络故障中两个设备间的通信链路发生故障时提供故障转移保护的系统和方法。本发明可以用在上述特殊实施例中以提供在中央局终端(COT)和远程终端(RT)间链路的故障转移操作。如果连接COT和RT(或等价的BFB和BRX)的活动光纤被切断或破坏,它起镜子的作用,将上游业务反射回给BRX,或将下游业务反射回给BFB。这个反射业务被检测到,并采取适当的故障转移措施。本发明提供了一种设备和方法,通过将标记帧中的时分复用信元中的一个指定为包括多个头字节及有效负载字节的标记信元和对带头数据的头字节进行编码,来在使用时分复作信元,例如像同步光纤网络帧这样的时间帧中的时分复用(TDM)信元,的任何系统中提供设施故障转移保护。信元头包含专用于发送特殊帧的设备的信息。依据本发明的方法还允许如4芯光学线路单元(QuadOpticalLineUnit)(QOLU)或SONET通信系统中的SONET八进制总线的接收接口在每个标记帧中检测标记信元和提取识别信息以确定到来信元的来源。SONET和ATMSONET是电信工业中使用的标准化物理层技术,用于传送例如提供了每秒千兆字节范围的传输率的电话和话音这样的不同类型的通信信号,并包括复杂的管理系统。如图1所示,SONET通常以双环形式配置在光纤上。如图1所示,一连串添加/去除多路复用器(ADM)116允许将例如ATM交换机120的发自信息源118的用户有效负载插入到在环112,114中运行的SONET帧中。在故障出现时,双环布局通过从工作环112切换到替换环114提供容错性。SONET通过每125μs传输标准SONET帧使用同步传输方案。每个帧逻辑上组织为字节的二维空间阵列。帧的大小依赖于信道速率。基本SONET信道是包括有组织成90列9行的810字节的帧的同步输送信号-1(STS-1)。在每秒8,000个帧时,这给出51.840Mbps的信道速率。如图2所示的实例,标准STS-1帧140包括有效负载142,通道开销144,段开销146,和线路开销148。为了管理信道操作,必须在SONET链路上传送附加数据。这个数据在SONET开销中传送。这个用于管理SONETSTS-1信道及随附段设备的开销用掉90列中的3列,所余87列用于有效负载。有效负载,或名为同步有效负载包络(SPE),包括1列的通道开销。这就给用户有效负载剩下86列,它提供49.536Mbps的用户数据速率。高于STS-1的数据速率是通过将多重STS-1信号多路复用获得的。例如,3个STS-1信号可经字节交错(byte-interleaved)形成以155.52Mbps操作的STS-3信号。多路复用的另一种形式是连接多个STS-1信号的开销字节和有效负载字节。例如,1个STS-3c帧包含9个开销列(用于段和通道开销)和用于SPE的261列。操作速率同样是155.52Mbps。STS-n是当在光载波上调制时称为OC-n光学信号的电信号。虽然SONET提供了同步帧结构,但是它不限制在SONET帧中的指定位置上传送用户有效负载。代之以通过使用SONET帧中的开销字节里的特定字段指向用户有效负载的起点来允许用户有效负载在SONET帧边界内和跨边界浮动。异步转移模式(ATM)是一种以信元为基础的交换和复用技术,被设计为用于广大范围服务的通用、连接-定向传输机制。固定长度的ATM信元使得基于硬件的交换非常快。它们也提供了细纹(fine-grain)单元用于将多个数据流多路复用到单一链路上。每个流被称为虚信道连接(VCC),并通过流中每个信元的头中传送的标识符来识别。ATM不仅是一个链路层技术。它提供了关于网络和传输层的特征的全面补充,如基于网络的寻址、路由和流量控制。ATM允许多个数据流在为每个连接提供预定质量的服务的同时灵活地共享可用链路带宽。可定义不同的ATM适配层(AAL)以便将用户数据映象(map)到ATM信元中,以适应特殊环境。ATM可在不同物理介质上操作。ATM层产生ATM信元并将它们交给处理来自物理介质的信元的实际传输和接收的物理(PHY)层。SONET只是为ATM定义的多个物理层之一。因为整个53字节信元不能放入单个帧,ATM信元被直接并不断地映象到SONET有效负载中。接收时,ATM信元头的信元头错误检查(HEC)区用于从SONET有效负载描述信元。SONET开销如上所述,SONET标准的基本元素是同步传输信号电平-1(STS-1),它提供了用于伴随用户业务进行的控制信息的传输的成帧。STS-1帧包括传输开销,含有段和线路开销控制信息,包括奇偶校验、轨迹、报警信号、传号线和数据通信信道;和在终端和SONET网络间含有信息的同步有效负载包络(SPE)。这个信息包括有效负载业务和通道开销。通道开销在SONET终端间协调活动。这两个基本信息组提供了在网络上传输数据和支持SONET网络操作和管理的工具。当在光纤上实际传输时,信息逐行呈现,从每行的列1开始,继续通过余下的列直到传输完所有信息为止。在高速传输时,STS-1帧的传输量增加。例如,在OC-3速率,每125ms时段传输3个STS-1帧(即一个STS-3帧)。速率提高时,传输的帧数也增加。传输开销的实例显示于表1,并在通信系统设计杂志,CMP出版,1999年3月期中有详细描述,它提供了在SONET网络上控制段和线路交互作用的机制。段交互作用提供了邻近同等设备间的物理链路,例如在SONET终端和再生器间的信息传输。表1所示的每一个条目代表信息的一个物理字节(8位)。有时,一个字段可用于两种不同目的。例如,第一种情况是应用于在STS-N传输中的单个STS-1帧中,第二种情况是应用于在STS-N中传输的所有其它STS-1帧。在这些情况时,字段表示为X/Y,X表示第一种情况,Y表示第二种情况。段开销信息管理光信道信息的传输,并提供支持该光信道上SONET线路终端设备(LTE)间的交互作用所需的信息。段开销字段的应用如下表1STS-1传输开销A1和A2描绘了STS-1帧。对于所有的帧,这些字段表示为具有固定值,在0xF6为A1,在0x28为A2。J0/Z0也被称为用作轨迹/增长字段。这个字段识别在附加光纤上含有的特定段,并可用作积极识别SONET设备两个相邻部件间的连接的机制。Z0字节为支持未来的增长而保留。B1包含用于检测传输错误的奇偶校验信息。这个字段用于监视物理信道的行为和可靠性。E1在不同段终止(Section-terminating)的设备间含有本地声音传号线,并提供使得操作者和技术员可在维护活动中协调的一组服务。段用户信道F1终止于所有段设备,并可应用于特殊应用。D1,D2和D3数据通信信道结合在一起时,提供单个192-kbps的信道以支持重叠通信网络操作管理、维护和预备业务。当段开销提供了用于协调点到点信息传输的一组机制时,线路开销服务集中在终端间的信息调整和发送上。包括在线路开销中的字段包括H1和H2STS有效负载指针字节用于向SPE开始的STS帧指示偏移。它们说明网络上不同接口的时限中的可能的差别。如果有负指针动作,H3指针动作字节可用于传输额外的SPE字节。B2用于线路错误监控。K1和K2是用于采用线路电平保护切换的应用的自动保护开关(APS)信道。这些字段控制自动故障转移算法。通常有两种形式的由这些字段支持的保护切换线性形式,其中一条线路保护一条或多条工作线路,以及双向切换环,其中当出现错误时通过环来管理替换路线。K1和K2字段提供的第二个重要特征是报警状态信号。这些信号可发出检测到某种线路故障的信号,允许下游设备抑制报警报告和帮助进行报警相关和错误隔离。D4到D12线路DCC字段支持以576bps的总数据速率传输OAM&P业务,如在段DCC的情况下。S1用于同步状态,包含在STS-N的第一STS-1中。Z1表示增长并为了今后使用而保留。M0STS-1线路远程错误指示仅用于OC-1速率。这个字段包含被传输线路终端设备(LTE)检测到的错误记数。M1,STS-N,用于更高速率信号(OC-3)。STS-N中的第三STS-1中的M1字段用于支持远程错误指示功能。Z2用于增长并保留。E2用于传号线,支持线路终端设备(LTE)间的特快话音传号线。SPE包含通道开销和有效负载业务的组合。每个SPE的第一列或通道开销如表2所示。通道开销字段应用如下;J1,或路径轨迹,包含用于检验连接的远端的重复64字节信息。B3包含SPE值的内容的奇偶校验计算,无论指针调整如何。这用于确定在该路径上是否出现了传输错误。C2路径信号标记显示SPE中的实际内容,包括有效负载状态。G1,路径状态,提供了可包括检测到的错误的累计计数的端到端监视服务。F2,路径用户信道,用于在路径端点间的用户应用。H4,虚辅助多帧指示器,提供了描述有效负载业务的结构的控制信息。表2SPE通道开销列格式ATM/TDM信元打包在本发明的一个实施例中,光学OC-3接口用于连接BRX和LitespanBFB。使用270列9行的标准STS-3c同步有效负载包络(SPE)。由于允许STS-3cSPE在STS帧中浮动,H1字段(在线路开销区内)对如图3所示的STS-3cSPE的第一个字节(通道开销区中的字段J1)提供了指针。ATM信元可在STS-3cSPE162中任意处开始并且最多有44个完整的ATM信元164可放入在SPE中。接收器可使用头错误检查(HEC)字段进行信元描述。STS-3cSPE包括两种类型的信元含有数据业务的规则ATM信元166,简称为ATM信元;和传输TDMSBI数据的CATM信元,称为TDM信元168。当SBI帧内容打包到ATM信元中时,8个TDM信元以1∶4的比例与ATM交叉,从STS-3cSPE帧的开头起。在这个打包方案中,TDM业务载荷在全部STS-3cSPE有效负载带宽上占约20%。32时隙的SBI帧又使用独有的适配层方案映象到ATM信元中。可以使用两种适配模式1.未打包的AAL-D模式。在图4中图解说明了未打包的AAL-D模式。在这种模式中32时隙182的每个SBI帧都映象到ATM信元184中,因此在TDM信元186中剩下16字节未被使用。2.打包的AAL-D模式。图5图解说明了打包了的AAL-D模式。在这种模式中,3个SBI帧202,204,206,共32×3=96字节被映象到两个连续的TDM信元208,210中。当用打包或未打包的AAL-D在ATM信元中转换TDM业务时,在OC-3/3链路中八进制总线业务的位速率由于未打包情况下的ATM开销和未使用的字节而膨胀(inflate)。终端结构依据本发明,SONET保护切换的形式通过使用保护设备保证了在BRX和Litespan终端系统间光线路的完整性。BRX结构使用了光载波和普通控制功能置于相同物理插件BMU上的设计。为提供保护切换,使用了主BMU和保护BMU。图6图解说明了本发明的一个实施例,其中2个BMU通过独立光纤232,234连接到BFB。第一BMU222(BMU-A)作为主BMU,而第二BMU224(BMU-B)作为保护BMU。BFB226在系统启动时首先尝试与主BMU建立通信。在正常操作中,两个BMU都没有保护优先。在图6所示的典型的Litespan装置中,BRX终止光线路。不存在SONET环,因此保护切换只能是线性的(例如点到点)。自动保护切换(APS)通过在足够短的时间内自动用保护线路代替故障线路提高系统完整性和减少停工时间。故障线路基于检测包括例如信号损失(LOS),帧损失(LOF),报警指示信号(AIS),误码率(BER)和时限块故障(timingblockfailure)的一组预定故障状态来确定。在一个实施例中,保护BMU设为保护切换的主装置,并基于从远端(FE)接收的APS数据、本地信令状态和本地设备状态确定切换优先级。APS数据本身含在信号开销的K1和K2字节中。保护BMU也用APS数据通知FE它的保护优先级。为增加同步传输信号(STS)有效负载的持续性,BRX可实现1+1结构。这种结构拥有与主光学部件向FE传送的有效负载相同的保护光学部件。在接收端,分别监视主和保护OC-3信号是否出故障。然后,接收设备从主或保护光学部件中选择一个,从中选择业务。替换结构是每个光学连接可传送不同有效负载的1∶1结构。通常,1∶1结构为每个活动设备使用一个备用设备。双向切换模式用于同时切换两端(即BRX和BFB)的光学路径。不允许只切换一端。使用APS数据通信完成近端(NE)和FE协调。BRX可规定为用于SONET保护切换的可逆或不可逆模式。位于可逆模式时,当主BMU检测到故障状态不再存在时,系统转回使用主BMU。在线路电平保护切换期间,同时切换在OC-3信号中传送的所有STS有效负载包络。保护切换软件应用程序(PSW)处理这个切换以使切换中的数据损失最小。光接口和APSSONET光接口是用于BRX系统的所有通信出入的媒介。这种通信包括话音、数据、和信号业务,以及终端数据链路和SONET开销数据。数据链路数据发出保护切换警报和定义BRX应当如何保护光学器件的相关规定信息的信号。SONET开销包括APS数据以便与FE保护切换通信。PSW相关警报由BRX来报告和删除。在特定实施例中,PSW应用程序对SONET/ATM物理层设备的硬件寄存器进行读取和写入,这会终止SONET信号并消除/插入ATM信元。在列表1中定义了寄存器数据结构pPm5348Prot1的一个实例。typedefstructtPm5348Regs{union  {  tPort1Port1;/*Port1-0x0-0x0Dregisters*/  tPort2Port2;/*Port2-0x80-0x8Dregisters*/  }CtrlRegs;byterTxSyncStatus;/*0x00E/0x08E-TransmitSynchronizationstatus*/byteRsvd1;/*0x00F/0x08F-Reserved*/byterRsopCtrlIntEnbl;/*0x010/0x090-RSOPcontrol/interruptenable*/byterRsopIntStatus;/*0x011/0x091-RSOPstatus&amp;intstatus*/byterRsopBip8Lsb;/*0x012/0x092-SectionBIP8LSB*/byterRsopBip8Msb;/*0x013/0x093-SectionBIP8MSB*/byterTsopCtrl;/*0x014/0x094-TSOPControl*/byterTsopDiag;/*0x015/0x095-TSOPDiagnostic*/byteRsvd2[2];/*0x016-0x017/0x096-0x097-Reserved*/byterRlopCtrlStatus;/*0x018/0x098-RLOPControl/Status*/byterRlopIntEnblStatus;/*0x019/0x099-RLOPIntenable&amp;status*/byterRlopBip8Lsb;/*0x01A/0x09A-RLOPBIP8/24LSB*/byterRlopBip8;/*0x01B/0x09B-RLOPBIP8/24bits8-15*/byterRlopBip8Msb;/*0x01C/0x09C-RLOPBIP8/24MSB*/byterRlopFebeLsb;/*0x01D/0x09D-RLOPFebeLSB*/byterRlopFebe;/*0x01E/0x09E-RLOPFebebits8-15*/byterRlopFebeMsb;/*0x01F/0x09F-RLOPFebeMSB*/byterTlopCtrl;/*0x020/0x0A0-TLOPControl*/byterTlopDiag;/*0x021/0x0A1-TLOPDiagnostic*/byterTlopTxK1;/*0x022/0x0A2-TLOPtransmitK1*/byterTlopTxK2;/*0x023/0x0A3-TLOPtransmitK2*/byteRsvd3[12];/*0x024-0x02F/0x0A2-0x0AF-Reserved*/byterRpopCtrl;/*0x030/0x0B0-RPOPControl/Status*/byterRpopIntStatus;/*0x031/0x0B1-RPOPInterruptStatus*/byteRsvd4;byterRpopIntEnbl;/*0x033/0x0B3-RPOPInterruptEnable*/byteRsvd5[3];byterRpopPsl;/*0x037/0x0B7-RxPathsignallabel*/byterRpopBip8Lsb;/*0x038/0x0B8-RPOPBip8LSB*/byterRpopBip8Msb;/*0x039/0x0B9-RPOPBip8MSB*/byterRpopFebeLsb;/*0x03A/0x0BA-RPOPFebeLSB*/byterRpopFebeMsb;/*0x03B/0x0BB-RPOPFebeMSB*/byteRsvd6;byterRpopBip8Config;/*0x03D/0x0BD-RPOPBIP8config*/byteRsvd7[2];byterTpopCtrl;/*0x040/0x0C0-TPOPControl/Diag*/byterTpopPtrCtrl;/*0x041/0x0C1-TPOPPointercontrol*/byteRsvd8[3];byterTpopArbPtrLsb;/*0x045/0x0C5-TPOPArbitrarypointerLSB*/<!--SIPO<DPn="14">--><dpn="d14"/>  byterTpopArbPtrMsb;/*0x046/0x0C6-TPOPArbitrarypointerMSB*/  byteRsvd9;  byterTpopPsl;/*0x048/0x0Cg-TxPathsignallabel*/  byterTpopPathStatus;/*0x049/0x0C9-TPOPpathstatus*/  byteRsvd10[6];  byterRacpCtrl;/*0x050/0x0D0-RACPControl/Status*/  byterRacpIntEnbl;/*0x051/0x0D1-Intenable/Status*/  byterRacpHdrPattern;/*0x052/0x0D2-MatchHeaderPattern*/  byterRacpHdrMask;/*0x053/0x0D3-MatchHeadermask*/  byterRacpRcec;/*0x054/0x0D4-Rxcorrectableerrorcount*/  byterRacpRuec;/*0x055/0x0D5-RxUncorrectableerrorcount*/  byterRacpRccLsb;/*0x056/0x0D6-RxcellcountLSB*/  byterRacpRcc;/*0x057/0x0D7-Rxcellcountbits8-15*/  byterRacpRccMsb;/*0x058/0x0D8-RxcellcountMSB*/  byterRacpConfig;/*0x059/0x0D9-RACPconfig*/  byteRsvd11[6];  byterTacpCtrl;/*0x060/0x0E0-TACPControl/Status*/  byterTacpHdrPattern;/*0x061/0x0E1-IdleCellheaderpattern*/  byterTacpPlPattern;/*0x062/0x0E2-IdleCellpayloadoctetpattern*/  byterTacpFifoConfig;/*0x063/0x0E3-TACPFifoconfig*/  byterTacpTccLsb;/*0x064/0x0E4-TxcellcountLSB*/  byterTacpTcc;/*0x065/0x0E5-Txcellcountbits8-15*/  byterTacpTccMsb;/*0x066/0x0E6-TxcellcountMSB*/  byterTacpConfig;/*0x067/0x0E7-TACPConfig*/  byterRaseIntEnbl;/*0x068/0x0E8-RASEinterruptenable*/  byterRaseIntStatus;/*0x069/0x0E9-RASEinterruptstatus*/  byterRaseConfigCtrl;/*0x06A/0x0EA-RASEconfig/control*/  byterRaseSfAccPerLsb;/*0x06B/0x0EB-RASESFaccumperiodLSB*/  byterRaseSfAccPer;/*0x06C/0x0EC-RASESFaccumperiodbits8-15*/  byterRaseSfAccPerMsb;/*0x06D/0x0ED-RASESFaccumperiodMSB*/  byterRaseSfSatThrshLsb;/*0x06E/0x0EE-RASESFsaturationthrshLSB*/  byterRaseSfSatThrshMsb;/*0x06F/0x0EF-RASESFsaturationthrshMSB*/  byterRaseSfDecThrshLsb;/*0x070/0x0F0-RASESFDeclaringthrshLSB*/  byterRaseSfDecThrshMsb;/*0x071/0x0F1-RASESFDeclaringthrshMSB*/  byterRaseSfClrThrshLsb;/*0x072/0x0F2-RASESFClearingthrshLSB*/  byterRaseSfClrThrshMsb;/*0x073/0x0F3-RASESFClearingthrshMSB*/  byteRsvd12[9];  byterRaseRxK2;/*0x07E/0x0FE-RASERxK2*/  byterRaseRxK1;/*0x07D/0x0FD-RASERxK1*/  byterRaseRxS1;/*0x07F/0x0FF-RASERxS1*/  }tPm5348Regs;列表1表3中描述了PSW应用程序使用的寄存器。PSW使用这些寄存器用于线路电平故障检测和APS数据通信。在一个实施例中,PSW用SONET开销的K1和K2字节通信。表3BMU对BMU通信依据本发明的一个实施例,保护切换数据在保护和主BMU设备之间通信。主BMU用四串行外围接口(QSPI)乒乓信息向保护BMU发送线路信号状态和活动线路指示。类似的,保护BMU用QSPI乒乓信息向主BMU发送活动线路指示。需要足够经常地发送QSPI乒乓信息以使保护切换应用程序满足时限的要求。BMU和QOLU间的光接口可以是单光纤。如果光纤断开或被切断,该设备在每端传输的信号反射回该端接收器。因为对于标准SONET格式,信号反射可能被每一端解释为有效信号。系统必须在APS数据和规则SONET开销数据间加以鉴别。实现它的一种方法是变更SONET开销数据,并在每一端添加检查来检验每一端是在从FE还是自身接收数据。时限要求保护切换性能的特征在于检测特定转换阈值的时间和实际完成切换的时间。图7显示了本发明的一个实施例中的时限要求,其中t0-t1反映用于切换启动的时间,t2-t4反映用于切换完成的时间。每个时间事件t0-t4代表切换过程的时间中的一个可变的点。用于这些时间的BRX保护切换的设计目标基于GR-253SONET规范切换启动和完成标准部分的说明。对于信号和设备故障(即LOS,LOF,AIS和时限块故障),这些时间分别不超过10ms和50ms。对基于误码率(BER)的信号故障和降级(degrade)(即BER-SF和BER-SD),切换完成也不超过50ms,但切换启动基于SONET规范中定义的规定BER水平。故障策略在处理用于信号故障(即LOS,LOF,AIS,BER-SF和BER-SD)的保护光学器件同时,PSW应用程序也可用于保护时限块故障。用于时限块故障的标准包括与SONET信号的时限同步的损失,以及在例如Motorola68HC11芯片或等价物的时限块和例如Motorola68331芯片的主处理器中的时限块控制器之间的通信损失。SONET开销包括PSW应用程序直接使用的数据,包含K1/K2字节和C2字节。OC-3c信号线路开销中第一STS-1的K1和K2字节用于为PSW和FE的协调提供128Kbps的数据链路。图8显示了K1和K2字节的位字段。K1APS请求字段252(位7-4)包含可被用于保护切换控制的请求类型,保护切换控制的细节见GR-SONET规范。表4按优先级从高到低列出了PSW中使用的请求。表4K1信道号254(位3-0)通知FE接收器用于APS保护切换请求的信道。字段大小定义为允许1∶n(即一个保护单元用于n个服务单元)使用APS切换。在BRX中,每个主BMU有一个保护BMU,因此信道号对于主BMU只有值0或对于保护BMU为值1。K2信道号256(位7-4)反映当前切换到保护的单元。为防止信道误配,K2信道号总是应当在切换请求的50ms内与K1字节中的信道号相关联。K2结构和操作模式258(位3-0)定义了网络元素结构是用于1+1还是1∶1保护切换,以及该切换是单向还是双向的。用于1+1双向切换的缺省位模式是0101。用于1∶1双向切换的缺省位模式是1101。通过缺省,PAQ应用程序发送1+1双向模式,即使PSW可能以1∶1双向切换操作。这样简化了与QOLU的握手而不必改变现有的QOLU,且TL-1管理软件会处理这个BRX独有的情况。当光学部件需要声明位模式被设置到0110的RDI时,存在这些缺省设置的例外。这个字段总是应当在100ms的时间段内与接收到的K2字节中的相同字段相关联。在接收器和传输器间的这些字节的任何误配都会在NE和FE的供应中表现出模式误配(MM)。依据SONET规范,GR-253,OC-3信号里的第一STS-1有效负载包络中的C2字节用于提供有效负载映射状态。对于BRX,用于ATM映射的状态值是0x13。依据本发明的一个实施例,变更这个字节以指示BRX是否因单光纤反射而处于LOS状态。设置BRX以期望在C2字节位置从FE接收预定字节值0x93(用于单光纤)或0x13(用于双光纤)。如果BRX接收任何其它值,则声明LOS状态。同样地,为相同的原因而辅助FE,BRX在C2字节中向FE传输字节值0x53。尤其,如果因光纤破损出现线路故障,BRX会在C2字节中接收字节值为0x53-与其发送的包的值相同-的数据包,因此会检测到线路故障。类似的,QOLU会接收C2字节值为0x93或0x13——与其发送的值相同——的数据包,因此也会检测到线路故障。PSW应用程序可被认为作为状态机来操作,其中在不同状态间的转换基于一组标准。这些标准包括NE保护模式,NE回复状态,FEAPS数据,NE保护BMU状况状态,和NE主BMU状况状态。表6显示了这些状态、激励和因之而来的转换。主状态是选择主BMU接收业务(即主BMU或BMU-A设置为活动的)的状态。向保护状态的转换包括将业务切换到保护BMU的过程(即使保护BMU或BMU-B是活动的)。包括等待恢复状态,它使用定时器以防止快速重复(也许是错误的或不必要的)业务转换。状况优先级状况优先级确定上述状态转换,并在列表2中定义,其中值与优先级成比例。未使用的状态在代码中检验,以用于信号证实。表5#define_PswDisabled_(byte)0xff/*ifsetPSWisdisabled*/#define_ApsLockoutOfProtectionToAct_(byte)0xf1/*lockoutonACTQOLU*/#define_ApsLockoutOfProtection_(byte)0xf0/*K1protectionlockout*/#define_ApsSignalFailBCard_(byte)0xe2/*BcardSignalfail*/#define_ApsForcedSwitchToAct_(byte)0xe1/*Forcedwithnoswitch*/#define_ApsForcedSwitch_(byte)0xe0/*K1forcedswitchrqst*/#define_ApsUnused7_(byte)0xd0/*K1SFnotused*/#define_ApsEqptFail_(byte)0xc1/*Acardequipmentfail*/#define_ApsSignalFailLowPri_(byte)0xc0/*K1signalfail*/#define_ApsUnused6_(byte)0xb0/*K1SDnotused*/#define_ApsSignalDgrLowPriToAct_(byte)0xal/*PSWwithnoswitch*/#define_ApsSignalDgrLowPri_(byte)0xa0/*K1signaldegrade*/#define_ApsUnused5_(byte)0x90/*K1notused*/#define_ApsManualSwitchToAct_(byte)0x81/*Manualwithnoswitch*/#define_ApsManualSwitch_(byte)0x80/*K1manualswitchrqst*/#define_ApsUnused4_(byte)0x70/*K1notused*/#define_ApsWaitToRestore_(byte)0x60/*K1wait-to-restorerqst*/#define_ApsUnused3_(byte)0x50/*K1notused*/#define_ApsUnused2_(byte)0x40/*K1notused*/#define_ApsUnused1_(byte)0x30/*K1notused*/#define_ApsReverseRequest_(byte)0x20/*K1reverserqst*/#define_ApsDoNotRevert_(byte)0x10/*K1donotrevert*/#define_ApsNoRequest_(byte)0x00/*K1norequest*/列表2PSW数据库PSW用本地受控数据库或存储器记录和跟踪保护切换信息。在列表3中定义的用作干扰例程和基础级代码之间的接口的数据库实施例是IsrToBase结构。typedefstructtlsrToBase  {  /*Signaldefectandalarmstatus*/  wordFacStsnDefectStatus;/*lineleveldefects*/  wordFacStsnAlarmStatus;/*linelevelalarms*/  wordFacPathDefectStatus;/*pathleveldefects*/  wordFacPathAlarmStatus;/*pathlevelalarms*/  wordFacAtmDefectStatus;/*ATMleveldefects*/  wordFacAtmAlarmStatus;/*ATMlevelalarms*/  wordFacBipB1;/*Consumedbybaseevery1sec*/  wordFacBipB2;/*Consumedbybaseevery1sec*/  wordFacBipB3;/*Consumedbybaseevery1sec*/  wordFebeZ2;/*CountofLineFar-EndErrors*/  wordFebeG1;/*CountofPathFar-EndErrors*/  wordProtSwCount;/*Countofprotectionswitches*/  byteBerStatus;/*TotrackBERlevel*/  byteDummy;/*Forbytealignment*/  wordRead;/*Kindasemaphore*/  }tIsrToBase;列表3如下定义了数据库PSW的实例,包括QOLU可能用到的某些参数(例如手动命令)。  typedefstructtPsw  {  byteCardType;/*AorBorstandalonecard*/  byteActive;/*activeindicator*/  byteProvisioned;/*provisioningstatus*/  byteWtrState;/*Wait-To-Restorestate*/  byteCardSd;/*signaldegradeonAand/orBcard*/  byteProtectionState;/*currenthighestprioritycondition*/  byteRdiState;/*stateofRDI-Lintervalcondition*/  byteSourcingReverseRqst;/*APStransmittingreverserequest*/  byteSwitchMsgState;/*stateoramanualswitchcommand*/  byteDisablePswState;/*protectiondisabledconditionindicator*/  byteRestoredK2Byte;/*K2restoredbytetracker*/  byteMonitorProtState;/*detectedprotectioncondition*/  byteApsState;/*APSdataconditions*/  byteACardState;/*Acardconditions*/  byteUserState;/*manualcommandconditions*/  byteRevertState;/*revertiveswitchingmode*/  byteBCardState;/*Bcardconditions*/  byteARequestPending;/*pendingstateofBswitchtoA*/  byteARequestPendTimer;/*timeoutforswitchtoA*/  byteApsChanMmSetTiming;/*APSchannelmismatchsetindicator*/  byteApsChanMmTimer;/*APSchannelmismatchtimer50ms*/  byteApsModeMmSetTiming;/*APSmodemismatchsetindicator*/  byteApsModeMmTimer;/*APSmodemismatchtimer100ms*/  byteApsModeMmClrTiming;/*APSmodemismatchclearindicator*/  byteApsModeMmClrTimer;/*APSmodemismatchclear50ms*/  byteDeterminedUserState;/*amanualrequestisdetermined*/  byteQspiReceivedByte;/*datareceivedfromothercardviaQSPI*/  byteQspiSendByte;/*senddatatoothercardviaQSPI*/  wordWtrTimer;/*Wait-To-Restoretimer*/  wordSwitchMntCond;/*manualcommandmaintenancecondition*/  wordRespMntCond;/*maintenanceconditionforswitchmessage*/  wordSwitchMsgRespTime;/*timetorespondtoamanualswitchmessage*/  eRetCodeSwitchRetCode;/*returncodeforthemanualswitchmessage*/  tAdmStsnSwitchReplyMsgStandingSwitch;/*autonomousalarmmessage*/  tAdmStsnSwitchMsgCardLineSwDb;/*manualcommandmessage*/  }tPsw;列表4PSW冗余通信每个BMU(主或保护)插件的PSW功能与配对的BMU插件中的相同功能通信。用于Psw.QspiReceivedByte和Psw.QspiSendByte的格式基于主或保护BMU是否在发送数据。图9显示了每个格式的位字段。如其中所示,保护BMU只向主BMU发送活动线路指示272(位0)。主BMU向保护BMU发送活动线路指示282(位5),信号降级280(位4),信号故障278(位3)和BER水平276(位2-0)。在没有BER时,BER电平值为0,其取值范围从对于10E-10的1到对于10E-4的7(10E-3总是信号故障)。其它位可用于报告附加信息,例如指示哪个BMU是活动的。对于适当的时限,主BMU活动指示被设计成在10ms时间段内匹配保护BMU活动指示。外围设备接口外周设备接口可用于预备BRX。预备信息和存储结构包括列表5中所示。  typedefstructtAtmEqptStsnProvMsg  {  eMsgIdMsgId;/*_AtmEqptStsnProvMsg_*/  ulngTime;  wordMntCond;/*STSNmaintenancecondition*/  tAtmStsnProvStsnProv;/*STSNprovisioning*/  wordEqptMntCond;/*eqptmaintenancecondition*/  tAtmEqptProvEqptProv;/*Eqptprovisioning*/  }tAtmEqptStsnProvMsg;  typedefstructtAtmStsnProv  {  wordOcnFacConfig;  wordProtSwConfig;/*Protectionswitchingconfiguration*/  wordApsWtr;  tStsn2012ProvThresholdsThresh;  wordAbcuOcnFaimessPct;  }tAtmStsnProv;  typedefstructtPmStsnProv  {  wordOcnFacConfig;  wordProtSwConfig;  tStsn2012ProvThresholdsStsnThresh;/*STSMPMthresholds*/  }tPmStsnProv;  typedefstructtStsn2012ProvThresholds  {  tStsnDaily2012CountersDaily;  tStsnQHourly2012CountersQHourly;  wordSesCvsS;/*#CvSinaSeverelyenoredsec.*/  wordSesCvsL;/*#CvLinaSeverelyerroredsec.*/  wordBerSigFail;/*BERlevelforsignalfailure.*/  wordBerSigDgr;/*BERlevelforsignaldegrade.*/  }tStsn2012ProvThresholds;列表5在一个实施例中,一旦从时隙/通信仲裁任务(TCAT)中接收到_AtmEqptStsnProvMsg_信号,通用网络接口(UNI)用户网络接口应用调用ProcessEqptStsnProvisioningMsg()函数,其动作如伪代码列表5所示  ProcessEqptStsnProvisioningMsg()  {  storeSTSNprotectionswitchconfigurationprovisioningin  EqptStsnProvMsg.StsnProv.  storeBER-SFandBER-SDPMthresholdsinPmStsnProv.StsnThresh.  callProvisionPsw().  }  ProvisionPsw()  {  provisionPsw.CardType.  setPsw.Provisioned.  callInitProt().  UpdateK2byte.  }InitProt()  {  setPsw.Active.  resetPsw.StandingSwitch.  }列表6UNI任务用户网络接口(URI)与性能监视一起对OC-3SONET终端负责。在一个实施例中,PSW功能包括在UNI应用中。UNI包括名为OneMsIsr()的一个1毫秒的中断例程。这个例程处理性能监视和警报综合,包括检查线路状况LOS,LOF,AIS,RDI和BER(将除BER外的所有状况记录在IsrToBase.FacStsnDefectStatus中)。调用PswServiceRoutine()可用于调用PSW,在列表7的伪代码中详述  PswServiceRoutine()  {  ifBERlevelinIsrToBase.BerStatusisaboveBER-SForBER-SD,  recordinIsrToBase.FacStsnDefectStatus.  iftimingblockfailureexists,  recordsignalfailinIsrToBase.FacStsnDefectStatus.  ifprimaryBMU,  callACardCheckDefects().  ifprotectionBMU,  callBCardDetermineState().  integratePSW-relatedalarmconditions.  ifprimaryBMU,  callACardProcessRequest().  ifprotectionBMU,  callBCardDetermineState().  }列表7在这点,PswServiceRoutine()返回中断程序,它又放弃内核以用于其他任务。大多PSW操作涉及检查线路和设备状况或故障,确定最高优先状况和处理切换请求。如列表8所示,在主BMU上通过AcardCheckDefects()函数检查线路和设备状况  ACardCheckDefects()  {  ifLOS,LOF,AIS,orBER-SFexistsinIsrToBase.FacStsnDefectStatus,  indicateasignalfailtoprotectionBMU.  elseifBER-SDexistsinIsrToBase.FacStsnDefectStatus.  indicateasignaldegradetoprotectionBMU.  supplyBERlevelfromIsrToBase.BerStatustoprotectionBMU.  }列表8BCardDetermineState()函数通过存储和比较几个函数的结果从保护BMU的角度得到最高优先级状况,如列表9的伪代码所示BCardDetermineState(){storeresultsfromBCardDeterminePswState()callinPsw.DisablePswState.ifprotectionisenabled,  storeresultsfromBCardDetermineSigState()callinPsw.BCardState.  storeresultsfromBCardDetermineApsState()callinPsw.ApsState.  storeresultsfromBCardDetermineAState()callinPsw.ACardState.  storeresultsfromBCardDetermineRevertState()inPsw.RevertState.storehighestprioritycondition(viaabovestates)inPsw.MonitorState.}BCardDeterminePswState(){ifPsw.ProvisionedisTRUE  andEqptStsnProvMsg.StsnProv.ProtSwConfigisbi-directional,  protectionisenabled.  else,  protectionisdisabled.BCardDetermineSigState(){ifLOS,LOF,AIS,orBER-SFexistsinIsrToBase.FacStsnDefectStatus,  signalfailure.elseifBER-SDexistsinIsrToBase.FacStsnDefectStatus,  signaldegrade.  setPsw.CardSdwith_BCardSd_.else,  nocondition.}BCardDetermineApsState(){ifFEAPSrequestisvalid,  getrequest.else,  nocondition.}BCardDetermineAState(){ifRedundantState.ReceivedRedPingPongisTRUE  ifprimaryBMUindicatesasignalfail.  signalfailure.  elseifprimaryBMUindicatesasignaldegrade,  signaldegrade.   setPsw.CardSdwith_ACardSd_.  else,  nocondition.else,  equipmentfailure.}BCardDetermineRevertState(){ifPsw.SourcingRcverseRqstisTRUE.  nocondition.elseifEqptStsnProvMsg.StsnProv.ProtSwConfigincludesrevertivemode,ifprotectionBMUisactivefromaNEinitiatedswitch,  inWaitToRestorestate.else,  nocondition.elseifprotectionBMUisactive,  inNoRevertstate.else,  nocondition.}列表9主BMU保护切换通过AcardProcessRequest()和BcardProcessRequest()来协调,如列表10所示  ACardProcessRequest()  {  ifPsw.ProvisionedisFALSE,  claimprimaryBMUisactive.  elseifRedundantState.ReceivedRedPingPongisTRUE,  ifprotectionBMUindicatesadifferentactivecard,  incrementIsrToBase.ProtSwCount.  updatePsw.Active.  indicateactivelinetoprotectionBMU.  elseifprimaryBMUwasn?tpreviouslyactive,  sendswitchmessagetoREDDL.  incrementIsrToBase.ProtSwCount.  updatePsw.Active.  }  BCardProcessRequest()  {  ifhighestpriorityconditionisprotectiondisabled,  callBCardProcessPswState().  elseifhighestpriorityconditionistorevertaprotectedline,  callBCardProcessRevertRqst().  elseifhighestprioritycondilionisaFErequestviaAPSdata,  callBCardProcessApsRqst().  elseifhighestpriorityconditionisonprotectionBMU,  callBCardProcessSigRqst().  elseifhighestpriorityconditionisonprimaryBMU,  callBCardProccssARqst().  }  BCardProcessPswStatc()  {  claimprotectionBMUisactive.  clearK1/K2transmittoindicateprotectionisdisabled.  indicatetoprimaryBMUthatitshouldbeactive.  }<!--SIPO<DPn="25">--><dpn="d25"/>BCardProcessRevertRqst(){ifinWaitToRestorestate,  iffirsttime,  setK1transmittoindicateWaitToRestore.  setuptimingmanagement.  elseiftimeouthasoccurred,  ifresultsfromcalltoBCardRqstSwitchToA()indicatesuccess,  setK1transmittoindicaterevertiscomplete.  else,  indicateprimaryBMUlinefailure.elseifnotrevertive,  setK1transmittoindicateDoNotRevert.}BCardProcessApsRqst(){ifK1receiveindicatesprotectionBMUactive,  callBCardRqstSwitchToB().elseifK1receiveindicatesprimaryBMUactive,  ifresultsfromcalltoBCardRqstSwitchToA()indicatesuccess,  indicateswitchcompleted.  else,  indicateprimaryBMUlinefailure.BCardProcessSigRqst(){ifPsw.CardSdindicatesBERonbothBMUlines,  compareBERlevelstodeterminewhichBMUsBERisworse.ifprimaryBMUscondition(signalfailordegrade)isworse,  ifresultsfromcalltoBCardRqstSwitchToA()indicatesuccess,  indicateswitchcompleted.  else,  indicateprimaryBMUlincfailure.elseifprotectionBMUscondition(signalfailordegrade)isworse,  callBCardRqstSwitchToB().}BCardProcessARqst(){ifPsw.CardSdindicatesBERonbothBMUlines,  compareBERlevelstodeterminewhichBMUsBERisworse.ifprotectionBMUscondition(signalfailordegrade)isworse,  callBCardRqstSwitchToB().elseifprimaryBMUscondition(signalfailordegrade)isworse,  ifresultsfromcalltoBCardRqstSwitchToA()indicatesuccess,  indicateswitchcompleted.  else,  indicateprimaryBMUlinefailure.}BCardRqstSwitchToA()<!--SIPO<DPn="26">--><dpn="d26"/>{ifprotectionBMUisactive,iffirsttime,indicatetoprimaryBMUthatitshouldbeactive.setuptimingmanagement.elseifprimaryBMUindicatesbeingactive,sendswitchmessagetoREDDL.setK1transmittoindicatecurrentrequest&amp;channel.incrementIsrToBase.ProtSwCount.updatePsw.Active.elseiftimeouthasoccurred,switchhasfailed.else,setK1transmittoindicatecurrentrequest&amp;channel.}BCardRqstSwitchToB(){indicatetoprimaryBMUthatprotectionBMUshouldbeactive.ifprimaryBMUisactive,sendswitchmessagetoREDDL.setK1transmittoindicatecurrentrequest&amp;channel.incrementIsrToBase.ProtSwCount.updatePsw.Active.else,setK1transmittoindicatecurrentrequest&amp;channel.}列表10图10图解说明了列表10中描述的过程。如图10所示,在初始化步骤之后,主BMU设置为BMU-A,同时保护BMU设置为BMU-B。启动PSAW应用程序。当PSW作为状态机运行时,它持续检查主线路的信号状态。当检测到线路故障时存在两个备选方案,过程将等待看信号是否恢复,或者启动切换,将主BMU设为BMU-B并将保护BMU设为BMU-A。这种切换由PSW应用程序利用SONET包的开销字节具体说是K1字节来实现。然后,更新该PSW数据库以反映该切换。根据是否设置回复/不回复标志,如果PSW在以后的阶段检测到连接到BMU-A的线路已经修好或不再处于故障模式,它可回复到原来的主=BMU-A,保护=BMU-B的结构。冗余数据链路接口如上所述,QSPI乒乓信息用于在BMU间通信。QSPI乒乓信息tBptPingPongMsg函数使用PswByte用于在主BMU和保护BMU之间的PSW协调。REDDL从Psw.QspiSendByte获得传输信息,并将它获得的接收信息存储在Psw.QspiReceivedByte中。PSW通过读取在REDDL的RedundantState.ReceivedRedPingPong结构中的乒乓有效性指示来确定是否另一个BMU是有效的,它在一个实施例中基于从最后一次指示改变起是否经过了例如10ms的指定时间段。因为PSW依赖REDDL,光学和处理器切换需要紧跟在一起出现。如果信息传递足够快也就是呼叫和数据不损失,则无论何时需要切换活动的BMU,即当时正在接收话音、数据和信号业务的BMU,保护BMU的PSW都可以向活动的和备用REDDL发送a_BmuStateTransitionMsg_。在本发明的主旨和范围内可使用在BMUPSW之间和在PSW与REDDL之间的其它通信格式。PSW可以通过从时限块控制器的TBOutOfSync和TBCommunicationFailute中读取指示来确定是否有时限块故障。当这两个指示中的任何一个存在的时候,PSW声明BMU有信号故障状态,并使用在保护切换决定时通常使用的状态。报警处理在PswServiceRoutine()函数中检查关于PSW的报警状态。这些包括PSBF,APS信道误配(CM),APS模式误配(MM)和保护线路信号故障缺陷(PLD)。然后,通过调用ApsAlarmIntegration()例程集成这些警报。Litespan实现以下部分详述了可以怎样使用Litespan系统安装本发明的一个实施例。图11显示了与本发明一起使用的典型的Litespan/BRX系统320。所示BRX是在光或电接口上操作的Litespan系统的远程访问扩展。BRX322对着提供管理控制和切换功能的Litespan终端326。在这方面,BRX可被看作有窄带、宽带和宽带容量的远程信道组。从技术观点来看,BRX是支持窄带服务的宽带单元。通过光学或电接口332,BRX连接到中央局(COT)330的Litespan终端或远程Litespan终端。话音、视频和数据业务在BRX和Litespan终端间传输。在数据链路层,在BRX和对面的组之间使用标准ATM信元有效负载,以进行TDM334以及ATM336业务。不标准的ATM适配层(AAL)方案用于在ATM有效负载中传送TDM业务。在这个结构中,BRX通过OC3先接口对着BFB。在上游方向上,如图12中进一步图解说明的那样,发生以下这些。BRK发送包含宽带ATM业务和被称为TDM信元的打包在特殊ATM信元里的TDM业务的ATM信元。这一功能由抽象层处理。当BFB接收上游数据时,发生以下这些对于话音处理,BFB通过ATM信元头中的特殊模式辨认TDM信元,终止提取TDM数据的AAL-D子层,并通过八位总线将TDM数据映象为TDM时隙。ATM光纤组接口除通过光学线路单元的串行总线接口从所有插件接收的信息,即TDM和控制业务以外,还结合了八位总线,并通过时隙交换电缆将它们发送到CC以供处理。对于数据/视频处理,BFB终止了OC3物理层并将ATM信元传递到作为单元总线(cellbus)的不同物理层。信元中继单元终止包括信元缓冲、信元头解释和信元切换功能的ATM层。信元中继单元将ATM信元发送到通过OC3光接口将数据发送到ATM网络的传输插件。在下游方向上发生反向操作。BRK单元硬件结构图13显示典型BRX单元的结构。除电源、底板和风扇外,BRX单元提供可收容许多板型的11个插槽,包括以下3.BMU372,374BRX控制器(每个BRX两个BMU用于设施保护)4.LU376,378服务线路单元5.MTRG390维护和环发生线路单元6.主要通过两种类型的总线执行在这些底板和BMU间的互相连接7.SBI392,394在线路单元和每个BMU之间的点到点的1位总线,用于传送TDM业务和来自Litespan普通控制器的数据链路信息。8.单元总线(cellbus)398由两个BMU共享的8位总线;只有活动的BMU使用,用于向线路单元传送ATM业务。每个BRX有4个总线,每两个线路单元共享一个总线。宽带多路复用单元(BMU)为了获得预备和操作信息,BMU负责通过OC3接口(对于光馈送,或对于电馈送,类似的通过HDSL线路单元接口)与Litespan终端通信。BMU可被配置成使用这两种网络馈送介质中的一个。BMU支持与每个线路单元的通过串行总线接口总线的点对点串行链接。窄带线路单元,例如提供POTS、ISDN和T1服务的那些,使用SBI。BMU多路复用经SBI从用户接收的业务并将它传给Litespan。BMU还支持单元总线,以用于基于ATM的数据业务。BRX支持作为包括采用光和电形式的各种装置的设施保护。依据本发明的一个实施例,这种保护可由冗余BMU即两个BMU(BMU-A,主和初始活动单元,和BMU-B,保护或备用单元)来完成。这种结构给有如下结构的Litespan终端提供冗余控制和光接口每个LU有带BMU-A和BMU-B的两个串行点到点SBI总线。两个BMU可共享一个被所有LU共享的单元总线。备用BMU将它的单元总线驱动器三态化。一个BMU处于活动状态而另一个BMU处于备用状态。冗余控制接口允许两个BMU通信。在下游方向上,这两个BMU从它们连到的两个OLU(HDLU)接收相同的SONET信号。故障转移操作如上所述,BRX要求Litespan连到ATM/TDM网络,且这种连接是通过OC-3链路的点到点类型。因此这个设施保护是线性的。在这种情况下,有两个方法来实现1+1和1∶1保护。本发明利用了如图14所示的故障转移系统400的实施例。1∶1设施保护是1∶n保护的一个特例,1∶n保护定义为一旦故障只有一个备用设备/系统用于保护n个设备/系统中的一个。因此,该备用设备在正常操作期间不必传送同样的SONET有效负载。在BFB410中,xOLU(光线路单元)412,414支持1+1保护方案,确保两个BMU收到相似的SONET信号。在另一方面,两个BMU,A422和B424必须从SBI和单元总线上的所有线路单元430接收完全相同的业务以实现1+1保护设计。BRX中的这些总线的结构不排除这种要求。在一些情况下,窄带LU不同时驱动SBI-A和SBI-B,这排除了1+1保护。在这些情况下可使用1∶1保护。保护切换一旦检测到故障(在底板/设备级或在SONET/设施级),将协同LitespanCC一起进行切换操作。在确定下列情况时,由作为主的BMU-B声明故障BMU-A接收侧上的信号损失(LOS)BMU-A接收侧上的帧损失(LOF)按照误码率(BER),BMU-B中的SONET的信号质量比BMU-A的好。从网络侧即BFB在SONET开销中发送保护切换指示。活动BMU中有非SONET相关故障,例如时限故障或处理器持续复位。对于单光纤BMU,从断端反射的光学信号可以对活动BMU和四光纤线路单元(QOLU)给出这是一个有效SONET信号的错误指示。为此,可以采用非标准设计,通过变更SONET开销尤其是字节C2中的一个字段来防止这种情况。在这个字段中发送预定模式以在远端侧区分光纤类型,即单或双。QOLU和BMU交换不同模式,因此任何反射信号不会同假定(期望)从另一端接收的信号相匹配。故障转移方法
技术领域
:本发明用于辨别故障转移情况和启动故障转移保护的方法的实施例如图15流程图所示。如图解说明的那样,系统由第一活动光接口初始化。第二光接口初始是不活动的。BRX通过一对均能可操作地连到其中一个光接口上的BMU中的一个向上游发送数据。从中央局终端/BFB从下游接收数据。通过用预定字节模式给数据头编码来编码上游数据或给出第一源标识符。在数据头中用代表数据不同来源的第二源标识符类似的编码下游数据。系统持续检查头字节。正常使用时,用第一源标识符发送数据的第一设备会接收有第二源标识符的数据,相反亦然。当出现故障时,也许因为线路破损,光纤作为反射体,发送数据的第一设备会接收有第一源标识符的数据或接收有完全不同标识符的破坏了的数据。在每种情况下,都不会与期望接收到的第二标识符一起接收数据。这被由检测故障转移状态的系统检测到。响应检测到故障转移状态,使第一光接口不活动,而使第二光接口活动。然后,通过第二光接口如常继续通信。如本文中所用的,如果先前信号、事件或值影响给定的信号、事件或值,给定的信号、事件或值会“应答”或响应先前信号、事件或值。如果有干扰处理元素、步骤或时间段,给定信号、事件或值仍然可以对先前信号、事件或值作出响应的。如果干扰处理元素或步骤结合一个以上信号、事件或值,则认为处理元素或步骤的信号输出对每个信号、事件或值的输入作出响应。如果给定信号、事件或值与先前信号、事件或值相同,这只是在其中给定信号、事件或值还被认为是对先前信号、事件或值作出响应的退化情况。类似的定义了给定信号、事件或值对另一个信号、事件或值的“相关性”。图16显示了本发明使用的启动故障转移保护的方法的另一个实施例。在该方法的这个实施例中,每个设备都可以辨别故障转移状态和启动故障转移到第二光接口。依据图5如前所述,图15的流程图显示了本发明用来辨别故障转移情况和启动故障转移保护的方法的实施例。如图解说明,系统以第一活动光接口启动。第二光接口初始时是不活动的。BRX通过一对均能可操作地连到其中一个光接口上的BMU中的一个向上游发送数据。从中央局终端/BFB从下游接收数据。通过用预定字节模式给数据头编码来编码上游数据或给出第一源标识符。在数据头中用代表数据不同来源的第二源标识符类似的编码下游数据。系统持续检查头字节。正常使用时,用第一源标识符发送数据的第一设备会接收有第二源标识符的数据,相反亦然。当出现故障时,也许因为线路破损,光纤作为反射体,发送数据的第一设备会接收有第一源标识符的数据或接收有完全不同标识符的破坏了的数据。在每种情况下,都不会与期望接收到的第二标识符一起接收数据。这被由检测故障转移状态的系统检测到。响应检测到故障转移状态,使第一光接口不活动,而使第二光接口活动。然后,通过第二光接口如常继续通信。关于本发明的这个实施例的不同之处是无论第一或第二设备均可检测线路故障。以上图解说明和描述了本发明的最佳实施例,但本发明不穷尽于或受限于所公开的具体形式。显然,本领域的技术人员可以作出很多修改和变形。尤其明显的是,本发明可用于与SONET通信相关的以外的领域,即利用双向连接的其他形式的数据通信。为了最好的解释本发明的原理和其实际应用选择并描述实施例,从而使得本领域的其他技术人员能理解本发明用于不同的实施例,并考虑适于特殊应用的不同修改。通过以下权利要求及其等价物将定义本发明的范围。权利要求1.一种检测数据通信网络链路的传输介质中故障的方法,包括通过数据通信链路的第一传输介质从第一网络接入设备向第二网络接入设备发送第一组数据以及第一源标识符;通过上述数据通信链路的上述第一传输介质在上述第一网络接入设备接收第二组数据以及第二源标识符;和从上述第二源标识符确定上述数据通信链路的上述第一传输介质中出现了传输故障。2.根据权利要求1的方法,其中,上述确定步骤包括确定上述第二源标识符不等于预定值。3.根据权利要求1的方法,其中,上述确定步骤包括确定上述第二源标识符等于上述第一源标识符。4.根据权利要求1的方法,还包括通过数据通信链路的第一传输介质从第二网络接入设备向上述第一网络接入设备发送第二组数据以及上述第二源标识符。5.根据权利要求1的方法,还包括禁止用于发送数据的上述数据通信链路的上述第一传输介质和激活上述数据通信链路的第二传输介质。6.根据权利要求1的方法,其中,上述数据通过上述第一传输介质作为多个数据包传输,其中每个上述多个数据包包括数据部分和头部分。7.根据权利要求6的方法,其中,上述源标识符包含在上述数据包的上述头部分的一部分中。8.根据权利要求7的方法,其中,上述源标识符包括多个字节。9.根据权利要求8的方法,其中,上述数据作为多个SONET包传输。10.根据权利要求9的方法,其中,上述源标识符作为每个上述数据包的头部分的c2字节的部件传输。11.根据权利要求1的方法,其中,第一网络接入设备包括与上述数据通信链路的上述第一传输介质耦合的第一接口部件,和与上述数据通信链路的上述第二传输介质耦合的第二接口部件。12.根据权利要求11的方法,在上述确定步骤后还包括步骤,禁止上述第一接口部件;和活动上述第二接口部件。13.根据权利要求11的方法,其中,上述第一和第二接口部件是光学互连设备,上述第一和第二传输介质是光纤。14.一种检测数据通信网络中的SONET通信链路的光纤介质中故障的方法,包括通过SONET通信链路的第一光纤介质从第一网络接入设备向第二网络接入设备发送数据以及第一源标识符通过上述数据通信链路的第一光纤介质在上述第一网络接入设备接收第二组数据以及第二源标识符;和从上述第二源标识符确定上述数据通信链路的上述第一传输介质中出现了传输故障。15.根据权利要求14的方法,其中,上述确定步骤包括确定上述第二源标识符不等于预定值。16.根据权利要求14的方法,其中,上述确定步骤包括确定上述第二源标识符等于上述第一源标识符。17.根据权利要求14的方法,上述确定步骤后还包括禁止上述第一光纤介质;和活动上述光纤介质。18.一种用于在有多种传输介质的数据通信链路中提供故障转移保护的方法,包括通过第一传输介质从第一设备向第二设备发送数据以及第一源标识符;检测第一设备通过上述第一传输介质接收的所有数据中的源标识符;和当第一设备接收的数据的源标识符等于第一设备发送的数据的源标识符时,确定在第一传输介质中有故障,和禁止上述第一传输介质,活动上述第二传输介质。19.一种用于在双向数据通信网络中提供故障转移保护的设备,包括第一通信设备,用于接收和传输有标识源标识符的数据;用于接收数据的第二通信设备;第一通信接口,与上述缺省情况下激活的第一通信设备耦合,以进行双向数据通信的中继;第二通信接口,与上述缺省情况下不激活的第一通信设备耦合,以进行双向数据通信的中继;与上述第一通信设备耦合的检测器,用于确定到来数据的源标识符,并确定数据源,因此确定第一通信接口有故障,与上述第一通信设备耦合的控制器,用于将第一通信接口设置为不活动,将第二通信接口设置为活动的,以响应上述检测器确定第一通信接口出故障。20.根据权利要求19的设备,其中,上述确定步骤包括确定上述第二源标识符不等于预定值。21.根据权利要求19的设备,其中,上述确定步骤包括确定上述源标识符等于第二通信设备发送的数据中的源标识符。22.根据权利要求19的设备,其中,上述数据通过上述第一传输介质作为多个数据包传输,其中每个上述多个数据包包括数据部分和头部分。23.根据权利要求22的设备,其中,上述源标识符在上述数据包的上述头部分的一部分中传送。24.根据权利要求23的设备,其中,上述源标识符包括多个字节。25.根据权利要求24的设备,其中,上述数据作为多个SONET包传输。26.根据权利要求25的设备,其中,上述源标识符作为每个上述数据包的头部分的c2字节的部件传输。27.根据权利要求19的设备,其中,第一通信设备包括与上述通信接口的第一传输介质耦合的第一接口部件,和与上述通信设备的第二传输介质耦合的第二接口部件。28.权利要求27的设备在上述确定步骤后还包括禁止第一接口部件;和活动上述第二接口部件。29.根据权利要求27的设备,其中,上述第一和第二接口部件是光互连设备,且上述第一和第二传输介质是光纤。30.一种在双向数据通信网络中提供故障转移保护的方法,包括活动第一通信链路以便从第一设备向第二设备传输数据;从第一设备向第二设备与第一源标识符一起发送数据;从第二设备向第一设备与第二源标识符一起发送数据;在第一设备检测第一设备接收的所有数据的源标识符;在第二设备检测第二设备接收的所有数据的源标识符;和当第一设备接收的数据的源标识符等于第一设备发送的数据的源标识符时,或当第二设备接收的数据的源标识符等于第二设备发送的数据的源标识符时,确定在第一通信链路中有故障,并禁止第一通信链路,激活第二通信链路。全文摘要本发明涉及用于在数据通信网络中提供通信链路的故障转移操作的一种设备和方法。在一个实施例中本发明包括用于在双向数据通信网络中提供故障转移保护的方法,包括步骤从第一设备向第二设备与第一源标识符一起发送数据;检测第一设备接收的所有数据的源标识符;当第一设备接收的数据的源标识符等于第一设备发送的数据的源标识符时或当第一设备接收的数据的源标识符不等于一个当前值时,确定在第一通信链路中有故障,同时响应该故障,禁止第一通信链路并活动第二通信链路。文档编号H04B10/12GK1426178SQ01145800公开日2003年6月25日申请日期2001年12月11日优先权日2001年12月10日发明者杰弗·巴纳德,文卡塔拉曼·阿南德,汉纳·波罗斯,杰森·W·多夫,桑德拉·莫鲁甘,迪特·奈特克姆帕申请人:阿尔卡塔尔美国公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1