用于多路径负载平衡的系统和方法_4

文档序号:9238065阅读:来源:国知局
中的仅一个路径)以及(2) 对作为结果的接口权重求和。
[0061] 如上所述,通过使用多个路径负载平衡在源交换机与目的交换机之间传输的网络 流量,本公开的实施例实质上可以提高数据链路和/或路径的利用率。此外,通过基于路径 的限制带宽穿过多个路径来负载平衡网络流量,本公开的实施例可以防止构成路径的数据 链路的任意数据链路成为网络流量的瓶颈,尤其是在具有非对称拓扑结构的网络中。
[0062] 图7是能够实现本文中所描述的和/或所图示的实施例中的一个或多个实施例, 或者与本文中所描述的和/或所图示的实施例中的一个或多个实施例结合来使用的示例 性计算系统700的框图。在一些实施例中,计算系统700的全部或部分可以独立地或与其他 元素相结合地执行与图4相结合来描述的步骤中的一个或多个步骤,和/或作为用于独立 地或与其他元素相结合地执行与图4相结合来描述的步骤中的一个或多个步骤的装置。计 算系统700的全部或部分还可以执行本文中所描述的和/或所图示的任意其他步骤、方法 或过程,和/或作为用于执行和/或实现本文中所描述的和/或所图示的任意其他步骤、方 法或过程的装置。计算系统700广泛地表示任意类型或形式的电负载,包括能够执行计算 机可读指令的单处理器或多处理器计算设备或系统。计算系统700的示例包括但不限于, 工作站、膝上计算机、客户端侧终端、服务器、分布式计算系统、移动设备、网络交换机、网络 路由器(例如,骨干路由器、边缘路由器、核心路由器、移动服务路由器、宽带路由器等)、网 络设备(例如,网络安全设备、网络控制设备、网络定时设备、SSLVPN(安全套接字协议层 虚拟专用网络)设备等)、网络控制器、网关(例如,服务网关、移动分组网关、多接入网关、 安全网关等)和/或任意其他类型或形式的计算系统或设备。
[0063] 计算系统700可以是被编程、被配置和/或以其他方式被设计为遵守一种或多种 网络协议。根据特定实施例,计算系统700可以被设计为使用开放式系统互联(OSI)参考 模型的一层或多层的协议工作,诸如物理链路层协议、数据链路层协议、网络层协议、传输 层协议、会话层协议、表示层协议和/或应用层协议。例如,计算系统700可以包括根据通 用串行总线(USB)协议、电器和电子工程师学会(IEEE) 1394协议、以太网协议、T1协议、同 步光纤网(SONET)协议、同步数字层级(SDH)协议、综合服务数字网(ISDN)协议、异步传输 模式(ATM)协议、点对点协议(PPP)、以太网上的点对点协议(PPP〇E)、ATM上的点对点协议 (PPPoA)、蓝牙协议、IEEE802.XX协议、帧中继协议、令牌环协议、发生树协议、和/或任意 其他适当的协议来配置的网络设备。
[0064] 计算系统700可以包括各种网络和/或计算部件。例如,计算系统700可以包括至 少一个处理器714和至少一个系统存储器716。处理器714通常表示任意类型或形式的能 够处理数据或者理解并执行指令的处理单元。处理器714可以表示专用集成电路(ASIC)、 片上系统(例如,网络处理器)、硬件加速器、通用处理器和/或任意其他适当的处理元素。
[0065] 处理器714可根据上面讨论的网络协议中的一种或多种网络协议来处理数据。例 如,处理器814可以执行或实现协议栈的一部分、可以处理分组、可以执行存储器操作(例 如,将分组排队用于后续处理)、可以执行终端用户应用和/或可以执行任意其他处理任 务。
[0066] 系统存储器716通常表示任意类型或形式的能够存储数据和/或其他计算机可读 指令的易失性或非易失性存储设备或介质。系统存储器716的示例包括但不限于,随机存 取存储器(RAM)、只读存储器(ROM)、闪存或任意其他适当的存储设备。尽管不是必须的,但 在特定实施例中,计算系统700还可以包括易失性存储单元(诸如举例而言,系统存储器 716)和非易失性存储设备(诸如举例而言,如下面详细得描述的主存储设备732)两者。系 统存储器716可以被实现为网络设备中的共享的存储器和/或分布式存储器。此外,系统 存储器716可以存储分组和/或在网络操作中使用的其他信息。在一个示例中,可以将图 1中的模块102中的一个或多个模块加载至系统存储器716中。
[0067] 在特定实施例中,示例性的计算系统700也可包括除了处理器714和系统存储器 716之外的一个或多个部件或元素。例如,如图7所示,计算系统700可以包括存储器控制 器718、输出/输出(I/O)控制器720和通信接口 722,它们中的每一个可以经由通信基础 设施712互连。通信基础设施712通常表示任意类型或形式的能够促进计算设备的一个或 多个部件之间的通信的基础设施。通信基础设施712的示例包括但不限于,通信总线(诸 如串行ATA(SATA)、工业标准结构(ISA)、外部部件互连标准(PCI),PCI快速(PCIe)和/或 任意其他适合的总线)和网络。
[0068] 存储器控制器718通常表示任意类型或形式的能够处理存储器或数据或控制计 算系统700的一个或多个部件之间的通信的设备。例如,在特定实施例中,存储器控制器 818可以经由通信基础设施712控制处理器714、系统存储器716和I/O控制器720之间的 通信。在一些实施例中,存储器控制器718可以包括直接存储器存取(DMA)单元,该直接存 储器存取(DMA)单元可以从链路适配器传递数据(例如,分组)或者将数据(例如,分组) 传递至链路适配器。
[0069] I/O控制器720通常表示任意类型或形式的能够协调和/或控制计算设备的输入 和输出功能的设备或模块。例如,在特定实施例中,I/O控制器720可以控制或促进在计算 系统700的一个或多个元素之间的数据的传递,诸如处理器714、系统存储器716、通信接口 722和存储器接口 730。
[0070] 通信接口 722广泛地表示任意类型或形式的能够在示例性计算系统700和一个或 多个附加的设备之间促进通信的通信设备或适配器。例如,在特定实施例中,通信接口 722 可以促进计算系统700和包括附加的计算系统的专用或公用网络之间的通信。通信接口 722的示例包括但不限于,链路适配器、有线网络接口(诸如网络接口卡)、无线网络接口 (诸如无线网络接口卡)以及任意其他适当的接口。在至少一个实施例中,通信接口 722可 以经由至网络、诸如互联网的直接链路来提供至远程服务器的直接连接。通信接口 722还 可以通过,例如局部网络(诸如以太网网络)、个人局域网、广域网、专用网络(例如,虚拟专 用网络)、电话或有线电视网络、蜂窝电话连接、卫星数据连接或任意其他适当的连接,间接 地提供这样的连接。
[0071] 在特定实施例中,通信接口 722还可以表示主机适配器,该主机适配器被配置为 经由外部总线或通信信道促进计算系统700和一个或多个附加的网络或存储设备之间的 通信。主机适配器的示例包括但不限于,小型计算机系统接口(SCSI)主机适配器、通用串 行总线(USB)主机适配器、IEEE1394主机适配器、高级技术附件(ATA)、并行ATA(PATA)、串 行ATA(SATA)以及外部SATA(eSATA)主机适配器、光纤信道接口适配器、以太网适配器等。 通信接口 722也可以使得计算系统700能够参与分布式计算或远程计算。例如,通信接口 722可以从远程设备接收指令或向远程设备发送指令用于执行。
[0072] 如图7所示,示例性的计算系统700还可以包括主存储设备732和/或经由存储接 口 730被耦合至通信基础设施712的备份存储设备734。存储设备732和734通常表示任 意类型或形式的能够存储数据和/或其他计算机可读指令的存储设备或介质。例如,存储 设备732和734可以表示磁盘驱动(例如,所谓的硬盘驱动)、固态驱动、软盘驱动、磁带驱 动、光盘驱动、闪盘驱动等。存储接口 730通常表示任意类型和形式的用于在存储设备732 和734与计算系统700的其他部件之间传递数据的接口或设备。在一个示例中,可将图1 中的数据库120存储在主存储设备732中。
[0073] 在特定实施例中,存储设备732和734可以被配置为从被配置为存储计算机软件 的可擦除存储单元中读取和/或向被配置为存储计算机软件的可擦除存储单元写入数据 或其他计算机可读信息。适当的可擦除存储单元的示例包括但不限于,软盘、磁带、光盘、闪 存设备等。存储设备732和734还可以包括其他相似的结构或设备,用于允许将计算机软 件、数据或其他计算机可读指令加载到计算系统700中。例如,存储设备732和734可以被 配置为读取或者写入软件、数据或其他计算机可读信息。存储设备732和734可以是计算 系统700的一部分,或者可以是通过其他接口系统来访问的单独的设备。
[0074] 许多其他设备或子系统可以被连接至计算系统700。相反,不需要使用在图7中 所示的所有部件和设备以实践本文中所描述的和/或所图示的实施例。上面引用的设备和 子系统也可以以与图7所示的那些方式不同的方式被互连。计算系统700也可以采用任意 数目的软件、固件和/或硬件配置。例如,本文中公开的示例性实施例中的一个或多个实施 例可以被编码为计算机可读存储介质上的
当前第4页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1