通过网络传输数据的方法

文档序号:7735160阅读:303来源:国知局
专利名称:通过网络传输数据的方法
技术领域
本发明涉及一种通过网络的数据传输方法,特别是涉及一种使用动态路由的多路 径网络中最小化拥塞影响的方法以及执行该方法的多路径网络。所述方法和多路径网络适 用于,但不限定于,多处理器网络例如存储网络、数据中心和高性能运算。特别的,本发明适 用于网桥、交换机、路由器、集线器和类似包括适配于IEEE802标准的数据帧分布或未来以 太网标准的数据帧的以太网设备。
背景技术
协议层概念上,为了区分功能以太网络分为许多虚拟层。最常见和标准的模型是开放 系统互连(OSI)参考模型。详细描述OSI参考模型的文章是HubertZimmermarm撰写的 《0SI参考模型-构建开放系统互联的ISO模型》("OSIReference Model-The ISO Model of Architecture for Open Systems”),IEEE 通讯汇刊 com-28 卷 1980 年第 4 期(IEEE Transactions on Communications, Vol. C0M-28, NO. 4, April 1980)。上述 OSI 参考模型 包括以下网络系统功能不同的7层1、物理层,负责物理信道连接。由那些涉及发送和接收信号(典型的线路驱动器 和线路接收器)的元件,信号编码/解码器和时钟组成。2、数据链路层,提供服务允许终端站设备之间通过底层的物理介质直接通讯。该 层提供组帧,为物理层将设备信息分离成离散的传输或帧。封装更高层的包传输协议。它 给识别源和目的装置提供寻址。它提供错误侦测以保证损坏数据不会传往更高层。3、网络层,负责网际通信,通过网络在终端站之间发送信息包。它必须适应多重数 据传输技术和拓扑使用各种协议,最常见的是网际协议hternet Protocol (IP)。4、传输层,负责端到端通信,防护传输时产生的问题例如中断的数据、错误和由低 层介质导致的分类错误影响上面各层。该层为应用提供无错、有序的、可靠的信息传递服 务,处理终端站之间的数据处理传递过程。传输控制协议(TCP)和用户数据报协议(UDP) 是最常见的传输层协议。5、会话层,负责建立应用之间的通信连接,处理认证和连接控制。6、表示层,保证各机器不同的数据表示得到解析。7、应用层,提供一般功能允许用户应用通过网络通信。为本申请的目的我们并不需要考虑传输层以上各层根据此处描述的方法的操作, 如果执行良好,就能屏蔽更高层由其辖域及下层出的问题。网络互连在数据链路层及其上执行网络服务的装置叫做站。物理层因为不能通过协议寻址 而排斥该定义。通常有两种形式的站1、终端站,是穿过网络的网络数据通信的最终源或目的地。2、中间站,转发由终端站产生的位于源和目的之间的网络数据。
位于数据链路层完成转发的中间站通常叫做网桥;位于网络层转发的站通常叫做 路由器。依赖于以太网络的网络工作站以短序列字节交换数据叫做数据包或协议数据单 元(PDU)。PDU由描述PDU目的报头和包含有效载荷数据的报文组成。在OSI模型中每一 协议层PDU具有不同的名称。物理层PDU叫数据位,数据链路层PDU叫数据帧,网络层PDU 叫数据包,传输层PDU叫数据段或报文。PDU在物理以太网硬件传输之前被封装。每一封装包含对一特定OSI层的信息,以 太网数据流封装成帧,然后帧封装成数据包,数据包封装成报文等等。这些包含了报头和有 效载荷的封装最后传过网络结构后续送到目的地。在传输层,一相关标准,传输控制协议(TCP),通过隐藏底层协议数据单元结构另 外为应用提供一简单界面,负责冲排列乱序的协议数据单元并且重传丢失的数据。TCP协议 设计时作为一种可靠的数据流传输服务;这样其优选的是准确的数据传递而不是性能。TCP 协议在等待乱序协议数据单元和数据重传的极端情况下经常遭遇相对的长时间延迟,降低 整体应用性能和当需要考虑最大量协议数据单元传输延迟(信号不稳定)时TCP协议变得 不适用,以文件系统或媒体传输为例。此外,在传输控制协议/网际协议(TCP/IP)层级的最低层,在网络层中协议数据 单元通过网络传输,完全适合IEEE802. ID标准介质访问控制(MAC)网桥连接的分隔网络, 要求源和目的对的次序预留。协议数据单元(PDU)副本是以太网络另一降低性能的因素。一目的路由还未被网 桥直到的单播PDU会被该网桥的所有路由淹没并同时在多个出站端口缓冲。网络重构影响 从网桥到目的地的优选路由可能导致一 PDU副本已经从上一优选路由发出紧接着一 PDU副 本将从缓冲区发送,二者均达到目的地。再次,TCP协议的更高层处理这些时就不会降低整 体性能。无序和副本不应该发生于通常的操作中。多路径以太网的这些特征受限于由 IEEE802. ID定义的快速生成树协议(RSTP)。RSTP通过禁止交替路由维持一网桥间的优选 路由,移除多路径和循环,保留单一路径以保证按顺序的数据帧传输。一 RSTP强制的,单路径以太网络在低网络流通负载时运行良好。然而当网络流通 负载增加并且网络连接装置数量增加并运行时开始出错。同时通过所述网络发送至不同目 的地址的许多PDU将不得不使用网络上相同的路由。在一些网络模式中这将使整体系统性 能因为单一路由很不幸的导致饱和并最终拥塞。随着以太网络的扩展,拥塞成为主要问题,日益冲突的网络和防止许多网络从没 有达到其设计性能目标。随着一直增长的用户数量、应用和存储装置交换信息网络变得被 数据塞满。拥塞引起极低的数据中心服务,导致一公司昂贵的计算资源利用率不足,通常差 不多50%。这种情况在更多的连接设备分布于更广阔地理位置时随着网络更快情况更糟。 结果将浪费更多的资源、时间、金钱和机会。当许多终端站与一个单独的终端站通信时可能导致端点拥塞。这种多对一类型的 通讯在HPC (高性能运算)和运行在服务集群上的数据中心应用中常见,还常见于当应用使 用网络连接存储中。在这一随后上下文的拥塞还介绍了另一已证实的问题,颤动(信号不 稳定)导致消息传递过程变得不可预知。拥塞是一种应用性能杀手;在一简单网络中延迟
7和颤动阻止系统达到峰值性能水平。在复杂网络中,拥塞也使得数据冗余重发变成必需因 为终端点之间的中间站简单丢弃或放弃阻塞的流量,进一步降低性能。实际中,拥塞从始发 热点蔓延开直到它从整个网络消退导致非联合路由受网络其它部分一个拥塞点的影响。图 1示出了简单网络图中这一情况。最初因为连接至Bl的服务阻塞而导致从Al-Bl的路由阻塞。因此交换机B被后继 传输至其端口或从其端口传出的数据阻塞,这些数据无法传输直到至Bl的所述路由畅通。交换机B拥塞紧接着,其它连接的交换机也开始阻塞由于它们不能通过交换机B 传递它们的通信量。交换机A拥塞这时所有工作站不能有效使用所述网络,即使将通信量 分享至连接交换机C的存储阵列装置。只有当Bl畅通能再次传输通信量流,解除阻塞的交 换机B和A。网络越大并且连接越多中间站,阻塞可能性越大并且阻塞的影响波及越广持续 时间越久。当一个网络变得拥塞,堵塞的通信量简单地被交换机丢弃以试图降低即刻网络负 载,期望所述拥塞点最终畅通。发送设备的TCP/IP层在超时后会重发数据。这对于系统性 能来说是个灾难,最多能极大增加潜伏期并且有效减少吞吐量。如果所述拥塞不能很快清 除整个网络可能完全崩溃并变成不能传输任何通信量。随着网络持续变大拥塞将变得更糟,(网络)更快更密集,伴随更多连接的终端站 分布在更广阔的地理位置。消除拥塞或至少最小化拥塞造成的影响允许完整地、持续地使 用数据中心服务使公司可以运作更高效和最佳化成本。随着迁移至10( 以太网,设备可以和交互互联构架一样的速度连接至网络。这, 反过来,将移除直到目前在先前的网络生成中帮助减少拥塞额外的网络容量。许多高层协议已被设计出试图消除端点拥塞。这些协议均依赖于试图控制源向网 络发送数据的整个输出带宽意图使输入带宽接近但不超过所述拥塞临界值。网络中间站通 过数据流分类和逆流通知达成这一目标。数据流的检查和并发信息至源的速率限制均需要 时间,增加了延时和复杂性。所有都是试图管理拥塞而不是试图一开始就阻止拥塞。迄今为止没有一个拥塞管理技术特别成功并且所有(的拥塞管理)都最终依赖于 防止网络任何时候达到持续峰值水平运行。局部端点拥塞可能发生在稳态情况之前这些技 术依赖已经建立的和某些通信量模式在快速变化条件下的固有不稳定性这使得交通量管 理算法永远没机会稳定。所有拥塞管理技术面临的问题是拥塞必须发生在补救措施之前。如果网络流量是 单一类型并且数据传输速率恒定并可预测这时管理可能比较有益,然而在数据中心的服务 运行更多样具有动态变化数据流的应用更复杂的环境该益处往往被减小。在高性能网络 中,拥塞热点快速出现并以不可思议的速率沿网络扩散。这增加了网络出错部分过约束的 概率,此时拥塞点可能随着时间通知移动并实施并发动作。一旦管理技术确认了拥塞,在源处数据受限或速率限制,防止饱和。这限制整个系 统性能,因为害怕导致拥塞而防止服务持续运行在峰值性能。相关技术说明US2007/0064716描述了一种控制数据单元操作方法,该方法中拥塞管理手段可选 择关闭。然而这种方法在防止拥塞上毫无益处并且实际上还增加拥塞问题。US2006/0203730描述了一种减小响应网络拥塞的终端站延时方法。该文献建议响
8应一拥塞指示器,将新数据帧引入队列的操作被阻止例如数据帧被丢弃。然而,如之前所提 及从通过网络传输的一大组数据帧中丢弃数据帧时这具有缺陷,为了保证数据帧抵达终端 站时保持正确顺序数据帧的拷贝副本必须被发送。本发明寻求克服现有网络遇到的问题,并且特别寻求提供一种多路径网络中最小 化拥塞造成影响并提高网络带宽的方法。

发明内容
本发明因此提供一种多路径网络中分类数据包的方法,所述多路径网络具有大量 端口 ;大量网络连接;和大量的网络元件,每一个网络元件具有至少第一和第二分别的可 寻址缓冲器与一个网络连接相连并且所述网络连接交互互联所述网络元件并将所述网络 元件连接至所述端口,所述方法包括根据它们的出站端口或端口分类数据包这样在一网 络元件上试图传往相同出站端口的一第一套数据包在所述第一缓冲器排队并且至少试图 传往与所述第一套数据包不同出站端口的一其它数据包在所述第二缓冲器单独排队由此 所述至少一其它数据包就与所述第一套数据包相关的任何拥塞分隔开来。所述至少一其它数据包可以动态路由或可以通过所述网络元件服从状态路由。在一个具体实施例中所述方法包括步骤根据所述出站端口或所述数据包请求的 网络端口所述地址的至少部分为每一个数据包分配一目的地址;并且分配给一个新数据包 的所述目的地址与最近通过网络传输的一个或多个先前数据包的目的地址相同,在传输所 述一个或多个先前数据包的相同网络连接上路由的所述新数据包具有所述相同目的地址 并使用所述相同缓冲器,不考虑是否选择一个不同的网络连接动态路由所述数据包。并且所述方法优选进一步包括在与所述缓冲器相关的一目的地址寄存器记录所 述缓冲器中排队的最近数据包目的地址的步骤。理想地,一最终目的地址(UDA)分配给每一个数据包,所述UDA包括至少所述数据 包的目的地址和至少部分一个或多个其它用于区分所述已传输数据包的准则并且其中在 所述缓冲器排队的最近数据包的UDA记录在与该缓冲器相连的目的地址寄存器中。所述其 它准侧可以选自组包括目的地终端站;目的地优先级;目标应用程序;和/或目的地TCP流。理想地,一个新数据包的所述目的地地址包括至少存储在每一个寄存器里的目的 地地址这样当一个匹配被识别所述新数据包就分配至具有与存储在其相连的所述寄存器 内相同目的地址的缓冲器。此外,状态可以关联至所述第一和第二缓冲器,所述状态操作以记录数据包传输 至所述缓冲器的顺序这样当一数据包动态路由分配时所述方法包括识别步骤,为每一个动 态路由选择一网络连接,(该网络连接)的缓冲器是最近使用的。—个计时器可以关联至每一个缓冲器并且所述方法可以进一步包括步骤,为每一 个寄存器,决定所述最近数据包传输至的缓冲器是否比计时器阀值更新近。当一个新数据包的目的地址与存储在与一缓冲器相关联的寄存器中的目的地址 相匹配并且最近传输至所述寄存器的数据包传输比所述计时器阀值更新近,所述方法还可 以包括步骤定位所述新数据包至其相关联寄存器中具有一匹配目的地址的所述缓冲器。而且,当一新数据包具有与存储在一缓冲器线关联的寄存器内目的地址相匹配目的地址并且所述最近传输至所述缓冲器的数据包传输超出所述计时器阀值,所述方法可以 包括步骤允许所述新数据包在一个网络连接上动态路由分配。优选的,当所述传输至一缓冲器的最新数据包传输超出所述计时器阀值,所述缓 冲器对未来数据包不管目的地址对其定位自由可用。根据一最佳实施例一个拥塞令牌被签发当一缓冲器占满并且为一具有与占满缓 冲器的所述寄存器内存储的目的地址相匹配目的地址的数据包在允许一网络连接动态选 择之前必须经过的时间段增加。当一拥塞令牌被占满缓冲器签发,与所述占满缓冲器相关 联的计时器可以重置为零或所述计时器的阀值可增加。另外,根据所述具体实施例一个拒绝令牌被签发当一缓冲器被阻止在许多连续情 况传输一个队列数据包并且为一具有与所述拒绝缓冲器的所述寄存器内存储的目的地址 相匹配目的地址的数据包在允许一网络连接动态选择之前必须经过的时间段增加。当一拒 绝令牌被拒绝缓冲器签发,与所述拒绝缓冲器相关联的计时器可以重置为零或所述计时器 的阀值可增加。理想地,所述数据包根据其源或入站端口独立分类。本发明另一方面提供一种在一多路径网络中数据传输方法,所述多路径网络具有 大量端口 ;大量网络连接;和大量的网络元件,每一个网络元件具有至少第一和第二分别 的可寻址缓冲器与一个网络连接相连并且所述网络连接交互互联所述网络元件并将所述 网络元件连接至所述端口,所述方法包括根据本发明第一方面在所述网络中分类数据包。本申请另一方面提供一种用于网络装置例如网桥、交换机、路由器、集线器或类似 装置的多路径网络,所述多路径网络包括大量端口,大量网络元件和大量的网络连接交互 互联所述网络元件和所述大量端口,每一个网络元件具有至少第一和第二分别的可寻址缓 冲器与一个网络连接相连,所述网络元件可操作以分类数据包根据它们的出站端口或端口 这样在一网络元件上试图传往相同出站端口的一第一套数据包在所述第一缓冲器排队并 且至少试图传往与所述第一套数据包不同出站端口的一其它数据包在所述第二缓冲器单 独排队由此所述至少一其它数据包就与所述第一套数据包相关的任何拥塞分隔开来。同样每一个网络元件操作以动态路由分配所述至少一个其它数据包或每一个网 络连接操作以执行静态路由分配数据包。在一具体实施例中根据所述出站端口或所述数据包请求的网络端口所述地址的 至少部分为每一个数据包分配一目的地址;并且每一个网络元件进一步包括一地址比较器 以决定当一个新数据包具有与最近传输的一个或多个数据包相匹配的目的地址由此所述 网络元件操作以路由分配所述新数据包至传输具有所述相同目的地址一个或多个最近传 输数据包的相同网络连接并使用所述相同缓冲器,不考虑是否选择一个不同的网络连接动 态路由所述数据包。理想地,每一个网络元件包括大量目的地址寄存器每一个寄存器分别与所述大量 缓冲器中的一个相关联,所述寄存器操作以存储分配给与其相关联缓冲器的最近传输数据 包的目的地址。所述目的地址寄存器可以操作以存储在与所述缓冲器相连的所述寄存器中排队 的最近数据的所述最终目的地址(UDA),所述UDA包括至少所述数据包的目的地址和至少 部分一个或多个其它用于区分所述已传输数据包的准则。所述其它准侧可以选自组包括目的地终端站;目的地优先级;目标应用程序;和/或目的地TCP流。根据具体实施例每一个网络元件还进一步包括一个与每一个缓冲器关联的计时 器以监测一缓冲器最近接收的数据包是否比计时器阀值更新近。这使得每一个网络元件可 以操作以限定那些仅具有相同目的地址的数据包新数据包定位至一缓冲器,当所述缓冲器 接收的先前最新传输数据包比所述计时器阀值更新近。理想地,每一个网络元件操作以定位具有与其相关联寄存器相匹配的目的地址的 所述新数据包至所述缓冲器当所述新数据包具有与存储在与缓冲器相关联的寄存器内相 匹配的目的地址并且所述最近传输至所述缓冲器的数据包比所述计时器阀值更新近。此外,每一个网络元件可以操作以动态路由分配一新数据包至一网络连接当所述 新数据包具有与存储在与一缓冲器相关联的寄存器内目的地址相匹配的目的地址并且由 于最近传输至所述缓冲器的数据包必须经过的时间比所述计时器阀值长。另外,每一个网络元件还可以操作为将动态路由分配的一新数据包以选择一缓冲 器基于当所述新数据包将动态路由分配至一网络连接时所述缓冲器最近最少使用原则。根据具体实施例每一个网络元件操作以签发以拥塞令牌当一缓冲器占满并且操 作以增加为一具有与占满缓冲器的所述寄存器内存储的目的地址相匹配目的地址的数据 包在允许一网络连接动态选择之前必须经过的时间。当一拥塞令牌被占满缓冲器签发每一 个网络连接可以操作以与将所述占满缓冲器相关联的计时器重置为零或当一拥塞令牌被 签发可操作将所述计时器的阀值增加。相似地,每一个网络元件可操作以签发一个拒绝令牌当一缓冲器被阻止在许多连 续情况下传输一个队列数据包并且操作以增加为一具有与所述拒绝缓冲器的所述寄存器 内存储的目的地址相匹配目的地址的数据包在允许一网络连接动态选择之前必须经过的 时间段。每一个网络元件可以被操作以当一拒绝令牌被拒绝缓冲器签发后将所述计时器重 置为零或当一拒绝令牌被签发将所述计时器的阀值增加。理想地,所述大量缓冲器包括大量FIFO (先入先出缓存器)。本发明另一方面还提供包括以上描述的多路径网络的一以太网桥或路由器。根据本发明通过当前和未来建议的拥塞管理协议本发明寻求在任一拥塞管理协 议下消除拥塞。然而,高层协议特征可能仍潜伏在执行本发明方法的多路径网络的任一侧 它们仅简单地没被请求。进一步地,本发明完全能共同使用当前的和未来的拥塞管理协议。一个中间网络 站应该能支持本发明介于站之间执行一高层拥塞管理协议,多余的拥塞协议简单路由,允 许每一边的设备都受益,如果可能。前述和其它目的、宗旨和有点将接合附图通过以下本发明的一具体实施例的详细 描述得到更好的理解,附图中


图1示出了一个传统网络并图释在这种网络中拥塞是如何发展的;图2示意性地示出了一包括执行根据本发明端点拥塞管理的多路径网络的以太 网桥;图3是用于图2的所述以太网桥的根据本发明的具有3个阶段的多路径网络的示意图;图4是图3中根据本发明的多路径网络的一个连接示意图;图5示意性地示出了根据本发明的一个交叉开关形成图3所述的多路径网络的一 部分;图6示意性地示出了用于图5中的交叉开关的流控制;并且图7示出了,以一个简单形式,图5所示的交叉开关的一个单个交叉点开关。
具体实施例方式下述以太网网桥或路由器引入一个附加的协议层,此处指的是“封装 层”(Encapsulation Layer),其处于标准OSI模型的物理层和数据链路层之间,能够封装网 络层和数据链路层的协议数据单元。由上所述中间站的定义延伸至包括转发类似此处所说的封装层的前述附加协议 层封装的数据包。此处提到的这种类型的站是网桥构架或网络构架。一多端口网桥结构可 通过一系列通过网桥结构交换链接(BFSLs)互联的网桥结构交换(BFSs)来实现。在一 PDU中完成封装,也是英国专利申请号0807937. 8共同的未决问题,此处引入 该专利文献全文内容作为参考,并且该英国专利申请提及为“结构协议数据单元”(FPDU), 避免了修改下层PDU数据帧报头或报尾的需求,从而移出了总体的循环冗余码校验(CRC) 或其它基于数据帧内容的传递信息。一 FPDU用来实现数据传输认证和流控制机制。一 FPDU 进一步用来提供对于极高性能可升级的以太网络许多其它吸引人的特性。图2示出的以太网桥或路由器1可以连接至大量的分离的以太网站2并执行封装 网络层和数据链路层的PDU进一 FPDU。所述以太网桥1大体上包括连接有大量以太网端口 3(图中为了清楚只示出了其中一个)的一多路径网络10,其中每一端口单独连接至一以太 网站2。所述以太网端口 3按通常设计并且每一个端口包括与以太网站建立数据连接的装 置、一接收装置或输入装置4以实现以太网接收功能、一传输装置或输出装置5以实现以太 网传输功能。所述以太网端口 3连接至提供传统功能例如数据包缓冲6的一网络界面7。然而, 所述网络界面还包括一以太网PDU封装器8,该封装器连接上述网络界面7至网络10的入 站端口(图中未示出)并且一以太网PDU解封装器9连接至网络10的出站端口(图中未 示出)返回至上述以太网端口 3。所述以太网PDU封装器8执行封装层协议从而产生上述 FPDU0理想的所述以太网桥1的每一端口 3均分别具有相应的网络界面7、以太网PDU封装 器8和以太网PDU解封装器9。上述网络10是一专有的多路径网络例如图3示出的那种,包括大量互联网络元件 18此处为BFS通过网络链接17按BFSL形式互联。每一 BFSL17为优选的双向(全双工) 连接。沿每一方向传递的数据和认证以及沿一方向的数据流控制状态可以和网桥结构交换 链接反向传递的数据多路复用。图4示出了一 BFSL17以及联合所述输入和输出连接至所 述链接17。当然在一大网络中将具有大量的BFS和数据包在抵达网络10出站端口前经由 许多BFS 18和BFSL17穿过所述网络。根据之前提及的,网络数据包通过网络结构传输在 此处是指与封装以太网PDU相关的FPDU。本发明基于当许多源同时试图发送数据至一个相同目的因而终端点发生拥塞的
12现实,网络拥塞明显临近所述目的地终端点。这将在临近终端点上导致严重影响。以临近 终端点为目的的通信量,本应该自由流通,赶上以所述拥塞终端点为目的的通信量。而且, 当拥塞发生在临近所述终端点为缓解拥塞能做的很少由于所述数据越接近目的地所述通 信量流只有很少的路由选择以避免所述拥塞的路径。通常当所述数据接近目的地时仅有一 个路径并且如果这个路径阻塞了则所有沿该路径至这一目的地的通信都将拥塞。然而,在一多路径网络中当所述数据远离目的地终端点则具有更多选择路径流向 一目的地。这种灵活性可以用来避开一拥塞终端点地点中的热点,防止不相关路径的二次 拥塞。如果交换网络是以多路径网络从一源至一目的提供不止一个可能路径则动态路由, 例如自适应路由,可以被使用。自适应连接或自适应路由是提高一多路径网络交换性能 的一种可行方法特别是在所述网络传输随机交通量模式常见于数据中心中的复杂环境,例 如,其服务运行多种不同动态数据流变化的应用。此处没有详细描述的使用动态路由的网络中数据包次序管理也是英国专利申请 号0808862. 7共同的未决问题,此处引入该专利文献全文内容作为参考。然而,可理解的此 处描述的网络10,其包含动态路由功能,包括为一系列具有相同源/目的地地址的数据包 保持数据包次序的手段。执行动态路由多路径网络10的一个例子在图3中示出。示出的网络仅仅示出本 发明;显而易见地本发明可等同应用于包括不同数量的网络元件和不同等级和不同布置的 交互互联的许多其它网络拓扑结构。图3左边和右边的矩形A至I和R至Z代表终端点,这些可以是服务,磁盘或其它 网段。圆圈代表中间站18,典型地网桥或路由器,依赖于支持的协议。由之前提及,这种中 间站指的是网桥构架交换机(BR5)其一起能实现大型网桥或路由器。中间站之间和终端点 与中间站之间的连接线代表交互互联连接17,在其上数据帧或数据包将传输通过所述网络 10。使用传统动态路由,一 PDU从终端点A移动至终端点Z必须经过BFS Sl和S9但 是可以经由BFS S4、S5或S6的任一个。由于BFS Sl上执行动态路由,如果输出BFS S4和 S5占用从终端点B和C发送数据,则传统动态路由通常将数据从终端点A发送至BFS S6, 这将是一个较少占用的连接。根据本发明,另一方面,选择一较少占用BFS不是自动的并且应用其它更复杂的 规则,以下将更详细地描述。任何系统的吞吐量由系统的瓶颈决定。瓶颈就是最小带宽点。对于一个系统来说 遭遇终端点拥塞所述瓶颈为到终端点的最后连接并且,如果不控制,拥塞将在瓶颈之后发 生,阻止数据往其它终端点移动。在本发明的情况下所述最终目的地址(UDA)意指与所述网络出站端口地址至少 部分相关的一目的地址。然而,所述UDA还可以包括关于其它区分数据包的准侧例如优先 级、TCP流、或其它影响数据包最终目的的参数的数据。所述UDA可以包括一目的地址超出 网络最后出站端口并且可能甚至比最后终端站更远。这一机制可以刚好用于应用层上以防 止一应用遭受来自运行在相同终端站上的其它应用的严重拥塞。根据本发明,试图发往相同UDA的所有FP而s应该鼓励彼此跟随。当所述数据穿 过网络随后阶段这将自然发生因为它们都试图抵达所述相同UDA穿过越来越少的可能路径。然而在多路径网络的早期状态,使用传统自适应路由以避免拥塞,它们可能被鼓励沿不 同的,少占用的路由。考虑到这些FP而s将再次汇聚由于它们都试图抵达相同的UDA,本发 明基于允许动态路由沿不同方向穿过网络发送至少具有相同UDA的FP而s没有什么优势。数据包穿过网络的路由涉及数据包使用一系列BFSLs的传输。根据本发明,具有 相同UDA的FP而s人为地沿相同路径穿过网络并且人为地使用相同的BFSLs系列。也就是 说当FP而s具有共同UDA时FP而s根据其出站端口分类,为确保所有这种FP而s沿相同路 径所述FP而s的动态路由被禁止。这意味着所有发往一个拥塞终端点的FP而s将使用相同 时间传送但是,更重要地,所述试图发往一拥塞终端点的FPDU将不会竞争接近所述终端点 的BF^的连接。所述多路径网络将仍然遭受拥塞但是现在拥塞发生在所述FP而s穿过网 络的路径的早期状态此时其它,不相关的通信量,能更容易地在阻塞连接周围动态路由传 送数据至所述拥塞终端点。这,反过来,意味着当不相关通信量接近其终端点将更倾向于使用一未拥塞连接, 远离繁忙连接传输所述FP而s至所述拥塞的终端点。如之前所述,如图4所示,所述多路径网络由一系列中间站或BF&18通过链接或 BFSLsl7相连而组成。每一个链接17被分配给大量单独可识别的虚拟数据通道。在该例子 中,每一个BFSL17分配了 8个虚拟数据通道但是显然地分配更少或更多虚拟数据通道也可 以实现,必要时,按照网络性能要求分配。每一个虚拟数据通道分配至少一个单独可寻址的 缓冲器21和一个流控制22(参见图5和图6)。所述缓冲器21可以是,例如,在链接17的 接收端的FIFOs并且用于缓冲那些不能被立即发送的数据。所述流控制22是一个为管理 在每一个网络连接上分配给数据包的数据通道并确保所述缓冲器不会溢出的机制。在任一时刻,每一个虚拟数据通道应该仅为一个UDA传输数据。同时预期地多个 FP而s将共用一个虚拟数据通道,它们应该全部具有相同的UDA。也就是说,同时一个或多 个FP而s保持在8个并联缓冲器21其中一个中等待向前传输,唯一能在该缓冲器排队的的 新FP而s是那些与其具有相同UDA的。为了开启数据通道分配,每一个虚拟数据通道还分配了一个UDA寄存器23。每次 一个FPDU使用该虚拟数据通道在所述BFSL上传输每一个虚拟数据通道的所述寄存器23 加载一个FPDU的UDA号并且覆盖所述寄存器23中任何现存的UDA号。理想地所述寄存器 23交替和/或额外加载所述FPDU的优先级或任何其它用来区分所述数据包的准侧。因此, 当一 FPDU路由分配至一 BFSL,它指向具有相匹配UDA号23的所述虚拟数据通道。如果每 一个指向该BFS所述虚拟数据通道寄存器23中的UDAs没有一个与所述FPDU的UDA相匹 配,则优选的所述FPDU指向最近使用的虚拟数据通道。在寄存器中所述FP而s最近分配给每一个虚拟数据通道的先前UDAs永远不会失 效。该信息仍然保持在所述寄存器23中直到被一个更近分配给该数据通道的FPDU覆盖。 这意味着当前任何具有与当前存储在所述虚拟数据通道其中一个的寄存器23中的任一个 先前UDAs相匹配UDA的新FPDU指向与该虚拟数据通道相关的寄存器21,而不考虑自从具 有该UDA的最后一个FPDU传输的时间长短。由前所述,当具有的UDA与存储在所述数据通道寄存器23内存储的UDAs的任一 个都不匹配的一个新FPDU被接收,所述FPDU可能自由定位至任何“可用,,虚拟数据通道。 所述数据通道可用性可以基于自从所述数据通道持续定位至一 FPDU经过的一预定时间段决定但是从所述可用虚拟数据通道的所述定位优选地基于识别最近使用的数据通道。因 此,如图6所示,所述数据通道控制22包括“最少最近使用”逻辑电路25该逻辑电路识别 所述虚拟数据通道处于最长非活动状态。所述最少最近使用的逻辑电路25执行使用记录 所述分配虚拟数据通道次序的寄存器(图中未示出)。它将,当然,可理解地数据通道选择 方法不同于“最少最近使用,,也可适用,适当时。每一个数据通道寄存器23还具有可以是简单计数器形式的一计时器M其在每次 一个新UDA写入所述寄存器23时清零并且在超过一个预定时间阀值时计数相加。对于每 一个虚拟数据通道,当所述计时器处于零和所述预定时间阀值之间时,连接至所述虚拟数 据通道强制所有源自一交叉开关输入的FP而s—自适应路由选择请求其包括所述输出连 接具有与所述虚拟数据通道UDA匹配。换言之,当具有与存储在一虚拟数据通道的所述寄 存器23内UDA相匹配UDA的一 FPDU的计时器没有达到所述阀值,该FPDU排出在分配至任 一其它虚拟数据通道之外并且被禁止动态连接选择因为该FPDU必须使用具有与其寄存器 内相匹配UDA的所述虚拟数据通道的所述连接的路由分配。一旦一计时器到达和/或超过所述阀值,在相关虚拟数据通道上的UDA匹配可以 被一自适应路由选择至其它网络连接忽略并且所述自适应路由可以选择任何输出BFSL。然 而,如果一 FPDU自适应路由分配至一输出,并且所述FPDU的UDA与存储在所述输出的虚拟 数据通道其中一个的所述寄存器23内的UDA相匹配则,即使所述计时器达到阀值,该FPDU 强制使用该匹配的虚拟数据通道。这些在以下将更详细的描述。理想地,所述计时器M的 阀值根据平均时间决定,假定一未拥塞网络,所述缓冲器传送一进入的FPDU。例如,所述计 时器M的阀值可以设定大约6微秒。如果所述FPDU的优先级(或一些其它区分准则)包括作为所述UDA的一部分存 储在所述寄存器23内的信息,所述网络使得具有相同目的地址的但是一更高优先级FPDUs 追上具有相同目的地但是低优先级的FP而s通过使用一交替数据通道即在并联缓冲器库 中的一交替缓冲器21。如果,作为一 “最少最近使用,,数据通道,一交替数据通道具有较少 数据包在其相关缓冲器21内排队,则一高优先级FPDU分配至所述最少最近使用数据通道 将通过网络传输于并联的一个长数据包队列末尾具有较低优先级的FP而s之前,更最近使 用的,缓冲器。较高优先级的FPDUs比低优先级的FP而s优先连接通过所述交叉开关19。 这增加一虚拟数据通道存储高优先级FP而s的所述FIFO先于一虚拟数据通道存储高优先 级FP而s的所述FIFO排空的概率。每一个缓冲器21包括为监测所述FIFO内容和明确地所述FIFO是否满了和/或 其输出阻塞的手段。当所述FIFO占满则所述缓冲器签发信息,以拥塞令牌14的形式,以常 规方式返回至经由链接17与其连接的所述BFS,指示其装满了并且不能接收任何更多的数 据包。这些拥塞令牌14的每一个,反过来,强制重设相关计时器M归零。所述拥塞令牌14 还导致所述最少最近使用逻辑电路25将相关数据通路当作最近使用。也就是说,所述拥塞 令牌导致所述数据通道选择机制25更新其状态这样与签发所述拥塞令牌的缓冲器相关联 的所述数据通道最不可能被选择。所述拥塞令牌还注入所述BFS18的所述交换机制以防止 通过所述BFS的交叉开关19连接至所述拥塞缓冲器。通过这种方式,在一个连接至BFS18 的输出的缓冲器的拥塞,通过交换机与其输入反向通信,通过拒绝连接请求,并且因此远离 终端点。
相似的,如果在一些场合一 FIFO签发的传输FIFO中排队的数据包请求被持续拒 绝,即,所述FIFO的输出至一交叉交换开关19被其它网络通信量阻塞,所述FIFO以拒绝令 牌14的形式签发一信息至经由链接17连接的所述BFS,指示其请求被拒绝。所述拒绝令牌 14导致与该FIFO关联的所述计时器M重置为零并导致最近最少使用逻辑单元25将与该 FIFO相关联的所述虚拟数据通道当作最近使用的。这里一样地,所述拒绝令牌导致所述数 据通道选择机制25更新其状态这样所述数据通道相关联的签发该拥塞令牌缓冲器最不可 能被选择。然而,所述拒绝令牌没有注入所述BFS18的交叉开关并且也不会阻止新数据包通 过所述BFS传输至所述FIFO。这具有仍然允许具有相匹配UDA的FP而s传输至所述FIFO (直 到所述FIFO占满的时刻)但是减小所述FIFO —次数据包排队传至不同UDAs的风险至最 低的影响。因此,具有不同UDAs的新数据包极不可能分配至该虚拟数据通道当所述FIFO 的输出仍然受阻的时候。虽然计时器M上的拥塞令牌和拒绝令牌在所述计时器清零时的影响已被描述, 在交替接收拥塞令牌或拒绝令牌时可能导致所述计时器阀值增加。在任一情况中拥塞令牌 或拒绝令牌的影响是增加具有相匹配UDA的一 FPDU动态网络连接选择之前必须经过的时 间段增加。根据此处描述的拥塞管理方法,传过所述网络的特定FP而s限制使用所述FPDU可 能通过网络的路径。所有在特定虚拟数据通道上传送的数据保持次序在任意时间一个连接 仅在一个虚拟数据通道传送FPDU。以下更详细地描述通过该方法FP而s限制至一单个虚拟 数据通道。由之前提及,在每一个BFS18的中心是一个交换交叉开关19。所述交叉开关19具 有多个输入26和多个输出27。交叉开关19的一个简单例子在图5中示出。它将,当然,可 理解地输入和输出的数量和其布置可以和例子所示的不同。当一个FPDU插入所述网络分配至一个编码进所述FPDU封装的报头的目的号码或 地址并且代表所述网络请求的FPDU抵达其最终目的地(UDA)的终端站。这用在所述网络 的每一个阶段以发送FPDU至其目的地终端点。所述FPDU目的地址编码成从链接17接收 的所述FPDU的报头并触发出现在所述BFS18的所述交叉开关19的输入的一请求四或请 求连接选择。所述请求四伴随UDA31并且所述FPDU15输入所述BFS的交叉开关19以选 择一网络连接和一虚拟数据通道向前传输所述FPDU。所述请求四可以是用于网络早期状 态的一动态路由选择请求或一点对点请求特别是当所述FPDU接近其终端站或一多路广播 或溢出请求当,例如,一终端站位置未知。交叉开关19中一个或多个单独交叉点30将响应 所述请求并连接至所述输入这样该FPDU数据可以通过所述交叉开关19传输。如图7所示,所述交叉开关19的交叉点30的所述输出选择所述虚拟数据通道发 送每一个FPDU。由之前提及的,每次一个FPDU分配一虚拟数据通道所述UDA被替代记录进 该虚拟数据通道相关联的寄存器23。这些UDA寄存器,每一个单独与所述交换交叉开关19 的一输出27相关联,使用一套等效校验器或匹配逻辑电路观在所述交换交叉点30内测试 比较来临的交换输入UDA31,所述虚拟数据通道其它方面各自地所述可用性。如果所述来临 的交换输入请求四是一动态选择并且所述来临的FPDU的UDA31,出现在一个交换交叉开 关输入26,匹配任何一个存储的UDAs与任一交叉开关输出27相关联形成所述自适应输出组的一部分对选择可用并且每一个数据通道的所述计时器没有过期,则所述FPDU强制仅 连接具有相匹配UDA的那些输出27。这是事实即使所述交叉开关27的选择输出被识别为 “占满”并且不能再接收任何更多数据而其它输出空闲在匹配输出准备就绪以接收FPDU之 前可接更好收所述FPDU。一旦所述虚拟数据通道计时器M达到其阀值则即使来临的FPDU的UDA与先前虚 拟数据通道UDA相匹配所述来临FPDU将自由动态连接至一不同交换输出并且一不同网络 连接。通过这种方式当数据包被强制跟随其它数据包移动至相同最终目的所述计时器M 为所述时间段设定一个上限,当所述数据包进展良好时。一个新数据包定位的虚拟数据通 道的选择可以简单基于所述虚拟数据通道最少最近被使用来定位但是也可以构想交替地 随机或准随机选择。当所述匹配逻辑电路观出发所述交叉开关27的一个输出交换选择,这一选择则 阻止所述交叉开关中的任何其它交叉点30连接至相同输入数据15除非,当然,所述请求四 是一多路广播请求。这一交换选择,基于所述匹配逻辑电路观的输出,强制FP而s注入相 同缓冲器(虚拟数据通道)由于先前FP而s具有匹配UDAs。然而没有上限强制数据包跟随其它数据包至相同UDA如果所述数据包被阻塞进 展不良。当许多网络入站端口试图向相同网络出站端口或UDA发送的情形并且遭遇终端点 拥塞。在该情形中所述虚拟数据通道缓冲器将被阻塞并且所述计时器值将持续重置以防止 所述计时器值达到其阀值。通过这种方式终端点拥塞数据与BFSL的许多虚拟数据通道中 的一个隔离开。其UDA不匹配任何先前存储的所述交叉开关交换输出的虚拟数据通道UDA的任何 接收的FPDU自由选择BFSLs的任何输出形成自适应选择组的一部分,例如,一随机选择的 输出BFSL并且这么做将很可能完全避免终端点拥塞数据。所述自适应选择机制仅选择一 输出BFSL,而不选择一虚拟数据通道。在所述输出BFSL已经被选择之后通过所述匹配逻辑 电路28在一 BFSL上正确选择虚拟数据通道。本发明执行所述规则最好强制任何FPDU缓冲在其能破坏其它通信量进展之前尽 可能早。这一方法鼓励尽早缓冲可能即使阻止必顶会阻塞的数据进入所述网络直到有空间 可以接收它们为止。总体上,虽然,阻塞数据的总量,占据在网络中,与传统自适应网络传输 相同数据相比较极大减少。根据此处描述的方法,终端点拥塞数据仅占用每一个BFSL定义的许多虚拟数据 通道的一个。因此终端点拥塞数据可以阻塞在网络中并且仍允许其它数据通过一 BFSL使 用定义给所述BFSL的其它虚拟数据通道中的一个来传输。通过这种方式不相关数据和更 高优先级数据可以追上所述拥塞数据。真实的所述终端点拥塞数据存在通过释放整个连接 带宽使其可用与传输数据极大提高其它未遭遇终端点拥塞的数据的传输。这是与传统网络 中拥塞数据阻塞未拥塞数据传输完全相反的表现。根据本发明,阻塞数据的分布更平滑地沿网络散播并且,特别的,从数据包强制使 用特定路由的所述BF^移除并沿所述网络可以确认动态路由的早期状态移动这样发往不 同UDAs的数据包可以完全避开拥塞区域。此处描述的多路径网络可升级的提供从256个或稍微少些的端口至48000个端口 或更多。一个使用此处描述方法的单独以太网桥或路由器与传统网桥相比能够提供极大增强的可连接性。例如,目前最大的10吉比特(Gbe)以太网桥(结构模块化的)仅提供288 个端口。根据本发明的网络,运行在KXibe或更高的一个单独以太网桥是可能的,并能提供 例如48000个端口。虽然此处为以太网桥或路由器给出了参考,当然,显然本申请可以用于在网络输 入和输出之间传递数据包的任何多路径网络。同样,虽然所述多路径网络描述为与全双工 连接通道相关,所述连接可能可选的包含一半双工连接通道具有一边频带以允许认证沿相 反方向传输。虽然本发明已经描述了关于一具体多路径网络,它将,当然,显而易见的本发明能 用于任何执行动态路由的多路径网络,例如自适应路由,而且没有限制于一在通过网络传 输时使用封装数据包的网络结构。本发明还提供极大提高性能的仅使用静态路由的一多路径网络。通过区分目的地 数据至虚拟数据通道并且限制缓冲的数量一单独的网络出站端口可以假定在网络内,则即 使没有形成动态路由,一单独目的出站端口将不会阻止其它指向临近所述拥塞出站端口的 出站端口数据传输。此外,虽然此处作为参考的缓冲器包括FIFO但是可理解的其它形式的能够按顺 序方式存储大量独立数据包的缓冲也能使用。此外,虽然此处作为参考8个独立可寻址缓 冲器连接至每一链接,它将,当然,显而易见的是其它数量的缓冲器也能适用,即,两个或多 个优选的为三个或更多。因此,可理解的,对本领域技术人员来说发明具体实施例、一般原则和此处描述的 特征进行各种各样的修改是显而易见的。因此本发明并不限于示出的具体实施例,并且上 述修改和变体仍落入随附的权利要求的精神和范围之内。
18
权利要求
1.一种多路径网络中分类数据包的方法,所述多路径网络具有大量端口 ;大量网络连 接;和大量的网络元件,每一个网络元件具有至少第一和第二分别的可寻址缓冲器与一个 网络连接通信并且所述网络连接交互互联所述网络元件并将所述网络元件连接至所述端 口,所述方法包括根据它们的出站端口或端口分类数据包这样在一网络元件上试图传往 相同出站端口的一第一套数据包在所述第一缓冲器排队并且至少试图传往与所述第一套 数据包不同出站端口的一其它数据包在所述第二缓冲器单独排队由此所述至少一其它数 据包就与所述第一套数据包相关的任何拥塞分隔开来。
2.如权利要求1所述的方法,其中所述至少一其它数据包由所述网络元件动态路由分配。
3.如权利要求1所述的方法,其中所述至少一其它数据包由所述网络元件服从静态路
4.如权利要求2所述的方法,其中所述方法包括步骤根据所述入站端口或所述数据包请求的网络端口地址的至少一部分为每一个数据包 分配一个目的地址;和当分配给一新数据包的目的地址与一个或多个最近通过网络传输的先前数据包目的 地址的相匹配,路由分配所述新数据包至传输所述具有相同目的地址的一个或多个先前数 据包相同网络连接并使用相同的缓冲器,不考虑所述数据包动态路由分配时是否可以选择 一个不同网络连接。
5.如权利要求4所述的方法,其中所述方法进一步包括记录最近在所述缓冲器内排队 传输数据包的目的地址录入与所述缓冲器相关联的目的地址寄存器的步骤。
6.如权利要4所述的方法,其中一个最终目的地址分配给每一个数据包,所述最终目 的地址包括至少所述数据包的目的地址和至少部分一个或多个其它用于区分所传输数据 包的准侧并且其中在素数缓冲器内排队的所述最近传输数据包的最终目的地址记录进一 与所述缓冲器相关联的目的地址寄存器。
7.如权利要求6所述的方法,其中所述其它准则选自的组包括目的地终端站;目的地 优先级;目标应用;和/或目的传输控制协议(TCP)流。
8.如权利要求5、6或7任一所述的方法,其中至少一新数据包的目的地址与至少每一 个缓冲器的寄存器内存储的目的地址相比较这样当一个匹配被识别所述新数据包被分配 至具有与存储在与其相关联的寄存器内相匹配目的地址的缓冲器。
9.如权利要求2、4-8任一所述的方法,其中与所述至少第一和第二缓冲器相关的状态 与每一个网络连接通信,所述状态操作以记录数据包传输所述缓冲器的次序并且其中当所 述数据包动态路由分配时所述方法包括识别步骤,为每一个动态路由选择一网络连接,其 缓冲器是最近最少使用的。
10.如权利要求4-9任一所述的方法,其中一个计时器关联至每一个缓冲器并且所述 方法还包括步骤,为每一个缓冲器,决定所述最近传输至该缓冲器的数据包是否比一计时 器阀值更新近。
11.如权利要求10所述的方法,进一步所述方法包括步骤,当一个新数据包具有与存 储在与一个寄存器相关的寄存器中目的地址相匹配的目的地址并且所述最近传输至所述 缓冲器的数据包传输比所述计时器阀值更新近时,定位所述新数据包至具有与存储在其相关联寄存器内目的地址相匹配的所述缓冲器。
12.如权利要求10或11所述的方法,进一步包括步骤,当一个新数据包具有与存储 在与一个寄存器相关的寄存器中目的地址相匹配的目的地址并且所述最近传输至所述缓 冲器的数据包传输超出所述计时器阀值时,允许所述新数据包在一网络连接上动态路由分 配。
13.如权利要求10-12任一所述的方法,其中,当所述最近传输至一个缓冲器的数据包 传输超出所述时间阀值时,所述缓冲器可有可用被定位给未来数据包而不考虑目的地址。
14.如权利要求10-13任一所述的方法,其中所述方法进一步包括当一个缓冲器占满 并且允许一个具有与存储在所述占满缓冲器的寄存器中目的地址相匹配的目的地址的数 据包动态选择一个网络连接之前必须经过的时间增加时签发一个拥塞令牌。
15.如权利要求14所述的方法,其中当一个拥塞令牌被一占满缓冲器签发,关联至所 述占满缓冲器的计时器重置归零。
16.如权利要求14所述的方法,其中当一个拥塞令牌被一占满缓冲器签发,所述计时 器阀值增加。
17.如权利要求10-16任一所述的方法,进一步包括当一个缓冲器被阻止在一连续场 合传输一个排队的数据包时签发一个拒绝令牌并且允许一个具有与存储在所述拒绝缓冲 器的寄存器中目的地址相匹配的目的地址的数据包动态选择一个网络连接之前必须经过 的时间段的步骤。
18.如权利要求17所述的方法,其中当一个被拒绝的缓冲器签发一个拒绝令牌时,与 所述被拒绝缓冲器相关联的所述计时器重置归零。
19.如权利要求17所述的方法,其中一个被拒绝的缓冲器签发一个拒绝令牌时,与所 述计时器阀值增加。
20.如权利要求1-19任一所述的方法,其中所述数据包根据其源或入站端口独立分类。
21.一种在一多路径网络中数据传输方法,所述多路径网络具有大量端口 ;大量网络 连接;和大量的网络元件,每一个网络元件具有至少第一和第二分别的可寻址缓冲器与一 个网络连接相连并且所述网络连接交互互联所述网络元件并将所述网络元件连接至所述 端口,所述方法包括如前任一权利要求所述的在所述网络中分类数据包。
22.一种用于网络装置的多路径网络,所述多路径网络包括大量端口,大量网络元件和 大量的网络连接交互互联所述网络元件和所述大量端口,每一个网络元件具有至少第一和 第二分别的可寻址缓冲器与一个网络连接相连,所述网络元件可操作以分类数据包根据它 们的出站端口或端口这样在一网络元件上试图传往相同出站端口的一第一套数据包在所 述第一缓冲器排队并且至少试图传往与所述第一套数据包不同出站端口的一其它数据包 在所述第二缓冲器单独排队由此所述至少一其它数据包就与所述第一套数据包相关的任 何拥塞分隔开来。
23.如权利要求22所述的多路径网络,其中所述网络装置包括一个或多个网桥,交换 机,路由器或集线器。
24.如权利要求22或23所述的多路径网络,其中所述每一个网络元件操作以动态路由 分配所述至少一个其它数据包。
25.如权利要求22或23所述的多路径网络,其中每一个网络元件操作以执行数据包静 态路由分配。
26.如权利要求22所述的多路径网络,其中根据所述出战端口或所述数据包请求的网 络端口的至少部分为每一个数据包分配一个目的地址;并且每一个网络元件进一步包括一 个地址比较器以决定当一个新数据包具有与一个或多个最近传输数据包相匹配目的地址 由此所述网络元件操作以在传输具有相同目的地址的所述一个或多个最近传输数据包相 同的网络连接上路由分配所述新数据包并且使用相同的缓冲器,而不管当所述数据包动态 路由分配时是否有一个不同网络连接可以选择。
27.如权利要求沈所述的多路径网络,其中每一网络元件包括大量目的地址寄存器每 一个寄存器分别与大量缓冲器中的一个相关联,所述寄存器操作以存储分配给与其相关联 缓冲器最近传输数据包的目的地址。
28.如权利要求27所述的多路径网络,其中所述目的地址寄存器操作以存储在于所述 寄存器关联的缓冲器内排队的最近传输数据包的最终目的地址,所述最终目的地址包括至 少所述数据包的目的地址和至少部分一个或多个用于区分传输的数据包的其它准则。
29.如权利要求观所述的多路径网络,其中所述其它准则选自组包括目的终端站;目 的地优先级;目标应用;和/或目的TCP流。
30.如权利要求22- 任一所述的多路径网络,其中每一个网络元件进一步包括与每 一个缓冲器相关联的一个计时器以监测缓冲器接收的最近数据包是否比一计时器阀值更 新近。
31.如权利要求30所述的多路径网络,其中每一网络元件操作以限制仅具有相匹配目 的地址的新数据包定位至缓冲器,当所述缓冲器接收的先前最新数据包比所述计时器阀值 更新近时。
32.如权利要求30或31所述的多路径网络,其中每一网络元件操作以定位所述新数据 包至具有与其相关联的寄存器内相匹配目的地址的所述缓冲器当所述新数据包具有的目 的地址与存储在关联于一缓冲器的寄存器内目的地址相匹配并且所述最近传输至所述缓 冲器的数据包传输比所述时间阀值更新近时。
33.如权利要求30或32任一所述的多路径网络,其中每一个网络元件操作以在一网络 连接上动态路由分配一新数据包当所述新数据包具有与存储在与一缓冲器相关联的所述 寄存器你内匹配的目的地址并且自从所述最近数据包传输至所述缓冲器经过的时间比所 述计时器阀值长。
34.如权利要求33所述的多路径网络,其中当所述新数据包将动态路由分配至一网络 连接每一个网络元件操作为一个新数据包选择一缓存器基于所述缓存器最近最少使用的 原则。
35.如权利要求30-34任一所述的多路径网络,其中每一个网络元件操作以签发以拥 塞令牌当一缓冲器占满并且操作以增加为一具有与占满缓冲器的所述寄存器内存储的目 的地址相匹配目的地址的数据包在允许一网络连接动态选择之前必须经过的时间。
36.如权利要求35所述的多路径网络,其中当一拥塞令牌被签发后每一个网络元件操 作以将所述计时器重置为零。
37.如权利要求35所述的多路径网络,其中当一拥塞令牌被签发后每一个网络元件操作以将所述计时器的阀值增加。
38.如权利要求30-37任一所述的多路径网络,其中每一个网络元件操作以签发一个 拒绝令牌当一缓冲器被阻止在许多连续情况下传输一个队列数据包并且操作以增加为一 具有与所述拒绝缓冲器的所述寄存器内存储的目的地址相匹配目的地址的数据包在允许 一网络连接动态选择之前必须经过的时间段。
39.如权利要求38所述的多路径网络,其中当一拒绝令牌被器签发后每一个网络元件 操作以将所述计时器重置为零。
40.如权利要求38所述的多路径网络,其中当一拒绝令牌被器签发后每一个网络元件 操作以将将所述计时器的阀值增加。
41.如权利要求22-40任一所述的多路径网络,其中所述大量缓冲器包括大量先入先 出缓存器(FIFO)。
42.如权利要求22-41任一所述的包含一多路径网络的以太网桥或路由器。
全文摘要
本发明涉及一种多路径网络中数据包分类的方法,所述多路径网络具有大量端口;大量网络连接;和大量的网络元件,每一个网络元件具有至少第一和第二分别的可寻址缓冲器与一个网络连接相连并且所述网络连接交互互联所述网络元件并将所述网络元件连接至所述端口,所述方法包括根据它们的出站端口或端口分类数据包这样在一网络元件上试图传往相同出站端口的一第一套数据包在所述第一缓冲器排队并且至少试图传往与所述第一套数据包不同出站端口的一其它数据包在所述第二缓冲器单独排队由此所述至少一其它数据包就与所述第一套数据包相关的任何拥塞分隔开来。本发明进一步涉及一种多路径网络中传输数据的方法包括根据本发明第一方面的数据包分类。本发明进一步涉及一种多路径网络操作以分类数据包并且操作以在一个多路径网络中传输数据。
文档编号H04L12/56GK102090030SQ200980126011
公开日2011年6月8日 申请日期2009年6月9日 优先权日2008年6月9日
发明者乔恩·比克罗夫特 申请人:格诺多有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1