CN101243656A - 在sonet中对链路容量调整方案(lcas)的硬件和软件组合实现 - Google Patents
在sonet中对链路容量调整方案(lcas)的硬件和软件组合实现 Download PDFInfo
- Publication number
- CN101243656A CN101243656A CNA200680030561XA CN200680030561A CN101243656A CN 101243656 A CN101243656 A CN 101243656A CN A200680030561X A CNA200680030561X A CN A200680030561XA CN 200680030561 A CN200680030561 A CN 200680030561A CN 101243656 A CN101243656 A CN 101243656A
- Authority
- CN
- China
- Prior art keywords
- grouping
- lcas
- hardware
- control
- software
- 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.)
- Pending
Links
- RGNPBRKPHBKNKX-UHFFFAOYSA-N hexaflumuron Chemical compound C1=C(Cl)C(OC(F)(F)C(F)F)=C(Cl)C=C1NC(=O)NC(=O)C1=C(F)C=CC=C1F RGNPBRKPHBKNKX-UHFFFAOYSA-N 0.000 title description 5
- 238000000034 method Methods 0.000 claims abstract description 36
- 238000013507 mapping Methods 0.000 claims abstract description 18
- 230000005540 biological transmission Effects 0.000 claims description 30
- 238000012545 processing Methods 0.000 claims description 19
- 238000004891 communication Methods 0.000 claims description 3
- 230000004044 response Effects 0.000 abstract description 2
- 230000008569 process Effects 0.000 description 22
- 102100040338 Ubiquitin-associated and SH3 domain-containing protein B Human genes 0.000 description 17
- 101710143616 Ubiquitin-associated and SH3 domain-containing protein B Proteins 0.000 description 17
- 230000001360 synchronised effect Effects 0.000 description 16
- 101000798109 Homo sapiens Melanotransferrin Proteins 0.000 description 10
- 102100032239 Melanotransferrin Human genes 0.000 description 10
- 230000008859 change Effects 0.000 description 8
- 238000012546 transfer Methods 0.000 description 5
- 230000008901 benefit Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 239000000284 extract Substances 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000000717 retained effect Effects 0.000 description 2
- 230000011664 signaling Effects 0.000 description 2
- GOLXNESZZPUPJE-UHFFFAOYSA-N spiromesifen Chemical compound CC1=CC(C)=CC(C)=C1C(C(O1)=O)=C(OC(=O)CC(C)(C)C)C11CCCC1 GOLXNESZZPUPJE-UHFFFAOYSA-N 0.000 description 2
- 239000002253 acid Substances 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000003760 hair shine Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000012856 packing Methods 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 229920006395 saturated elastomer Polymers 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/16—Time-division multiplex systems in which the time allocation to individual channels within a transmission cycle is variable, e.g. to accommodate varying complexity of signals, to vary number of channels transmitted
- H04J3/1605—Fixed allocated frame structures
- H04J3/1611—Synchronous digital hierarchy [SDH] or SONET
Abstract
组合的硬件和软件处理被应用于网络的端节点,包括包括映射/解映射和去偏移。大部分LCAS过程以软件实现,从而使得它就可以被容易地修改。一些过程以硬件实现以满足严格的定时要求。特别地,握手协议以软件实现,而用于响应于握手而实际改变链路容量的过程以硬件实现。硬件和软件经由共享存储器进行通信,该共享存储器包括接收分组FIFO、接收控制和状态寄存器、传送分组FIFO、传送控制和状态寄存器、以及传送时隙交换表。
Description
发明背景
技术领域
本发明大体上涉及电信(telecommunication)、同步光网络(SynchronousOptical Network SONET)以及同步数字体系(Synchronous digital hierarchy SDH)。更具体的说,本发明涉及在SONET/SDH虚拟级联(Virtual ConcatenationVCAT)中链路容量调整方案(Link Capacity Adjustment Scheme LCAS)的硬件和软件组合实现。
背景技术
同步光网络(SONET)或欧洲公知的同步数字体系(SDH)是一种被设计成容纳(accommodate)DS-1(T1)和E1业务(traffic)这二者及其倍数(DS-3和E-3)的公共电信传输方案。DS-1信号由高达24个时分多路复用的DS-0信号加开销(overhead)比特构成。每个DS-0信号是64kb/s信号,并且是数字网络中最小的带宽分配,即足够用于单个电话连接。E1信号由高达32个时分多路复用的DS-0信号构成,其中这些DS-0信号中的至少一个承载(carry)开销信息。
于20世纪80年代早期开发的SONET在北美具有51.84Mbit/sec(兆比特/秒)的基础速率(STS-1)。STS-1信号能够容纳28个DS-1信号或21个E1信号或二者的组合。基本的STS-1信号具有125微秒(每秒8,000帧)的帧长度,其被组织成每帧810个八位字节(octet)(9行乘90字节宽的列)。将会理解,8,000帧×每帧810个八位字节×每八位字节8比特=51.84Mbit/sec。所述帧包括同步净载荷信封(Synchronous Payload Envelope SPE)或欧洲公知的虚拟容器(VirtualContainer VC)以及传输开销。传输开销被包含在前三列(27字节)中,而SPE/VC占用剩余的87列。
在欧洲,基础(STM-1)速率为155.520Mbit/sec,其相当于北美的STS-3的速率(3×51.84=155.520)。STS-3(STM-1)信号能够容纳3个DS-3信号或63个E1信号或84个DS-1信号,或它们的组合。STS-12(STM-4)信号具有622.080Mbps的速率并且能够容纳12个DS-3信号,等等。STS-48(STM-16)信号具有2,488.320Mbps的速率并且能够容纳48个DS-3信号,等等。已定义的最高等级的STS信号为STS-768(STM-256),速率接近40Gbps(吉比特/每秒)。缩写STS代表同步传输信号(Synchronous Transport Signal),而缩写STM代表同步传输模块(Synchronous Transport Modual)。在以光的而非电的形式传输时,STS-n信号亦被称为光载波(OC-n)信号。
为了便于较低速率的数字信号的传输,SONET标准使用子STS净载荷映射,这种映射称为虚拟支路(virtual tributary VT)结构。(ITU将这些结构称为支路单元或TU)。此映射将SPE(VC)帧分成7个大小相等的子帧或VT(TU)组,每组中都有9行12列(108字节)。四个虚拟支路大小被定义如下。
VT1.5具有1.728Mb/s的数据传输速率,并且容纳具有开销的DS1信号。VT1.5支路占用9行3列,即27字节。因此,每个VT组能够容纳四个VT1.5支路。
VT2具有2.304Mb/s的数据传输速率,并且容纳具有开销的CEPT-1(E1)信号。VT2支路占用9行4列,即36字节。因此,每个VT组能够容纳三个VT2支路。
VT3具有3.456Mb/s的数据传输速率,并且容纳具有开销的DS1C(T2)信号。VT3支路占用9行6列,即54字节。因此,每个VT组能够容纳两个VT3支路。
VT6具有6.912Mb/s的数据传输率,并且容纳具有开销的DS2信号。VT6支路占用9行12列,即108字节。因此,每个VT组能够容纳一个VT6支路。
如本领域的技术人员将会理解的,最初的SONET/SDH方案以及VT映射方案被设计成可承载已知的以及可以预见的TDM(时分多路复用)信号。在20世纪80年代早期,这些TDM信号基本上是复用的电话线路,每条线路都占用(现在视为)较小的带宽56-64kbps。当时,没有真正的数据通信标准。有许多用于局域联网的不同方案,而且最终被称为因特网的广域网是基于“56kbps骨干网(backbone)”的。从那时起,以太网就成为局域联网的标准。如今,有四种带宽的以太网可用:最初的10Mbps系统、100Mbps快速以太网(IEEE 802.3u)、1000Mbps吉比特以太网(IEEE 802.3z/802.3ab)以及10吉比特以太网(IEEE802.3ae)。
近年来,人们已经认识到,SONET/SDH是在广域上链接高速以太网的最切实可行的方式。不幸的是,各以太网传输速率(10Mbps、100Mbps、1,000Mbps和10,000Mbps)不能很好地映射到SONET/SDH帧中。例如,最初的10Mbps以太网信号对VT-6支路(6.912Mbps)而言太大,而对整个STS-1(51.84Mbps)通路而言又太小。换言之,在现有SONET/SDH方案下,为了传输10Mbps的以太网信号,必需使用整个STS-1通路,从而浪费大量带宽。在尝试将更快的以太网信号映射到STS信号中时也会出现类似的结果。
为了提供用于高效地将以太网信号(以及其他信号,诸如光纤通道和ESCON)映射到SONET/SDH帧中的方案,虚拟级联(VCAT)协议被创建并且已被ITU批准为G.707标准(ITUT-T Rec.G.707/Y.1322(12/2003)),因此将其全部内容并入本文作为参考。类似于逆向(invserse)多路复用,虚拟级联将多个链路(成员)组合成虚拟级联组(VCG),从而使载体能够优化用于以太网业务的SDH/SONET链路。例如,使虚拟级联,五个VT-2(2Mbps)链路能够被组合来承载一个10Mbps的以太网信号,从而实现对分配带宽的充分利用。两个STS-1(51Mbps)链路能够被组合来承载一个100Mpbs的以太网信号,等等。虚拟级联利用SONET/SDH开销字节来指示控制分组。在从源到信宿(sink)的方向,控制分组包括:复帧指示器(MFI)、序列号(SQ)、控制字段(CTRL)和组标识比特(GID)。MFI实际上以两个部分提供(MFI-1和MFI-2)。CTRL包括用于使信宿与源同步的信息以及提供单独组成员的状态的信息。
新兴的虚拟级联协议的部分包括用于动态缩放(scale)SONET/SDH信号中的可用带宽的方法。这些方法被称为链路容量调整方案或LCAS。LCAS是一种强有力的网络管理工具,这是因为客户带宽需求会随时间而变化。一个简单示例是网络用户,该网络用户在工作时间只需要足以支持电子邮件和环球信息网访问的带宽;而在非工作时间,该网络用户则可能希望进行从一个位置到另一个位置的大量数据传输,例如为了对每日事务进行备份。这样就希望根据需要改动用户的可用带宽。LCAS提供了一种在不干扰链路上其他业务的情况下达到此目的的手段。LCAS已被ITU批准为G.7042标准(ITUT-TRec.G.7042/Y.1305(02/04)),特此将其全部内容结合于此作为参考。
虽然虚拟级联是简单的标记(labeling)协议,但LCAS需要双向握手(将16个H4字节中的7个字节用于高阶STS-1信号,而将32个K4比特中的17个用于低阶VT1.5信号)。状态消息被不断地交换,并基于消息内容采取动作。例如,为了提供高阶(STS-1)虚拟级联,每个STS-1信号承载着六个LCAS控制命令之一,这些命令被描述如下:
“Fixed(固定的)”-该STS-1上不支持LCAS;
“Add(添加)”-请求将该STS-1添加到VCG中,从而增加现有VCG的带宽或创建新的VCG;
“Norm(正常)”-该STS-1在使用中;
“EOS”-该STS-1在使用中,并且是该VCG的最后一个STS-1,即净载荷承载着具有最高SQ号的STS-1;
“Idle(闲置)”-该STS-1不是VCG的一部分或者将被从VCG中除去;以及
“Do not use(不使用)”-假定该STS-1是VCG的一部分,但由于目的端报告链路中断的缘故而不传输净载荷。不承载净载荷的VCG成员被称为“非活动的(inactive)”,而承载净载荷的成员称为“活动的(active)”。
LCAS标准的握手协议会相对较慢,并且不受严格的定时要求的约束。然而一旦完成了握手,位于端节点的映射设备必须在下一帧开始之前添加一个或者多个成员或者从受影响的VCG中除去一个或者多个成员。在硬件中实现LCAS以便满足该严格的定时要求并不困难。然而,LCAS仍然是发展中的协议,并且为了适应LCAS协议的变化而修改硬件是很困难的或者不可能的。此外,如果完全用硬件实现,那么附加的告警(alarm)和监控特征是不可能实现的。
发明概述
因此本发明的目的是提供满足其严格的定时要求的LCAS协议的实现。
本发明的另一个目的是提供能够被容易地修改以适应协议的变化的LCAS协议的实现。
根据这些将在下面详细讨论的目的,本发明应用于包括映射/解映射和去偏移的网络的端节点。大部分LCAS过程以软件实现,从而使它在以后标准改变或者期望附加的告警或者监控特征的情况下能够被容易地修改。一些过程以硬件实现以满足严格的定时要求。特别地,握手协议以软件实现,而用于响应于握手而实际改变链路容量的过程以硬件实现。硬件和软件经由共享存储器进行通信,该共享存储器包括接收分组FIFO、接收控制和状态寄存器、传送分组FIFO、传送控制和状态寄存器、以及传送时隙交换(interchange)表。
处理周期(cycle)与数据通路中传送侧的LCAS分组插入(时隙交换)对准(align)。在传送方向上(设备充当数据源),对所有通道的定时是相同的。使用该定时为LCAS处理周期定义新的分组标记(NewPktMarker)简化了HW-SW同步过程。
在接收方向上(设备充当数据信宿(data sink)),LCAS分组能够在不同时刻得到。通过硬件把它们推入接收FIFO,并且不要求它们的到达与NewPktMarker(或者接收方向的其他通道)对准。软件从接收FIFO中读取分组并就LCAS处理分组。在传送方向,在与MFI2同步(对准不同成员的成员状态)之后,软件把LCAS分组写入硬件。硬件把分组插入数据通路。整个周期在2毫秒(16个帧)之内实现。
定时临界任务,即在正确的帧边界增加或者减少带宽,是由硬件根据从输入帧接收的或者从软件写入的寄存器读取的控制信号来执行的。
参考结合下面的附图所给出的详细说明,对于本领域技术人员,本发明其他的目的和优点将会很明显。
附图说明
图1是合并了本发明的硬件和软件的SONET PHY层设备的高层次(highlevel)框图;
图2是图示出在2毫秒间隔期间LCAS处理任务在硬件和软件之间划分的高层次框图;
图3是图示出包括共享存储器的硬件组件的高层次框图,硬件和软件组件通过该共享存储器进行通信;
图4是三个字的接收侧(side)LCAS控制分组的表格(tabular)表示;
图5是两个字的传送侧LCAS控制分组的表格表示;
图6是图示出由SONET PHY层设备的SONET传送侧上的硬件和软件执行的并发过程的高层次流程图;以及
图7是图示出由SONET PHY层设备的SONET接收侧上的硬件和软件执行的并发过程的高层次流程图。
优选实施方式
现在转到图1,SONET PHY层设备10在12接收SONET信号,在14对信号进行去偏移(deskew)和解映射(demap),在16对以太网分组解封装(decapsulate)以及在18输出以太网分组。在传送方向,设备10在20接收以太网分组,在22对分组进行封装并在24把它们映射到SONET帧以在26输出SONET信号。根据本发明,PHY层设备10在28被提供有因链路容量调整方案(LCAS)而虚拟级联(VCAT)的装置。为了更容易理解处理过程,在此把它们示为分离的接收侧处理30和传送侧处理32,不过接收和传送处理是紧密结合的。一般说来,接收侧处理30与解映射器14通信并且把结果传给与映射器24通信的传送侧处理32。
图2以完全示意性的方式图示根据本发明在LCAS处理块28中在硬件和软件之间过程的划分。对给定控制分组的所有处理是在2毫秒的间隔中完成的,这在图2中的40处示出。该间隔由在42指示的硬件来维持。软件处理周期(图示于间隔标记40的左边)如在44所示小于2毫秒,但是如下面所描述的那样是流水线处理的(pipeline)。传送和接收硬件功能分别示意性地在46和48划分。一般说来,硬件的传送过程50是从共享存储器读取LCAS分组,并将LCAS分组插入到输出的SONET流中。在接收方向,硬件的过程52聚集(accumulate)LCAS控制分组字节并将分组写入共享存储器。
图2首先图示了LCAS处理传送侧,继之以接收侧。虽然这好像是违反直觉的,但是实际上当以该顺序解释时更容易理解过程。实际实现能够被安排成对传送或者接收处理同步。当对传送处理进行同步时,第一个迭代是不重要的,这是因为LCAS控制分组只不过是在启动时加载的缺省分组。图2的其余部分以非常高层次的方式示出了软件过程和硬件-软件交互。在54软件通过轮询(poll)或者中断来与硬件NewPKtMarker相同步。出现在56的传送侧LCAS处理由软件独自执行,终止于在58把LCAS分组写入共享存储器,在共享存储器中硬件读取分组。接收侧LCAS处理开始于60,软件在此查询共享存储器以查看接收的LCAS分组是否是可用的,是否已经由硬件写入共享存储器。假设在存储器中有分组,软件在62把该分组读出,并在64在软件中按照上述G.7042标准来处理该分组,并且在66设置RxDemap(接收解映射)使能比特(enablebit)。根据当前优选实施例,硬件是以标准单元逻辑(门电路(gate),触发器电路(flipflop)和随机访问存储器)来实现的;以及软件是用C语言实现的并且在使用相同小片(die)上的标准单元逻辑的Xtensa处理器上的小内核上运行。C语言被编译并汇编(assemble)成目标代码,所述目标代码通过主机接口(图3,软件接口)被下载到Xtensa处理器的指令存储器。
除选择对传送或者接收进行同步之外,本发明的LCAS处理能够在中断模式或者轮询模式下运行。在中断模式下,软件只需要处理单个中断。在轮询模式下,需要为软件检验单个状态比特来决定新的LCAS处理周期的开始。轮询模式具有实现简单的优点。然而,中断模式使用的例子能够是(但不局限于)以下:如果希望高LCAS协议性能,则必须在下一个NewPktMarker之前完成所有处理。如果在SW中的其他任务使得细(fine)的轮询粒度(granularity)是不可能的,则它可能出现:LCAS处理周期的开始被延迟。这可能导致在下一个NewPktMarker之前处理周期完成不了(即使SW的LCAS部分被设计为花费远少于2毫秒的处理时间也是如此)。在这样的情形中,使用中断模式会是更好的选择。
如上面所间接提到的,LCAS控制分组并不在单个时刻到达,而是随时间推移(2毫秒)而聚集。因此,对接收的分组进行处理发生于在接收整个分组之后的下一个2毫秒间隔期间。在正常的操作中,控制分组能够在2毫秒的时间窗口内被组装(assemble)并处理。
现在转到图3,更详细地图示出硬件处理的操作。硬件接收处理52从解映射器(图1中的14)接收去偏移的数据70并在72提取H4字节。根据优选实施方式,硬件在接收侧52执行CRC校验74。在76通过把这些字节写入FIFO 78来形成LCAS分组,所述FIFO 78长为N个通道,深为4个分组。4个分组深度允许4个分组的流水线处理。除了把控制分组写入FIFO 78,硬件把数据写入控制和状态寄存器80(下面参考表1对其进行更详细的描述)。FIFO 78和寄存器80的内容能够通过软件经由存储器映射81来读取。把通过控制平面(未显示)在本地产生的序列过程和带宽改变信息分别在82和84发送到解映射器的输出。
在传送侧50,硬件使用PRBS(pseudo-random bit sequence伪随机比特序列)发生器86产生GID(组ID)比特。根据当前优选实施例,在硬件中有个配置选项使用由软件写入的GID比特。硬件50在100读取由软件产生的LCAS分组,在90产生MFI1,并从寄存器96读取MFI2。在LCAS分组被读取之后,在92设置TxSwitch(发送切换)分组比特以倒换(toggle)读取和写入页面100。在将下面参考图6对此进行更详细的解释。硬件根据时隙交换表98来执行序列处理,并且在94产生分组CRC。根据当前优选实施例,在硬件中有个配置选项使用由软件写入寄存器96的CRC。在102把LCAS分组插入到输出数据流108中。在104硬件根据哪些成员是活动的(承载数据)并且需要被按照它们的序列号而对准来完成序列处理。硬件通过检验哪个成员承载CTRL=NORM/EOS来从接收数据中提取带宽改变信息。然后硬件根据序列号对去往解映射器的数据进行排序,并向解映射器断言(assert)成员有效指示,从而实现带宽改变,如在106所示的那样。
表1示出了共享存储器(在图2的78、80、96、98和100处示出)的内容,该共享存储器起硬件-软件接口的作用。在表1中,硬件缩写为HW,而软件缩写为SW。通常,存储器表述为五类:接收分组FIFO、接收控制和状态寄存器、传送分组FIFO、传送TSI表以及传送控制和状态寄存器。应当注意的是FIFO和寄存器中的一些是“按通道”提供的。通道是VCG成员或者潜在(potential)成员。其他的是按“全局”提供的,即在对所有通道的处理中使用。还有另外一些是“按VCG”提供的。表1中所示的“读/写可存取性(accessibility)”是指软件可存取性。
表1
图4图示了被安排为三个字的接收侧LCAS控制分组。前面两个字是H4字节的半字节。标注(designation)“[7:4]”表示包括比特7到4的较高位(upper)半字节。下标0-15表示由G.707标准定义的十六个复帧。前面两个字的内容如下:
SQ(序列指示器)字段是第一复帧的两个H4半字节#14和#15;
H4半字节#11-#13被保留;
RS-Ack(重定序(resequence)确认)比特是第一复帧的H4半字节#10的比特4;
MST(成员状态)字段是第一复帧的两个半字节#8和#9;
CRC-8字段是第一复帧的两个H4半字节#6和#7;
H4半字节#4和#5被保留;
GID(组标识)比特是第一复帧的H4半字节#3的比特4;
CTRL(控制)字段是第一复帧的一个H4半字节#2;以及
MFI2(第二复帧指示器)是第一复帧的两个H4半字节#0和#1。
在硬件和SW之间只交换较高位半字节H4[7:4]。指示MFI1的较低位(lower)半字节H4[3:0]由存储H4[7:4]半字节的位置(如图中下标所指示)间接表示。换句话说,MFI1从0-15循环,其后MFI2增加。因此,当MFI2被看到改变时,MFI1是零。
接收侧LCAS控制分组的第三个字“字(2)”承载着与控制分组相关联的成员的配置和状态。字(2)的字段在表2中阐明。
字 | 描述 |
字(2) | 承载该成员的配置及当前分组的状态:[3:0]:保留[4]:分组CRC状态(1:CRC正确;0:CRC错误)[5]:RLOA(1:LOA告警;0:无LOA告警) |
[6]:服务器失效指示[7:10]:保留[11]:RADDFAILENB(另外,启用失效检测)[12]:RSQMLCASENB(指示f/w对该成员的序列失配(mismatch)检测是否被启用/禁止)[13]:RGIDENB(指示GID比特跨组比较(通过f/w)是否被启用/禁止)[14]:RMremove(来自主机的除去命令)[15]:RMadd(来自主机的增加命令)[16]:RLCASEN(指示成员是否启用了LCAS)[17:21]:RETURNPATH(传送侧VCG的ID,对于该ID,该成员为返回路径。存在着具有相同RETURNPATH值的多个成员。) |
表2
LCAS传送控制分组格式在图5中示出,基本上与控制分组的前两个字的格式相同。
现在转到图6,按照传送硬件过程在左边和软件过程在右边的顺序图示了并发的硬件和软件传送分组处理步骤。过程开始于在201产生新的分组标记(NewPktMarker)的硬件过程,在202(图2中的54)软件识别新的分组标记。根据当前优选实施例,标记信号在包含MFI1=7的LCAS分组的帧的帧信号开始达到高,并且保持为高直到软件读取了该标记。每2毫秒(16个帧)重复一次。在204由软件读取硬件MFI计数器203(图3中的90)并使该计数器与MFI2同步。硬件MFI计数器是自由运行(free running)的12比特计数器,当H4被插入时,该计数器每个帧增加一次。8个MSB被用作MFI2,并且4个LSB被用作MFI1。对于所有的传送侧LCAS启用成员都使用相同的MFI值。因为成员传播通过网络并经历差分延迟(differential delay),所以它们以不同的MFI号到达信宿,这些MFI号能够被用于把它们按次序放回原位。
需要把MST值插入到给定LCAS分组中所针对的成员号依赖于在该分组中承载的MFI2号(参见G.7042)。因为MFI值由硬件(图3中的90)插入,所以软件需要知道硬件正被使用的MFI2号,以便识别在给定的LCAS处理周期中软件需要为哪些成员写入MST。通过在控制/状态寄存器(图3中的96)中保持能够由软件读取的MFI2来启用与硬件的这一同步。
在205,在LCAS启用的VCG中,对每个成员的LCAS处理是按照G.7042而在SW中执行的。该任务包括为每个成员运行LCAS状态机,识别该序列在传送方向是否需要改变,以及保持成员的状态。如果按软件所确定的那样,序列需要改变,则在206软件向硬件TSI表207(图3中的98)(为所有成员)写入新的序列。TSI表207(图3中的98)是在硬件中保持的两页表,一个表用于每个VCG。硬件使用一页(例如,第0页),而软件向另一页写入(例如第1页)。
在206软件为刚刚被改变的VCG写入Tx_SwitchTSI标志。这向硬件指示:第0和1页应该在下一LCAS分组边界处被交换(即硬件使用第1页而软件使用第0页)。硬件在读取TSI页时,它清除Tx_SwitchTSI标志。
作为LCAS处理的结果,在209软件为每个LCAS启用的成员更新LCAS分组(图5中所示的传送控制分组),并在210(图3中的100)将其存储(图2中的58)在硬件寄存器Tx_LCAS_Pkt。寄存器Tx_LCAS_Pkt是两页寄存器,一个寄存器用于每个VCG成员。一页(例如0)由硬件读取,而另一页(例如1)由软件写入。
在211,硬件把由软件提供的LCAS分组插入数据通路(在图3中的102、104、106处)。根据给定LCAS分组中CTRL的值,硬件将断言在以下一个LCAS分组间隔作为开始的下一个帧的边界处为那个成员启用映射器(按照G.7042所要求的)或者取消该断言。这是实现无损伤(hitless)带宽改变的时间临界部分。使划分(partition)健壮并避免对运行LCAS软件的处理器施加严格的等待时间要求完全是在硬件中处理的。
在209为VCG的成员写入了Tx LCAS分组之后,在212软件为该VCG设置Tx_SwitchPacket(在图3中的寄存器96中)。在下一个新的分组标记,硬件检验该Tx_SwitchPacket标志(在图3中的寄存器96中)以便得知更新的LCAS分组是否是可用的(在图3中的寄存器100中)。只有当该Tx_SwitchPacket标志被设置了,硬件才在下一个LCAS分组的开始切换Tx LCAS分组页(在图3的92)。
如果当NewPktMarker出现时没有为VCG设置Tx_SwitchPacket,则在213由软件为该VCG设置Tx_PktWrErr标志(在图3的寄存器96中),并增加Tx_PktWrErrCount(在图3的寄存器96中)。Tx_PktWrErrCount计数器是饱和类型的,即计数达到最大值之后锁定在该值,直到它被读取。如果LCAS分组页(图3中的100)没有被切换,则硬件插入旧的LCAS分组,但CRC比特被反转(invert)。这使得另一个节点忽略该LCAS分组(即保持之前的状态),因此不会破坏LCAS协议。该特征使得设计的软件部分能够在高等待时间(latency)系统中实现,其中软件可以不在一个LCAS分组间隔之内完成处理。在这样的情形中LCAS协议会正确地工作(因为要切换的信息能够等待下一个控制分组),不过性能降低。
在214硬件读取TSI页(图3中的98)并且根据需要执行序列改变(图3中的104)。在215在硬件中通过读取LCAS Pkt页(图3中的100)计算CRC(图3中的94)。在来自软件的LCAS分组更新不可用的LCAS间隔内,在把CRC插入LCAS分组中之前对CRC值进行反转。这确保不破坏LCAS协议并且其他节点维持其现有状态。
在216在硬件中产生GID(图3中的86)。在VCG的所有成员范围内,插入相同的比特。把PRBS的延迟值插入不同VCG(延迟=VCG ID)以使在不同VCG的范围上值是不同的。
在217由硬件把LCAS字节(H4)插入数据通路(图3中的102)。如上面所描述的那样,在硬件中保持一些字段(CRC、MFI和GID),而其他字段由软件写入。为软件提供钩子(hook)以超越在硬件中的CRC和GID插入。
在218软件转到接收LCAS分组处理。图7图示了硬件和软件接收LCAS分组处理,其中软件处理在左边而硬件处理在右边。软件处理开始于219。在220硬件从解映射器提取LCAS控制分组(图3中的72、74、76),并且把分组写入FIFO(图3中的78)。更具体的说,硬件为LCAS启用的VCG的每个成员识别LCAS字节(H4)。它提取H4字节(图3中的72),以图4中所示的格式打包(packetize)成LCAS控制分组(图3中的76),并检验在Rx分组FIFO(图3中的78)中是否存在可用于一个完整分组的空间。如上面所描述的那样,控制分组的最后一个字包含关于该分组/成员的附加信息。只有当空间可用时才把分组推入FIFO;否则丢弃新的分组。在软件不能够足够快速地读出分组的高等待时间系统中(例如使用外部主机,而不是用嵌入式处理器),由于分组丢弃的缘故而为成员保持旧的状态。当为成员丢弃LCAS分组时,为该成员断言Rx_Overflow_error标志(在图3的寄存器80中)并且增加Rx_OverflowErrCount(在图3的寄存器80中)。无论何时FIFO中的完整分组对于成员是可用的,都由硬件来设置Rx_PktAvailable中的对应的比特(在图3的寄存器80中)。
在221软件检验FIFO(图3中的78)是否包含分组(在图3的寄存器80中设置了Rx_PktAvailable),并且在222从FIFO读取分组。更具体的说,为那些设置了Rx_PktAvailable的成员读取LCAS分组。对于成员(四个分组管道),分组被读取直到在FIFO中对该成员没有更多可用的分组。这确保FIFO中由于任何原因(启动条件、配置改变等)而造成的分组堵塞(build up)被避免。软件还具有钩子,用于通过为该VCG断言Rx_PktAdrReset(在图3的寄存器80中)来为VCG的所有成员清除FIFO。
在223,根据G.7042的LCAS处理在软件中执行。更具体的说,LCAS状态机被运行并且必要的状态被保持。GID处理(例如VCG的所有成员具有相同GID比特的一致性检验)也能够在软件中完成。
在224,如果软件发现成员的CTRL=ADD并且将要为该成员发送MST-OK,则软件就为该成员设置Rx_DemapEnable(在图3的寄存器80中)。类似地,当成员被除去或者成员前往DNU时,Rx_DemapEnable就被除去。因为在使用LCAS协议进一步进行对远程节点的处理之前用信号通知了硬件,所以在该信令中不涉及时间临界性。
在225硬件对接收到的LCAS分组执行CRC检验(图3中的74)。在CRC错误的情况下,不丢弃分组,但是在LCAS分组(形成于图3的76)的字(2)中把CRC状态指示传给软件。在正常的操作下,软件将会忽略具有CRC错误的分组。然而,在硬件中不丢弃分组为能够在软件中实现的调试工具(debugfacility)提供了钩子。而且在226,硬件还从LCAS分组提取序列号(图3中的82)。
在227,硬件开始控制解映射(通过图3中的84处的带宽改变)。对于软件已经为其断言Rx_DemapEnable的成员,硬件检验其接收的CTRL。如果CTRL=NORM/EOS,则对应的时隙把数据运送给解映射器块。否则,该时隙被认为没有承载有效数据。在硬件中作决定取消了时间临界性。还注意到只有分组的CRC是正确的时(在图3中的74)才考虑分组中的CTRL。最后在228,在硬件中实施按每个提取的序列号的对准(在图3中的82)。如果分组有CRC错误,那么对于数据对准而言,就使用现有的序列号。
在此已经描述和举例说明了用于以硬件和软件的结合来实现LCAS的方法和设备。虽然描述了本发明的特定的实施例,但本发明并不限于此,本发明的范围旨在与本技术领域所允许的一样宽,对说明书也应作同样理解。因此,虽然描述涉及对高阶或低阶TU3容器的基于H4的LCAS处理,但是硬件-软件接口和过程的划分也可以适用于其他类型的容器。例如,但不是限制,本发明的LCAS处理能够应用于DS3和DS1/E1信号中的LCAS实现。虽然硬件和软件已经被描述为用单元逻辑、C语言、和Xtensa处理器实现,但是其他实现也是可以的。因此,本领域技术人员将会理解,可以在不偏离所要求的本发明的精神和范围的情况下对所提供的发明进行其他修改。
Claims (14)
1. 一种用于在通信网络网络的端节点中实现链路容量调整方案(LCAS)的方法,包括:
以软件实现LCAS握手;
以硬件实现链路容量调整;以及
经由共享存储器来连系硬件和软件。
2. 根据权利要求1所述的方法,其中:
共享存储器包括接收分组FIFO、接收控制和状态寄存器、传送分组FIFO、传送控制和状态寄存器、以及传送时隙交换表。
3. 根据权利要求2所述的方法,其中:
所述接收控制和状态寄存器包括:
接收分组可用、接收溢出错误、接收溢出错误计数、接收解映射启用,以及
所述传送控制和状态寄存器包括:
新分组标记、传送分组写入错误、以及传送分组写入错误计数。
4. 根据权利要求3所述的方法,其中:
新分组标记启动两毫秒计时器。
5. 根据权利要求1所述的方法,其中:
硬件聚集接收侧LCAS控制分组的字节并把分组写入共享存储器,
软件从共享存储器读取分组,处理该分组,并把处理的结果写入共享存储器,以及
硬件从共享存储器读取处理的结果并实现链路容量调整。
6. 根据权利要求5所述的方法,其中:
硬件写入传送侧LCAS控制分组。
7. 根据权利要求6所述的方法,其中:
硬件检验接收侧CRC并计算传送侧CRC。
8. 根据权利要求3所述的方法,其中:
硬件识别LCAS启用的VCG的每个成员的LCAS H4字节,提取H4字节,打包成LCAS控制分组,并检验接收分组FIFO以查看是否有足够的空间来存储所述LCAS控制分组。
9. 根据权利要求8所述的方法,其中:
如果在接收分组FIFO中没有足够的空间,那么硬件就丢弃LCAS控制分组,设置接收溢出错误标志,并且增加接收溢出错误计数。
10. 根据权利要求9所述的方法,其中:
如果在接收分组FIFO中有足够的空间,那么硬件就把LCAS控制分组写入接收分组FIFO,设置接收溢出错误标志,并且设置接收分组可用寄存器中的比特。
11. 根据权利要求10所述的方法,其中:
软件根据接收分组可用寄存器从接收分组FIFO中读取分组,并根据LCAS控制分组的内容来设置接收解映射启用寄存器。
12. 一种用于在通信网络的端节点中实现链路容量调整方案(LCAS)的设备,包括:
用于提取H4字节和组装接收侧LCAS控制分组的硬件装置;
用于处理LCAS控制分组和形成LCAS传送控制分组的软件装置;
用于实现链路容量调整的硬件装置;以及
用于耦合硬件和软件的共享存储器。
13. 根据权利要求12所述的设备,其中:
共享存储器包括接收分组FIFO、接收控制和状态寄存器、传送分组FIFO、传送控制和状态寄存器、以及传送时隙交换表。
14. 根据权利要求13所述的设备,其中:
所述接收控制和状态寄存器包括:
接收分组可用、接收溢出错误、接收溢出错误计数、接收解映射启用,以及
所述传送控制和状态寄存器包括:
新分组标记、传送分组写入错误、以及传送分组写入错误计数。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/210,135 US7558287B2 (en) | 2005-08-23 | 2005-08-23 | Combined hardware and software implementation of link capacity adjustment scheme (LCAS) in SONET (synchronous optical network) virtual concatenation (VCAT) |
US11/210,135 | 2005-08-23 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101243656A true CN101243656A (zh) | 2008-08-13 |
Family
ID=37772228
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA200680030561XA Pending CN101243656A (zh) | 2005-08-23 | 2006-08-21 | 在sonet中对链路容量调整方案(lcas)的硬件和软件组合实现 |
Country Status (4)
Country | Link |
---|---|
US (1) | US7558287B2 (zh) |
EP (1) | EP1917766A2 (zh) |
CN (1) | CN101243656A (zh) |
WO (1) | WO2007024728A2 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010037324A1 (zh) * | 2008-09-24 | 2010-04-08 | 华为技术有限公司 | 传送网络数据传输调整的方法和装置 |
CN105706388A (zh) * | 2013-12-06 | 2016-06-22 | 英特尔公司 | 用于减小数据损坏概率的通道错误检测和通道去除机制 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070091791A1 (en) * | 2005-10-20 | 2007-04-26 | Fujitsu Network Communications, Inc. | RPR span BW protection scheme for RPR transported over SONET paths |
US7769864B2 (en) * | 2007-08-02 | 2010-08-03 | Sap Ag | Adaptation of clusters to virtualization technologies |
JP5418086B2 (ja) * | 2009-09-09 | 2014-02-19 | 富士通株式会社 | 伝送装置及び信号伝送方法 |
US10812416B2 (en) | 2017-12-27 | 2020-10-20 | International Business Machines Corporation | Reduced number of counters for reliable messaging |
CN115701188A (zh) * | 2021-07-16 | 2023-02-07 | 中兴通讯股份有限公司 | 时隙配置方法、时隙配置装置及计算机可读存储介质 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
IL143195A0 (en) * | 2001-05-17 | 2002-04-21 | Lightscape Networks Ltd | A method and device for delivering communication in ethernet over synchronous networks |
US7058008B1 (en) * | 2002-03-04 | 2006-06-06 | Nortel Networks Limited | Link capacity adjustment component |
IL149323A0 (en) * | 2002-04-24 | 2002-11-10 | Lightscape Networks Ltd | Handling traffic in a synchronous communication network |
CN101004095A (zh) * | 2002-10-30 | 2007-07-25 | 布纳斯特科瑞特设备公司 | 金属丝网找平层 |
US7885186B2 (en) * | 2003-10-03 | 2011-02-08 | Ciena Corporation | System and method of adaptively managing bandwidth on optical links shared by multiple-services using virtual concatenation and link capacity adjustment schemes |
US7715306B2 (en) * | 2004-12-07 | 2010-05-11 | Electronics And Telecommunications Research Institute | Multi-layer restoration method using LCAS |
US20060126641A1 (en) * | 2004-12-15 | 2006-06-15 | Joobin Song | Mapping system of virtual concatenation group signals |
-
2005
- 2005-08-23 US US11/210,135 patent/US7558287B2/en active Active
-
2006
- 2006-08-21 CN CNA200680030561XA patent/CN101243656A/zh active Pending
- 2006-08-21 EP EP06801898A patent/EP1917766A2/en not_active Withdrawn
- 2006-08-21 WO PCT/US2006/032429 patent/WO2007024728A2/en active Application Filing
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010037324A1 (zh) * | 2008-09-24 | 2010-04-08 | 华为技术有限公司 | 传送网络数据传输调整的方法和装置 |
CN101686175B (zh) * | 2008-09-24 | 2012-06-20 | 华为技术有限公司 | 传送网络数据传输调整的方法和装置 |
US8625419B2 (en) | 2008-09-24 | 2014-01-07 | Huawei Technologies Co., Ltd. | Method and device for adjusting transmission of transport network data |
CN105706388A (zh) * | 2013-12-06 | 2016-06-22 | 英特尔公司 | 用于减小数据损坏概率的通道错误检测和通道去除机制 |
CN105706388B (zh) * | 2013-12-06 | 2019-10-01 | 英特尔公司 | 用于减小数据损坏概率的通道错误检测和通道去除机制 |
Also Published As
Publication number | Publication date |
---|---|
US20070047594A1 (en) | 2007-03-01 |
EP1917766A2 (en) | 2008-05-07 |
WO2007024728A3 (en) | 2007-05-31 |
US7558287B2 (en) | 2009-07-07 |
WO2007024728A2 (en) | 2007-03-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1781288B (zh) | 用于多业务交换平台的多速率、多协议、多端口线路接口 | |
US9461942B2 (en) | System and method for performing concatenation of diversely routed channels | |
US20050008042A1 (en) | Methods and apparatus for the hardware implementation of virtual concatenation and link capacity adjustment over SONET/SDH frames | |
US7177314B2 (en) | Transmit virtual concatenation processor | |
EP1794910B1 (en) | Overhead processing and generation techniques | |
US7386007B2 (en) | Method and apparatus for mapping fast ethernet data interfaces into a single VC-4 virtual container of a STM-1/OC-3 payload transmitted in a radio-link system | |
CN101243656A (zh) | 在sonet中对链路容量调整方案(lcas)的硬件和软件组合实现 | |
CN101167281B (zh) | 用于同步交换光传输网络信号的方法和设备 | |
US7672315B2 (en) | Methods and apparatus for deskewing VCAT/LCAS members | |
US7353288B1 (en) | SONET/SDH payload re-mapping and cross-connect | |
JP2004530370A (ja) | データ伝送方法および装置 | |
US6836486B2 (en) | Switching of low order data structures using a high order switch | |
EP1537694B1 (en) | Synchronous transmission network node | |
US7630397B2 (en) | Efficient scalable implementation of VCAT/LCAS for SDH and PDH signals | |
JP2004535111A (ja) | チャネライズされたイーサネットをsonet/sdhを介して伝送するシステム及び方法 | |
JP2002176408A (ja) | マルチフレーム多重伝送装置 | |
US8228943B2 (en) | Systems and methods for providing framing mapping, muxing and data processing | |
EP1936849A1 (en) | Method for mapping and demapping data information over the members of a concatenated group | |
US7542484B2 (en) | Managing payload specific latencies in a cross-connect system | |
US7313151B2 (en) | Extendible asynchronous and synchronous interface bus for broadband access | |
CN100407724C (zh) | 等级虚级联和相邻级联相互转换装置 | |
JP4749491B2 (ja) | 6つの8メガビット/秒の信号のsonetフレームへのマッピング | |
Dutta et al. | Grooming mechanisms in SONET/SDH and next-generation SONET/SDH |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Open date: 20080813 |