动态检测多级交换结构中的级间通行时间的方法和装置的制作方法

文档序号:7753634阅读:307来源:国知局
专利名称:动态检测多级交换结构中的级间通行时间的方法和装置的制作方法
技术领域
本文公开的实施例一般地涉及交换结构,并且更具体地,例如,涉及诸如Clos网 络的分布式交换结构的同步。
背景技术
Clos网络是提供多个输入端口和多个输出端口之间的无阻塞连接的多级交换网 络。无阻塞网络是总可以在空闲输入端口和空闲输出端口之间建立通过该网络的数据路径 的网络。三级Clos网络例如具有连接在输入级和输出级之间的中间级。每级包括多个模 块。每个输入级模块具有多个输入端口,并且被操作地耦接到每个中间级模块。类似地,每 个输出级模块具有多个输出端口,并且被连接到每个中间级模块。具有带有大量输入端口的输入级模块、带有大量输出端口的输出级模块和/或在 每一级内具有大量模块的交换结构具有许多连接。因此,可能使用大量缆线来连接交换结 构内的模块。如果线缆具有变化的长度,则信元穿过交换结构所花费的时间量可能变化。这 可能导致输出端口以不正确的顺序从交换结构接收信元。因此,存在对自动地确定并且补偿信元在与交换结构的级相关联的模块之间穿行 所花费的时间量的装置和方法的需要。另外,存在对确保交换结构的输出端口以正确的顺 序从交换结构接收信元的装置和方法的需要。

发明内容
在某些实施例中,一种方法包括向与交换结构的级相关联的第一模块发送信号, 并且在向第一模块发送信号后经过了第一时间量时,从第一模块接收信号。向与交换结构 的该级相关联的第二模块发送信号,并且在向第二模块发送信号后经过了第二时间量时, 从第二模块接收信号。第二时间量小于第一时间量。向第一模块发送第一数据分组的信元, 并且在发送第一数据分组的信元之后经过了第三时间量时,向第二模块发送第二数据分组 的信元。第三时间量与第一时间量和第二时间量之间的差相关联。


