用于与交换机结构相关的流控制的方法和装置的制造方法

文档序号:9567080阅读:269来源:国知局
用于与交换机结构相关的流控制的方法和装置的制造方法
【专利说明】用于与交换机结构相关的流控制的方法和装置
[0001]本申请是2011年9月15日提交的、申请号为201110272723.3的发明专利申请(名称为“用于与交换机结构相关的流控制的方法和装置”)的分案申请。
技术领域
[0002]本发明总体上涉及流控制,并且,特别地,涉及与多级交换机结构相关的流控制。
【背景技术】
[0003]举例来说,从发送器经由物理链路(例如,以太网链接)到接收器的数据传输可能因被设置为接收该数据的队列的拥塞而中断。在有些情况下,由于缓冲区溢出,该中断可能引起行开端(H0L)阻塞和/或导致至少部分数据的损失。已知的流控制协议,例如以太网暂停协议(电机及电子工程师协会(IEEE) 802.3x)和优先级暂停协议(IEEE 802.1Qbb),在某些应用中可用于减少缓冲区溢出,而且,量化拥塞通告(QCN)协议(IEEE 802.lQau)可用于在具有相对稳定数据流的多跳网络内管理数据拥塞。然而,已知的这些流控制协议,并不能充分解决与多级队列相关的拥塞问题,和/或,并不能充分处理逐跳网络链接内的拥塞的急剧发作,比如,由数据突发所引起的拥塞的急剧发作。

【发明内容】

