用于转换数据包的并行和迭代算法的制作方法

文档序号:7917352阅读:126来源:国知局
专利名称:用于转换数据包的并行和迭代算法的制作方法
技术领域
本发明涉及具有多个行单元和转换单元的包交换装置。
宽带交换论文集′99中R.Schoenen,G.Post,G.Sander所著的出版物"用于具有100%信息通过量的输入排列转换的优先级的加权判优算法",比较了包交换装置的不同加权转换算法。该转换算法想要防止利用不同的转换步骤防止指定用于包交换相同输出端的若干数据分组的冲突并且减少任何导致的数据损失或者延迟。
该出版物涉及一种以用于互连的输入与输出口的相对权为基础的判优算法。一种由元素组成的矩阵,其中每个元素表示一种用于数据包的假设输入端口到转换装置的假设输出端口转换的加权配置。该矩阵的行和列相应于用于数据包的转换装置的输入与输出口。在该矩阵的每行中选择尽可能高的一个加权并且标记为在输入和输出端口之间的一种采纳的互连。在随后的计算里,所选择的输入端口,也就是说相应于该输入端口的矩阵的行不能更进一步使用。
本发明具有它的目标,在一个包交换装置内提供数据包可允许的快速计算转换。
该目标通过具有多个输入与输出口的一个包交换装置实现并且至少一个交换单元包括一个耦合矩阵和一个用于控制该耦合矩阵的判优器单元,其中该判优器单元设计成产生一个状态矩阵,该矩阵的每行相应于一个输入端口,每一列相应于一个输出端口,所述状态矩阵包括元素,每元素表示一个用于包交换装置的输入端口和输出端口之间互连的一个加权,以及所述判优器单元设计成形成一个由基于一种算法的若干采纳的相互关系组成的第一决策矩阵,其中该算法在该状态矩阵列的若干组上并行操作。
包交换装置由若干行单元或者行卡和若干交换单元或者转换卡组成。线单元的一种必要部分是端口控制。每个端口控制连接到若干并行操作的转换装置,并且具有在等待行或者队列里按照它们的优先级和在该包交换装置里的期望的输出端口排列被转换的数据分组到达该包交换装置的任务。
该包交换装置的每个交换单元由一个耦合或者交叉矩阵和一个判优器单元或者判优器组成。该耦合矩阵的结构通过常规时间间隔的算法由该判优器单元新近地决定,以便在用于数据分组转换的包交换装置的输入输出端口之间建立新互连。
该包交换装置的一个状态矩阵包括若干元素,其中每个元素表示在输入端口和输出端口之间每个互连的加权。加权由端口控制产生,以便该端口控制能通知该判优器单元存在于该输入端口中的数据分组是否并且多么急切地要被传送。一个加权可以包括该数据分组优先级和类别上的指示器,或者等待行或者队列的等待时间或者长度。
状态矩阵的一行相应于一个输入端口,每列相应于该包交换装置的一个输出端口。该判优器单元每次在一组列上同时执行一个算法。该组列可以由多个列组成,其中在该状态矩阵里不必一定彼此紧挨着排列。然而,两个或更多邻接列可能同时形成一个族。在该算法已经执行之后,判优器单元标记在一个第一临时决策矩阵里的每个采纳的互连。
该算法可以是一个基于多端口(SIMP)算法的连续递增匹配,它被描述在宽带交换论文集′99中R.Schoenen,G.Post,G.Sander所著的出版物"用于具有100%信息通过量的输入排列转换的优先级的加权判优算法"。该算法同步的实现应用于状态矩阵可以引起互联,其中一个输入端口同时与用于一个数据包的两个输出端口相联系。
两条件必须在该互连的计算里实现。一个输入端口不能同时与若干输出端口相联系和/或一个输出端口不能与若干输入端口相联系。并行运行的该算法的结果保持在第一决策矩阵里。然而,该列组的并行处理可以导致分配给一个输入端口的若干输出端口。因此,具有最高加权的互连在第一决策矩阵的每行里选择并且记录在第二决策矩阵里。
该判优器单元通过一个迭代运算决定一个用于该耦合矩阵结构的最后判定矩阵。由并行操作的算法的执行过程和由该选择的互连组成的决策矩阵的形成组成一个迭代步骤。该判优器单元这里从那些列形成该族,然而没有互连被决定或者应用该算法到它的输入端口的行和列,没有实现对于一个输出端口的采纳的互连。在大多数有利的实例里,迭代步骤导致所有输入输出端口的互连。
实现输入端口和输出端口之间的良好互连可以由最终判决矩阵的迭代确定来保障,导致了数据包迅速可靠的转换。
在一组状态矩阵的每行里选择具有最高加权的互连并且标记为输入和输出端口之间的一个采纳的互连。所选择的输入端口,也就是说在每组列里相应于该输入端口的行没有考虑到该算法的更进一步的执行过程中并相应地做标记。
端口控制产生用于决定耦合矩阵结构的加权并且以常规时间间隔发送它们到该判优器单元。该状态矩阵的一个最佳实施例包括一些元素,其中每个元素代表由端口控制产生的互连的一个当前的加权和早先一个时间间隔产生的加权之间的差异。
本发明也涉及一个用于具有多个端口的包交换装置的转换装置。该转换装置由一个耦合矩阵和一个用于控制该耦合矩阵的判优器单元组成,当一个具有元素的状态矩阵提供于该判优器单元时,其中每个元素代表包交换装置的输入端口和输出端口之间互连的一个加权,当每一行相应于一个输入端口,每一列相应于一个输出端口。
判优器单元通过并行操作在若干状态矩阵行组上的一个算法形成第一决策矩阵。第一决策矩阵由若干包交换的输入输出端口之间采纳的互连组成。
本发明更进一步的涉及一个用于控制转换装置的耦合矩阵的一个判优器单元,其中该转换装置用于具有若干输入输出端口的一个包交换装置。具有元素的状态矩阵这里提供在该判优器单元中,其中每个元素代表包交换装置的输入端口和输出端口之间的互连,其中每行相应于一个输入端口并且每列相应于一个输出端口。判优器单元通过并行操作在若干状态矩阵行组上的一个算法形成第一决策矩阵。第一决策矩阵由若干包交换的输入输出端口之间采纳的互连组成。
本发明更进一步的涉及用于具有若干输入输出端口和至少一个交换单元或者转换卡的包交换装置的一种交换方法。该转换装置包括一个耦合矩阵和一个用于控制该耦合矩阵的判优器单元。具有元素的状态矩阵这里提供在该判优器单元中,其中每个元素代表包交换装置的输入端口和输出端口之间的互连,其中每行相应于一个输入端口并且每列相应于一个输出端口。该判优器单元通过并行操作在状态矩阵行组上的一个算法形成第一决策矩阵,其中决策矩阵由若干采纳的互连组成。
本发明的一个实施例参考附图将作更详细的解释,其中