图1是根据一个实施例的交换结构的示意图。图2是根据另一个实施例的交换结构内的被缆线耦接在一起的两个模块的示意 图。图3是根据另一个实施例的被耦接到与交换结构的第二级相关联的两个模块的 与该交换结构的第一级相关联的模块的示意图。图4是根据另一个实施例的五级交换结构系统的示意图。图5是示出了根据另一个实施例的通过交换结构发送信元的方法的流程图。
具体实施例方式在某些实施例中,一种方法包括向与交换结构的级相关联的第一模块发送信号, 并且在向第一模块发送信号后经过了第一时间量时,从第一模块接收信号。向与交换结构 的该级相关联的第二模块发送信号,并且在向第二模块发送信号后经过了第二时间量时, 从第二模块接收信号。第二时间量小于第一时间量。向第一模块发送第一数据分组的信元, 并且在发送第一数据分组的信元之后经过了第三时间量时,向第二模块发送第二数据分组 的信元。第三时间量与第一时间量和第二时间量之间的差相关联。在某些实施例中,发送到第一模块的信号和从第一模块接收的信号可被用于确定 信元被发送到第一模块的时间。类似地,在某些实施例中,发送到第二模块的信号和从第二 模块接收的信号可被用于确定信元被发送到第二模块的时间。在某些实施例中,第三时间量补偿向第一模块发送信元的时间和向第二模块发送 信元的时间之间的差。在某些实施例中,由于向第一模块发送信元所通过的缆线比向第二 模块发送信元所通过的缆线长,因此向第一模块发送信元的时间可以与向第二模块发送信 元的时间不同。可以补偿向第一模块发送信元的时间和向第二模块发送信元的时间的差, 从而以一种顺序向交换结构的输入模块发送的信元被在交换结构的输出模块处以该顺序 接收。如本文使用的,交换结构例如是这样的网络,其包括操作地将一个或更多个输入 设备与一个或更多个输出设备相连接的交换模块的多个级。交换结构被配置为从输入设备 接收信号,通过交换结构的多个级转发该信号,并且将该信号输出到输出设备。交换机的多 个级的交换模块路由该信号,使得信号到达其目的地。这种交换结构被称为,例如,Clos网如本文使用的,交换结构内的模块可以是例如定义交换结构的级内的一个或更多 个交换机的被操作地耦接的电子元件的任何组件和/或集合。输入/输出模块,例如,可以 是配置为向交换结构发送数据和/或从交换结构接收数据的被操作地耦接的电子元件的 任何组件和/或集合。在某些实施例中,例如,输入/输出模块可以是配置为从服务器接收 数据,准备输入到交换结构中的数据,以及向交换结构发送数据的接入交换机。在某些实施 例中,模块可以包括例如存储器、处理器、电迹线(electrical traces)、光连接器和/或等寸。如本文使用的,“与...相关联”意味着例如包括在...内、物理地位于、作为...的 一部分和/或作为...的一部分操作或工作。例如,与交换结构的第一级相关联的模块可 以被说成包括在交换结构的第一级内、物理地位于交换结构的第一级或是交换结构的第一 级的一部分。与交换结构的第一级相关联的模块还可以被说成作为交换结构的第一级的一 部分操作或工作。如在本说明书中使用的,除非上下文明确地另外规定,否则单数形式“一个” (“a”、 “an”和“the”)包括复数指示物。因此,例如,术语“一个交换结构”旨在意味着单个交换 结构或交换结构的组合。术语“第一级”、“第二级”等等指交换结构内的部分、模块或节点。在某些情况下, 这些术语涉及给定交换结构内的特定级。例如,三级Clos网络包括从入口到出口的三个连 续的级;这种交换结构具有可被称为“第一级”(相对于入口到出口方向的第一级)到第三级(相对于入口到出口方向的第三级且是末级)的三个级。例如,图1和图4涉及给定交 换结构内的特定级。然而,在其它情况下,术语“第一级”、“第二级”等涉及交换结构内的任 何级,并且相应于对给定级的讨论顺序。例如,“第一级”可以涉及讨论的第一级,并且可以 相应于交换结构内的任何级(例如,三级Clos网络内的第三级),并且“第二级”可以涉及 交换结构内的其余一级(例如,三级Clos网络内的第二级)。因此,应当理解,具体的上下 文将指示术语“第一级”、“第二级”等可以涉及交换结构内的特定顺序的级,还是可以涉及 交换结构内的任何特定级。图1是根据一个实施例的交换结构100的示意图。交换结构100是三级无阻塞 Clos网络,并且包括第一级140、第二级142和第三级144。第一级140包括模块112。第 一级140的每个模块112是电子元件和电路的组件。在某些实施例中,例如,每个模块是专 用集成电路(ASIC)。在其它实施例中,多个模块被包含在单个ASIC或单个芯片封装上。在 其它实施例中,每个模块是分立电子元件的组件。在某些实施例中,第一级140的每个模块112是信元交换机。信元交换机配置为 当数据流经交换结构100时重定向数据。在某些实施例中,例如,每个信元交换机包括被操 作地耦接到存储器缓冲器(未示出)上的写接口的多个输入端口。类似地,一组输出端口 操作地耦接到存储器缓冲器上的读接口。在某些实施例中,存储器缓冲器可以是使用芯片 上静态随机访问存储器(SRAM)实现的共享存储器缓冲器来提供足够的带宽,以便所有输 入端口每个时间周期(例如,一个或更多个时钟周期)写一个进入信元(例如,数据分组的 一部分),并且所有输出端口每个时间周期读一个外出信元。每个信元交换机可以类似于纵 横开关(crossbar switch)那样操作,对于后续的每个时间周期,其可被重新配置。在替换实施例中,第一级中的每个模块是具有输入条和输出条的纵横开关。纵横 开关内的多个开关将每个输入条与每个输出条连接。当纵横开关内的开关处于“接通(on),, 位置时,输入被操作地耦接到输出,并且数据可以流动。可替换地,当纵横开关内的开关处 于“断开(off)”位置时,输入未被操作地耦接到输出,并且数据不能流动。因此,纵横开关 内的开关控制哪些输入条被操作地耦接到哪些输出条。第一级140的每个模块112包括配置为当数据进入交换结构100时接收数据(例 如,信号、分组的信元等)的一组输入端口 160。在这个实施例中,第一级140的每个模块 112包括相同数目的输入端口 160。类似于第一级140,交换结构100的第二级142包括模块114。第二级142的模块 114在结构上类似于第一级140的模块112。第二级142的每个模块114通过数据路径120 被操作地耦接到第一级140的每个模块112。第一级140的给定模块112和第二级142的 给定模块114之间的每个数据路径120配置为便于从第一级140的模块112到第二级142 的模块114的数据传送。第一级140的模块112和第二级142的模块114之间的数据路径120可按照配置 为便于从第一级140的模块112到第二级142的模块114的数据传送的任何方式被构造。 在某些实施例中,例如,数据路径120可以是具有各种长度的光缆。由于数据路径120的长 度可能变化,因此,从第一级140的模块向第二级142的第一模块发送数据分组的第一信元 的时间可能少于从第一级140的该模块向第二级142的第二模块发送数据分组的第二信元 的时间。如果没有本文描述的补偿,这可能导致同步问题。例如,如果没有本文描述的补偿,数据分组的信元可能不以正确的顺序(例如,信元进入第一级140的模块112的输入端口 160的顺序)到达第三级144的模块116的输出端口 162。在某些实施例中,第一级140的 模块可以延迟将数据分组的第一信元发送到第二级142的模块114,从而第一信元的延迟 和通行时间大体等于第二信元的通行时间。在其它实施例中,数据路径在中间板内。这种中间板可以类似于提交于2008年 12 月 29 日的题目为〃 System Architecture for Highly Scalable and Distributed Multi-stage Switch Fabric"的美国专利申请 No. 12/345,500 和提交于 2008 年 12 月 29 日的题目为"Methods and Apparatus related to a Modular Switch Architecture"的 美国专利申请No. 12/345,502中示出和描述的中间板,通过引用将这两者完整结合在此。 这种中间板可被用于将第二级的每个模块与第一级的每个模块相连接。在其它实施例中, 两个或多个模块被包含在单个芯片封装内,并且数据路径是电迹线。在某些实施例中,交换结构100是无阻塞Clos网络。因此,交换结构100的第二 级142的模块114的数目基于第一级140的每个模块112的输入端口 160的数目改变。在 可重布置无阻塞Clos网络(例如,Benes网络)内,第二级142的模块114的数目大于或 等于第一级140的每个模块112的输入端口 160的数目。因此,如果第一级140的每个模 块112的输入端口 160的数目是n,并且第二级142的模块114的数目是m,则m彡η。在某 些实施例中,例如,第一级的每个模块具有5个输入端口。因此,第二级具有至少5个模块。 第一级的所有5个模块通过数据路径被操作地耦接到第二级的所有5个模块。换言之,第 一级的每个模块可以向第二级的任何模块发送数据。交换结构100的第三级144包括模块116。第三级144的模块116在结构上类似 于第一级140的模块112。第三级144的模块116的数目通常等于第一级140的模块112 的数目。第三级144的每个模块116包括配置为允许数据离开交换结构100的输出端口 162。第三级144的每个模块116包括相同数目的输出端口 162。另外,第三级144的每个
模块116的输出端口 162的数目通常等于第一级140的每个模块112的输入端口 160的数目。第三级144的每个模块116通过数据路径124连接到第二级142的每个模块114。 第二级142的模块114和第三级144的模块116之间的数据路径124配置为便于从第二级 142的模块114到第三级144的模块116的数据传送。第二级142的模块114和第三级144的模块116之间的数据路径124可按照配置 为便于从第二级142的模块114到第三级144的模块116的数据传送的任何方式被构造。 在某些实施例中,例如,数据路径124包括模块间的光连接器和光缆。在其它实施例中,数 据路径在中间板内。在其它实施例中,两个或多个模块被包含在单个芯片封装内,并且数据 路径是电迹线。 图2是交换结构内的第一模块210和该交换结构内的第二模块220的示意图。第 一模块210通过缆线230被操作地耦接到第二模块。缆线230可以是配置为操作地将第一 模块210和第二模块220耦接的任何缆线。在某些实施例中,例如,缆线230可以是包括至 少一条光纤的光连接。 第一模块210与交换结构的级相关联。在某些实施例中,例如,第一模块210可以 与交换结构的第一级相关联,并且如本文进一步描述的,被配置为从输入模块接收数据分组的信元。在其它实施例中,第一模块可以与交换结构的中间级相关联(例如,三级交换结 构的第二级)。在这种实施例中,第一模块从交换结构的在前级(例如,第一级)接收信元, 并且将信元发送到交换结构的在后级(例如,第三级)。第一模块210包括处理器212和存储器214。处理器212可以是配置为从交换结 构的在先级的模块或输入模块接收数据分组的信元,并且将数据分组的信元发送到交换结 构的在后级的模块(例如,第二模块220)或输出模块的任何处理器。在某些实施例中,例 如,第一模块210是具有处理器212和存储器214的专用集成电路(ASIC)。在其它实施例 中,存储器可以是例如随机访问存储器(RAM)、存储器缓冲器、硬驱动器和/或等等。第一模块210布置在第一机架218内。在某些实施例中,第一机架218可以包括 与交换结构的、与第一模块210相关联的级相关联的其它模块。在其它实施例中,不同级的 模块也可被包括在第一机架内。在这种实施例中,例如,即使第一模块与交换结构的第一级 相关联,第一机架也可以包括与交换结构的第五级相关联的模块(例如,图4)。类似地,在 这种实施例中,即使第一模块与交换结构的第二级相关联,第一机架也可以包括与交换结 构的第三级和交换结构的第四级相关联的模块(例如,图4)。在其它实施例中,第一机架可 以包括交换结构的任何级的模块。类似于第一模块210,第二模块220与交换结构的级相关联。第二模块220与交 换结构的紧随交换结构的与第一模块210相关联的级之后的级相关联。在某些实施例中, 例如,第二模块220可以与交换结构的末级相关联,并且配置为将数据分组的信元发送到 输出模块。在其它实施例中,第二模块可以与交换结构的中间级相关联(例如,三级交换结 构的第二级)。在这种实施例中,第二模块从交换结构的在前级的模块(例如,第一级的模 块)接收信元,并且将信元发送到交换结构的在后级的模块(例如,第三级的模块)。第二模块220包括处理器222和存储器224。在某些实施例中,例如,第二模块220 是具有处理器222和存储器224的专用集成电路(ASIC)。在其它实施例中,存储器可以是 例如随机访问存储器(RAM)、存储器缓冲器、硬驱动器和/或等等。处理器222可以类似于处理器212。在某些实施例中,处理器222具有第一配置和 第二配置。当处理器222处于第一配置时,它配置为从交换结构的在先级的模块(例如,第 一模块210)或输入模块接收数据分组的信元,并且将数据分组的信元发送到交换结构的 在后级的模块或输出模块。当处理器222处于第二配置时,它配置为从交换结构的在先级 的模块(例如,第一模块210)接收信元,并且将信元发送回交换结构的在先级的模块。如本 文进一步详细描述的,当处理器222处于其第二配置时,可以确定交换结构的在先级的模 块(例如,第一模块210)和第二模块220之间的数据连接(例如,缆线230)的通行时间。 在某些实施例中,第二配置可被称为回环(loop-back)配置和/或回环模式。通过从交换结构的在先级的模块(例如,第一模块210)接收信号,处理器222可 从其第一配置被切换到其第二配置。在这种实施例中,例如,第一模块210可以向第二模块 220发送指示处理器222从其第一配置切换到其第二配置的信号。在其它实施例中,中央控 制处理器(图2中未示出)可以向第二模块发送指示处理器从其第一配置切换到其第二配 置的信号。在某些实施例中,可以使用类似的处理将处理器222从其第二配置切换到其第 一配置。第二模块220布置在第二机架228内。在某些实施例中,第二机架228可以包括与交换结构的、与第二模块220相关联的级相关联的其它模块。在其它实施例中,不同级的 模块也可被包括在第二机架内。在这种实施例中,例如,即使第二模块与交换结构的第五级 相关联,第二机架也可以包括与交换结构的第一级相关联的模块(例如,图4)。类似地,在 这种实施例中,即使第二模块与交换结构的第二级相关联,第二机架也可以包括与交换结 构的第三级和交换结构的第四级相关联的模块(例如,图4)。在其它实施例中,第二机架可 以包括交换结构的任何级的模块。在使用中,通过将缆线230的第一端部232耦接到第一机架218,并且将缆线230 的第二端部234耦接到第二机架228,第一模块210被操作地耦接到第二模块220。然后, 第一模块210通过经由缆线230向第二模块220发送信号将第二模块220的处理器222置 于其第二配置。在其它实施例中,中央控制处理器(图2中未示出)向第二模块发送信号, 以便将第二模块的处理器置于其第二配置。在其它实施例中,当缆线的第二端部被耦接到 第二机架时,第二模块可被自动地置于其第二配置。在某些实施例中,第一模块210可以响应缆线230被耦接到第一机架218和/或 第二机架228,向第二模块220发送信号。在这种实施例中,信号被自动地从第一模块210 发送到第二模块220。在其它实施例中,第一模块可以响应用户提供的指示向第二模块发送 信号。在这种实施例中,用户可以向第一模块和/或中央控制处理器提供指示,并且第一模 块和/或中央控制处理器可以发送信号,以便将第二模块的处理器置于其第二配置。在其 它实施例中,用户可以通过与第二模块相关联的用户接口直接向第二模块提供指示。在某些实施例中,第二模块220通过缆线230向第一模块210发回确认信号。一 旦第二模块220的处理器222处于其第二配置,该确认信号被发送到第一模块210。确认信 号配置为向第一模块210指示第二模块220的处理器222处于其第二配置。在其它实施例 中,确认信号可被发送到中央控制处理器,该中央控制处理器可将确认信号中继到第一模 块。在其它实施例中,第二模块不发送确认信号,并且第一模块在自从向第二模块发送信号 后经过了给定时间量之后,认为第二模块的处理器处于其第二配置。一旦第二模块220的处理器222处于其第二配置,第一模块210可以确定从第一 模块210向第二模块220发送信元的时间。第一模块210通过缆线230向第二模块220发 送信元。这由图2中的路径AA示出。当第一模块210发送信元时,第一模块210的处理器 212启动计时器。在某些实施例中,该计时器可以具有纳秒级的分辨率。在这种实施例中, 该计时器可以区分具有近似1纳秒的差异的通行时间。在其它实施例中,该计时器可以区 分具有小于1纳秒的差异的通行时间。在某些实施例中,第一模块210响应从第二模块220接收到的确认信号向第二模 块220发送信元。在其它实施例中,第一模块响应用户提供的指示和/或等等向第二模块 发送信元。第二模块220从第一模块210接收信元。第二模块220的处理器222处于其第二 配置,并且因此,通过缆线230向第一模块210发回信元。图2的路径BB示出了在向第一 模块210发回信元之前在第二模块处对信元的处理。在某些实施例中,在第二模块220处 对信元的处理大体是恒定的。换言之,当处理器222处于其第二配置时,每次第二模块220 接收到信元,第二模块220花费大体相同的时间量处理信元。图2中的路径CC示出了将信 元从第二模块220发送到第一模块210。
第一模块210通过缆线230从第二模块220接收信元。一旦第一模块210接收到 信元,第一模块210的处理器212停止在第一模块210最初发送信元时启动的计时器。该 计时器指示信元从第一模块210行进到第二模块220的时间(路径AA)、第二模块220处 理信元的时间(路径BB)和信元从第二模块220行进到第一模块210的时间(路径CC)。 为了确定信元通过缆线230从第一模块210发送到第二模块220的时间量,处理器212减 去第二模块220处的处理时间,并且将结果除以2。如上所述,第二模块220处的处理时间 大体恒定。因此,第一模块210的存储器214可被编程,以便包括对该大体恒定的处理时间 的指示。从总时间中减去处理时间(路径BB)的结果是信元通过缆线230在第一模块210 和第二模块220之间两次行进的时间(路径AA和路径CC)。因此,为了确定信元通过缆线 230在第一模块210和第二模块220之间一次行进的时间(路径AA),可将该结果除以2。一旦第一模块210计算了信元在第一模块210和第二模块220之间行进的时间, 第一模块210可以使用该信息,以便使第一模块210和第二模块220之间的行进时间与信 元从第一模块210行进到交换结构的第二级的其它模块的时间同步。在某些实施例中,可以使用信元在第一模块210和第二模块220之间行进的时间 确定缆线230的长度。可以通过以通行时间乘以信号行进通过缆线230的速度计算缆线 230的长度。在某些实施例中,例如,计算缆线230的长度可被用于确保缆线具有认可的缆 线长度,和/或用于与交换结构中的其它缆线的长度进行比较,以便确定最长的缆线。在某些实施例中,缆线230的长度可被自动存储在存储器214的寄存器内。这种寄 存器可被用于比较各种缆线的长度,并且对交换结构系统内的缆线的不同长度进行补偿。 在其它实施例中,通行时间本身被自动存储在存储器内,并且被用于对交换结构系统内的 缆线的不同长度进行补偿。在不使用自动缆线长度检测方法的实施例中,缆线长度可被手 工输入(例如,通过用户输入)存储器的寄存器。这种缆线长度的手工输入可能是烦琐的 和/或易于出现用户错误。在其它实施例中,可以通过在第一模块和第二模块之间在预定的时间段内发送尽 可能多的信号,确定信元在第一模块和第二模块之间行进的时间。在这种实施例中,例如, 第一模块可以启动计时器,然后通过缆线向第二模块发送信号。然后,第二模块可以响应从 第一模块接收到信号向第一模块发送信号。响应从第二模块接收到信号,第一模块可以向 第二模块发送另一个信号。可以重复这个循环,直到第一模块处的计时器到达预定的时间 为止。为了确定信元被通过缆线从第一模块发送到第二模块的时间量,将该时间段除以信 号在缆线上被发送的次(或循环)数,并且减去第二模块和/或第一模块处的任何处理时 间。如上所述,该方法还可用于使用信号穿过缆线的速度,计算第一模块和第二模块之间的 缆线长度。图3是根据另一个实施例的被操作地耦接到与交换结构的第二级相关联的第二 模块320和与交换结构的第二级相关联的第三模块330的与交换结构的第一级相关联的第 一模块310的示意图。第一模块310通过第一缆线340操作地耦接到第二模块320。类似地,第一模块 310通过第二缆线350操作地耦接到第三模块330。缆线340、350可以是配置为操作地将 第一模块310分别与第二模块320和第三模块330耦接在一起的任何缆线340、350。在某 些实施例中,例如,缆线340、350可以是包括至少一条光纤的光连接。
第一缆线340具有长度L1,并且第二缆线具有长度L2。第二缆线350的长度L2大 于第一缆线340的长度Lp因此,信元通过第二缆线350从第一模块310发送到第三模块 330的通行时间比信元通过第一缆线340从第一模块310发送到第二模块320的通行时间 长。如果不补偿,这可能破坏交换结构的定时。如果不补偿,例如,数据分组的信元可能不 以正确的顺序(例如,信元进入交换结构的第一级的模块的输入端口的顺序)到达交换结 构的最后级的模块的输出端口。如这里进一步详细描述的,延迟发送某些信元可以帮助解 决这个问题。模块310、320、330在结构上和功能上类似于上面所示和描述的模块210、220。第 一模块310包括处理器312和存储器314。处理器312可以是配置为从交换结构的在先级 的模块或输入模块接收数据分组的信元,并且将数据分组的信元发送到交换结构的在后级 的模块(例如,第二模块320或第三模块330)或输出模块的任何处理器。在某些实施例中, 例如,第一模块310是具有处理器312和存储器314的专用集成电路(ASIC)。在其它实施 例中,存储器314可以是例如随机访问存储器(RAM)、存储器缓冲器、硬驱动器和/或等等。 类似地,第二模块320和第三模块330分别包括处理器322、332和存储器324、334。在某些实施例中,第二模块320的处理器322具有第一配置和第二配置。当处理器 322处于其第一配置时,它配置为从交换结构的在先级的模块(例如,第一模块310)接收数 据分组的信元,并且将数据分组的信元发送到交换结构的在后级的模块或输出模块。当处 理器322处于其第二配置时,它配置为从交换结构的在先级的模块(例如,第一模块310) 接收信元,并且将信元发送回交换结构的在先级的模块。如本文进一步详细描述的,当处理 器322处于其第二配置时,可以确定交换结构的在先级的模块(例如,第一模块310)和第 二模块320之间的数据连接(例如,缆线340)的通行时间。通过从交换结构的在先级的模块(例如,第一模块310)接收信号,处理器322可 被从其第一配置切换到其第二配置。在这种实施例中,例如,第一模块310可以向第二模块 320发送指示处理器322从其第一配置切换到其第二配置的信号。在其它实施例中,中央控 制处理器(图3中未示出)可以向第二模块发送指示处理器从其第一配置切换到其第二配 置的信号。在某些实施例中,可以使用类似的处理将处理器322从其第二配置切换到其第 一配置。类似于第二模块320的处理器322,第三模块330的处理器332具有第一配置和第 二配置。类似于处理器322,处理器332可被在其第一配置和其第二配置之间切换。在使用中,第二模块320的处理器322被切换到其第二配置,并且第一模块310使 用上面以图2描述的方法,确定信元通过第一缆线340从第一模块310发送到第二模块320 的时间。类似地,第三模块330的处理器332被切换到其第二配置,并且第一模块310确定 信元通过第二缆线350从第一模块310发送到第三模块330的时间。然后,处理器322和 处理器332可被从其第二配置切换到其第一配置。如果不进行补偿,由于第一缆线340的长度L1小于第二缆线350的长度L2,信元 通过第一缆线340从第一模块310发送到第二模块320的时间少于信元通过第二缆线350 从第一模块310发送到第三模块330的时间。换言之,除非对这种时间差进行补偿,否则, 如果在第一模块310向第三模块330发送信元的同时,第一模块310向第二模块320发送 信元,则在向第三模块330发送的信元到达第三模块330之前,向第二模块320发送的信元到达第二模块320。为了确保向第三模块330发送的信元到达第三模块330的时间和向第二模块320 发送的信元到达第二模块320的时间为大体相同的时间,在发送之前可以在第一模块310 处延迟向第二模块320发送的信元。换言之,可以延迟在较短链路上发送的信元,从而一个 信元与另一个信元在交换结构的每级之间花费相同的时间量(例如,一个信元不会比另一 个信元更快地通过交换结构)。在某些实施例中,例如,如果第一模块310向第二模块320发送信元,在被发送之 前,该信元可被存储在第一模块310的存储器314内一段时间。信元被存储的时间量大体 等于信元从第一模块310行进到第三模块330的时间和信元从第一模块310行进到第二模 块320的时间之间的差。因此,从第一模块310发送的信元到达第二模块320所花费的时 间可以与从第一模块310发送的信元到达第三模块330所花费的时间大体相同。图4是根据另一个实施例的五级交换结构系统400的示意图。交换结构400包括 多个输入/输出模块402、多个第一 /第五级机架、多个第二 /第三/第四级机架490、第一 组缆线440和第二组缆线444。在某些实施例中,交换结构400可以在结构上和功能上类 似于提交于 2008 年 12 月 29 日的题目为〃 System Architecture for Highly Scalable and Distributed Multi-stage Switch Fabric"美国专利申请 No. 12/345,500 和提交于 2008 年 12 月 29 日的题目为"Methods and Apparatus related to a Modular Switch Architecture"的美国专利申请No. 12/345, 502中示出和描述的交换结构,通过引用将这 两者完整结合在此。输入/输出模块402配置为向至少一个第一 /第五级机架460发送数据和/或从 至少一个第一 /第五级机架460接收数据。每个输入/输出模块402还配置为执行解析功 能、分类功能、转发功能、排队和调度功能。因此,分组解析、分组分类、分组转发和分组排 队和调度全都发生在信元进入第一 /第五级机架460之前。因此,不需要在交换结构的每 一级执行这些功能,并且第一 /第五级机架460内的每个模块和第二 /第三/第四级机架 490内的每个模块(本文将进一步详细描述)不必包括执行这些功能的能力。这可以减少 成本、功耗、冷却需要和/或交换结构内的每个模块的物理区域。这还可以减少与交换结构 相关联的等待时间。在某些实施例中,例如,端到端等待时间(例如,通过交换结构从输入 /输出模块402a向另一个输入/输出模块402b发送数据的时间)可以低于使用以太网协 议的交换结构系统的端到端等待时间。在某些实施例中,交换结构的吞吐率可受交换结构 400的连接密度限制,而不受功率限制和/或热限制。类似于提交于2008年9月30日的题 目为"Methods and Apparatus Related to Packet Classification Associated with a Multi-Stage Switch Fabric"的美国专利申请 No. 12/242,168 和提交于 2008 年 9 月 30 日的题目为"Methods and Apparatus for Packet Classification Based on Policy Vectors"的美国专利申请No. 12/242,172中公开的功能,解析功能、分类功能、转发功能、 排队和调度功能可以被执行。每个输入/输出模块402配置为连接到第一组缆线440的缆线的第一端。每个缆 线440操作地将输入/输出模块402耦接到第一 /第五级机架460。第一组缆线440可由 适用于在输入/输出模块402和第一 /第五级机架460之间传送数据的任何材料构造。在 某些实施例中,例如,每个缆线440由多条光纤构造。在这种实施例中,每个缆线440可以具有12条发送光纤和12条接收光纤。每个缆线440的12条发送光纤可以包括8条用于 发送数据的光纤,1条用于发送控制信号的光纤以及3条用于扩展数据容量和/或用于冗余 的光纤。类似地,每个缆线440的12条接收光纤具有8条用于接收数据的光纤,1条用于接 收控制信号的光纤以及3条用于扩展数据容量和/或用于冗余的光纤。在其它实施例中, 每个缆线内可以包含任何数目的光纤。光纤的发送和接收指定是从输入/输出模块402的 视角看的。如果从第一 /第五级机架460的视角看,该指定是相反的。在某些实施例中,第一组缆线440中的各缆线在长度上不相等。在这种实施例中, 例如,与耦接到第一 /第五级机架460的第二输入/输出模块402相比,耦接到同一个第一 /第五级机架460的第一输入/输出模块402可被布置为距离该第一 /第五级机架460更 远。在这种实施例中,在第一输入/输出模块402和第一 /第五级机架460之间可以使用 比在第二输入/输出模块402和第一 /第五级机架460之间使用的缆线更长的缆线。在某些实施例中,每个输入/输出模块402可被耦接到多个第一 /第五级机架 460。在图4所示的实施例中,例如,每个输入/输出模块402耦接到两个第一 /第五级机 架460。可以为了冗余和/或更大的容量使用两个第一 /第五级机架460。在其它实施例 中,为了增加的冗余和/或更大的容量,可以使用多于两个的第一 /第五级机架。例如,四 个第一/第五级机架可被通过例如四条缆线操作地耦接到每个输入/输出模块。每个第一 /第五级机架460包括与交换结构的第一级相关联的模块和与交换结构 的第五级相关联的模块。在某些实施例中,第一 /第五级机架460内的模块可被布置在线 卡上。在这种实施例中,每个线卡可以包括多个模块。例如,线卡可以包括与交换结构的第 一级相关联的模块和/或与交换结构的第五级相关联的模块两者。第一 /第五级机架460 内的模块在结构上和功能上可以类似于上面示出和描述的模块。类似地,每个第二 /第三/第四级机架490包括与交换结构的第二级相关联的模 块、与交换结构的第三级相关联的模块和与交换结构的第四级相关联的模块。在某些实施 例中,第二 /第三/第四级机架490内的模块可被布置在线卡上。在这种实施例中,每个线 卡可以包括多个模块。例如,线卡可以包括与交换结构的第二级相关联的模块、与交换结构 的第三级相关联的模块和/或与交换结构的第四级相关联的模块。第二/第三/第四级机 架490内的模块在结构上和功能上可以类似于上面示出和描述的模块。每个第一 /第五级机架460通过第二组缆线444被操作地耦接到第二 /第三/第 四级机架490。第二组缆线444中的缆线在结构上和功能上可以类似于第一组缆线440中 的缆线。在某些实施例中,第二组缆线444中的缆线具有变化的长度。例如,在图4中,第 一第二 /第三/第四级机架490a与第二第二 /第三/第四级机架490b相比可被布置在距 离第一第一 /第五级机架460a更远的位置。因此,与用于操作地将第一第一 /第五级机架 460a耦接到第二第二/第三/第四级机架490b的缆线的长度相比,可以使用更长的缆线将 第一第一 /第五级机架460a操作地耦接到第一第二 /第三/第四级机架490a。在这种实 施例中,信元从第一第一 /第五级机架460a移动到第一第二 /第三/第四级机架490a的 时间比信元从第一第一 /第五级机架460a移动到第二第二 /第三/第四级机架490b的时 间长。在某些实施例中,可以使用第一组缆线440和第二组缆线444中的大量缆线将输入/输出模块402与第一 /第五级机架460操作地耦接,并且将第一 /第五级机架460与 第二 /第三/第四级机架490操作地耦接。在某些实施例中,例如,交换结构400包括4096 个输入/输出模块402,每个输入/输出模块402被操作地耦接到64个第一 /第五级机架 460中的两个。在这种实施例中,可以使用第一组缆线440中的8192条缆线。另外,在某些 实施例中,每64个第一 /第五级机架460可被操作地耦接到32个第二 /第三/第四级机 架490。在这种实施例中,可以使用第二组缆线444中的2048条缆线。因此,在这种实施 例中,可以使用总共10240条缆线。在这样大的配置中,手工输入用于变化的缆线长度的延 迟时间可能是个重大负担。在其它实施例中,可以使用多于10240条缆线。在这种实施例 中,例如,交换结构的每个级可被布置在单独的机架内,并且可以在交换结构的每级之间使 用缆线。在其它实施例中,可以使用少于10240条缆线。在使用中,使用上面示出和描述的方法确定在第一组缆线440中的每条缆线上发 送信元的时间。在某些实施例中,对在第一组缆线440中的每条缆线上发送信元的时间和 在第一组缆线440中的每条其它缆线上发送信元的时间进行比较,以便确定最长时间。在 其它实施例中,预先确定或获得第一组缆线中的最长缆线的长度,并且将其存储在系统的 每个模块的存储器内。在这种实施例中,由于可以使用最长缆线的长度计算最长时间,不必 对在第一组缆线440中的每条缆线上发送信元的时间和在第一组缆线中的每条其它缆线 上发送信元的时间进行比较。类似地,使用上面示出和描述的方法确定在第二组缆线444 中的每条缆线上发送信元的时间。在交换结构400内的每条缆线440、444上发送信元的时 间可被存储在每条缆线耦接的模块的存储器内,并且被用于自动补偿通行时间的差异。附 图中示出缆线的线不表示缆线长度。—旦确定并且在模块的存储器内存储了在每条缆线440、444上发送信元的时间, 数据分组可被通过交换结构从第一输入/输出模块402a发送到第二输入/输出模块402b。 在某些实施例中,例如,第一输入/输出模块402a接收数据分组,并且将数据分组解析为多 个信元。然后,该多个信元可被以它们被解析的顺序发送到交换结构内。例如,在第二信元 在缆线440a上被发送并进入第一 /第五级机架460a内的第一级模块之前,该多个信元中 的第一信元在缆线440a上被发送并进入第一 /第五级机架460a的第一级模块。这些多个信元可在交换结构(例如,第一 /第五级机架460和第二 /第三/第四 级机架490)上被发送到第二输入/输出模块402b处的目的地端口。例如,第一信元被通 过缆线444a从第一第一 /第五级机架460a内的第一级模块发送到第二 /第三/第四级机 架490a内的第二级模块,并且被通过缆线444e从第二 /第三/第四级机架490a内的第四 级模块发送到第一 /第五级机架460b内的第五级模块。然后,第一信元可被通过缆线440b 发送到输入/输出模块402b。类似地,例如,第二信元被通过缆线444b从第一第一 /第五 级机架460a内的第一级模块发送到第二 /第三/第四级机架490b内的第二级模块,并且 被通过缆线444d从第二 /第三/第四级机架490b发送到第一 /第五级机架460b内的第 五级模块。然后,第二信元可被通过缆线440b发送到输入/输出模块402b。如果不测量在每条缆线440、444上发送信元的时间,并且不使用该时间对从第一 输入/输出模块402a向第二输入/输出模块402b发送信元进行补偿,则可能出现同步错 误。例如,第二信元可能在第一信元到达第二输入/输出模块402b之前到达第二输入/输 出模块402b。这将涉及第二输入/输出模块402b处的大量缓冲,以便重构来自多个信元的数据分组。第二输入/输出模块上的这种存储器缓冲器的尺寸将被增加,以便在对多个信 元重新排序时存储它们。如果不进行补偿,例如,如果与第二 /第三/第四级机架490b相 比,第二 /第三/第四级机架490a被布置在距离第一 /第五级机架460a和/或第一 /第 五级机架460b更远的位置,则可能发生这种情况。相应地,缆线444a和444c分别比缆线 444b和444d更长,并且第一信元到达第二输入/输出模块402b所花费的时间比第二信元 到达第二输入/输出模块402b所花费的时间长。如果时间差足够大,则第二信元可能在第 一信元到达第二输入/输出模块402b之前到达第二输入/输出模块402b。通过确定在第二组缆线444中的每条缆线上发送信元的时间的差异,可以补偿这 个问题。例如,第一 /第五级机架460a可以将向第二 /第三/第四级机架490b发送信元 延迟一个时间量,以便补偿在缆线444a上将信元发送到第二 /第三/第四级机架490a的 附加时间。因此,采用延迟,从第一 /第五级机架460a向第二 /第三/第四级机架490b发 送信元的有效时间大体等于从第一 /第五级机架460a向第二 /第三/第四级机架490a发 送信元的时间。类似地,第二 /第三/第四级机架490b可以延迟通过缆线444d从第一 / 第五级机架发送信元,以便补偿通过较长的缆线444c从第二 /第三/第四级机架490a向 第一 /第五级机架460b发送信元的附加时间。在某些实施例中,输入/输出模块402可以延迟向第一 /第五级机架460发送信 元,和/或第一 /第五级机架460可以延迟向输入/输出模块402发送信元,以便补偿最长 的缆线440。在这种实施例中,输入/输出模块402可以确保来自各数据分组的信元在大 体相同的时间到达第一 /第五级机架460内的第一级模块。类似地,在这种实施例中,第一 /第五级机架460内的每个第五级模块可以确保来自各数据分组的信元在大体相同的时间 到达输入/输出模块402。这可以帮助保持交换结构400的同步。虽然多条缆线和/或一条缆线内的多股线可被布置在两个机架之间,在某些实施 例中,可以为布置在两个机架之间的一条缆线内的单股线执行在该缆线上发送信元的时间 的检测。例如,如果执行在该股缆线上发送信元的时间的检测,则该时间可被用于该缆线内 的所有其它股,和/或用于布置在两个机架之间的所有其它缆线。图5是示出了根据另一个实施例的通过交换结构发送信元的方法500的流程图。 在502,信号被发送到与交换结构的一级相关联的第一模块。该模块可以类似于上面示出和 描述的模块。在某些实施例中,该信号是用于确定向该模块发送信元的时间的信元。在某 些实施例中,通过光缆发送信号。在其它实施例中,通过电缆、电迹线、中间板、背板和/或 配置为承载信号的任何其它装置发送信号。在504,在向第一模块发送信号之后经过第一时间量时,从第一模块接收信号。在 某些实施例中,第一模块响应接收到被发送到第一模块的信号发送信号。基于向第一模块 发送信号和从第一模块接收信号之间的时间,可以计算信元被发送到第一模块的时间。在 某些实施例中,可以根据向第一模块发送信号和从第一模块接收信号之间的时间,计算用 于向第一模块发送信号和从第一模块接收信号的缆线的长度。在506,向与交换结构的该级相关联的第二模块发送信号。在508,在向第二模块 发送信号之后经过了第二时间量时,从第二模块接收信号。第二时间量小于第一时间量。在 某些实施例中,这指示用于向第一模块发送信号和从第一模块接收信号的缆线比用于向第 二模块发送信号和从第二模块接收信号的缆线长。
在510,向第一模块发送第一数据分组的信元。在512,在发送第一数据分组的信 元之后经过了第三时间量时,向第二模块发送第二数据分组的信元。第三时间量与第一时 间量和第二时间量之间的差相关联。在某些实施例中,将第二数据分组的信元的发送延迟 第三时间量补偿用于向第一模块发送信号和从第一模块接收信号的缆线的长度和用于向 第二模块发送信号和从第二模块接收信号的缆线的长度的差异。这确保第一数据分组的信 元到达第一模块的时间与第二数据分组的信元到达第二模块的时间大体相等。在其它实施 例中,可以使用第三时间量来补偿向第一模块和第二模块发送信元的时间量的其它差异, 诸如,例如,缆线类型的差异、被发送的信元的尺寸的差异、电迹线长度的差异和/或等等。虽然上面已经描述了各种实施例,应当理解,仅以示例而不是限制的方式给出这 些实施例。在上述方法指示以某种顺序发生某些事件时,可以修改某些事件的排序。另外, 当可能时,某些事件可被在并行处理中并发地执行,以及如上所述顺序地执行。在某些实施例中,可以使用确定在第一模块和第二模块之间发送信元的时间的方 法,以便确定缆线的端部是否被正确耦接。例如,第一模块可以通过缆线向第二模块发送信 元。如果缆线未被耦接到第二模块和/或未被正确耦接到第二模块,第二模块将不向第一 模块发回答复信元,和/或将向第一模块发回错误的答复信元。虽然在图4中被示出并且被描述为用于五级交换结构系统400,在其它实施例中, 本文描述的实施例可被用于具有任何数目的级、级内的模块、缆线和/或输入/输出模块的 交换结构系统。另外,在其它实施例中,本文描述的实施例可被用于具有任何配置的交换结 构系统。在某些实施例中,例如,本文描述的实施例可被用于在交换结构的每级的模块之间 具有缆线的三级交换结构系统。这种交换结构系统可以类似于在提交于2009年3月31日 的题目为〃 Distributed Multi-Stage Switch Fabric"的美国专利申请 No. 12/414,825 中示出和描述的交换结构系统,通过引用将其完整结合在此。本文描述的某些实施例涉及具有计算机或处理器可读介质(也可被称为处理器 可读介质)的计算机存储产品,其中所述处理器可读介质上具有用于执行各种以计算机执 行的操作的指令或计算机代码。所述介质和计算机代码(还可以被称为代码)可被针对特 定目的或多个特定目的而设计和构造。计算机可读介质的例子包括但不限于磁存储介质, 诸如硬盘、软盘和磁带;光学存储介质,诸如压缩盘/数字视频盘(CD/DVD)、压缩盘-只读 存储器(⑶-ROM)和全息设备;磁光存储介质,诸如光盘;载波信号处理模块;和特别配置为 存储和执行程序代码的硬件设备,诸如通用微处理器、微控制器、专用集成电路(ASIC)、可 编程逻辑器件(PLD)和只读存储器(ROM)和随机访问存储器(RAM)设备。计算机代码的例子包括但不限于微码或微指令、诸如由编译器产生的机器指令、 用于产生网络服务的代码、以及由使用解释器的计算机执行的包含高层指令的文件。例如, 这些实施例可被使用Java、C++或其它编程语言(例如,面向对象的编程语言)和开发工具 实现。计算机代码的附加例子包括但不限于控制信号、加密代码和压缩代码。虽然各种实施例已经被描述为具有特定的特征和/或组件的组合,适当时,其它 实施例可以具有实施例中的任何实施例的任何特征和/或元件的组合。在某些实施例中, 例如,在上述实施例中的任何实施例中,可以使用对在第一模块和第二模块之间发送信元 的时间的确定来确定布置在第一模块和第二模块之间的缆线的长度。如上所述,这可被用 于确定所使用的缆线的长度是否被交换结构支持。
权利要求
一种用于通行延迟的检测的方法,包括向与交换结构的级相关联的第一模块发送信号;在向第一模块发送信号后经过了第一时间量时,从第一模块接收信号;向与交换结构的所述级相关联的第二模块发送信号;在向第二模块发送信号后经过了第二时间量时,从第二模块接收信号,第二时间量小于第一时间量;向第一模块发送第一数据分组的信元;和在发送第一数据分组的信元之后经过了第三时间量时,向第二模块发送第二数据分组的信元,第三时间量大体等于第一时间量和第二时间量之间的差。
2.如权利要求1所述的方法,其中向第一模块发送信号包括通过第一缆线向第一模块 发送信号,向第二模块发送信号包括通过第二缆线向第二模块发送信号,第二缆线的长度 小于第一缆线的长度。
3.如权利要求1所述的方法,其中第一数据分组的信元被所述与交换结构的级相关联 的第一模块接收的时间与第二数据分组的信元被与交换结构的所述级相关联的第二模块 接收的时间大体相同。
4.如权利要求1所述的方法,还包括在发送第一数据分组的信元和发送第二数据分组的信元之间的时间段内,将第二数据 分组的信元存储在存储器缓冲器中。
5.如权利要求1所述的方法,其中向第一模块发送信号和从第一模块接收信号之间的 第一模块内的处理时间与向第二模块发送信号和从第二模块接收信号之间的第二模块内 的处理时间大体相同。
6.如权利要求1所述的方法,其中所述第一数据分组的信元是第一数据分组的第一信 元,该方法还包括在将所述第二数据分组的信元发送到第二模块之后经过了一个时间量时,将第一数据 分组的第二信元发送到第二模块。
7.如权利要求1所述的方法,其中交换结构的所述级是交换结构的第一级,该方法还 包括从与交换结构的第二级相关联的模块接收所述第一数据分组的信元。
8.如权利要求1所述的方法,其中交换结构的所述级是交换结构的第一级,该方法还 包括从与交换结构的第二级相关联的模块接收信号;和响应从与第二级相关联的模块接收到信号,向所述与第二级相关联的模块发送信号, 所述与第二级相关联的模块配置为基于发送到所述与第二级相关联的模块的信号,确定耦 接到所述与第二级相关联的模块的缆线的长度。
9.如权利要求1所述的方法,其中发送到第一模块的信号是发送到第一模块的第一信 号,该方法还包括在向第一模块发送第一信号之前,向所述与交换结构的级相关联的第一模块发送第二 信号,以便指示第一模块进入回环模式。
10.如权利要求1所述的方法,其中向第一模块发送信号包括通过缆线向第一模块发送信号,该方法还包括基于向第一模块发送信号和从第一模块接收信号之间的时间量,确定所述缆线的长 度,在确定所述缆线的长度之前,从所述时间量中减去向第一模块发送信号和从第一模块 接收信号之间的第一模块内的处理时间。
11.如权利要求1所述的方法,其中响应与第一模块形成连接,自动启动向第一模块发 送信号。
12.一种用于检测通行延迟的装置,包括配置为向与交换结构的级相关联的第一模块发送信号的模块,所述模块配置为在向第 一模块发送信号后经过了第一时间量时,从第一模块接收信号,所述模块配置为向与交换结构的所述级相关联的第二模块发送信号,所述模块配置为 在向第二模块发送信号后经过了第二时间量时,从第二模块接收信号,第二时间量小于第 一时间量;所述模块配置为向第一模块发送第一数据分组的信元,所述模块配置为在发送第一数 据分组的信元之后经过了第三时间量时,向第二模块发送第二数据分组的信元,第三时间 量大体等于第一时间量和第二时间量之间的差。
13.如权利要求12所述的装置,还包括第一缆线,所述模块被通过第一缆线耦接到第一模块;和第二缆线,所述模块被通过第二缆线耦接到第二模块,第二缆线的长度小于第一缆线 的长度。
14.如权利要求12所述的装置,还包括配置为在发送第一数据分组的信元和发送第二数据分组的信元之间的时间段内,存储 第二数据分组的信元的存储器缓冲器。
15.如权利要求12所述的装置,还包括缆线,所述模块被通过所述缆线耦接到第一模块,所述模块配置为基于向第一模块发送信号和从第一模块接收信号之间的时间量减去 向第一模块发送信号和从第一模块接收信号之间的第一模块内的处理时间,确定所述缆线 的长度。
16.一种用于通行延迟的检测的方法,包括向与交换结构的级相关联的模块发送第一多个信号,第一多个信号具有一定数目的信号;在预定的时间段内从所述模块接收第二多个信号,响应基于第一多个信号的信号,接 收第二多个信号中的每个信号,第二多个信号具有一定数目的信号;和基于第一多个信号中的信号数目和第二多个信号中的信号数目,确定耦接到所述模块 的缆线的长度。
17.如权利要求16所述的方法,其中发送第一多个信号和接收第二多个信号之间的处 理时间大体恒定。
18.如权利要求16所述的方法,其中所述模块是与交换结构的级相关联的第一模块, 该方法还包括向与交换结构的所述级相关联的第二模块发送第三多个信号,第三多个信号具有一定数目的信号;在预定的时间段内接收从第二模块发送的第四多个信号,响应基于第一多个信号的信 号,接收第四多个信号中的每个信号,第四多个信号具有一定数目的信号;和基于第三多个信号中的信号数目和第四多个信号中的信号数目,确定耦接到第二模块 的缆线的长度。
19.如权利要求16所述的方法,还包括在向所述模块发送第一多个信号之前,向所述模块发送控制信号,所述控制信号配置 为使得所述模块进入回环模式。
20.如权利要求16所述的方法,其中所述与交换结构的级相关联的模块是与交换结构 的级相关联的第一模块,该方法还包括确定耦接到与交换结构的所述级相关联的第二模块的缆线的长度,耦接到第二模块的 缆线的长度大于耦接到第一模块的缆线的长度;和将向与交换结构的所述级相关联的第一模块发送数据分组的信元延迟与耦接到第二 模块的缆线的长度和耦接到第一模块的缆线的长度的差相关联的时间量。
21.一种用于检测通行延迟的装置,包括与交换结构的第一级相关联的、并且配置为向与交换结构的第二级相关联的模块发送 第一多个信号的模块,第一多个信号具有一定数目的信号;和配置为将与第一级相关联的模块和与第二级相关联的模块耦接的缆线,所述与第一级相关联的模块配置为在预定的时间段内从与第二级相关联的模块接收 第二多个信号,配置所述与第一级相关联的模块,使得响应基于第一多个信号的信号,接收 第二多个信号中的每个信号,第二多个信号具有一定数目的信号,并且所述与第一级相关联的模块配置为基于第一多个信号中的信号数目和第二多个信号 中的信号数目,确定所述缆线的长度。
22.如权利要求21所述的装置,其中配置所述与第一级相关联的模块,使得发送第一 多个信号和接收第二多个信号之间的处理时间大体恒定。
23.如权利要求21所述的装置,其中所述与第一级相关联的模块配置为在向所述与第 一级相关联的模块发送第一多个信号之前,向所述与第二级相关联的模块发送控制信号, 使得所述与第二级相关联的模块进入回环模式。
24.如权利要求21所述的装置,其中所述与第二级相关联的模块是与第二级相关联的 第一模块,所述缆线是第一缆线,该装置还包括将所述与第一级相关联的模块和所述与第二级相关联的第二模块耦接的第二缆线,所述与第一级相关联的模块配置为确定第二缆线的长度,第二缆线的长度大于第一缆 线的长度,所述与第一级相关联的模块配置为将发送到与第二级相关联的第一模块的数据分组 的信元延迟与第二缆线的长度和第一缆线的长度的差相关联的时间量。
全文摘要
本发明提供了一种动态检测分布式多级交换结构中的级间通行时间的方法和装置。在某些实施例中,该方法包括向与交换结构的级相关联的第一模块发送信号,并且在向第一模块发送信号后经过了第一时间量时,从第一模块接收信号。向与交换结构的该级相关联的第二模块发送信号,并且在向第二模块发送信号后经过了第二时间量时,从第二模块接收信号。第二时间量小于第一时间量。向第一模块发送第一数据分组的信元,并且在发送第一数据分组的信元之后经过了第三时间量时,向第二模块发送第二数据分组的信元。第三时间量与第一时间量和第二时间量之间的差相关联。
文档编号H04L12/26GK101938381SQ20101022067
公开日2011年1月5日 申请日期2010年6月29日 优先权日2009年6月30日
发明者A·阿格拉维尔, P·A·托马斯, S·谢农 申请人:丛林网络公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1