CN1244252C - 用于管理交换机内分组队列的方法与设备 - Google Patents
用于管理交换机内分组队列的方法与设备 Download PDFInfo
- Publication number
- CN1244252C CN1244252C CNB018086357A CN01808635A CN1244252C CN 1244252 C CN1244252 C CN 1244252C CN B018086357 A CNB018086357 A CN B018086357A CN 01808635 A CN01808635 A CN 01808635A CN 1244252 C CN1244252 C CN 1244252C
- Authority
- CN
- China
- Prior art keywords
- data flow
- level storage
- priority
- output port
- primary memory
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/10—Packet switching elements characterised by the switching fabric construction
- H04L49/104—Asynchronous transfer mode [ATM] switching fabrics
- H04L49/105—ATM switching elements
- H04L49/108—ATM switching elements using shared central buffer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q11/00—Selecting arrangements for multiplex systems
- H04Q11/04—Selecting arrangements for multiplex systems for time-division multiplexing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5638—Services, e.g. multimedia, GOS, QOS
- H04L2012/5646—Cell characteristics, e.g. loss, delay, jitter, sequence integrity
- H04L2012/5651—Priority, marking, classes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5678—Traffic aspects, e.g. arbitration, load balancing, smoothing, buffer management
- H04L2012/5679—Arbitration or scheduling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5678—Traffic aspects, e.g. arbitration, load balancing, smoothing, buffer management
- H04L2012/5681—Buffer or queue management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5678—Traffic aspects, e.g. arbitration, load balancing, smoothing, buffer management
- H04L2012/5681—Buffer or queue management
- H04L2012/5682—Threshold; Watermark
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/13103—Memory
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/1325—Priority service
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/13296—Packet switching, X.25, frame relay
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/1332—Logic circuits
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/13322—Integrated circuits
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及一种管理交换机中分组队列的方法,所述交换机具有一个有限的初级存储器,所述初级存储器包含多个用于在输入端口与输出端口间交换数据分组的队列,并被连接到较大的次级存储器,所述次级存储器同样也包含多个队列,所述方法包括步骤:将所述输入端口中输入的、计划到各自输出端口的数据流分为两部分,其中第一部分包含将被发送至所述初级存储器的输出端口队列的数据流,第二部分包含将被发送至所述次级存储器的数据流。
Description
技术领域
本发明涉及一种用于管理交换机内分组队列的方法与设备。该交换机具有分成小内部存储器与大外部存储器的共享存储器。存在至外部存储器的有限带宽。通常,该交换机用于将数据分组从输入端口发送到输出端口。连接至输出端口的输出链路的数据速率可能会低于输入数据流的数据速率。这可能有各种原因,例如倘若若干输入端口向同一个输出端口发送分组,将碰撞或暂停消息发送至输出端口。本发明提供一种方法与设备,用于管理交换机中内部队列并在内部存储器与外部存储器之间分割输入数据流。本发明还监控和识别何时以及哪些信息流应当被通过外部存储器转移或被汇集回内部存储器内。
背景技术
为各种原因而分割数据流已为人们所知。在日本公布的文献号JP59-103147的文献中示出了一种A/D转换器,它具有两个平行的缓冲器。从所述A/D转换器给出的数据将被分割以便依据缓冲器的占用交替地存储在缓冲器的其中一个内。日本公布的文献号JP11-008631的文献示出了一种ATM信元传输流控制系统,它具有分开的缓冲器。日本公布的文献号JP03-100783的文献示出了一种队列缓冲器系统,它包括队列缓冲器及外部存储器。当队列缓冲器被令牌装满时,溢出队列缓冲器的令牌被写入外部存储器。
因此,需要一种分组交换机内的队列管理系统,以使内部存储器和队列能够与外部存储器协作,而不存在无必要的对服务于运行良好业务的输出端口的阻塞。通过外部存储器发送的数据量应当尽可能地小。
发明内容
本发明通过将计划到一个输出端口的输入数据流分为对应于输出端口容量的一部分,和将被发送至外部存储器的第二部分来解决这一问题。数据流的分割可以基于优先级和/或数据流组来执行。同样,数据可被并回到内部存储器,这样分组将不会被在分开的数据流内重新排序。
根据本发明的一个方面,提供了一种管理交换机中分组队列的方法,所述交换机具有一个有限的初级存储器,所述初级存储器包含多个用于在输入端口与输出端口间交换数据分组的队列,并被连接到较大的次级存储器,所述次级存储器同样也包含多个队列,
所述方法包括步骤:
将所述输入端口中输入的、计划到各自输出端口的数据流分为两部分,其中第一部分包含将被发送至所述初级存储器的输出端口队列的数据流,第二部分包含将被发送至所述次级存储器的数据流。
根据本发明的另一个方面,提供了一种用于管理交换机中分组队列的设备,其中所述交换机具有一个有限的初级存储器,所述初级存储器包含多个用于在输入端口与输出端口间交换数据分组的队列,并被连接到较大的次级存储器,所述次级存储器同样也包含多个队列,
所述设备包括:
用于将所述输入端口上输入的、计划到各自输出端口的数据流分为两部分的装置,其中第一部分包含将被发送至所述初级存储器的输出端口队列的数据流,第二部分则包含将被发送至所述次级存储器的数据流。
可能会执行数据流的分割,这样第一部分数据流的总负载将低于或等于输出端口的总输出容量。
输入数据流可能会被识别为属于优先级组,数据流的划分然后被执行,这样具有高于分割门限的优先级的数据组将被在第一部分内发送至所述内部队列,而具有低于所述门限的优先级的数据组将被在第二部分内发送至外部存储器。
附图说明
以下将参照附图详细描述本发明,在附图中:
图1是根据本发明的存储器结构的方框图,
图2是数据流的简图,以及
图3是数据流的优先级组的简图。
具体实施方式
交换机的一般功能是将在多个输入端口处的输入链路上接收的数据转发至输出端口处的输出链路。数据的形式是分组,而每一个分组都具有对应于输出链路的自身目的地址。
图1示出了根据本发明的交换机的存储器结构。
所述交换机包括具有初级存储器的芯片1,初级存储器用于在将它们于输出端口3上发送之前暂时存储输入端口2上接收的数据分组。初级存储器一般是芯片内的一个小而快速的存储器。芯片上的逻辑功能块4检测数据分组的地址部分,这样分组可被转发到适当的输出端口。
根据本发明的这一实施例,数据分组并不被存储在输入端口2处,而是被存储在输出端口3处缓冲器或输出队列5内,缓冲器或输出队列5等待它们开始被在输出链路上发送。每个输出端口3都可能在提供各自输出队列的初级存储器内具有预定的存储区,图中仅示出了一个所述的输出队列。
连接至输出端口的输出链路的数据速率可能会低于输入数据流的数据速率。这可能有各种原因,例如倘若若干输入端口将分组发送至同一输出端口,将碰撞或暂停消息发送至输出端口。因此,在各个输出端口内都存在着溢出的风险。芯片1与次级存储器7相协作以阻止这种情况的发生。次级存储器一般是具有较大容量的外部存储器。外部存储器同样被设置为队列10,它用于存储等待被在输出链路上发送的分组。有限的带宽使其与内部存储器相比较慢。
芯片1还带有第三存储器,它用于暂时存储等待被发送至外部存储器7或以下将解释的输出队列5的数据分组。第三存储器一般是缓冲器或作为内部初级存储器一部分的存储队列6。
调度器(未示出)负责从内部队列5和外部存储器7的队列10中选择将被在输出链路上发送的分组。每个输出端口都带有芯片上的独立的调度器,但它们共用来自外部存储器的同一个带宽。调度器的各种设计与操作方法为本领域技术人员所知。这样的调度器并不构成本发明的一部分。
参照图2,可以看到属于一个输出端口的数据流。左边是输入数据流(A+B),它大于输出端口的输出容量D(例如1Gbi+/s)。本发明的基本构思是当输入数据流变得大于输出端口的输出容量时,仅将其一部分而非全部转向次级(外部)存储器。因此可以看到,数据流的第一部分A被发送至初级存储器的内部队列,而第二部分B被发送至外部存储器(经过存储队列6)。第一部分可能会被选择为略小于输出端口的输出容量D,这样小数据流C可能就会被从外部存储器并回到内部队列,原因将在下文中解释。数据流分割的结果是始终可以最大可能限度地利用输出端口的容量。输出端口通过将整个数据流转向外部存储器而不会被阻塞。
为了分割数据流,交换机必须能够将分组分为可识别数据流组。如上所述,这种识别可以基于优先级或其它一些非优先级(散列)值。每个输出端口至少具有一个队列。由于每个队列都需要空间,队列的数量一方面应尽可能的少。一种可能的实施是每个优先级组和输出端口一个队列,每个队列包括多个数据流(散列)组。不同队列内的数据流组的数量可能有所不同。但另一方面,排列的数量越多则实现的量化间隔越好,即可能实现更精确的数据流分割。因此,也可以考虑向每个优先级组提供多个队列,每个队列包括一部分数据流(散列)组,甚至可以考虑向每个优先级值、散列值和输出端口提供一个队列。
数据流的数据分组在大部分情况下并不具有相同的优先级,一些分组会被先于其它分组服务,从而在交换机内经历较少的时延。图3示出了优先级组的实例。所示出的系统包括八个优先级组,其中组0是最高优先级。可能会执行数据流分割,这样诸如组0至3的具有最高优先级的组会被置于将被发送至内部队列的第一部分A内,组4至7则会被置于将被发送至外部存储器的第二部分B内。在这种情况下,分割门限将位于组3和4之间。如上所述,使用任何数量的组以及选择其它优先级系统都是可能的。
每个优先级组也可能被分为子组以实现更好的量化间隔。量化间隔越好,被直接发送至内部队列的部分A就会越精确的适合。在本实例中,每个优先级组被分为四个所谓的散列组。散列组是借助优先级之外的其它准则而形成的。在本发明的优选实施例中,散列组是通过检查到达数据分组的一部分并且基于该部分计算一个值来形成的,这样的话,假若数据部分随机分布,则分组将会均匀分布在四个组内。适当的是,所使用的流信息在会话期间内是固定的,例如数据分组的始发或目的地址部分。这将导致散列组内具有逻辑连续性。
如图3所示,优先组被细分为散列组9(仅为组2示出)。由于优先组内的所有散列组都具有相同的优先级,可以选择任何一个散列组而不会破坏优先顺序。这意味着考虑到散列组中各不相同的业务负载,选择当前具有最适合业务量的散列组是可能的。
输入业务被存储并被指向适当的输出队列。为了实现数据流的适当分割,需要对每个队列上负载的某种测量。最简单的方式是为每个输出队列计算或设置一个固定值,例如总负载的相等部分。如果每个队列上的负载被实际测量则可以得到较好的结果。
输出端口的容量同样可被作为输入参数。有时,将该容量设置为约等于输出链路最大容量的固定值就足够了。但是,例如因为分组冲撞以及所接收的暂停消息而使该容量减少。那么将如下述地测量该容量以得到较好结果。
由于输入数据流根据各优先级和散列组内的业务(负载)量而波动,则分割门限将会根据可能的情况上升或下降。换言之,如果最高优先级组内的数据速率下降,则分割门限将上移(图3内),这样具有较低优先级的组内的业务也将被直接发送至内部队列。
具体地说,可如下执行数据流的分割。输入数据流被逻辑功能块4识别或分类为属于各优先级和散列组。每个组都具有固定或可变业务量,这在输入端口处检测。输出端口的带宽或数据速率同样被设置为固定值,或者例如被通过计数所传送数据量来测量。门限然后被计算出来,这样它将适合带宽。输出端口将被以最高优先组以及合适的散列组从底部填充。分割门限被设置在两个优先权组之间或一个优先权组内的两个散列组之间。
所述的门限应当始终被设置为略低于带宽。这有两个原因:量化间隔并不少于最小的组,即散列组;以及业务负载变化。如果门限被计算为位于散列组内,该门限仍必须被设置为恰好低于散列组,这样将不会冒溢出的风险。如果业务负载变化,该门限将无法跟随直至外部存储器空出,该门限将在一段时间内显得过低。
分割门限将被动态的设置,这样它可能会适合于当前业务情况。参照图3,它可能会下移,即更多的数据流组将被通过外部存储器发送,也可能在数据流并回到内部流时上移。由于数据的顺序并未被打乱,将更多的数据流交换至外部存储器将是直通的。
外部存储器7的构思是数据在一段时间后应当被返回以及并回到然后将被发送至其各自地址的数据流。(在一段时间后,一些数据可能会被删除。)因此,当检测到输入数据流的第一部分A内的数据流减少时,即当高优先权和散列组内直接到内部队列的数据流减少或输出端口3容量增加时,可能也会从外部存储器7发送分组。因此,当部分A内的业务减少时,调度器将开始从队列10中挑选分组,以填满部分C从而使来自内部队列5的数据流完整。
但这意味着数据流的一部分将通过外部存储器7迂回。为避免这种情况,数据流应当被尽可能快地并回到内部路由。
当数据流被并回时,外部存储器的各个排列在该数据流被交换到内部队列之前应当是完全空的。在启动汇集过程时,将在第三存储器(存储队列6)中设立相关组内数据流到外部存储器的阻塞,而外部存储器的队列10将是空的。当这被完成时,第三存储器的内容将移至初级存储器的内部队列,而数据流将被交换至直接到内部队列3的部分A。更可取的是,应当仅在外部10与第三存储器6的各自队列的长度小于预定值的情况下才启动汇集过程。同样,如果外部存储器的排列10的长度超过某个值,则应当中断汇集过程。然后,第三存储器6内的阻塞将被释放,数据流将被如启动汇集过程前一样地发送至外部存储器7。
外部存储器内的队列数量应当尽可能的少,优选的是为每个优先级组安排一个队列。因此,外部存储器并不区别具有相同优先级的散列组,它们将落在相同的队列内。当队列被清除时,这意味着整个优先级组将被从外部存储器清除。
例如假设检测到分割门限移动一级,这样更多具有较低优先级的优先级组(或散列组,如果外部存储器具有用于散列组的独立的队列)可能会被包括在直接流向内部队列的数据流内。在本实例中,门限被设置在组4与5之间。但在组4被交换到内部队列之前,先前存储在外部存储器7内的组4内的数据分组应当被从外部存储器发送。如果外部存储器7在优先级组4被交换之前清空所有属于组4的数据分组,则意味着数据分组的顺序得以保持。这样,所述的优先级组4并不被立即交换至内部队列。优先级组4内的输入分组继续被暂时存储在存储队列6内,但它们并不被发送至外部存储器7。首先,外部存储器7清除属于优先级组4的数据分组。当外部存储器7清除该组时,存储队列6的内容将被发送至内部队列。然后,优先级组4内的输入数据流将被交换以被直接发送至内部队列。
如果分割门限在另一方向上移动,即最高优先级和散列组内的业务增加,则低优先级散列组被简单地交换至外部存储器。在这种情况下,数据分组的顺序将被打乱。因此,门限将被设置在优先级组内散列组之间。
无论分割门限位于何处,输出端口处的调度器通常都以某一受控顺序从内部队列5与外部队列10选择分组。由于穿过外部存储器的数据流绝大多数都具有较低优先级,所以调度器首先从内部队列选择分组。如果内部队列是空的,它将检查外部存储器。但由于直接流至内部存储器的部分与经过外部存储器的部分的分割并不固定,一些流过外部存储器的数据和将被从内部队列发送的下一分组相比可能会具有更高的优先级。因此,如果调度器严格基于优先级来选择可能会更为有利。如果分组具有相同的优先级,则首先选择来自内部队列的分组。
由于输出端口的各种调度器共用同一个来自外部存储器的带宽,从一个输出端口来看,全部带宽可能会被其它端口占用。那么作为进一步的特征,各个调度器能够从内部队列读取,尽管这样将破坏优先级顺序。
可以看出,本发明提供了若干好处。始终可以保证最高优先级组内的最低等待时间可能。当输入数据流超过输出端口容量时没有完全的阻塞。保持通过外部存储器发送的数据量尽可能的少。从外部存储器返回数据时保持每一会话内数据分组的顺序。
已示出本发明的一个特定实施例。本领域技术人员将意识到可能会在未背离以下权利要求书定义的本发明范围的情况下改变端口数量、优先级和散列组等。
Claims (52)
1、一种管理交换机中分组队列的方法,所述交换机具有一个有限的初级存储器,所述初级存储器包含多个用于在输入端口与输出端口间交换数据分组的队列,并被连接到较大的次级存储器,所述次级存储器同样也包含多个队列,
所述方法包括步骤:
将所述输入端口中输入的、计划到各自输出端口的数据流分为两部分,其中第一部分包含将被发送至所述初级存储器的输出端口队列的数据流,第二部分包含将被发送至所述次级存储器的数据流。
2、根据权利要求1的方法,其中所述第二部分数据在其被发送至所述次级存储器之前被存储在第三存储器内。
3、根据权利要求2的方法,其中所述初级存储器是一芯片内的快速存储器,所述次级存储器在所述芯片之外。
4、根据权利要求3的方法,其中所述第三存储器被设置为存储用以形成初级存储器一部分的队列。
5、根据权利要求1的方法,其中所述输入数据流的数据被识别为属于数据流组,其中每个数据流组包含多个数据流。
6、根据权利要求5的方法,其中每个数据流组包括具有特定负载值的业务,并且执行所述数据流的分割,这样多个数据流组将被选择以被在所述第一部分中发送至所述初级存储器中的队列,而其它数据流组被在所述第二部分中发送至所述次级存储器,所述选择基于所述的负载值,以使所述数据流的第一部分适合所述输出端口的当前容量。
7、根据权利要求6的方法,其中每一数据流组的负载值被设置为固定值。
8、根据权利要求6的方法,其中所述负载值被通过测量所述数据流组中业务量来设置。
9、根据权利要求5的方法,其中所述输入数据流的每一数据分组基于固定数据流信息而被分配一个散列值,并且所述数据流组借助所述散列值而形成。
10、根据权利要求9的方法,其中执行所述数据流的分割,这样多个数据流组将被选择以被在所述第一部分中发送至所述初级存储器中的队列,而其它数据流组被在所述第二部分中发送至所述次级存储器,以使所述数据流的第一部分适合所述输出端口的当前容量。
11、根据权利要求5的方法,其中所述输入数据流的数据分组具有优先级值并被识别为属于优先级组,并且所述数据流组借助所述优先级而形成。
12、根据权利要求5的方法,其中所述输入数据流的数据分组具有优先级值并被分配一散列值,所述数据流组借助所述优先级值与所述散列值而形成,每个数据流组都具有优先级值与散列值的组合。
13、根据权利要求11或12的方法,其中多个队列包含具有相同优先级值的数据流组。
14、根据权利要求13的方法,其中执行所述数据流的分割,这样具有高于分割门限的优先级的优先级组被在所述第一部分中发送至所述初级存储器内的队列,而具有低于所述门限的优先权的优先权组被在所述第二部分内发送至所述次级存储器。
15、根据权利要求5的方法,其中多个数据流组被分配给初级存储器与次级存储器的每个队列。
16、根据权利要求1的方法,其中执行所述数据流的分割,这样所述第一部分数据流的总负载小于或等于所述输出端口的总输出容量。
17、根据权利要求16的方法,其中所述输出端口的总输出容量被设置为固定值。
18、根据权利要求16的方法,其中所述输出端口的总输出容量通过测量经过所述输出端口业务量来设置。
19、根据权利要求1的方法,其中调度器从所述初级存储器与所述次级存储器中选择分组。
20、根据权利要求19的方法,其中所述调度器首先从所述初级存储器选择分组,然后,如果所述初级存储器是空的,所述调度器将从所述次级存储器选择分组。
21、根据权利要求19的方法,其中所述数据分组具有优先级值,所述调度器严格基于优先级从所述初级存储器以及所述次级存储器中选择分组,并且如果分组具有相同的优先级,则首先选择来自所述初级存储器的分组。
22、根据权利要求21的方法,其中所述输出端口共享来自所述次级存储器的同一个带宽,而且从一个输出端口来看,当全部带宽由其它输出端口占用时,那么所述调度器能够从所述初级存储器读取,尽管这可能会破坏优先级顺序。
23、根据权利要求2的方法,其中数据流被从所述次级存储器汇集回初级存储器,这可以借助以下步骤:相关数据组内的数据流到所述次级存储器被阻塞,并被存储在所述第三存储器内,而所述次级存储器的队列被清空;当这被完成时,所述第三存储器的内容移至所述初级存储器的内部队列,而相关数据流被交换到所述第一部分。
24、根据权利要求23的方法,其中如果所述次级存储器与所述第三存储器的各自队列的长度小于预定值,方才启动所述汇集过程。
25、根据权利要求23的方法,其中如果通过释放所述第三存储器中的阻塞并且将数据流发送至所述次级存储器而使所述次级存储器各个队列的长度超过某一值,则中断所述汇集过程。
26、根据权利要求1的方法,其中如果当前位于所述输入数据流第一部分中的数据流的负载超过所述输出端口的容量,则所述第一部分中至少一个数据流将移动至所述第二部分。
27、一种用于管理交换机中分组队列的设备,其中所述交换机具有一个有限的初级存储器,所述初级存储器包含多个用于在输入端口与输出端口间交换数据分组的队列,并被连接到较大的次级存储器,所述次级存储器同样也包含多个队列,
所述设备包括:
用于将所述输入端口上输入的、计划到各自输出端口的数据流分为两部分的装置,其中第一部分包含将被发送至所述初级存储器的输出端口队列的数据流,第二部分则包含将被发送至所述次级存储器的数据流。
28、根据权利要求27的设备,其中所述第二部分数据在其被发送至所述次级存储器之前被存储在第三存储器内。
29、根据权利要求28的设备,其中所述初级存储器是一芯片内的快速存储器,所述次级存储器在所述芯片之外。
30、根据权利要求29的设备,其中所述第三存储器被设置为存储用以形成初级存储器一部分的队列。
31、根据权利要求27的设备,其中所述输入数据流的数据被识别为属于数据流组,每个数据流组包含多个数据流。
32、根据权利要求31的设备,其中每个数据流组包括具有特定负载值的业务,并且执行数据流的分割,这样多个数据流组将被选择以被在所述第一部分中发送至所述初级存储器内的队列,而其它数据流组被在所述第二部分中发送至所述次级存储器,所述选择基于所述负载值,以使所述数据流的第一部分适合所述输出端口的当前容量。
33、根据权利要求32的设备,其中每一数据流组的负载值被设置为固定值。
34、根据权利要求32的设备,其中所述负载值通过测量数据流组内业务量来设置。
35、根据权利要求31的设备,其中所述输入数据流的每一数据分组基于恒定数据流信息而被分配一散列值,并且所述数据流组借助所述散列值而形成。
36、根据权利要求35的设备,其中执行所述数据流的分割,这样多个数据流组将被选择以被在所述第一部分中发送至所述初级存储器内的队列,而其它数据流组被在所述第二部分内发送至所述次级存储器,以使所述数据流的第一部分适合所述输出端口的当前容量。
37、根据权利要求31的设备,其中所述输入数据流的数据分组具有优先级值并被识别为属于优先级组,并且所述数据流组借助所述优先级而形成。
38、根据权利要求31的设备,其中所述输入数据流的数据分组具有优先级值并被分配一散列值,并且所述数据流组借助所述优先级值与所述散列值而形成,每个数据流组都具有优先级值与散列值的组合。
39、根据权利要求37或38的设备,其中多个队列包含具有相同优先级值的数据流组。
40、根据权利要求39的设备,其中执行所述数据流的分割,这样具有高于分割门限的优先级的优先级组被在所述第一部分中发送至所述初级存储器中的队列,而具有低于所述门限的优先权的优先权组被在所述第二部分中发送至所述次级存储器。
41、根据权利要求31的设备,其中多个数据流组被分配给所述初级存储器与所述次级存储器的每个队列。
42、根据权利要求27的设备,其中执行所述数据流的分割,这样所述第一部分数据流的总负载小于或等于所述输出端口的总输出容量。
43、根据权利要求42的设备,其中所述输出端口的总输出容量被设置为固定值。
44、根据权利要求42的设备,其中所述输出端口的总输出容量通过测量经过输出端口业务量来设置。
45、根据权利要求27的设备,其中调度器从所述初级存储器与所述次级存储器中选择分组。
46、根据权利要求45的设备,其中所述调度器首先从所述初级存储器选择分组,然后,如果所述初级存储器是空的,所述调度器将从所述次级存储器选择分组。
47、根据权利要求45的设备,其中所述数据分组具有优先级值,所述调度器严格基于优先级从所述初级存储器以及所述次级存储器中选择分组,并且如果分组具有相同的优先级,则首先选择来自所述初级存储器的分组。
48、根据权利要求47的设备,其中所述输出端口共享来自所述次级存储器的同一个带宽,而且从一个输出端口来看,当全部带宽由其它输出端口占用时,那么所述调度器能够从所述初级存储器读取,尽管这可能会破坏优先级顺序。
49、根据权利要求28的设备,其中所述数据流被从所述次级存储器汇集回所述初级存储器,这可以借助以下步骤:相关数据组内的数据流到所述次级存储器被阻塞,并被存储在所述第三存储器内,而所述次级存储器的队列被清空;当这被完成时,所述第三存储器的内容移至所述初级存储器的内部队列,而相关数据流被交换到所述第一部分。
50、根据权利要求49的设备,其中如果所述次级存储器与所述第三存储器的各自队列的长度小于预定值,才启动所述汇集过程。
51、根据权利要求49的设备,其中如果通过释放所述第三存储器内的阻塞以及将数据流发送至所述次级存储器而使所述次级存储器各个队列的长度超过某个值,则中断所述汇集过程。
52、根据权利要求27的设备,其中如果当前位于所述输入数据流的第一部分中的数据流的负载超过所述输出端口的容量,则所述第一部分中的至少一个数据流将移动至所述第二部分。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/560,105 US6977940B1 (en) | 2000-04-28 | 2000-04-28 | Method and arrangement for managing packet queues in switches |
US09/560,105 | 2000-04-28 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1426666A CN1426666A (zh) | 2003-06-25 |
CN1244252C true CN1244252C (zh) | 2006-03-01 |
Family
ID=24236392
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB018086357A Expired - Fee Related CN1244252C (zh) | 2000-04-28 | 2001-04-19 | 用于管理交换机内分组队列的方法与设备 |
Country Status (14)
Country | Link |
---|---|
US (1) | US6977940B1 (zh) |
EP (1) | EP1277371A1 (zh) |
JP (1) | JP2003533107A (zh) |
KR (1) | KR100739897B1 (zh) |
CN (1) | CN1244252C (zh) |
AU (2) | AU2001248993B2 (zh) |
CA (1) | CA2407664A1 (zh) |
EG (1) | EG22707A (zh) |
IL (2) | IL152463A0 (zh) |
MY (1) | MY131412A (zh) |
NO (1) | NO20025182L (zh) |
TW (1) | TW564617B (zh) |
WO (1) | WO2001084879A1 (zh) |
ZA (1) | ZA200208610B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104052683A (zh) * | 2013-03-14 | 2014-09-17 | 雷凌科技股份有限公司 | 处理分组交换的网络处理器及方法、网络交换系统 |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10104663A (ja) * | 1996-09-27 | 1998-04-24 | Semiconductor Energy Lab Co Ltd | 電気光学装置およびその作製方法 |
US20030223447A1 (en) * | 2002-05-29 | 2003-12-04 | Rahul Saxena | Method and system to synchronize a multi-level memory |
US7293130B2 (en) * | 2002-05-29 | 2007-11-06 | Intel Corporation | Method and system for a multi-level memory |
US20080028157A1 (en) * | 2003-01-13 | 2008-01-31 | Steinmetz Joseph H | Global shared memory switch |
US7826468B2 (en) * | 2006-08-04 | 2010-11-02 | Fujitsu Limited | System and method for bypassing an output queue structure of a switch |
EP2490393B1 (de) * | 2011-02-17 | 2013-07-17 | Desoma GmbH | Verfahren und Vorrichtung zur Analyse von Datenpaketen |
JP5631850B2 (ja) * | 2011-11-15 | 2014-11-26 | 富士通テレコムネットワークス株式会社 | スイッチ装置 |
US9455913B2 (en) * | 2013-02-15 | 2016-09-27 | Broadcom Corporation | Management of traffic buffering in internal and external memories in a passive optical network |
US20150293974A1 (en) * | 2014-04-10 | 2015-10-15 | David Loo | Dynamic Partitioning of Streaming Data |
JP6212059B2 (ja) * | 2015-01-19 | 2017-10-11 | 日本電信電話株式会社 | 通信用入出力装置 |
JP6569374B2 (ja) * | 2015-08-10 | 2019-09-04 | 富士通株式会社 | スイッチ装置及びスイッチ装置の制御方法 |
CN109995673B (zh) * | 2017-12-29 | 2022-06-21 | 中国移动通信集团四川有限公司 | 数据发送方法、装置、设备及介质 |
US11637784B2 (en) * | 2021-03-31 | 2023-04-25 | Nxp Usa, Inc. | Method and system for effective use of internal and external memory for packet buffering within a network device |
CN115955447B (zh) * | 2023-03-13 | 2023-06-27 | 微网优联科技(成都)有限公司 | 一种数据传输方法、交换机及交换机系统 |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
SU491980A1 (ru) | 1974-03-26 | 1975-11-15 | Предприятие П/Я Г-4367 | Устройство дл записи цифровой информации |
JPS558910A (en) | 1978-06-30 | 1980-01-22 | Nippon Marine Eng Kk | High-temperature molten substance transportation ship |
JPH01141809A (ja) | 1987-11-26 | 1989-06-02 | Showa Alum Corp | 高純度窒化アルミニウム粉末の製造法 |
JPH01238130A (ja) | 1988-03-18 | 1989-09-22 | Seiko Epson Corp | 半導体装置の製造方法 |
JP2620349B2 (ja) | 1988-12-16 | 1997-06-11 | 本田技研工業株式会社 | 車輌用キーレスドアロック装置 |
US5583500A (en) * | 1993-02-10 | 1996-12-10 | Ricoh Corporation | Method and apparatus for parallel encoding and decoding of data |
US5546391A (en) | 1993-03-04 | 1996-08-13 | International Business Machines Corporation | Central shared queue based time multiplexed packet switch with deadlock avoidance |
JPH0822983A (ja) | 1994-07-05 | 1996-01-23 | Citizen Watch Co Ltd | 半導体装置の製造方法 |
JPH08235092A (ja) | 1995-02-22 | 1996-09-13 | Kofu Nippon Denki Kk | データ転送制御装置 |
JPH09160715A (ja) | 1995-12-05 | 1997-06-20 | Rhythm Watch Co Ltd | マウス型トラックボール |
US5862128A (en) | 1995-12-29 | 1999-01-19 | Gte Laboratories Inc | Merged buffer signal switch |
US5920561A (en) * | 1996-03-07 | 1999-07-06 | Lsi Logic Corporation | ATM communication system interconnect/termination unit |
US6188690B1 (en) * | 1996-12-12 | 2001-02-13 | Pmc-Sierra, Inc. | Method and apparatus for high speed, scalable communication system |
US6636518B1 (en) * | 1996-12-16 | 2003-10-21 | Juniper Networks | Synchronizing source-synchronous links in a switching device |
US6396834B1 (en) * | 1997-11-24 | 2002-05-28 | Riverstone Networks, Inc. | Flexible scheduler in an asynchronous transfer mode (ATM) switch |
US6426943B1 (en) * | 1998-04-10 | 2002-07-30 | Top Layer Networks, Inc. | Application-level data communication switching system and process for automatic detection of and quality of service adjustment for bulk data transfers |
US6430184B1 (en) * | 1998-04-10 | 2002-08-06 | Top Layer Networks, Inc. | System and process for GHIH-speed pattern matching for application-level switching of data packets |
US6226267B1 (en) * | 1998-04-10 | 2001-05-01 | Top Layer Networks, Inc. | System and process for application-level flow connection of data processing networks |
AU4848799A (en) * | 1998-07-08 | 2000-02-01 | Broadcom Corporation | High performance self balancing low cost network switching architecture based ondistributed hierarchical shared memory |
GB9821768D0 (en) * | 1998-10-06 | 1998-12-02 | Sgs Thomson Microelectronics | Data transfer |
GB9821762D0 (en) * | 1998-10-06 | 1998-12-02 | Sgs Thomson Microelectronics | Data transfer |
US6430187B1 (en) * | 1999-06-03 | 2002-08-06 | Fujitsu Network Communications, Inc. | Partitioning of shared resources among closed user groups in a network access device |
-
2000
- 2000-04-28 US US09/560,105 patent/US6977940B1/en not_active Expired - Lifetime
-
2001
- 2001-04-19 IL IL15246301A patent/IL152463A0/xx active IP Right Grant
- 2001-04-19 WO PCT/SE2001/000853 patent/WO2001084879A1/en active IP Right Grant
- 2001-04-19 AU AU2001248993A patent/AU2001248993B2/en not_active Ceased
- 2001-04-19 EP EP01922219A patent/EP1277371A1/en not_active Withdrawn
- 2001-04-19 JP JP2001581570A patent/JP2003533107A/ja active Pending
- 2001-04-19 KR KR1020027014366A patent/KR100739897B1/ko not_active IP Right Cessation
- 2001-04-19 CA CA002407664A patent/CA2407664A1/en not_active Abandoned
- 2001-04-19 CN CNB018086357A patent/CN1244252C/zh not_active Expired - Fee Related
- 2001-04-19 AU AU4899301A patent/AU4899301A/xx active Pending
- 2001-04-23 EG EG20010400A patent/EG22707A/xx active
- 2001-04-26 MY MYPI20011978A patent/MY131412A/en unknown
- 2001-07-04 TW TW090110138A patent/TW564617B/zh not_active IP Right Cessation
-
2002
- 2002-10-24 ZA ZA200208610A patent/ZA200208610B/en unknown
- 2002-10-24 IL IL152463A patent/IL152463A/en not_active IP Right Cessation
- 2002-10-28 NO NO20025182A patent/NO20025182L/no not_active Application Discontinuation
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104052683A (zh) * | 2013-03-14 | 2014-09-17 | 雷凌科技股份有限公司 | 处理分组交换的网络处理器及方法、网络交换系统 |
Also Published As
Publication number | Publication date |
---|---|
IL152463A (en) | 2007-10-31 |
KR100739897B1 (ko) | 2007-07-13 |
AU4899301A (en) | 2001-11-12 |
TW564617B (en) | 2003-12-01 |
EG22707A (en) | 2003-07-30 |
JP2003533107A (ja) | 2003-11-05 |
US6977940B1 (en) | 2005-12-20 |
IL152463A0 (en) | 2003-05-29 |
AU2001248993B2 (en) | 2006-01-12 |
MY131412A (en) | 2007-08-30 |
ZA200208610B (en) | 2003-10-24 |
WO2001084879A1 (en) | 2001-11-08 |
KR20030001452A (ko) | 2003-01-06 |
NO20025182D0 (no) | 2002-10-28 |
CN1426666A (zh) | 2003-06-25 |
EP1277371A1 (en) | 2003-01-22 |
NO20025182L (no) | 2002-10-28 |
CA2407664A1 (en) | 2001-11-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1244252C (zh) | 用于管理交换机内分组队列的方法与设备 | |
CN1064500C (zh) | 临时存储数据包的方法和设备 | |
CN1146192C (zh) | 以太网交换芯片输出队列管理调度方法和装置 | |
US5757771A (en) | Queue management to serve variable and constant bit rate traffic at multiple quality of service levels in a ATM switch | |
FI112421B (fi) | Menetelmä ja laitteisto siirtoyhteyskapasiteetin vuorottamiseksi pakettikytkentäisten tietoliikennevoiden kesken | |
US6721796B1 (en) | Hierarchical dynamic buffer management system and method | |
US7801163B2 (en) | Buffer management policy for shared memory switches | |
US20080063004A1 (en) | Buffer allocation method for multi-class traffic with dynamic spare buffering | |
CN1631008A (zh) | 调度消息处理的方法和设备 | |
KR19990000978A (ko) | Atm 스위칭 시스템의 단일 스위치 소자 및 버퍼 문턱값 결정 방법 | |
CN1199971A (zh) | Atm缓冲电路及atm交换系统优先顺序分配方法 | |
CN1788500A (zh) | 时分多路复用电路交换路由器 | |
CN104995884A (zh) | 分布式无交换机互连 | |
JPH10224376A (ja) | デジタル信号の双方向伝送用経路指定スイッチ | |
AU2001248993A1 (en) | A method and an arrangement for managing packet queues in switches | |
JPH10215262A (ja) | デジタル信号の双方向伝送のための経路指定スイッチ | |
US20080159138A1 (en) | Methods and devices for providing ingress routing in selective randomized load balancing | |
US7269158B2 (en) | Method of operating a crossbar switch | |
CN1853379A (zh) | 在异步传输模式信元传输中提供服务质量的系统和方法 | |
US6647011B1 (en) | Method and system for switching using an arbitrator | |
Aalto et al. | Basic packet routing problem | |
CN1214579C (zh) | 一种虚电路共用缓冲区描述链的方法 | |
EP1619835A1 (en) | A Crossbar comprising input queue groups and a distribution processor | |
SE517951C2 (sv) | Förfarande och anordning för dynamisk bandbreddstilldelning vid switching | |
CN1383654A (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 | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20060301 |