[0004]因此,需要用于与逐跳网络链接相关的模块间的数据流控制的方法和装置。
[0005]在某些实施例中,一种装置包括流控制模块,该流控制模块被设置为,当多级交换机的一级的输出队列的可用容量跨过(cross)第一阈值时,则以第一速率接收来自该输出队列的第一数据包。该流控制模块被设置为,当该多级交换机的该级的输出队列的可用容量跨过第二阈值时,则以第二速率接收来自该输出队列的第二数据包。该流控制模块被设置为向该多级交换机的边缘设备发送流控制信号,而第一数据包或第二数据包由所述边缘设备进入该多级交换机。
【附图说明】
[0006]图1是根据本发明实施例的交换机结构系统的系统框图。
[0007]图2是根据本发明另一实施例的交换机结构的示意图。
[0008]图3是根据本发明另一实施例的交换机结构系统的部分示意图。
[0009]图4是根据本发明另一实施例的输出队列的示意图。
[0010]图5是根据本发明另一实施例的数据包的示意图。
[0011]图6是根据本发明另一实施例的流控制包的示意图。
[0012]图7是根据本发明另一实施例的交换机结构系统的系统框图。
[0013]图8是根据本发明另一实施例的交换机结构内模块的示意图。
[0014]图9是根据本发明的另一实施例的流控制信号的发送方法的流程图。
【具体实施方式】
[0015]在某些实施例中,一种装置包括流控制模块,该流控制模块被设置为,当多级交换机的一级的输出队列的可用容量跨过第一阈值时,则以第一速率接收来自该输出队列的第一数据包。该流控制模块被设置为,当该多级交换机的该级的输出队列的可用容量跨过第二阈值时,则以第二速率接收来自该输出队列的第二数据包。该流控制模块被设置为向该多级交换机的边缘设备发送流控制信号,第一数据包或第二数据包由所述边缘设备进入该多级交换机。
[0016]在某些实施例中,第一阈值比第二阈值低。更特别地,在第一阈值处的输出队列的可用容量要比在第二阈值处的输出队列的可用容量大。相应地,由于输出队列存储了更大数量的数据包且输出队列的可用容量下降了,流控制模块接收更多的数据包。这导致流控制模块向边缘设备发送更大数量的流控制包。统计学上,在输出队列处导致拥塞的源自一个或多个边缘设备的数据流将得到调节。一旦流得到调节,在输出队列处的拥塞就可能减小,从而增大了输出队列的可用容量。
[0017]在某些实施例中,一种装置包括分布式交换机结构的第一交换机模块。该第一交换机模块被设置为,从该分布式交换机结构的一组第二交换机模块接收多个数据包,并将该多个数据包存储在输出队列中。该第一交换机模块被设置为,如果输出队列的可用容量跨过阈值,则向带外流控制模块发送该输出队列中的数据包,这样,该带外流控制模块向与该数据包相关的源边缘设备发送流控制信号。
[0018]在某些实施例中,所述流控制模块是带外的,因为它并不是在通过该分布式交换机结构的数据包的普通数据流内(例如,在该交换机结构的数据平面的外)。相应地,该流控制模块的运行并不中断和/或减缓通过该交换机结构的数据包的普通数据流。此外,这允许该流控制模块,经由该交换机结构的数据平面的外的低延时的数据通路,向源边缘设备发送流控制包。
[0019]在某些实施例中,非暂时性的处理器可读介质存储表示某些指令的代码,该指令使得处理器接收多级交换机的一级的输出队列的可用容量的指示符。该代码表示某些指令,该指令使得处理器发送输出队列中的数据包请求,前提是该输出队列的可用容量的指示符满足条件。该代码还表示某些指令,该指令使得处理器使用第一流控制协议向数据包的源边缘设备发送流控制信号,这样,该源边缘设备使用第二流控制协议向源外围处理设备发送流控制信号。
[0020]这里所使用的名词“物理跳”可包括两个模块和/或设备间的物理链路。举例来说,第一模块与第二模块操作性耦合的数据通路可被称为物理跳。或者说,物理跳可以在物理上链接第一模块与第二模块。
[0021 ] 这里所使用的名词“单物理跳”可包括系统内的两个模块间的直接物理连接。或者说,单物理跳可以包括链接,两个模块经由该链接而耦合,没有中间模块。相应地,举例来说,如果第一模块经由单物理跳与第二模块耦合,则该第一模块可向该第二模块直接发送数据包,而不是通过中间模块发送这些数据包。
[0022]这里所使用的名词“单物理跳”可包括一个物理跳和/或一组物理跳,其在与第一协议相关的网络拓扑结构内为单跳。或者说,根据与第一协议相关的拓扑结构,第一模块和/或设备与第二模块和/或设备经由该物理跳和/或该组物理跳而操作性耦合,其间,不存在中间节点。经由单逻辑跳而连接到第二模块和/或设备的第一模块和/或设备可向该第二模块和/或设备发送数据包,这要使用与该第一协议和第二模块和/或设备相关的目的地址,但不考虑该第一设备与第二设备间的物理跳的数目。在某些实施例中,举例来说,第二协议可使用该第一协议的目的地址在该单物理跳上,将数据包和/或数据单元从该第一模块和/或设备路由到第二模块和/或设备。或者说,当第一模块和/或设备经由第一协议的单逻辑跳向第二模块和/或设备传送数据时,该第一模块和/或设备对待该单逻辑跳就像它正在直接向该第二模块和/或设备发送数据一样。
[0023]在某些实施例中,交换机结构可起到部分的单逻辑跳的作用(例如,单大范围综合L2/L3交换机)。在物理上,交换机结构的多个部分可以分布在例如许多机架(chassis)和/或由多物理跳所互联的模块。在某些实施例中,举例来说,该交换机结构的一个处理级可被包括在第一机架,而该交换机结构的另一个处理级可被包括在第二机架。在逻辑上,这两个处理级都可起到部分的单综合交换机的作用(例如,根据第一协议在相同的逻辑跳内),但包括各对处理级之间的独立的单物理跳。或者说,物理跳可在表示与协议相关的单逻辑跳的交换机结构的内操作地耦合各级,其中,所述协议被用于在该交换机结构外对数据进行路由。此外,与用于在该单逻辑跳外对数据进行路由的协议相关的包分类和转送不必出现在单逻辑跳内的各级。在某些实施例中,举例来说,在一个模块和/或设备经由该单逻辑跳向另一个模块和/或设备发送该数据包之前,可出现与第一协议(例如,以太网)相关的包分类和转送。
[0024]举例来说,这里所使用的交换机结构内的模块可以是在交换机结构的一级的内定义一个或多个交换机的操作性耦合的电气元件的任意集合和/或组合。在某些实施例中,举例来说,模块可包括存储器、处理器、电迹线(electrical trace)、光连接器和/或诸如此类的东西。
[0025]本说明书中所使用的单数形式“一”、“一个”或“该”包括复数形式,除非上下文有明确说明。因此,举例来说,名词“一个交换机结构”是用来表示单个交换机结构或多个交换机结构的组合。
[0026]名词“第一级”、“第二级”等等是指交换机结构内的部分、模块或节点。在某些情况下,这些名词是指给定交换机结构内的特定级。举例来说,三级Clos网包括从入口到出口的三个连续的级;这样的交换机结构具有三个级,这些级可被称为“第一级”(第一级关于从入口到出口的方向)到“第三级”(第三和最后一级关于从入口到出口的方向)。举例来说,图2示出了给定交换机结构内的特定级。然而,在其它情况下,名词“第一级”、“第二级”等等是指该交换机结构内的任意级,并对应于给定级的讨论次序。举例来说,“第一级”可指所讨论的第一级,并可对应于该交换机结构内的任意级(例如,三级Clos网内的第三级),而“第二级”可指该交换机结构内的其余级(例如,三级Clos网内的第二级)。因此,可以理解的是,特定的语境将表明名词“第一级”、“第二级”等等是指交换机结构内的特定序数级,或者,还是指该交换机结构的任意的特定级。
[0027]图1示出了根据本发明实施例的交换机结构系统100的示意图。交换机结构系统100包括交换机结构102和多个边缘设备182、184和186。交换机结构系统100与多个外围处理设备114、124和134有效地相互耦合。如同这里所进一步详细描述的那样,外围处理设备114、124和134可以是,举例来说,计算节点、服务节点、路由器和存储节点。在某些实施例中,举例来说,外围处理设备114、124和134包括服务器、存储设备、网关、工作站和/或诸如此类的东西。
[0028]使用任何适当的连接,例如,举例来说,光学连接(例如,光缆和光连接器)、电连接(例如,电缆和电连接器)和/或诸如此类的东西,外围处理设备114、124和134可与交换机结构系统100的边缘设备182、184和186操作性耦合。这样,外围处理设备114、124和134被设置为经由边缘设备182、184和186向交换机结构系统100发送数据(例如,数据包和数据单元等)。在某些实施例中,外围处理设备114、124和134与边缘设备182、184和186之间的各个连接是直接链接。这样的链接可被称为是单物理跳链接。在其它的实施例中,经由中间模块,该外围处理设备可与该边缘设备操作性耦合。这样的连接可称为是多物理跳链接。
[0029]各边缘设备182、184和186可以是任何被设置为将外围处理设备114、124和134操作地耦合至交换机结构102的设备。在某些实施例中,举例来说,边缘设备182、184和186可以是接入交换机、输入/输出模块、架顶式设备和/或诸如此类的东西。在结构上,边缘设备182、184和186可起到源边缘设备和目的边缘设备这两个作用。相应地,边缘设备182、184和186可向交换机结构102发送并从其接收数据(例如,数据包和/或数据单元的数据流),也可向所连接的外围处理设备114、124和134发送并从其接收数据。
[0030]在某些实施例中,边缘设备182、184和186可以是硬件模块和软件模块(在硬件中执行)的组合。在某些实施例中,举例来说,各边缘设备182、184和186可包括现场可编程门阵列(FPGA)、专用集成电路(ASIC)、数字信号处理器(DSP)和/或诸如此类的东西。
[0031]边缘设备182、184和186可被设置为准备进入交换机结构102的数据包(例如,以太网包)。举例来说,边缘设备182、184和186可被设置为,在向交换机结构102发送数据包之前,转送、分类和/或修改该数据包的包封装(例如,修改、增加及/或移除头部分、脚注部分和/或该
当前第1页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1