图1显示一个包交换装置,图2显示应用于一组列的一种算法,图3显示并行应用到用于转换目的的若干组列的一种算法,以及图4显示组列的一种互连。
图1中所示的包交换装置由两个行单元1和2以及多个转换装置3到5组成。行单元1和2的数目经常会远大于两个,例如64;在该实施例限于两个是为了使附图清晰。每个行单元1和2由独立部件组成,其中该独立部件对于该实施例的描述是不相关的并且没有相应地显示,例如一种光传输单元,一个帧发生器、一个网络处理机等等以及一个对本发明实施例必不可少的端口控制6、7。每个转换装置3到5由一个耦合矩阵8和一个判优器单元9组成。每个平行操作转换装置3到5的判优器单元9和耦合矩阵8连接到端口控制6和7。
恒定长度的数据包表示单元。因为固定长度单元与变化尺寸数据分组相比较便于在转换过程中操作,输入数据分组在行单元1和2里面再分成固定长度单元并且被以队列的形式插入中间存储器。在成功的转换之后,也就是说每次从输入端口到输出端口的接收配置之后,该单元从本队列中去掉。
基于一个加权,该端口控制可以通知判优器单元存在于该输入端口上的单元是否要被传递并且多么急切地要被传递。该加权可以包含在优先级上的指示器和该数据分组的分类或者输入端口中的队列的等待时间或者长度。
端口控制6和7发送决定耦合矩阵结构所必需的信息到该判优器单元9,其中该加权位于耦合矩阵中。
在判优器单元已经决定耦合矩阵8的结构并且已经发送该结构给端口控制和耦合矩阵之后,每个转换装置的耦合矩阵8相应地配置。端口控制6和7在常规时间间隔发送该单元到用于转换的耦合矩阵8,其中常规时间间隔也被称作单元周期。
图2显示由判优器单元9执行的一种算法并且应用于耦合矩阵8.结构的一组列。该算法是提出在宽带交换论文集′99中R.Schoenen,G.Post,G.Sander所著的出版物"用于具有100%信息通过量的输入排列转换的优先级的加权判优算法"中。图2由一个状态矩阵11、一个组列12以及一个决策矩阵13组成。
该状态矩阵11相应于一个具有四个输入端口I0到I3和四个输出端口O0到O3的包交换装置。它包括十六个元素,其中每个元素代表输入端口I0到I3和输出端口O0到O3之间的所有互连的分别的加权。
在图2的实施例中,列和行的数目,也就是说输入输出端口的数目,被限制在四个以便获得一个简略的表示。组的数目简化为一个组,包括状态矩阵11的所有行。
应用的算法由四个步骤组成该列的最高加权在该状态矩阵11的第一行中决定;在下一列中,该列的最高加权被再次决定,具有附带条件即先前选择的行或者输入端口的加权没有算入;在下一列中最高加权的判定中,先前选择的行或者输入端口的加权没有考虑;在每列中的最高加权判定因此延续并且包含该状态矩阵最后的行。
该判优器单元应用该算法到列的组12并且决定输入端口12的加权同样地决定第一列或者输出端口O0中的最高加权。该选择的加权标记为一种输入端口I2和输出端口O0之间的一种采纳的互连。在决定下一列中的最高加权中,输入端口I2的加权没有考虑,并且输入端口I3和输出端口O1之间的互连被做标记。
对于输出端口O2,当选择最显著的加权时,输入端口I0和I1的加权被考虑,并且输入端口I0作为采纳的互连被决定。结果是只有输入端口I3可以被选为用于输出端口O3的采纳的连接。
采纳的互连标记在决策矩阵13上。
图3用来阐明一种用于参考图2描述的转换并行并且迭带地应用的算法。状态矩阵11、决策矩阵13和列的组12补充以一个第二组14和一个临时的决策矩阵15。
状态矩阵11的行已经再分成每两列的组12和14。图2的算法由判优器单元9对于每个组12和14并行执行。
这两个列的结果保持在该临时决策矩阵15.中。第一组12的行分别地连接到输入端口I2和I3,并且第二组14的行分别地连接到输入端口I0和I2。由于两个组的并行处理,输入端口I2被分配给输出端口O0和输出端口O3。
因此,对于在临时的决策矩阵15.每一行中的采纳的互连,决定最高加权。临时的决策矩阵15第一行标记的互连取代决策矩阵13.中的采纳的互连。对于临时的决策矩阵15中的输入端口I1没有互连进入,这是为什么输出端口和输入端口I1之间的互连也不存在于决策矩阵13.中。因为两个互连选择用于输入端口12,它基于互连采纳的的加权而决定。
具有较高加权的互连接收在决策矩阵中,以便输入端口I2作为采纳的互连以输出端口O0做标记。对于输入端口I3,来自临时决策矩阵15的标记互连作为采纳的互连被采用。
决策矩阵13的互连通过迭代改进,其中判优器单元9应用平行操作算法给状态矩阵11的那些行,因为得到未连接到输出端口的状态矩阵11的输入端口。只有那些还没有互连的输出端口在这里考虑。
因为对于输入端口I1,确定了未连接到一个输出端口,该算法迭带地应用于状态矩阵11.。输入端口I0、I2和I3已经互连像输出端口O0到O2一样不再考虑。
在图4中,组12和14的并行处理随着组12和14的互连而改进。
状态矩阵11的行已经再分成每两列的组12和14。参考图2描述的算法由判优器单元9在每一组12和14中并行应用。该算法与组12和14的互连相补充。
应用于每个组的算法由对于所有的组的判优器单元并行执行,该算法由四个步骤组成该列的最高加权在每个组的第一行中决定;在下一列中,该列的最高加权被再次确定,伴随的附带条件是先前选择的行或者输入端口的加权没有考虑到所有组中;先前选择的行或者输入端口的加权没有考虑到下一列中最显著加权的判定中;在每列中的最显著的加权判定因此延续并且包含该状态矩阵最后的行。
这两个列的结果保持在该临时决策矩阵15.中。第一组I1的行分别地连接到输入端口I1和I3,并且第二组14的行分别地连接到输入端口I0和I1。由于该组的互连,输入端口12没有同时分配到输出端口O0和输出端口O3。
此外,最高加权作为临时决策矩阵15.每行中的采纳的互连被决定。临时决策矩阵15的第一行标记的互连作为决策矩阵13.中采纳的互连被采纳。输出端口O3对于输入端口I1在临时决策矩阵15中标记,以便相应地决策矩阵I3也包括输出端口O3和输入端口I1之间的一个相互联系。具有输出端口O0的互连对于输入端口I2标记。如果若干互连在决策矩阵15中对于一个输入端口标记,具有最高加权的互连在决策矩阵13中被采纳。
如果不是所有的输入端口I0到I3都在决策矩阵13中互连,决策矩阵13可以通过一个迭代步骤改进,这一点上判优器单元9应用该平行操作算法到状态矩阵11的那些行,因为得到状态矩阵11的输入端口没有互连到输出端口。只有那些还没互连的输出端口在这里考虑。
权利要求
1.一种具有多个输入输出端口和至少一个交换单元(3到5)的包交换装置,包括一个耦合矩阵和一个用于控制耦合矩阵(8)的判优器单元(9),其中该判优器单元设计成产生一个状态矩阵(11),该矩阵的每行相应于一个输入端口,每一列相应于一个输出端口,所述状态矩阵包括元素,每元素表示一个用于包交换装置的输入端口和输出端口之间互连的一个加权,以及该判优器单元(9)设计成形成由基于一个算法的若干采纳的相互联系组成的第一决策矩阵,其中该算法并行运算在状态矩阵行的若干组(12和14)上。
2.如权利要求1中所述的一种包交换装置,特征在于该判优器单元设计成如果对于第一决策矩阵中的一个输入端口若干互连被采纳,选择具有最高加权的互连,以及形成一个由选择的互连组成的决策矩阵。
3.如权利要求2中所述的一个包交换装置,特征在于该判优器单元设计成在迭代运算中连接该输入端口到该输出端口。
4.如权利要求2中所述的一个包交换装置,特征在于判优器单元设计成在一个组(12和14)上执行该算法,其中在组(12和14)的每行中,具有最高加权的互连被采纳,并且互连的输入端口没有考虑到所有组(12和14)的下一列中。
5.如权利要求1中所述的一种包交换装置,特征在于状态矩阵(11)包括元素,其中每个元素代表包交换装置的输入端口和输出端口之间互连的当前加权和由该端口控制先前产生的加权之间的差异。
6.一种用于包交换装置的交换单元,包括若干输入输出端口,其中交换单元(3到5)包括一个耦合矩阵和一个用于控制耦合矩阵(8)的判优器单元(9),其中判优器单元设计成产生一个状态矩阵(11),该状态矩阵的每行相应于一个输入端口它的每列相应于一个输出端口,所述状态矩阵包括元素,其中每个元素代表一个用于包交换装置的输入端口和输出端口之间互连的加权,以及该判优器单元(9)设计成形成由基于一个算法的若干采纳的相互联系组成的第一决策矩阵,其中该算法并行运算在状态矩阵行的若干组(12和14)上。
7.用于控制包括若干输入输出端口的包交换装置的交换单元(3到5)中的耦合矩阵(8)的一个判优器单元(9),其中判优器单元设计成产生一个状态矩阵(11),该状态矩阵的每行相应于一个输入端口它的每列相应于一个输出端口,所述状态矩阵包括元素,其中每个元素代表一个用于包交换装置的输入端口和输出端口之间互连的加权,以及该判优器单元(9)设计成形成由基于一个算法的若干采纳的相互联系组成的第一决策矩阵,其中该算法并行运算在状态矩阵行的若干组(12和14)上。
8.一种用于包括若干输入输出端口以及至少一个交换单元(3到5)的包交换装置的交换方法,交换单元(3到5)包括一个耦合矩阵以及一个用于控制耦合矩阵(8)的判优器单元(9),其中状态矩阵(11)产生在判优器单元中,所述矩阵每行相应于一个输入端口并且所述矩阵每列相应于一个输出端口,该状态矩阵包括元素,其中每个元素代表包交换装置输入端口和输出端口之间的一个互连的加权,以及一个由若干采纳的互联组成的第一决策矩阵,基于并行应用到状态矩阵行的若干组(12和14)上的一种算法而形成。
全文摘要
本发明涉及一种具有多个输入输出端口和至少一个交换单元(3到5)的包交换装置,包括一个耦合矩阵和一个用于控制耦合矩阵(8)的判优器单元(9),其中该判优器单元设计成产生一个状态矩阵(11),该矩阵的每行相应于一个输入端口,每一列相应于一个输出端口,所述状态矩阵包括元素,每元素表示一个用于包交换装置的输入端口和输出端口之间互连的一个加权,以及该判优器单元(9)设计成形成由基于一个算法的若干采纳的相互联系组成的第一决策矩阵,其中该算法并行运算在状态矩阵行的若干组(12和14)上。
文档编号H04L12/54GK1407764SQ0212780
公开日2003年4月2日 申请日期2002年8月6日 优先权日2001年8月9日
发明者A·范瓦格宁根, H·J·罗伊默曼, A·勒尔肯斯, R·舍宁 申请人:皇家菲利浦电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1