数据交换方法及设备的制作方法

文档序号:7929878阅读:195来源:国知局

专利名称::数据交换方法及设备的制作方法
技术领域
:本发明涉及通信
技术领域
,尤其涉及一种数据交换方法及设备。
背景技术
:目前,随着通信网络朝着全因特网协议(InternetProtocol,IP)网络(ALLIP)的方向发展,IP分组交换网上的业务种类如移动、语音、视频、网络游戏、网络浏览等越来越多,相应地,带宽要求也越来越大。为了保证很多原本运行在时分复用(TimeDivisionMultiplex,TDM)网络上的实时业务能够很好的运行在IP网络上,IP网络必须进行复杂的业务分类,并且尽量简化IP交换设备的处理流程,提高IP交换设备的处理效率和质量。在大型交换机或者路由器等通信设备系统如包括以太网(Ethernet)、IP等中,交换网是连接各个不同线路卡(LineCard),简化设备架构的必要技术和手段。交换网和线路卡构成了一个完整的包交换系统(PacketSwitchingSystem),完成包的交换。交换的指标有吞吐率(接近100%最佳),平均信元(包)时延,信元(包)时延抖动,信元(包)丢失率,阻塞概率等。好的交换设备当然是尽量做到吞吐率接近100%,平均信元(包)时延、信元(包)时延抖动、信元(包)丢失率和阻塞概率尽量小。现有技术中,为了尽量优化交换系统性能,采取了两种交换架构。一种是推(PUSH)的交换架构,另外一种是拉(PULL)的交换架构。由于包交换网络的流量的突发性,需要在交换网的上下行增加复杂的调度机制、反压机制和仲裁机制,额外增加了很多成本。PUSH的交换结构原理框图如图1所示,主要分为三大模块输入处理(Ingress)模块、交换网(Fabric)模块、输出处理(Egress)模块。输入处理模块主要由输入端口(InputPort,IP)子模块、输出端口(0utputPort,0P)子模块、虚输出队列(VirtualOutputQueue,V0Q)子模块、调度程序(Scheduler)子模块四部分组成,IP子模块执行简单的识别、分类和拆分等处理操作。VOQ子模块主要用来根据目的地址和优先级来进行分类排队。调度子模块根据信元(或报文)头部所包含的目的,优先级信息向交换网模块发起交换请求,并根据交换网模块反馈的信息来决定送给交换网模块的信元(或者报文)。OP子模块对信元头和信元净荷进行重组后发给交换网模块。交换网模i央由数据交换(DataSwitch)子模块和交换网调度(FabricScheduler)子模块组成。前者主要用来给进来的信元(或者报文)搭建一条交换的通道。后者主要用来控制交换通道的建立。输出处理模块由IP子模块、输出队列(OutputQueue,0Q)子模块、调度子模块和0P子模块四部分组成。IP子模块和OP子模块的功能同输入处理模块。OQ子模块用来对从交换网模块过来的信元(或者报文)进行重组。调度子模块用来监视OQ的状态,并且根据0Q子模块的状态向输入处理模块采取措施如反压。PUSH交换流程中,在输入处理模块交换时不考虑下游输出处理模块的承受能力,交换网模块同意即进行交换,只在交换后通过输出处理模块的反馈来调整自己的发送,交换的主导权在交换网模块。PUSH交换流程如下信元(或者报文)进入输入处理模块;输入处理模块中的IP经过识别后,将净荷存入VOQ中,将头部信息存入调度子模块中;待轮到以上信元交换前,输入处理模块调度程序向交换网调度子模块发起请求,要求交换网模块在交换网模块的某输入端口和某输出端口之间为其交换搭建物理链路;输入处理模块的调度子模块得到交换网调度子模块的授权后,将信元(或者报文)头部和净荷重新组合后经过OP发送给交换网模块;进入交换网模块的信元(或者报文),在数据交换子模块中已经为其搭建的物理链路上交换给输出处理模块;输出处理模块中的IP经过识别后,将信元(或者报文)的头部和净荷分离后分别存至调度子模块和OQ中;待OP调度到所对应的信元(或者报文)时。位于OQ中的净荷和位于调度子模块中的信元(或者报文)头部重新组合;OP将信元(或者报文)从输出处理模块送出。PULL交换架构的原理框图如图2所示,主要分为三大模块输入处理模块、交换网模块、输出处理模块。输入处理模块主要由VOQ子模块组成,VOQ子模块主要用来根据目的地址和优先级来进行分类排队,并且根据端口轮询,队列的状态和业务优先级发起交换请求。交换网模块由数据交换(DataSwitch)子模块和控制交换(ControlSwitch)子模块组成。前者主要用来给进来的信元(或者报文)搭建一条交换的通道。后者主要用来为控制信息(请求、授权、队列状态之类的信息)建立一条交换的通道。输出处理模块由OQ子模块、调度子模块组成。OQ子模块用来对从交换网模块过来的信元(或者报文)进行重组;调度子模块用来监视OQ子模块的状态,并且根据OQ子模块的状态向输入处理模块采取措施如允许交换,禁止交换等。PULL交换架构中,输出处理模块根据自己的OQ状态信息来"拉"输入处理模块的信元(或报文)来交换。这时候,交换的主导权在输出处理模块。PULL交换流程如下信元(或者报文)进入输入处理模块;输入处理模块根据信元(或者报文)头部信息到达对应的VOQ中;待轮到以上信元交换前,输入处理模块输出处理模块发起请求,要求交换网模块在交换网模块的某输入端口和某输出端口之间为其交换搭建物理链路;输入处理模块的请求信息到达交换网模块时,经过控制交换子模块的交换到达输出处理模块;输出处理模块在接收到输入处理模块的请求后搜集自己对应OQ的队列信息。输出处理模块在自己对应OQ队列接收信元(或者报文)时,向输入处理模块发出令牌信息(Credit),允许其交换;当输出处理模块的令牌信息到达交换网模块时,交换网模块会为接下来的交换搭建一条物理通道,已备交换;输入处理模块的得到输出处理模块的授权后,将信元(或者报文)发送给交换网模块;进入交换网模块的信元(或者报文),在数据交换子模块中已经为其搭建的物理链路上交换给输出处理模块。输出处理模块将信元(或者报文)存至0Q子模块中。待OP子模块调度到所对应的信元(或者报文)时,将对应的信元发送出输出处理模块。在实现本发明的过程中,发明人发现第一种现有技术至少存在以下缺陷—、由于上游过来的报文数量和到达下游的某个端口的报文的数量无法预知,需要在输入处理模块和输出处理模块中设置大量缓存来存取V0Q和0Q;二、反压机制复杂,输出处理模块中的OQ队列达到一定的水线时,就需要反压,反压信息要通过交换网模块,再达到输入处理模块,输入处理模块再继续向前反压;三、交换网模块不清楚上下游的报文流量,只是机械地按照自己的调度算法响应输入处理模块的请求,并交换,在输入处理模块和输出处理模块反压不及时时容易出现丢包;四、交换的延时抖动和丢包率会较大。第二种现有技术至少存在以下缺陷—、交换网内部需要为数据交换和控制信息交换准备两个交换矩阵,使交换网模块交换功能复杂;二、从交换的发起到交换的完成需要经过的步骤过于复杂,容易造成输入处理模块的丢包或者需要增大输入处理模块的缓存量;三、交换的平均延时较大。
发明内容本发明实施例提出一种数据交换方法及设备,以简化数据交换的处理流程。本发明实施例提供了一种数据交换方法,包括获取交换网模块上下游的业务属性信息;将所述业务属性信息转换为交换控制信息;根据所述交换控制信息建立数据交换物理链路并调度数据;利用所述数据交换物理链路交换调度的数据。本发明实施例还提供了一种数据交换设备,包括输入处理模块、交换网模块及输出处理模块,所述交换网模块包括数据交换子模块、交换网调度子模块,其中,所述交换网模块还包括动态带宽分配子模块,用于获取交换网模块上下游的业务属性信息,并将所述业务属性信息转换为交换控制信息;相应地,所述交换网调度子模块将所述动态带宽分配子模块生成的交换控制信息转换为交换控制表,并根据所述交换控制信息调度数据;所述数据交换子模块根据所述交换控制表建立数据交换物理链路。上述实施例通过获取业务属性信息,并根据业务属性信息控制数据交换,简化了数据交换的处理流程,降低了交换平均时延、时延抖动以及丢包率。下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。图1为现有技术中PUSH的交换结构原理框图;图2为现有技术中PULL交换架构的原理框图;图3A为本发明数据交换设备实施例的结构示意图;图3B为本发明数据交换设备实施例交换网模块的结构示意图;图4为本发明数据交换设备实施例中DBA子模块36获得的业务属性信息发生变更时的处理流程图;图5为本发明数据交换设备实施例中输入处理模块31将M输入端口输入的业务数据放到队列中的处理流程图;图6为本发明数据交换设备实施例中输入处理模块31队列中的数据进入交换的处理流程图;图7为本发明数据交换设备实施例进行数据交换的流程图;图8为本发明数据交换方法实施例所应用的包交换系统示意图;图9为本发明数据交换方法实施例的流程图。具体实施例方式图3A为本发明数据交换设备实施例的结构示意图。数据交换设备包括输入处理模块31、交换网模块32及输出处理模块33。输入处理模块31中只有VOQ按照需要交换的目的端口进入相应的队列,并能够根据队列的状态反压。交换网模块32可包括数据交换子模块34、交换网调度子模块35及动态带宽分配(DynamicBandwidthAllocation,DBA)子模块36。DBA子模块36用于获取交换网模块32上下游的业务属性信息,并将业务属性信息转换为交换控制信息,来控制交换网模块32的调度,同时控制数据交换物理链路的搭建。其中上下游的业务属性信息指输入处理模块31及输出处理模块33中的业务属性信息。交换网调度子模块35用于将交换控制信息转换为交换控制表,并根据交换控制信息调度数据。数据交换子模块34用于根据交换控制表搭建数据交换物理链路;输出处理模块33中只有0Q用来缓存从交换网模块32交换过来的报文。图3B为本发明数据交换设备实施例交换网模块的结构示意图。交换网模块包括数据交换子模块34、交换网调度子模块35及DBA子模块36。交换网调度子模块35与DBA子模块36相连;DBA子模块36为DBA功能模块,用于获取交换网模块上下游的业务属性信息,并将业务属性信息转换为交换控制信息;交换网调度子模块35将所述交换控制信息转换为数据交换子模块34可识别的交换控制表,并根据所述交换控制信息调度数据;数据交换子模块34根据交换控制表搭建数据交换物理链路。DBA子模块36获取的业务属性信息包括源端口与目的端口每秒钟的业务流量以及业务优先级。DBA子模块36将业务属性信息中的每秒钟的业务流量转换为轮询时间信息;将业务属性信息中的业务优先级转换为轮询权重信息。交换网调度子模块35在交换控制信息的控制下,对于从不同源端口到同一目的端口的数据采用轮询(RoundRobin,RR)调度,对于从同一源端口到同一目的端口的不同业务优先级的数据采用加权轮询(WeightedRoundRobin,WRR)调度。交换网模块还可包括写入模块、切换模块。写入模块用于将交换控制信息写入备交换控制表;切换模块用于将备交换控制表切换到主交换控制表。本实施例中,交换网模块通过DBA功能模块获取宽带信息,并将宽带信息转换为交换控制信息,使得输入处理模块将数据放入队列后,只需等待调度通知;接收到等待调度通知后输出相应数据即可,而无需输入处理模块去请求,也无需交换网模块与输出处理模块进行交换,便可得到交换网模块的授权进行数据交换,大大简化了数据交换的处理流程,减少了交换平均时延,提高了数据交换效率。上述数据交换设备也可为用于数据交换的路由器及大型的交换机。DBA子模块36获取的业务属性信息包括源端口与目的端口每秒钟的业务流量以及业务的优先级。如表l所示。表1业务属性信息<table>tableseeoriginaldocumentpage8</column></row><table>其中,目的端口和源端口是指交换网模块32的源端口和目的端口。带宽分配是指经过源端口和目的端口的每秒钟的业务流量。业务优先级是指在源端口和目的端口上经过的业务的优先级。由DBA子模块36获得的业务属性信息转换得到的交换控制信息如表2所示。表2控制信息<table>tableseeoriginaldocumentpage8</column></row><table><table>tableseeoriginaldocumentpage9</column></row><table>其中,轮询权重与表1中的业务优先级相对应,轮询时间与表1中的带宽分配相对应。轮询时间的单位为时隙,即传输l兆(M)比特数据所需的时间。轮询时间也即链路占用的时间,由于链路的带宽固定,即单位时间传送的信息流量不变,因而,时间越长,所能经过该链路的流量也就越多。由交换网模块32根据控制信息去控制轮询哪个端口,以及轮询的时间长短,输入和输出端口之间的带宽越大,轮询的时间就越长。输入处理模块31和输出处理模块33只进行缓存和接口处理。当DBA子模块36获得的业务属性信息发生变更时,按照如图4所示的流程图来处理。其中,主交换控制表是指当前正在使用的交换控制表,在正常交换的过程中,不能进行操作。在交换控制信息由于上下游带宽发生变化需要更新时,先将需要更新的交换矩阵放到备交换控制表中备用。输入处理模块31的内部处理流程如图5、图6所示。图5为本发明数据交换设备实施例中输入处理模块31将M输入端口输入的业务数据放到队列中的处理流程图。图6为本发明数据交换设备实施例中输入处理模块31队列中的数据进入交换的处理流程图。使用上述设备实施例中的数据交换设备进行数据交换的流程如图7所示,包括步骤71:信元(或者报文)进入输入处理模块;步骤72:输入处理模块根据信元(或者报文)所要到达的目的端口和优先级进行分类,进入不同的队列;步骤73:交换网模块根据内部的DBA功能模块获取的业务属性信息向输入处理模块发送令牌,指示输入处理模块的达到某端口的信元(或者数据包)在一定时间内交换数据;步骤74:输入处理模块收到令牌之后,对应队列的信元(或者报文)发送给交换网模块;步骤75:交换网模块在接收到信元(或者报文)后在已经搭建的物理链路上交换到对应端口;步骤76:输出处理模块收到信元(或者报文)放到OQ中,等待调度出输出处理模块;步骤77、步骤78:输出处理模块将信元送出其模块外面。图8为本发明数据交换方法实施例所应用的包交换系统示意图。一条包业务(packettraffic)进入到包交换系统中,根据路由将包业务的中的包业务1、包业务2和包业务3分别交换到不同的线路卡,然后传送到下游不同的站点即类似的包交换系统。图9为本发明数据交换方法实施例的流程图。交换流程可包括步骤91、获取交换网模块上下游的业务属性信息;步骤92、将业务属性信息转换为交换控制信息;步骤93、根据交换控制信息搭建数据交换物理链路并调度数据;步骤94、利用所述数据交换物理链路交换调度的数据。上述步骤91中,获取交换网模块上下游的业务属性信息可包括获取源端口与目的端口每秒钟的业务流量以及业务的优先级。上述步骤92中,将业务属性信息转换为交换控制信息可包括将业务属性信息中的每秒钟的业务流量转换为轮询时间信息;将业务属性信息中的业务优先级转换为轮询权重信息。调度数据可包括在所述交换控制信息的控制下,对于从同一源端口到同一目的端口的不同业务优先级的数据采用RR调度方式调度;在所述交换控制信息的控制下,对于从不同源端口到同一目的端口的数据采用WRR调度方式调度。其中,RR调度如从端口1、端口2、端口3端口都有到端口4的数据,这时候,端口4先轮询端口l,然后轮询端口2、端口3,最后又是端口1、端口2,端口3,每个端口获得调度的机会均等;WRR调度时,端口的权重数值越大,获得的调度的机会就越多。当交换控制信息为新的交换控制信息时,数据交换方法还可包括将该交换控制信息写入备交换控制表;将备交换控制表切换到主交换控制表。本实施例中,通过获取业务属性信息,并将业务属性信息转换为交换控制信息,使得数据所属的输入处理模块将数据放入队列后,只需等待调度通知,接收到等待调度通知后输出数据即可,而无需输入处理模块去请求,也无需交换网模块与输出处理模块进行交换,便可得到交换网模块的授权进行数据交换,大大简化了数据交换的处理流程,减少了交换平均时延,提高了数据交换效率。上述设备及方法实施例中,数据交换设备通过将动DBA功能模块引入交换网模块中,以获得上游输入处理模块和下游输出处理模块的业务属性信息。并根据获得的业务属性信息来调整交换网调度子模块的调度策略。通过引入DBA功能模块,交换网模块不需要等待输入处理模块的请求,而直接按照输入处理模块的需求来进行调度交换;同时,由于交换网模块知道输出处理模块所能承受的业务属性信息,使得输出处理模块也不需要产生反压信号和过多的缓存。因而输入处理模块和输出处理模块的调度异常简单,大大减少了处理负荷,提高了数据交换效率,减少了交换时延,从而减少了交换时延抖动及丢包率。本领域普通技术人员可以理解实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括R0M、RAM、磁碟或者光盘等各种可以存储程序代码的介质。最后应说明的是以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替10换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。权利要求一种数据交换方法,其特征在于,包括获取交换网模块上下游的业务属性信息;将所述业务属性信息转换为交换控制信息;根据所述交换控制信息建立数据交换物理链路并调度数据;利用所述数据交换物理链路交换调度的数据。2.根据权利要求1所述的数据交换方法,其特征在于,获取交换网模块上下游的业务属性信息包括获取源端口与目的端口每秒钟的业务流量以及业务优先级。3.根据权利要求2所述的数据交换方法,其特征在于,将所述业务属性信息转换为交换控制信息包括将所述业务属性信息中的每秒钟的业务流量转换为轮询时间信息;将所述业务属性信息中的业务优先级转换为轮询权重信息。4.根据权利要求1至3中任一项所述的数据交换方法,其特征在于,所述调度数据具体包括在所述控制信息的控制下对于从不同源端口到同一目的端口的数据采用轮询调度;在所述控制信息的控制下对于从同一源端口到同一目的端口的不同业务优先级的数据采用加权轮询调度。5.根据权利要求1至3中任一项所述的数据交换方法,其特征在于,还包括将所述交换控制信息写入备交换控制表;将所述备交换控制表切换到主交换控制表。6.—种数据交换设备,包括输入处理模块、交换网模块及输出处理模块,所述交换网模块包括数据交换子模块、交换网调度子模块,其特征在于,所述交换网模块还包括动态带宽分配子模块,用于获取交换网模块上下游的业务属性信息,并将所述业务属性信息转换为交换控制信息;相应地,所述交换网调度子模块将所述动态带宽分配子模块生成的交换控制信息转换为交换控制表,并根据所述交换控制信息调度数据;所述数据交换子模块根据所述交换控制表建立数据交换物理链路。7.根据权利要求6所述的数据交换设备,其特征在于,所述动态带宽分配子模块获取的业务属性信息包括源端口与目的端口每秒钟的业务流量以及业务优先级。8.根据权利要求7所述的数据交换设备,其特征在于,所述动态带宽分配子模块将所述业务属性信息中的每秒钟的业务流量转换为轮询时间信息,将所述业务属性信息中的业务优先级转换为轮询权重信息。9.根据权利要求8所述的数据交换设备,其特征在于,所述交换网调度子模块根据所述交换控制信息对于从不同源端口到同一目的端口的数据采用轮询调度;在所述交换控制信息的控制下对于从同一源端口到同一目的端口的不同业务优先级的数据采用加权轮询调度。10.根据权利要求6至9中任一项所述的数据交换设备,其特征在于,还包括写入模块,用于将所述交换控制信息写入备交换控制表;切换模块,用于将所述备交换控制表切换到主交换控制表。11.根据权利要求6至9中任一项所述的数据交换设备,其特征在于,所述输入处理模块具体用于将所述数据放入队列后等待调度通知;接收到等待调度通知后输出所述数据。全文摘要本发明涉及一种数据交换方法及设备,方法包括获取交换网模块上下游的业务属性信息;将所述业务属性信息转换为交换控制信息;根据所述交换控制信息建立数据交换物理链路并调度数据;利用所述数据交换物理链路交换调度的数据。设备包括输入处理模块、交换网模块及输出处理模块,所述交换网模块包括数据交换子模块、交换网调度子模块,其中,所述交换网模块还包括数据交换子模块、交换网调度子模块及动态带宽分配子模块。通过获取业务属性信息,根据业务属性信息控制数据交换,简化了数据交换的处理流程。文档编号H04L12/56GK101771603SQ20081024700公开日2010年7月7日申请日期2008年12月29日优先权日2008年12月29日发明者李江,申小军,胡幸,邹世敏,陈桂培申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1