报文传输处理方法及装置的制作方法

文档序号:7692989阅读:98来源:国知局

专利名称::报文传输处理方法及装置的制作方法
技术领域
:本发明涉及报文传输领域,尤其是报文传输处理方法及装置。技术背景目前一种比较通用的传输模式为异步传输模式(AsynchronousTransferMode,简称ATM)。ATM是以信元为基本单位进行信息传输、复接和交换的。ATM信元的格式如表1所示,ATM信元具有53字节的固定长度,其中5个字节构成信元头部(Header),主要用作路由信息和优先级信息,其余48个字节是有效载荷(Payload)。表lHeaderPayload5字节48字节报文(Datagram):以某种约定好的方式进行数据传输的最小单位。互联网协议(InternetProtocol,简称IP)报文,就是以IP协议定义的数据传输格式进行通讯的数据流。一般通过ATM承载IP报文。ATM为处在同一网络内的IP主机之间的通信提供数据链路层,同时IP报文进行调节以便主机能够在ATM网络上通信。通过ATM承载IP报文,一方面提供了高速点对点连接,大大提高了IP网的带宽性能;另一方面提供了优良的网络性能和完善、成熟的QoS(QualityofService服务质量)保证。为了通过ATM承载IP才艮文,引入了ATM适配层(AdaptationLayer,简称AAL),其主要功能是提供一种机制完成从ATM信元到高层业务信息的转换,其中一个典型应用就是进行ATM信元到IP报文之间的互转。目前通用的ATM适配层有5种4类报文分别称为AAL1、AAL2、AAL3/4、AAL5报文。其中被广泛用来进行IP报文数据传输的为AAL5报文。AAL5报文的格式如表2所示,净荷字段包含任意长度的用户信息,但最大长度为216-1字节;PAD字段用于填充净荷,使净荷的长度为48个字节的整数倍,正好能放入ATM信元中;UU(用户-用户指示)字段用于透明传送用户-用户信息。在RFC1483所描述的多协议封装中,该字段不起作用,可以被设置为任何值;CPI(公共部分指示)字段的基本用途是填充AAL5开销(AAL5开销是指UU字段+CPI字段+长度字段+CRC字段),使其长度正好为64个比特,这时该字段编码为0x00(Ox表示十六进制);长度字段用于指出净荷字段的字节长度。长度字段的最大值是65535字节。当长度字段编码为0x00时,它用于指示接收方执行丢弃(abort)功能;CRC字段用来保护除CRC字段以外的整个AAL5报文。表2<table>tableseeoriginaldocumentpage5</column></row><table>AAL5转换为ATM信元的过程为,ATM信元的有效载荷可以作为AAL5报文的一个分片报文,将一个完整的AAL5报文转换为若干个ATM信元即将一个完整报文转换为若干个包括信元头和分片报文的信元,具体过程为从AAL5报文起始每48字节被切分成一个数据块,作为一个ATM信元的有效载荷,然后加上其5字节的信元头形成一个ATM信元,当AAL5报文的最后一个48字节被装入到ATM信元负载时,该信元头部的一个字段(PTI:payloadtypeidentifier负载类型指示字段)会被置为1,表示一个AAL5信元结束。ATM信元转换为AAL5报文的过程为,ATM信元的有效载荷可以作为AAL5报文的一个分片报文,若干个ATM信元组成AAL5报文即若个个分片报文组成一个完整报文,具体过程为取出每一ATM信元中48字节的有效载荷按顺序排列,直到收到信元头PTI字段为1的ATM信元时,认为一个完整的AAL5结束,从而组成一个AAL5报文。由于ATM线路上传输的最小单位为ATM信元(或者ATM信元封装到其它网路中进行传输),因此接收端设备(如接收端接口芯片,以下简称接收芯片)就只能以信元的形式进行接收。如前所述当需要将一个完整的AAL5报文接收进来有可能需要完成若干个ATM报文的接收,因此一般的芯片都会由緩存存储器采用先进先出(FirstinFirstout,简称FIFO)机制緩存临时数据。緩存存储器的接收端,用于接收ATM信元;緩存存储器的输出端,与外部存储器链接的总线,用于输出所緩存的ATM信元。当接收端接收ATM信元的速率高于输出端输出ATM信元的速率时,就会造成ATM信元的数据溢出即数据丟失,由于被丟弃的是ATM信元中携带的有效载荷信息,即某个AAL5报文的一部分,这就导致了整个AAL5报文由于丢失了一部分而产生错误,使得该AAL5报文失去了完整性,整个AAL5报文就失去了意义。
发明内容为解决上述问题,本发明提供了一种报文传输处理方法及装置,以保证接收芯片传输到处理芯片的数据为有效数据,处理芯片中缓存的报文为完整报文。本发明提供了一种报文传输处理方法,其中包括接收芯片接收由线路传输的信元,所述信元包括信元头和分片报文;接收芯片检测到处理芯片中緩存标志位为无效状态时,将待发送报文的所有分片报文传输到处理芯片。本发明还提供了一种报文传输处理装置,其中包括相互连接的接收芯片及处理芯片;所述处理芯片包括緩存标志位;所述接收芯片包括接收模块,用于接收由线路传输的信元,所述信元包括信元头和分片报文;检测模块,与接收模块及处理芯片分别连接,用于检测处理芯片中緩存标志位的状态信息,当检测到緩存标志位为无效状态时,将接收模块中待发送报文的所有分片报文传输到处理芯片。本发明通过对处理芯片中緩存标志位的状态信息的检测,当检测到緩存标志位为无效状态时,将待发送报文的所有分片报文传输到处理芯片,使得接收芯片传输到处理芯片的数据为有效数据,处理芯片获得的分片报文能够构成完整报文,从而保证了处理芯片中緩存的报文为完整报文。图1为本发明报文传输处理方法实施例一的流程图;图2为本发明报文传输处理方法实施例二的流程图;图3为本发明报文传输处理方法实施例三的流程图;图4为本发明报文传输处理装置实施例一的结构示意图;图5为本发明报文传输处理装置实施例二的结构示意图;图6为本发明报文传输处理装置实施例三的结构示意图。具体实施方式下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。本发明提供一种报文传输处理方法,包括接收芯片接收由线路传输的信元,每个信元包括一个信元头和一个分片报文;接收芯片检测到处理芯片中緩存标志位为无效状态时,将待发送报文的所有分片报文传输到处理芯片。其中,接收芯片与处理芯片可以为集成模块,也可以是分立模块。当接收芯片与处理芯片为集成模块或部分集成模块时,可以共用内存控制器来控制两模块之间的操作,处理芯片需要具备一定的緩存能力,如至少能够接收一个最长的完整报文,本发明的实施例中一般选于大于64*1024bytes,也可以根据实际的报文传输情况进行设定。当接收芯片与处理芯片为分立模块时,二者之间需要引入总线来实现数据的传输,总线的传输速率应大于所述于拥塞而导致分片报文溢出,而引起的处理芯片接收到不完整的无效报文。在设计处理芯片时,可以处理芯片划分为一个或多个緩存区间,每个緩存区间设有一个緩存标志位。以下报文传输处理方法实施例一及实施例二用于说明当处理芯片只包括一个緩存区间时,接收芯片与处理芯片通过总线通信的流程。以下报文传输处理方法实施例三用于说明当处理芯片包括多个緩存区间时,接收芯片与处理芯片通过总线通信的流程。图1为本发明报文传输处理方法实施例一的流程图。如图1所示,包括步骤IOI、接收芯片接收由线路传输的信元,所述信元包括信元头和分片报文。该实施例中的线路以ATM线路为例,则ATM线路上传输的最小单位为ATM信元,该实施例中的报文以AAL5报文为例,则AAL5报文的分片报文为ATM信元中的有效载荷,一个ATM信元的有效载荷可以成为一个完整AAL5报文的一个分片报文。接收芯片接收到ATM信元后,在传输给处理芯片时,一般只对ATM信元中的分片报文进行转发。步骤102、接收芯片检测到处理芯片中緩存区间的緩存标志位为无效状态时,通过总线将待发送报文的所有分片报文传输到处理芯片的缓存区间,所述总线的传输速率大于所述线路的最大传输速率。接入到接收芯片的线路的最大速率一般是确定的,在涉及接收芯片与处理芯片之间的总线时,应保证该总线的速率大于线路的最大传输速率,并且一般要能确定在任何恶劣情况下都能保持在线路的速率之上。该总线的接口一般设计成专用接口,即非共享接口,以保证该总线具有较高的传输速率。其中处理芯片中緩存区间的緩存标志位为无效状态的情况为处理芯片将该緩存区间中的待发送报文向外传输完毕后,将该緩存区间的緩存标志位由有效状态修改为无效状态。此时,处理芯片中緩存区间已将其緩存的报文全部转移出去,緩存区间有足够的空间接收下一个待发送报文的分片报文了,将緩存标志位从有效状态修改为无效状态,用于告知接收芯片,该緩存区间可以接收来自接收芯片的分片报文;接收芯片检测到緩存标志位为无效状态时,将待发送报文的所有分片报文传输到该緩存区间。处理芯片在接收来自接收芯片的分片报文的过程中,由于接收芯片与处理芯片的传输总线的速率大于接收芯片的输入端线路的最大传输速率,因此该待发送报文在由接收芯片传输到处理芯片的过程中不会发生分片报文的丢失,即可以保证归属于该待发送报文的所有的分片报文均可以传输到处理芯片,从而保证了处理芯片能够接收到归属于该待发送报文的所有的分片报文。由于处于处理芯片的分片报文能够组成完整报文,因此无论处理芯片输出端的速率如何,都能保证所有的数据传输都是有效的,处理芯片输出的是完整报文,从而保证了接收芯片经过处理芯片后能够输出完整报文,保证了传输数据的有效性。该实施例,通过对处理芯片中緩存标志位的状态信息的检测,当检测到緩存标志位为无效状态时,接收芯片通过速率大于接收芯片的输入端线路的最大传输速率的总线向处理芯片发送分片报文,使处理芯片能够获得构成完整报文的所有分片报文,从而保证了处理芯片中緩存的报文为完整报文,保证了从处理芯片输出的数据为有效数据,提高了系统性能。图2为本发明报文传输处理方法实施例二的流程图。如图2所示,包括步骤201、接收芯片接收由线路传输的信元,所述信元包括信元头和分片报文。步骤202、接收芯片检测处理芯片中緩存区间的緩存标志位是否为无效状态,若緩存标志位为无效状态,执行步骤203;若緩存标志位为有效状态,执行步骤204。步骤203、接收芯片通过总线将待发送报文的所有分片报文传输到处理芯片的緩存区间,所述总线的传输速率大于所述总线的最大传输速率。步骤204、接收芯片检测到处理芯片中緩存区间的緩存标志位为有效状态时,停止向处理芯片中缓存区间发送分片报文。其中处理芯片中緩存区间的緩存标志位为有效状态的情况为接收芯片将待发送报文的所有分片报文向处理芯片的某緩存区间传输完毕后,将该緩存区间的緩存标志位由无效状态修改为有效状态。此时,处理芯片中緩存区间已接收到构成一个完整报文所需要的所有分片报文,并且这些分片报文还没有被完全转移出去,尚占用緩存区间的緩存资源,为了保证緩存区间能够接收下一个完整报文,緩存区间在将构成一个完整报文所需要的所有分片报文转移出去之前,不接收来自接收芯片的分片报文。将緩存标志位的状态信息修改为有效状态,用于告知接收芯片,该緩存区间此时不接收来自接收芯片的分片报文。对于此种情况,由于接收芯片此时还不断从外界线路接收信元,但由于緩存区间不接收分片报文,接收芯片不能将所接收的信元中的分片报文转移出去,即线路一直向接收芯片输入信元,但接收芯片无法发送分片报文,此时由于接收芯片緩存资源的局限性,如FIF0芯片就可能导致某一报文的分片报文的溢出。具体实现过程为如对于某一AAL5报文来说,携带该AAL5报文的第一个ATM信元负载依然在芯片FIFO中,若该AAL5报文的后续的ATM信元负载因FIFO溢出而丟失,则接收芯片会自动识别出这个AAL5报文已经作废,将整个AAL5报文在FIFO芯片内部丢弃而不用占用接收芯片与处理芯片之间的总线的流量。因而该情况在接收芯片会造成AAL5报文丢失,但不会亏1起传输给处理芯片是无效数据。该实施例,通过对处理芯片中緩存区间的緩存标志位的状态信息的检观'J,当检测到緩存标志位为无效状态时,采用上述报文传输处理方法实施例一的方法进行后续处理,即接收芯片通过速率大于接收芯片的输入端线路的最大传输速率的总线向处理芯片发送分片报文,使处理芯片能够获得构成一个完整报文的所有分片报文,从而保证了处理芯片中緩存的为一个完整报文,保证了传输给处理芯片的是有效数据,提高了系统性能;当检测到緩存标志位为有效状态时,停止向处理芯片发送分片报文,此时由于处理芯片不接收分片报文,接收芯片不能将所接收的分片报文转移出去,即线路一直向接收芯片输入分片报文,但接收芯片无法发送分片报文,此时由于接收芯片緩存资源的局限性,如FIFO芯片就可能导致某一报文的分片报文的溢出,直接在接收芯片将发生溢出的不完整的报文进行丟弃,而不占用接收芯片与处理芯片之间的总线的流量,即不将不完整的报文传输至处理芯片,从而进一步地保证了传输给处理芯片的是有效数据,提高了系统,同时提高了总线利用率。图3为本发明报文传输处理方法实施例三的流程图。如图3所示,包括步骤301、接收芯片接收由线路传输的信元,所述信元包括信元头和分片报文。步骤302、接收芯片检测到处理芯片中是否存在緩存标志位为无效状态的緩存区间,若存在,执行步骤303及步骤304,否则,执行步骤305。步骤303、接收芯片通过总线将待发送报文的所有分片报文传输到緩存标志位为无效状态的緩存区间,所述总线的传输速率大于所述总线的最大传输速率。步骤304、接收芯片停止向緩存标志为有效状态的缓存区间发送分片报文。步骤305、接收芯片停止向所有緩存区间发送分片报文。上述实施例中,当待发送报文的所有分片报文传输到处理芯片后,还包括处理芯片通过总线将待发送报文传输到外部存储器。设接收芯片与处理芯片之间的总线为第一总线,处理芯片及外部存储器之间的总线为第二总线。第一总线接口与第二总线接口可以为同一类型,也可以为不同类型。第二总线的速率可以高于第一总线的速率,也可以低于第一总线的速率。以上实施例中,处理芯片中的緩存区间需要具备一定的緩存能力,緩存区间的緩存容量大于或等于缓存一个最长的完整报文所需的緩存容量,即能够接收一个最长的完整报文,本发明的实施例中一般选于大于64*1024bytes。本发明还提供了一种报文传输处理装置,包括相互连接的接收芯片及处理芯片;所述处理芯片包括緩存标志位;所述接收芯片包括接收^^莫块,用于接收由线路传输的信元,所述信元包括信元头和分片报文;检测模块,与接收模块及处理芯片分别连接,用于检测处理芯片中緩存标志位的状态信息,当检测到緩存标志位为无效状态时,将接收模块中待发送报文的所有分片报文传输到处理芯片。其中,接收芯片与处理芯片可以为集成模块,也可以是分立模块。当接收芯片与处理芯片为集成模块或部分集成模块时,可以共用内存控制器来控制两模块之间的操作,处理芯片只需要具备一定的緩存能力即可,如至少能够接收一个最长的完整报文,本发明的实施例中一般选于大于64*1024bytes。当接收芯片与处理芯片为分立模块时,二者之间需要引入总线来实现数据的传输,总线的传输速率应大于所述线路的最大传输速率,以防止接收芯片向处理芯片发送分片报文的过程中由于拥塞而导致分片报文溢出,而引起的处理芯片接收到不完整的无效报文。图4为本发明报文传输处理装置实施例一的结构示意图。如图4所示,包括依次连接的接收芯片410、总线420及处理芯片430。处理芯片430包括一个緩存区间431,该緩存区间431设有一个緩存标志位432。接收芯片410包括接收模块411,用于接收由线路传输的信元,所述信元包括信元头和分片报文;检测模块412,与接收模块411连接,并通过总线420与处理芯片430分别连接。检测模块412检测到处理芯片430中緩存区间431的緩存标志位432为无效状态时,通过总线420将待发送报文的所有分片报文传输到緩存区间431。该实施例中的检测模块412除了用于当检测到緩存区间431中緩存标志位432为无效状态时,通过总线420将待发送报文的所有分片报文传输到緩存区间431夕卜,还可以用于当检测到緩存区间431中緩存标志位432为无效状态时,停止向緩存区间发送分片报文。图5为本发明报文传输处理装置实施例二的结构示意图。如图5所示,包括依次连接的接收芯片510、总线520及处理芯片530。处理芯片530包括多个緩存区间531(图5以3个缓存区间531为例),每个緩存区间531设有一个緩存标志位532。接收芯片510包括接收模块511,用于接收由线路传输的信元,所述信元包括信元头和分片报文;检测模块512,与接收模块511连接,并通过总线520与处理芯片530分别连接。检测模块512检测到处理芯片530中某个缓存区间531的緩存标志位532为无效状态时,将待发送报文的所有分片报文传输到该緩存区间531。该实施例中的检测模块512除了用于当检测到处理芯片530中某个缓存区间531的緩存标志位532为无效状态时,将待发送报文的所有分片报文传输到该缓存区间531夕卜,还可以用于当检测到处理芯片530中某个緩存区间531的緩存标志位532为无效状态时,停止向该緩存区间531发送分片报文。该实施例中处理芯片530还可以包括发送模块533,当待发送报文的所有分片报文传输到所述处理芯片530的某个緩存区间后,还可以通过该处理芯片530的发送模块533将待发送报文的所有分片报文传输到外部存储器。以上报文传输处理装置的实施例中,所述缓存区间的緩存容量大于或等于緩存一个最长的完整报文所需的緩存容量;当待发送报文的所有分片报文向处理芯片的某緩存区间传输完毕后,所述检测模块还用于将该緩存区间的緩存标志位由无效状态修改为有效状态。图6为本发明"R文传输处理装置实施例三的结构示意图。该实施例中的接收芯片输出端的线路为ATM线路,分片报文为ATM信元,完整报文以AAL5报文为例,对报文传输处理装置的具体结构进行说明。该实施例中的报文传输处理装置,包括依次连接的接收芯片610、双数据速率(DoubleDataRate,简称DDR)总线620及处理芯片630;接收芯片610通过ATM线路640接收ATM信元。处理芯片630包括多个緩存区间631(图6只画出了一个緩存区间631),该緩存区间631设有一个缓存标志位632。接收芯片610可以包括ATM接收模块611,用于接收ATM信元并緩存ATM信元;检测模块612,与接收模块611连接,用于检测处理芯片630中緩存区间631中緩存标志位632的状态信息,当检测到处理芯片630中緩存标志位为无效状态时,在第一DDR总线控制器613的控制下通过DDR总线将待发送报文的所有分片报文传输到该緩存区间631;当检测到处理芯片630中緩存的报文为有效状态时,停止向该緩存区间631发送分片报文。处理芯片630还可以包括第二DDR总线控制器634,与緩存区间631及发送模块633分别连接,用于控制緩存区间631通过处理芯片630的发送模块633将待发送报文的所有分片报文传输到外部存储器660。发送模块633在第一PCI总线控制器635的控制下通过PCI总线将待发送报文的所有分片报文传输到外部存储器660。当发送模块633将待发送报文的所有分片报文传输到外部存储器660完毕后,可以通知緩存区间631的緩存标志位632,将緩存标志位632的状态信息由有效状态修改为无效状态。该实施例中,处理芯片630通过外围总线互连(PeripheralComponentsInterconnect,筒称PCI)总线650与外部存储器660连接。外部存储器660可以包括第二PCI总线控制器661,用于控制外部存储器660接收由PCI总线650传输的报文;緩存模块662,用于接收并缓存由PCI总线650传输的报文。由于处理芯片630中存储的报文为完整报文,相应地,外部存储器660能够获得完整报文,从而保证最终传输给外部存储器的数据为有效数据,提高了系统性能。最后应说明的是以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。权利要求1、一种报文传输处理方法,包括接收芯片接收由线路传输的信元,所述信元包括信元头和分片报文;接收芯片检测到处理芯片中缓存标志位为无效状态时,将待发送报文的所有分片报文传输到处理芯片。2、根据权利要求1所述的报文传输处理方法,其特征在于,所述处理芯片包括一个或多个緩存区间,每个緩存区间设有一个緩存标志位,该方法包括当接收芯片检测到处理芯片中某个緩存区间的緩存标志位为无效状态时,将待发送报文的所有分片报文传输到该緩存区间;当接收芯片检测到处理芯片中某个緩存区间的緩存标志位为有效状态时,停止向该緩存区间发送分片报文。3、根据权利要求2所述的报文传输处理方法,其特征在于,还包括接将该緩存区间的緩存标志位由无效状态修改为有效状态。4、根据权利要求2所述的报文传输处理方法,其特征在于,当某緩存区间接收到待发送报文的所有分片报文后,还包括处理芯片将该緩存区间中待发送报文向外传输;处理芯片将该緩存区间中的待发送报文向外传输完毕后,将该緩存区间的緩存标志位由有效状态修改为无效状态。5、根据权利要求l-4所述的任一报文传输处理方法,其特征在于,接收芯片将待发送报文的所有分片报文传输到处理芯片具体为接收芯片通过总线将待发送报文的所有分片报文传输到处理芯片,所述总线的传输速率大于所述线路的最大传输速率。6、一种报文传输处理装置,其特征在于,包括相互连接的接收芯片及处理芯片;所述处理芯片包括緩存标志位;所述接收芯片包括接收模块,用于接收由线路传输的信元,所述信元包括信元头和分片报文;检测模块,与接收模块及处理芯片分别连接,用于检测处理芯片中緩存标志位的状态信息,当检测到緩存标志位为无效状态时,将接收模块中待发送报文的所有分片报文传输到处理芯片。7、根据权利要求6所述的报文传输处理装置,其特征在于,所述处理芯片包括一个或多个緩存区间,每个緩存区间设有一个緩存标志位;所述检测模块,与接收模块及处理芯片的緩存区间分别连接,用于检测处理芯片中緩存区间的緩存标志位的状态信息,当检测到某个緩存区间的緩存标志位为无效状态时,将待发送报文的所有分片^R文传输到该緩存区间;当检测到处理芯片中某个緩存区间的緩存标志位为有效状态时,停止向该緩存区间发送分片报文。8、根据权利要求7所述的报文传输处理装置,其特征在于,当待发送报文的所有分片报文向处理芯片的某緩存区间传输完毕后,所述检测模块还用于将该緩存区间的緩存标志位由无效状态修改为有效状态。9、根据权利要求7所述的报文传输处理装置,其特征在于,所述处理芯片还包括发送模块,用于将緩存区间中待发送报文向外传输,当将緩存区间中的待发送报文向外传输完毕后,所述发送模块还用于将该緩存区间的緩存标志位由有效状态修改为无效状态。10、根据权利要求6-9所述的任一报文传输处理装置,其特征在于,还包括总线,所述总线的传输速率大于所述线路的最大传输速率;接收芯片通过总线与处理芯片连接,当接收芯片检测到緩存标志位为无效状态时,通过总线将待发送报文的所有分片报文传输到处理芯片。全文摘要本发明涉及一种报文传输处理方法及装置。一种报文传输处理方法包括接收芯片接收由线路传输的信元,所述信元包括信元头和分片报文;接收芯片检测到处理芯片中缓存标志位为无效状态时,将待发送报文的所有分片报文传输到处理芯片。一种报文传输处理装置包括相互连接的接收芯片及处理芯片;所述处理芯片包括缓存标志位;所述接收芯片包括接收模块,用于接收由线路传输的信元;检测模块,与接收模块及处理芯片分别连接,用于当检测到缓存标志位为无效状态时,将接收模块中待发送报文的所有分片报文传输到处理芯片。本发明保证了接收芯片传输到处理芯片的数据为有效数据,处理芯片中缓存的报文为完整报文。文档编号H04L12/56GK101247347SQ200810101659公开日2008年8月20日申请日期2008年3月10日优先权日2008年3月10日发明者航吴申请人:福建星网锐捷网络有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1