CN102017533B - 在多服务器箱体中的固定速度背板连接上的可调节服务器传输速率 - Google Patents

在多服务器箱体中的固定速度背板连接上的可调节服务器传输速率 Download PDF

Info

Publication number
CN102017533B
CN102017533B CN200880128904.5A CN200880128904A CN102017533B CN 102017533 B CN102017533 B CN 102017533B CN 200880128904 A CN200880128904 A CN 200880128904A CN 102017533 B CN102017533 B CN 102017533B
Authority
CN
China
Prior art keywords
port
described device
transmission rate
server
accumulator
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN200880128904.5A
Other languages
English (en)
Other versions
CN102017533A (zh
Inventor
M·创
C·L·赫森
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hewlett Packard Enterprise Development LP
Original Assignee
Hewlett Packard Development Co LP
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hewlett Packard Development Co LP filed Critical Hewlett Packard Development Co LP
Publication of CN102017533A publication Critical patent/CN102017533A/zh
Application granted granted Critical
Publication of CN102017533B publication Critical patent/CN102017533B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • H04L43/0894Packet rate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/26Flow control; Congestion control using explicit feedback to the source, e.g. choke packets
    • H04L47/266Stopping or restarting the source, e.g. X-on or X-off
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/43Assembling or disassembling of packets, e.g. segmentation and reassembly [SAR]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/16Threshold monitoring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/20Arrangements for monitoring or testing data switching networks the monitoring system or the monitored elements being virtualised, abstracted or software-defined entities, e.g. SDN or NFV

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Small-Scale Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明的实施例旨在为多装置箱体中的装置提供可配置的传输速率,尽管该多装置箱体内的公共通信介质否则会约束或固定装置的传输速率。在虚拟连接管理器或包含于多服务器箱体内或与之相关联的其他模块或装置内实施的本发明的一个实施例中,虚拟连接管理器提供监管或管理接口,通过该接口能够为每个服务器分配最大传输速率。然后,该虚拟连接管理器连续地监测服务器和/或服务器中的端口的传输速率,以便应用背压或流量控制,使得服务器和/或服务器中的端口不超出所配置的最大传输速率。

Description

在多服务器箱体中的固定速度背板连接上的可调节服务器传输速率
技术领域
本发明涉及多服务器箱体(enclosure)中的服务器与外部实体的通信,以及具体涉及一种用于为服务器和/或服务器中的单独端口提供到外部实体的可调节最大传输速率的方法和系统。
背景技术
在过去50年中,随着单独计算机处理器、数据存储装置以及其他计算机构件的能力的几何式增长,以及这种构件的体积的显著减小,传统的单处理器和单大容量存储装置计算机架构正逐渐被尺寸类似但功能强大得多的多装置箱体所代替,所述多装置箱体包括:将多个大容量存储装置结合在单个箱体内的盘阵列;以及将多个服务器结合到单个箱体中的刀片系统,其中每个服务器包括一个或多个处理器。多构件箱体简化了构件之间的连接,提供用于电源和环境调节的集成方法,以及可以提供有用的虚拟接口,以向外部实体抽象化单独的构件。
虽然多构件箱体经常提供优于单独构件装置的具有类似能力的集合的无数优点,但是多构件箱体有时可能约束或限制该多构件箱体中的构件,以便为单独构件提供公共的内部和外部接口。例如,为了促进刀片系统中的服务器模块的互操作性以及容易地更换和替代这些服务器模块的能力,所有服务器模块可以通过公共背板连接到外部通信介质,公共背板可能将服务器模块的该传输速率限制为公共的固定传输速率,尽管服务器在直接连接到通信介质时能够支持不同传输速率。多装置箱体的设计者、开发者、供应商以及用户意识到需要再次启用由共享接口限制的多构件箱体中的构件的固有灵活性和能力,以及需要为单独构件提供额外灵活性和能力以便增加多装置箱体作为整体的可用性和灵活性。
发明内容
本发明的实施例针对为多装置箱体中的装置提供可配置传输速率,尽管该多装置箱体中的公共通信介质否则将约束或固定该装置的传输速率。在多服务器箱体中包含的或与该多服务器箱体相关联的虚拟连接管理器或其他模块或装置中实施的、本发明的一个实施例中,该虚拟连接管理器提供监管或管理接口,通过该接口可以对每个服务器分配最大传输速率。然后,虚拟连接管理器连续地监测服务器和/或服务器中端口的传输速率,以应用背压或流量控制,使得服务器和/或服务器中的端口不超出所配置的最大传输速率。
附图说明
图1示出多服务器刀片系统的主要构件。
图2示出提供网络接口卡与主机-总线适配器之间的信号路径连接的刀片系统的背板。
图3A-3B示出用于将刀片系统中的服务器互连到外部通信介质的虚拟连接管理器方法。
图4A-4C示出以太网连接装置的半双工和全双工操作。
图5示出典型的以太网-II分组。
图6示出用于以太网链路的公共带宽。
图7A-7C示出传输速率的自动协商。
图8A-8E示出提供用于遵循以太网-II的装置的流量控制机制。
图9A-9K示出根据本发明的一个实施例的、用于限制刀片系统中NIC的最大数据传输速率的一种方法。
图10A-10D示出本发明的第二实施例。
图11A-11B示出通过实施本发明实施例而产生的总体效果。
图12提供实施所述的本发明的两个实施例中任一个的虚拟连接管理的控制流程图。
图13提供根据本发明的一个实施例的、在图12的步骤1208中调用的处理程序“新分组”的控制流程图。
图14提供根据本发明的一个实施例的、在图12的步骤1210中调用的处理程序“处理计时器(handle timer)”的第一部分的流程控制图。
图15提供根据参考图9A-9K描述的本发明的第一实施例的、在图14的步骤1410中调用的例程“调节传输速率”的控制流程图。
图16是根据参考图10A-10D描述的本发明的第二实施例的、在图14的步骤1410中调用的例程“调节传输速率”的第二实施方式的控制流程图。
具体实施方式
本发明的一个实施例针对一种用于向多服务器箱体中的服务器或多服务器箱体中的服务器的单独端口施加背压或流量控制的方法和系统,以便控制由该服务器或端口向一个或多个通信介质传输的最大速率。首先讨论多服务器箱体以为本发明的各个实施例的后续描述提供背景。在可选的实施方式中,可以配置并施行各种不同的最大传输速率。例如,可以配置并施行每个服务器到与该服务器相连接的所有通信介质的总最大传输速率。可选地,可以配置并施行每个服务器到与该服务器相连接的某种类型或种类的通信介质的所有通信介质的总最大传输速率。可选地,可以配置并施行服务器中的单独端口的总最大传输速率。
图1示出多服务器刀片系统的主要构件。该刀片系统102包括:许多温度控制构件104-108;两个或更多的电源单元110和112;多个服务器模块114-121;以及背板124,该背板124包括多个、不同类型的物理连接以用于经由电力线、控制信号线以及各种物理通信介质将服务器模块114-121与其他构件互连,所述各种物理通信介质包括用于向外部以太网、光纤信道以及其他通信介质传输数据以及从其接收数据的通信介质。当然,刀片系统包括很多其他构件,以及管理模块和管理例程,在管理模块内运行该管理例程,以向刀片系统管理员提供管理接口以及监测并管理刀片系统中的各种构件的操作。
图2示出刀片系统的背板,该背板提供网络接口卡与主机-总线适配器之间的信号路径连接。在图2中,刀片系统的背板202提供网络接口卡(“NIC”)和主机-总线适配器(“HBA”)(诸如NIC 204和HBA 206)分别到局域网(“LAN”)以及存储区域网(“SAN”)交换机中的端口(诸如LAN交换机210中的端口208以及SAN交换机214中的端口212)之间的信号路径连接。每个交换机(诸如交换机210)将各种网络接口卡或主机-总线适配器连接到一个或多个LAN或SAN。每个服务器216-219通常包括两个或更多的NIC以及两个或更多的HBA,使得该服务器能够容忍NIC和/或HBA故障而不丢失分别到外部LAN和/或SAN的连接。每个NIC包含制造商提供的介质访问控制(“MAC”)地址,以及每个HBA包含全球名称(“WWN”),分别通过该介质访问控制(“MAC”)地址和全球名称(“WWN”)在LAN以及SAN中分别对NIC以及HBA进行寻址。背板202是无源的,提供能够用于在服务器中的NIC和HBA与LAN和SAN交换机中的端口之间传输信号的信号线,所述LAN和SAN交换机包括以太网和光纤信道交换机。刀片系统中的服务器模块通过背板连接器插入到背板中,使得当将服务器模块安装到刀片系统中时或者当更换或交换服务器模块时,不需要庞大的、容易出错的布线。
图3A-3B示出用于将刀片系统中的服务器互连到外部通信介质的虚拟连接管理器方法。如图3A中所示,并非直接将服务器的NIC和HBA通过背板直接连接到交换机,而是可以可选地通过背板将NIC和HBA连接到虚拟连接管理器模块302和304,该虚拟连接管理器模块302和304又连接到外部通信介质,所述外部通信介质包括LAN和SAN通信介质。
图3B示出由虚拟连接管理器模块提供的功能。在虚拟连接管理器模块中运行的虚拟连接管理器维持用于通信端口的MAC、WWN及其他唯一地址的池310和312,每种类型的地址一个池。在图3B中,两个池310和312对应于MAC地址和WWN地址。该虚拟连接管理器还维持用于每个服务器318-321的配置简档314-317。在初始化阶段期间,所述虚拟连接管理器将来自MAC和WWN地址的池的MAC和WWN地址分配给所有服务器的NIC和HBA,以替换每个服务器的NIC和HBA中的制造商提供的MAC和WWN地址。虚拟连接管理器所使用的MAC地址和WWN地址由以太网和光纤信道联盟保留以用于刀片系统中。配置简档314-317包含指定每个服务器上的每个NIC和HBA待连接到的外部LAN和SAN的信息。所述虚拟连接管理器用作外部LAN和SAN与刀片系统的服务器模块中的NIC和HBA之间的虚拟接口,并且向刀片系统管理员提供管理员接口以进行通信管理。通过虚拟化在外部LAN和SAN与服务器模块中的NIC和HBA之间的接口,虚拟连接管理器使得可以移除服务器模块并用新的服务器模块来替换所移除的服务器模块,而无需重新配置曾与所移除的服务器模块相连接的那些LAN和SAN,且无需对刀片系统或刀片系统构件重新布线。代替地,所述虚拟连接管理器,在感测到替换服务器的上电后,使用用于该服务器的配置简档来用所移除的服务器使用的MAC和WWN地址来替换替换服务器的NIC和HBA卡中的MAC地址和WWN地址,以及将新安装的服务器与移除的服务器先前连接到的那些外部LAN和SAN相连接。
所述的本发明的实施例涉及以太网互连,以及接着描述以太网通信的各方面。但是,本发明表示的方法可以应用于另外类型的通信介质和协议。
图4A-4C示出以太网连接装置的半双工和全双工操作。图4A-4C使用在后续附图中再次使用的图示约定,其中,两个装置402和404通过以太网物理链路发送和接收数据编码信号,且该两个装置402和404中的每个装置包括连接到所述以太网物理链路的NIC。图4A-4B示出以太网的半双工操作。在图4A中,装置404发送数据到装置402,以及在图4B中,装置402通过该物理链路发送信息到装置404。在半双工操作中,两个装置无法同时发送数据。相反,在图4C中所示的全双工操作中,装置402和404通过物理链路406同时地发送和接收数据。根据互联网连接的类型和操作速度,通过物理介质每时钟周期发送8比特、16比特或32比特的数据值。在发送侧通过拆解(de-assemble)存储器中存储的数据分组来获得这些数据值,并且在接收侧重新组装这些数据值以重新构成所述分组并将该分组存储在存储器中。
图5示出典型的以太网-II分组。该分组包括7字节的前导码502、帧起始定界符504、该分组被引导到的NIC的6字节的MAC目的地地址508、从其发送该分组的NIC的6字节的MAC源地址510、2字节的以太网类型/长度字段512、包括46到1500字节的数据有效载荷字段514、以及4字节CRC字段516,该4字节CRC字段516提供对在发送该分组期间发生的差错的检测和校正。在物理链路上,对应于每个分组的数据值被帧间间隙518分开,所述帧间间隙518包括固定数量的时钟周期。
以太网物理链路可以包括双绞铜线、光纤、同轴电缆以及在刀片系统的背板中的信号线。可以根据端口、物理链路、NIC以及传输到NIC和其他构件的控制参数,以不同速率通过以太网物理链路和端口发送数据。图6示出以太网装置的常见传输速率。如图6中所示,以太网链路的常见带宽包括10兆比特/秒602、100兆比特/秒604、以及1000兆比特/秒或1吉比特/秒606。10吉比特/秒的以太网链路也是当前可用的,以及100吉比特/秒的链路预期在几年内可用。很多NIC可以配置为以图6中所示的最大传输速率中的任何一个传输数据。
通信装置中的NIC可以自动协商某些操作模式。图7A-7C示出对于传输速率的自动协商。在图7A中,包含具有100兆比特/秒的最大可配置数据传输速率的NIC的装置702与包含具有1吉比特/秒的最大可配置数据传输速率的NIC的装置704互连。物理链路706能够在每个方向上以1吉比特/秒载送数据。如图7B中所示,在上电之后的配置过程中,作为自动协商过程的一部分,装置702和704交换链路码字708和710,通过此每个装置确定远程装置的能力,并且然后两个装置同意以该两个装置中最慢那个能够处理的最大传输速率来通信。如图7C中所示,作为自动协商的结果,装置702和704配置为以100兆比特/秒进行传输,其中100兆比特/秒是该两个装置中较慢那个的最大传输速率。自动协商还可以用于确定是在半双工还是在全双工模式中操作,当两个装置均能够在全双工模式中操作时,全双工模式是优选的。
因为某些刀片系统中的背板互连的性质,该刀片系统的服务器中的NIC无法进行自动协商和传输速率选择。代替地,在这些刀片系统中,要求所有NIC以特定的、固定的最大传输速率操作。在本发明的实施例针对的一种类型的刀片系统的情况下,用于刀片系统的服务器中的所有NIC的固定的、最大传输速率是1吉比特/秒。尽管初一思考下,1吉比特/秒看似是合理的固定数据传输速率,但是由于它是服务器中结合的很多普遍可用的NIC支持的最高数据传输速率,固定的最大数据传输速率可能在包括刀片服务器的系统中引起问题。
一个问题是,当将刀片系统安装到计算设施以替换较旧技术的服务器或服务器集群时,该计算设施中先前与该较旧技术的服务器或服务器集群通信的各个计算机和构件可能被刀片系统中多个服务器的增加的、总数据传输速率弄崩溃。这个问题可以利用独立的替换服务器来容易地解决。服务器中的NIC可以配置为以较低的最大传输速率来操作,该较低的最大传输速率诸如100兆比特/秒或10兆比特/秒,因为最大传输速率对于现代NIC来说通常是可配置的。很多当前可用的NIC例如提供在图6中所示的三个数据传输速率中选择一个。但是,在上述类型的刀片系统中,因为背板连接的限制,对服务器中的NIC进行配置使之以较低的最大数据传输速率操作是不可能的。解决该问题的另一方法将是,压制(throttle)在服务器上运行的较高级实体,所述较高级实体诸如请求数据传输服务的应用程序。但是,对于较高级的改变是困难的、不精确的且容易出错的,并且在很多情况下是不可能的,因为应用程序不被设计成用于监测和压制由对操作系统的数据传输请求生成的数据传输速率,以及因为应用程序经常由外部供应商产生,而该外部供应商不愿针对特殊情形而修改应用程序。
本发明的实施例针对一种用于解决与刀片系统服务器中的NIC的固定最大数据传输速率相关联的问题的不同方法。在这种方法中,上面参考图3A-3B所述的虚拟连接管理器接口被实施以提供由刀片系统管理员通过由虚拟连接管理器提供给刀片系统管理员的配置接口对刀片系统的服务器模块中的NIC的最大数据传输速率进行配置,以及监测数据传输速率并按照需要施加背压或流量控制,以确保每个NIC不会以高于所配置的最大数据传输速率的速率传输数据。
图8A-8E示出提供用于遵循以太网-II的装置的流量控制机制。在图8A中所示的情况中,其中第一装置802以超出第二装置804处理所接收数据的能力的数据传输速率向该第二装置804传输数据,图8B中所示的第二装置能够发送暂停消息到第一装置802以致使该第一装置停止数据传输达指定的时间段。该暂停消息被发送到所有连接到物理介质的NI C能够接收的多播地址。该暂停消息被编码在2字节以太网类型/长度字段(图5中的512)中,并包括16比特的值808,该16比特的值808指定在其期间接收装置应该停止数据传输的时间。该值以512比特传输时间为单位表示停止数据传输的时间。如图8C中所示,在接收到暂停消息后,接收装置设置计时器810并停止传输直到计时器期满为止。如图8D中所示,发送暂停消息的装置能够通过以下操作来显式地覆盖该暂停消息:发送包含指定的“0”停止时间段的暂停消息812,该包含指定的“0”停止时间段的暂停消息812在下面被称为“恢复消息”,其重置计时器。如图8E中所示,接收到暂停消息的装置当计时器期满时或在接收到恢复消息后,恢复数据传输。
由NIC接收暂停消息以及由NIC停止数据传输可能导致包含该NIC的服务器中的较高级的流量控制。如果暂停数据传输达充分的时间量,NIC缓冲器和/或操作系统缓冲器可能被填满,导致较高级数据传输操作的故障。操作系统可能自动重试这种发生故障的数据传输操作,或故障可能流回到包括应用程序的较高级实体,该较高级实体然后重试发生故障的数据传输操作。
图9A-9K示出根据本发明的一个实施例的、一种用于限制刀片系统中的NIC的最大数据传输速率的方法。在该实施例中,刀片系统中的虚拟连接管理器采用以太网-II提供的上述暂停消息,来在NIC超出在刀片系统的配置期间建立的最大数据传输速率时对NIC施加背压。
稍后讨论的图9A-9K以及图10A-10D均使用相同的图示约定。这些图示出了在虚拟连接管理器中用来限制特定服务器或服务器中的特定单独端口(表示为服务器/端口对)的最大数据传输速率的特定变量、数据结构以及其他实体。在某些实施例中,可以采用该虚拟连接管理器来限制刀片系统中的每个服务器的最大数据传输速率,以及在其他实施例中,可以将每个服务器中的每个端口单独地限制到所配置的、最大数据传输速率。
对于每个服务器或服务器/端口对(取决于实施例),虚拟连接管理器维持:计时器902;n-1个累加器(accumulator)的阵列,其中的每个累加器累加在固定时间段内由虚拟连接管理器从服务器或服务器/端口904接收的比特数;指向当前使用的累加器的指针906;布尔值“背压”908,该布尔值“背压”908指示该虚拟连接管理器当前是否正对服务器或服务器/端口对施加背压;用于该服务器或服务器/端口对的配置表格910;以及来自该服务器或服务器/端口对的以太网分组输入912。另外但是没有在图9A中示出,该虚拟连接管理器存储累加器阵列904中的第一累加器的地址以及累加器阵列904中的累加器数目n,或者存储累加器阵列中的第一和最后累加器的地址。所有这些数据结构、变量以及实体被成组到一起并且计算地与特定的服务器或服务器/端口相关联,以便例如当接收到以太网分组时,该以太网分组中包含的源地址可以在对操作进行索引或引用的过程中用来定位该组数据结构、变量和实体,该组数据结构、变量和实体描述从其发送该以太网分组的服务器或服务器/端口对的当前虚拟连接管理器上下文。例如,可以采用数据结构来包含累加器阵列、当前累加器指针、布尔值“背压”、对计时器的引用、以及对配置表格的引用以及服务器或服务器/端口对的MAC地址,以便该数据结构能够立即从所接收的以太网分组中的源地址被识别出来。
如图9A中所示,初始化虚拟连接管理器上下文,以便累加器指针906引用累加器阵列904中的第一累加器914,并将计时器设置为在
Figure BPA00001250946100091
秒后期满,其中,n是累加器阵列中的累加器数目。所有累加器被初始化为具有值“0”。一旦对所有服务器进行上电和初始化,并且对虚拟连接管理器上电和初始化,则所述虚拟连接管理器开始从刀片系统中的服务器模块接收分组。如图9B中所示,当下个分组到达时916,将以比特计的分组的大小加到当前累加器指针906当前所引用的累加器914的内容。图9C示出第二分组的到达,以及将第二分组中包含的比特数加到当前累加器指针906所引用的累加器914。
如图9D中所示,当计时器在秒期满时,通过模n运算,递增当前累加器指针以指向下个累加器918,该下个累加器918被清除(cleared)。累加器阵列904中的所有累加器被加到一起,以产生在上一秒期间从服务器或服务器/端口接收的总比特数920。更精确地,可以将累加器的总和乘以比率
Figure BPA00001250946100093
以产生对于在前一秒期间由服务器或服务器/端口发送的比特数的估计。如图9E中所示,在第二计时器期满后,当前累加器指针906再次通过模n加法进行递增,并且将累加器的总和乘以比率以产生在前一秒期间由服务器或服务器/端口接收的比特数922。该过程继续,其中计时器随后每隔
Figure BPA00001250946100095
秒的间隔就期满。在图9F中,累加器阵列被值完全充满。
每隔秒的间隔,将n个累加器中包含的总比特数乘以比率
Figure BPA00001250946100102
的值与配置表格910中存储的为服务器或服务器/端口配置的最大数据传输速率进行比较。如图9G中所示,当针对上一秒估计的数据传输速率超出了为服务器或服务器/端口配置的最大数据传输速率时,则如图9H中所示,布尔变量“背压”908被设置为真,并发送暂停消息924到服务器/端口或服务器的端口,以停止该服务器或服务器/端口的传输达固定量的时间。该固定量的时间或暂停时间被计算为这样的时间量:如果在1秒内n次将服务器或服务器/端口停止该时间量,则该服务器或服务器/端口的数据传输速率,以其当前数据传输速率,会被降低到低于为该服务器或服务器/端口配置的最大数据传输速率。通常,将所估计的暂停时间增加某个额外因子,该额外因子在下面称为值“溢出值(slop)”,以确保该服务器或服务器/端口的数据传输速率对于某个初始时间段显著落到最大数据传输速率以下。然后,如图9I-9J中所示,正常操作继续。每次计时器期满时,或每隔秒的间隔,在布尔变量“背压”908保持真的同时,将暂停消息发送到该服务器/端口或服务器的端口。随后,如图9K中所示,如果在上一秒内为该服务器或服务器/端口计算的数据传输速率落到低阈值以下,且该低阈值显著小于为该服务器或服务器/端口配置的最大数据传输速率,则将布尔值“背压”908设置为假,以及不发送另外的暂停消息,直到数据传输速率再次超出为该服务器或服务器/端口配置的最大数据传输速率。因此,根据上述的本发明的第一实施例,一旦服务器或服务器/端口的数据传输速率超出为该服务器或服务器/端口配置的最大数据传输速率,则以固定的、检测到计时器期满的间隔发送暂停消息,以在每个时间间隔内将该服务器或服务器/端口暂停较小的时间段,以便将该服务器或服务器/端口的总体数据传输速率降低到显著低于为该服务器或服务器/端口配置的最大数据传输速率。
图10A-10D示出本发明的第二实施例。在该第二实施例中采用与第一实施例中采用的相同的数据结构,如通过比较图10A和图9A所能见到的。图10A示出了在计时器期满之后累加器寄存器的内容以及当前累加器指针906和布尔变量“背压”908的当前状态。图10B示出在下个计时器期满后累加器904、背压寄存器908以及当前累加器寄存器906的内容。注意到,在前面的
Figure BPA00001250946100111
秒期间,发生了服务器或服务器/端口的数据传输速率的巨大增加,如累加器930中的值所证明的。这导致了对上一秒计算的数据传输速率932超过两倍于以及大大超出为该服务器或服务器/端口配置的最大数据传输速率。此时,如在先前实施例中那样,将布尔变量“背压”设置为真908,并发送暂停消息934到该服务器或服务器/端口。但是,在此种情况下,暂停消息包括最大可能的暂停时间,以便该服务器或服务器/端口的接收端口将完全停止(halt)数据传输达相当大的时间段。然后,相同的计时器重置以及后续期满模式以及当前累加器指针模递增持续,如上所讨论的,直到如图10D中所示,对上一秒计算的数据传输速率落到某个低阈值936以下。此时,向服务器或服务器/端口发送恢复消息938以重启数据传输。
还有很多另外的、可选的实施例,其可被实施用于使用在以太网II中可用的暂停消息来对服务器或服务器/端口施加背压,以便确保为该服务器或服务器/端口配置的数据传输速率不超出为该服务器或服务器/端口配置的最大数据传输速率。可以采用更少的累加器,可以使用除了计时器事件之外的事件来唤醒监测例程,以便以连续方式监测每个服务器或服务器/端口,并且其他可选实施方式也是可能的。但是,在所有情况下,虚拟连接管理器使用以太网-II暂停消息以便控制每个服务器或服务器/端口的总体数据传输速率。
图11A-11B示出通过实施本发明的实施例所产生的总体效果。在图11A中,相对于垂直轴1102标出的数据传输速率关于时间用曲线表示,且时间相对于水平轴1104标出。在图11A中,时间增量非常短,处于
Figure BPA00001250946100121
秒的量级或更小。如图11A中所示,数据传输速率可以随着时间而变化,直到数据传输速率超出最大数据传输速率1106,在该点处发送暂停消息并且数据传输速率降到零1108且保持为零达一段时间。然后,在暂停1110之后,数据传输速率跳回到某个有限值并继续增加和降低,直到数据传输速率再次超出为该服务器或服务器/端口配置的最大数据传输速率1110,在该点处,发送另一暂停消息,并且数据传输速率降到零且保持为零达另一段时间1112。因此,当以小的时间增量来看时,服务器或服务器/端口的数据传输速率表现得非常不连续,且表征出高于最大数据传输速率的峰以及没有数据传输的时段。但是,如图11B中所示,当在大得多的时间段内绘制服务器或服务器/端口的数据传输速率时,如例如用图11B中表示几百个图11A中的增量1116的增量1114来绘制时,则该服务器或服务器/端口的数据传输速率1118表现为连续的,并且从未超出最大数据传输速率。实际上,在如图11A中所示的在非常小的时间增量上计算的曲线中,看到数据传输速率偶尔在短时间段内超出最大数据传输速率。但是,如图11B中所示,当在较长时间段内计算数据传输速率时,短尖峰被平均到较长时间段内,使得数据传输速率表现为连续的并且总低于最大数据传输速率线。
图12-15示出图解上面参考图9A-9K以及图10A-10D描述的本发明的两个不同实施例的控制流程图。图12提供用于实施本发明的两个所述实施例中任何一个的虚拟连接管理器的控制流程图。在步骤1202,该虚拟连接管理器,在上电或重置后,根据配置表格中存储的配置信息,对刀片系统中的所有服务器和服务器端口进行配置。在步骤1204,对刀片系统进行初始化以进行操作。然后,在包括步骤1206-1211的事件环中,该虚拟连接管理器等待并处理许多不同类型的事件中的任何事件。在事件是来自刀片系统中的服务器的进入分组的情况下,如在步骤1207中确定的,在步骤1208中调用处理程序“新分组”。在事件是与最大数据传输速率计时器期满相关联的计时器中断的情况下,如在步骤1209中确定的,则在步骤1210中调用处理程序“处理计时器”。在步骤1211中利用捕捉所有事件处理程序来处理许多其他类型的事件中的任何事件,包括由管理员接口产生的事件、与通信介质问题相关的事件、与刀片系统中的功率或环境状况相关的事件和其他事件。只要虚拟连接管理器操作,该事件环就持续。
图13提供根据本发明的一个实施例的、图12的步骤1208中调用的处理程序“新分组”的控制流程图。在步骤1302,虚拟连接管理器确定从其接收分组的服务器或服务器/端口。在步骤1304,该虚拟连接管理器找到对应于该服务器或服务器/端口的一个或多个数据结构,如参考图9A讨论的,并在步骤1306,将由当前累加器指针(图9A中的906)引用的当前累加器递增所接收分组的以比特计的大小。因此,由本发明的实施例引入的用于处理每个进入分组的开销是很小的。
图14提供根据本发明的一个实施例的、图12的步骤1210中调用的处理程序“处理计时器”的第一部分的控制流程图。在步骤1402,虚拟连接管理器确定对应于期满的计时器的服务器或服务器/端口。在步骤1404,该虚拟连接管理器将该服务器或服务器/端口的当前的即时数据传输速率计算为当前累加器的内容乘以累加器数目n。在步骤1406,虚拟连接管理器通过模n运算来递增当前累加器指针,并且在步骤1408,重置计时器以及计时器期满中断,以提供对下个监测间隔的结束的检测。然后,在步骤1410,调用例程“调节传输速率”。
图15提供根据参考图9A-9K描述的本发明的第一实施例的、在图14的步骤1410中调用的例程“调节传输速率”的控制流程图。在步骤1502,将当前传输速率计算为所有累加器(图9A中的904)的总和乘以比率
Figure BPA00001250946100141
当当前传输速率小于低阈值时,如在步骤1504中确定的,则在步骤1506将布尔变量“背压”设置为假,并且该例程终止。否则,当当前数据传输速率大于为服务器或服务器/端口配置的最大数据传输速率时,如在步骤1508中确定的,则当布尔变量“背压”当前具有值“真”,如在步骤1510中确定的,并且当当前的、即时数据传输速率(见图14中的步骤1404)大于该最大数据传输速率时,如在步骤1512中确定的,则在步骤1514中递增用于暂停服务器或服务器/端口的暂停时间,以反映数据传输速率保持高于为该装置配置的最大数据传输速率的事实。当即时数据传输速率不大于最大数据传输速率时,如在步骤1512中确定的,不需要重新计算暂停时段。当布尔变量“背压”不是“真”时,如在步骤1510中确定的,则在步骤1516中将布尔变量“背压”设置为“真”且计算暂停时间。在变量“暂停”中存储的暂停时间被计算为服务器或服务器/端口在每个
Figure BPA00001250946100142
秒的时间段期间应该停止的时间量,以便将该服务器或服务器/端口的数据传输速率降低到为该服务器或服务器/端口配置的最大数据传输速率以下。将附加值“溢出值”加到估计值,以便确保迫使该服务器或服务器/端口的数据传输速率低于最大数据传输速率。然后,在步骤1518,使用变量“暂停”的当前值,发送暂停消息到服务器或服务器/端口的端口。当当前数据传输速率不高于为该装置配置的最大数据传输速率时,如在步骤1508中确定的,则例程结束,除非布尔变量“背压”的当前值是“真”,如在步骤1520中确定的,在此种情况下,在步骤1518中发送下一暂停消息。
图16是根据参考图10A-10D描述的本发明的第二实施例的、在图14的步骤1410中调用的例程“调节传输速率”的第二实施方式的控制流程图。如在图15中那样,在步骤1602中计算当前数据传输速率。当当前数据传输速率大于低阈值时,如在步骤1604中确定的,以及当布尔变量“背压”具有“真”值时,如在步骤1606中确定的,则在步骤1608发送恢复消息到服务器或服务器/端口,并将布尔变量“背压”设置为“假”。否则,当当前数据传输速率超出为服务器或服务器/端口配置的最大数据传输速率时,如在步骤1610中确定的,则当布尔变量“背压”当前具有“假”值时,如在步骤1612中确定的,在步骤1614发送暂停消息到服务器或服务器/端口。
虽然根据特定实施例对本发明进行了描述,不意图将本发明限制于这些实施例。对于本领域技术人员来说,在本发明的精神内的修改是显而易见的。例如,本发明的实施例可以以硬件电路、固件和/或软件来实现,所述软件驻留于刀片系统的虚拟连接管理器中或刀片系统的另一构件中或在其中执行,该另一构件能够监测来自刀片系统的服务器中的端口的数据传输。本发明可以通过改变常见硬件设计、固件设计和/或软件设计参数,诸如模块化组织、控制结构、数据结构、变量、逻辑结构以及例程流,而以很多不同方式实现。如上讨论的,可以将服务器配置用于通过特定类型的通信介质、通过所有通信介质、或通过特定端口(这取决于实施方式)的最大传输速率。在可选实施方式中,能够将最大数据传输速率配置用于服务器群或用于整个刀片系统。在某些实施例中,单独服务器、服务器中的端口以及服务器群的任何组合可以被配置用于最大数据传输速率,以及进行流量控制以确保不超出所配置的最大数据传输速率。在所有情况下,监测所控制的服务器、端口或服务器群的数据传输速率,以及使用流量控制消息或信号来确保每个配置的数据传输速率均不被超过。虽然上面在多服务器箱体的情境中讨论了本发明,本发明也可应用于其他类型的多装置箱体,其中,所述装置包括到通信介质的端口。在上述的实施方式中,对于每个服务器或服务器/端口、对于每个间隔调用监测例程,但是在可选实施方式中,监测例程可以在单个调用期间对多个服务器和/或服务器/端口进行监测和流量控制。
前面的描述为了解释的目的使用了特定术语来提供对于本发明的彻底理解。但是,对于本领域技术人员来说显而易见的是,为了实现本发明并不需要特定细节。为了说明和描述的目的,给出了本发明的特定实施例的前面描述。它们并不意图是穷举的也不意图将本发明限制于所公开的精确形式。考虑到上面的教导,很多修改和变型是可能的。示出并描述实施例,以便最好地解释本发明的原理及其实际应用,从而使得本领域其他技术人员能够视预期的特定用途来最佳地使用本发明以及具有各种修改的各种实施例。本发明的范围意图由下面的权利要求及其等效物来限定。

Claims (18)

1.在多装置箱体中实施的数据传输速率监测器,所述多装置箱体包含装置,所述装置包括将所述装置连接到通信介质的端口,所述数据传输速率监测器包括:
存储在电子存储器内的数据,所述数据包括为每个装置或端口配置的最大数据传输速率的规范;以及
监测构件,所述监测构件确定所述多装置箱体中的装置或端口的当前数据传输速率,以及当所述装置或端口的当前数据传输速率超出为所述装置或端口配置的最大数据传输速率时,传送暂停命令到所述装置或端口,以对所述装置或端口施加背压;
其中,所述监测构件:
确定所述装置或端口的当前数据传输速率是否低于低阈值;
当所述装置或端口的当前数据传输速率低于所述低阈值时,在背压变量中存储不应发送暂停命令到所述装置或端口的指示;
当所述装置或端口的数据传输速率大于为所述装置或端口配置的最大数据传输速率时,
当所述背压变量指示应该发送暂停命令到所述装置或端口时,增加在所述暂停命令中包括的暂停时间,以便当所述装置或端口的即时数据传输速率大于为所述装置或端口配置的最大数据传输速率时,进一步压制所述装置或端口;以及
当所述背压变量指示不应发送所述暂停命令到所述装置或端口时,
在背压变量中存储应该发送暂停命令到所述装置或端口的指示,以及
计算待包括在所述暂停命令中的暂停时间;以及
当所述背压变量指示应发送所述暂停命令到所述装置或端口时,发送包括所述暂停时间的暂停命令到所述装置或端口。
2.根据权利要求1所述的数据传输速率监测器,其在刀片系统的虚拟连接管理器中实现。
3.根据权利要求1所述的数据传输速率监测器,其中,所述通信介质是以太网链路,以及所述暂停命令是以太网暂停消息,所述以太网暂停消息包括指示该消息是暂停消息以及暂停时间的类型/长度字段。
4.根据权利要求1所述的数据传输速率监测器,进一步包括:
间隔定时构件,所述间隔定时构件在所述多装置箱体的操作期间每隔一段间隔就调用所述监测构件;
存储在电子存储器内的数据,所述数据包括为所述装置或端口配置的最大数据传输速率的规范;以及
累加器构件,当所述数据传输速率监测器从所述装置接收到数据传输时,所述累加器构件将在所述数据传输中由所述装置传输的数据量加到累加器,所述累加器累加在当前时间间隔期间由所述装置传输的总量数据。
5.根据权利要求4所述的数据传输速率监测器,其中,所述累加器构件将在从所述装置接收的每个数据传输中传输的数据量加到由当前累加器引用从n个累加器中引用的一个累加器,以及其中,在每一间隔,所述监测构件通过模n运算来递增当前累加器引用,并清除由递增的当前累加器引用所引用的累加器。
6.根据权利要求5所述的数据传输速率监测器,其中,所述间隔定时构件每隔
Figure FSB0000123886330000021
秒调用所述监测构件。
7.根据权利要求6所述的数据传输速率监测器,其中,所述监测构件通过对n个累加器中存储的值相加来确定所述装置或端口的当前数据传输速率。
8.根据权利要求6所述的数据传输速率监测器,其中,所述间隔监测构件通过对n个累加器中存储的值相加以产生总和并将该总和乘以
Figure FSB0000123886330000022
来确定所述装置或端口的当前数据传输速率。
9.根据权利要求8所述的数据传输速率监测器,其中,所述监测构件:
当所述装置或端口的当前数据传输速率低于所述低阈值并且在背压变量中存储的值指示已经发送暂停命令到所述装置或端口时,向所述装置或端口发送恢复命令并在所述背压变量中存储指示以指示尚未发送暂停命令到所述装置或端口;以及
当所述装置或端口的当前数据传输速率大于为所述装置或端口配置的最大数据传输速率并且在背压变量中存储的值指示尚未发送暂停命令到所述装置或端口时,发送暂停命令到所述装置或端口,并在所述背压变量中存储指示,以指示已经发送暂停命令到所述装置或端口。
10.根据权利要求1所述的数据传输速率监测器,其中,所述数据传输速率监测器进一步提供管理员接口,以允许管理员为所述多装置箱体中的每个装置或端口配置最大数据传输速率。
11.一种用于控制多装置箱体内的装置或端口的最大数据传输速率的方法,所述多装置箱体包含装置,所述装置包括将所述装置连接到通信介质的端口,所述方法包括:
在所述多装置箱体的操作期间,每隔一段间隔由监测构件确定在所述多装置箱体内的装置或端口的当前数据传输速率,以及当所述装置或端口的当前数据传输速率超出为所述装置或端口配置的最大数据传输速率时,传送暂停命令到所述装置或端口,以对所述装置或端口施加背压;以及
当从所述装置或端口接收到数据传输时,将该数据传输中由所述装置传输的数据量加到累加器,所述累加器累加在当前时间间隔期间由所述装置传输的总量数据;
进一步包括:
确定所述装置或端口的当前数据传输速率是否低于低阈值;
当所述装置或端口的当前数据传输速率低于所述低阈值时,在背压变量中存储不应发送暂停命令到所述装置或端口的指示;
当所述装置或端口的数据传输速率大于为所述装置或端口配置的最大数据传输速率时,
当所述背压变量指示应该发送暂停命令到所述装置或端口时,增加在所述暂停命令中包括的暂停时间,以便当所述装置或端口的即时数据传输速率大于为所述装置或端口配置的最大数据传输速率时,进一步压制所述装置或端口;以及
当所述背压变量指示不应发送所述暂停命令到所述装置或端口时,
在背压变量中存储应该发送暂停命令到所述装置或端口的指示,以及
计算待包括在所述暂停命令中的所述暂停时间;以及当所述背压变量指示应发送所述暂停命令到所述装置或端口时,发送包括所述暂停时间的暂停命令到所述装置或端口。
12.根据权利要求11所述的方法,其在刀片系统的虚拟连接管理器中执行。
13.根据权利要求11所述的方法,其中,所述通信介质是以太网链路,以及所述暂停命令是以太网暂停消息,所述以太网暂停消息包括指示该消息是暂停消息以及暂停时间的类型/长度字段。
14.根据权利要求11所述的方法,进一步包括:
将在从所述装置接收的每个数据传输中传输的数据量加到由当前累加器引用从n个累加器中引用的一个累加器;以及
在每一间隔,通过模n运算来递增当前累加器引用,并清除由递增的当前累加器引用所引用的累加器。
15.根据权利要求14所述的方法,进一步包括:每隔秒调用所述监测构件。
16.根据权利要求15所述的方法,其中,所述监测构件通过对n个累加器中存储的值相加来确定所述装置或端口的当前数据传输速率。
17.根据权利要求15所述的方法,其中,所述监测构件通过对n个累加器中存储的值相加以产生总和并将该总和乘以
Figure FSB0000123886330000042
来确定所述装置或端口的当前数据传输速率。
18.根据权利要求17所述的方法,进一步包括:
当所述装置或端口的当前数据传输速率低于所述低阈值并且在背压变量中存储的值指示已经发送暂停命令到所述装置或端口时,向所述装置或端口发送恢复命令并在所述背压变量中存储指示以指示尚未发送暂停命令到所述装置或端口;以及
当所述装置或端口的当前数据传输速率大于为所述装置或端口配置的最大数据传输速率并且在背压变量中存储的值指示尚未发送暂停命令到所述装置或端口时,发送暂停命令到所述装置或端口,并在所述背压变量中存储指示,以指示已经发送暂停命令到所述装置或端口。
CN200880128904.5A 2008-04-28 2008-04-28 在多服务器箱体中的固定速度背板连接上的可调节服务器传输速率 Active CN102017533B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2008/005455 WO2009134219A1 (en) 2008-04-28 2008-04-28 Adjustable server-transmission rates over fixed-speed backplane connections within a multi-server enclosure

Publications (2)

Publication Number Publication Date
CN102017533A CN102017533A (zh) 2011-04-13
CN102017533B true CN102017533B (zh) 2014-06-11

Family

ID=41255269

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200880128904.5A Active CN102017533B (zh) 2008-04-28 2008-04-28 在多服务器箱体中的固定速度背板连接上的可调节服务器传输速率

Country Status (6)

Country Link
US (1) US8903989B2 (zh)
EP (1) EP2272214B8 (zh)
JP (1) JP5400135B2 (zh)
KR (1) KR101408390B1 (zh)
CN (1) CN102017533B (zh)
WO (1) WO2009134219A1 (zh)

Families Citing this family (49)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB0221464D0 (en) 2002-09-16 2002-10-23 Cambridge Internetworking Ltd Network interface and protocol
GB0304807D0 (en) 2003-03-03 2003-04-09 Cambridge Internetworking Ltd Data protocol
GB0404696D0 (en) 2004-03-02 2004-04-07 Level 5 Networks Ltd Dual driver interface
GB0408876D0 (en) 2004-04-21 2004-05-26 Level 5 Networks Ltd User-level stack
GB0408868D0 (en) 2004-04-21 2004-05-26 Level 5 Networks Ltd Checking data integrity
GB0506403D0 (en) 2005-03-30 2005-05-04 Level 5 Networks Ltd Routing tables
GB0505300D0 (en) 2005-03-15 2005-04-20 Level 5 Networks Ltd Transmitting data
EP3217285B1 (en) 2005-03-10 2021-04-28 Xilinx, Inc. Transmitting data
GB0505297D0 (en) 2005-03-15 2005-04-20 Level 5 Networks Ltd Redirecting instructions
US7634584B2 (en) 2005-04-27 2009-12-15 Solarflare Communications, Inc. Packet validation in virtual network interface architecture
DE602006013128D1 (de) 2005-06-15 2010-05-06 Solarflare Comm Inc Empfangen von daten gemäss eines datentransferprotokolls von daten, die ein beliebiges einer mehrzahl von empgangsgeräten gerichtet sind
US7984180B2 (en) 2005-10-20 2011-07-19 Solarflare Communications, Inc. Hashing algorithm for network receive filtering
GB0600417D0 (en) 2006-01-10 2006-02-15 Level 5 Networks Inc Virtualisation support
US8116312B2 (en) 2006-02-08 2012-02-14 Solarflare Communications, Inc. Method and apparatus for multicast packet reception
US9686117B2 (en) 2006-07-10 2017-06-20 Solarflare Communications, Inc. Chimney onload implementation of network protocol stack
US9948533B2 (en) 2006-07-10 2018-04-17 Solarflare Communitations, Inc. Interrupt management
EP2645674B1 (en) 2006-07-10 2020-09-02 Xilinx, Inc. Interrupt management
GB0621774D0 (en) 2006-11-01 2006-12-13 Level 5 Networks Inc Driver level segmentation
GB0723422D0 (en) * 2007-11-29 2008-01-09 Level 5 Networks Inc Virtualised receive side scaling
GB0802126D0 (en) 2008-02-05 2008-03-12 Level 5 Networks Inc Scalable sockets
EP2353093A2 (en) * 2008-09-22 2011-08-10 Synopsys, Inc. Data processing system comprising a monitor
GB0823162D0 (en) 2008-12-18 2009-01-28 Solarflare Communications Inc Virtualised Interface Functions
US9256560B2 (en) 2009-07-29 2016-02-09 Solarflare Communications, Inc. Controller integration
US9210140B2 (en) 2009-08-19 2015-12-08 Solarflare Communications, Inc. Remote functionality selection
EP2309680B1 (en) 2009-10-08 2017-07-19 Solarflare Communications Inc Switching API
US8743877B2 (en) 2009-12-21 2014-06-03 Steven L. Pope Header processing engine
KR20110117815A (ko) * 2010-04-22 2011-10-28 삼성전자주식회사 복수 개의 마스터가 존재하는 시스템에서 데이터 트래픽 최적화 방법 및 장치
US10873613B2 (en) 2010-12-09 2020-12-22 Xilinx, Inc. TCP processing for devices
US9600429B2 (en) 2010-12-09 2017-03-21 Solarflare Communications, Inc. Encapsulated accelerator
US9258390B2 (en) 2011-07-29 2016-02-09 Solarflare Communications, Inc. Reducing network latency
US8996644B2 (en) 2010-12-09 2015-03-31 Solarflare Communications, Inc. Encapsulated accelerator
US9674318B2 (en) 2010-12-09 2017-06-06 Solarflare Communications, Inc. TCP processing for devices
US9008113B2 (en) 2010-12-20 2015-04-14 Solarflare Communications, Inc. Mapped FIFO buffering
US9384071B2 (en) 2011-03-31 2016-07-05 Solarflare Communications, Inc. Epoll optimisations
DE102011107092B4 (de) * 2011-07-11 2017-09-14 Fujitsu Ltd. Computersystem, Verfahren zum Starten eines Server-Computers, Server-Computer, Managementstation und Verwendung
US8763018B2 (en) 2011-08-22 2014-06-24 Solarflare Communications, Inc. Modifying application behaviour
EP2574000B1 (en) 2011-09-22 2020-04-08 Xilinx, Inc. Message acceleration
US9391840B2 (en) 2012-05-02 2016-07-12 Solarflare Communications, Inc. Avoiding delayed data
US9391841B2 (en) 2012-07-03 2016-07-12 Solarflare Communications, Inc. Fast linkup arbitration
US10505747B2 (en) 2012-10-16 2019-12-10 Solarflare Communications, Inc. Feed processing
US9426124B2 (en) 2013-04-08 2016-08-23 Solarflare Communications, Inc. Locked down network interface
US10742604B2 (en) 2013-04-08 2020-08-11 Xilinx, Inc. Locked down network interface
EP2809033B1 (en) 2013-05-30 2018-03-21 Solarflare Communications Inc Packet capture in a network
US10394751B2 (en) 2013-11-06 2019-08-27 Solarflare Communications, Inc. Programmed input/output mode
US10044795B2 (en) 2014-07-11 2018-08-07 Vmware Inc. Methods and apparatus for rack deployments for virtual computing environments
US10635423B2 (en) 2015-06-30 2020-04-28 Vmware, Inc. Methods and apparatus for software lifecycle management of a virtual computing environment
CN110612773B (zh) * 2017-04-24 2023-09-05 惠普发展公司,有限责任合伙企业 操作模式配置
EP3461160A1 (en) * 2017-09-26 2019-03-27 Thomson Licensing Method of associating configuration settings with devices in a network and corresponding apparatus
US10901721B2 (en) 2018-09-20 2021-01-26 Vmware, Inc. Methods and apparatus for version aliasing mechanisms and cumulative upgrades for software lifecycle management

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6445704B1 (en) * 1997-05-02 2002-09-03 Cisco Technology, Inc. Method and apparatus for virtualizing a locally initiated outbound connection from a connection manager
CN1459955A (zh) * 2002-05-23 2003-12-03 威盛电子股份有限公司 网络传输速率的控制方法及使用该方法的以太网交换机
CN1972315A (zh) * 2006-11-28 2007-05-30 曙光信息产业(北京)有限公司 一种应用于刀片服务器usb虚拟媒体系统
US7266117B1 (en) * 2002-05-06 2007-09-04 Foundry Networks, Inc. System architecture for very fast ethernet blade

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5930160A (en) * 1996-06-22 1999-07-27 Texas Instruments Incorporated Multiply accumulate unit for processing a signal and method of operation
US5978414A (en) 1996-07-03 1999-11-02 Matsushita Electric Industrial Co., Ltd. Transmission rate judging unit
EP0963054A1 (en) 1998-05-26 1999-12-08 Globalstar L.P. Communications terminal with hybrid battery/capacitor power supply
US6618591B1 (en) * 1999-10-28 2003-09-09 Nokia Mobile Phones Ltd. Mechanism to benefit from min and max bitrates
US7203508B2 (en) * 2001-06-13 2007-04-10 Ntt Docomo, Inc. Mobile communication systems, mobile communication methods, base stations, mobile stations, and signal transmission methods in the mobile communication systems
US7305492B2 (en) * 2001-07-06 2007-12-04 Juniper Networks, Inc. Content service aggregation system
US7061866B2 (en) * 2002-01-10 2006-06-13 Intel Corporation Metered packet flow for packet switched networks
US20030152087A1 (en) * 2002-02-11 2003-08-14 Shahoumian Troy Alexander Excess-port switch
US7161907B2 (en) * 2002-03-05 2007-01-09 Sun Microsystems, Inc. System and method for dynamic rate flow control
JP3815423B2 (ja) * 2002-11-07 2006-08-30 ソニー株式会社 送信装置及び送信方法、受信装置及び受信方法、パルス位置検出方法、並びにトラッキング方法
US20040267570A1 (en) * 2003-04-23 2004-12-30 Becker Robert E. Method for information and management system for health care
KR20060052924A (ko) 2003-07-30 2006-05-19 코닌클리즈케 필립스 일렉트로닉스 엔.브이. 데이터 처리 시스템 및 데이터 처리 방법
US7564785B2 (en) * 2004-05-21 2009-07-21 Intel Corporation Dynamic flow control support
CN101010900A (zh) 2004-08-30 2007-08-01 皇家飞利浦电子股份有限公司 在无线网络中用于链路自适应的方法和系统
CN100499389C (zh) 2004-12-29 2009-06-10 华为技术有限公司 一种主备单板之间传输数据的方法
US20060190484A1 (en) * 2005-02-18 2006-08-24 Cromer Daryl C System and method for client reassignment in blade server
US20060206602A1 (en) * 2005-03-14 2006-09-14 International Business Machines Corporation Network switch link failover in a redundant switch configuration
CN100502322C (zh) * 2005-04-25 2009-06-17 华为技术有限公司 实现流控测试的装置及方法
JP4168059B2 (ja) * 2006-04-10 2008-10-22 株式会社日立コミュニケーションテクノロジー Ponシステムおよび局側装置
JP4669454B2 (ja) 2006-08-28 2011-04-13 日本電信電話株式会社 データフレーム中継装置、およびデータ通信網における輻輳制御方法
US8284665B1 (en) * 2008-01-28 2012-10-09 Juniper Networks, Inc. Flow-based rate limiting

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6445704B1 (en) * 1997-05-02 2002-09-03 Cisco Technology, Inc. Method and apparatus for virtualizing a locally initiated outbound connection from a connection manager
US7266117B1 (en) * 2002-05-06 2007-09-04 Foundry Networks, Inc. System architecture for very fast ethernet blade
CN1459955A (zh) * 2002-05-23 2003-12-03 威盛电子股份有限公司 网络传输速率的控制方法及使用该方法的以太网交换机
CN1972315A (zh) * 2006-11-28 2007-05-30 曙光信息产业(北京)有限公司 一种应用于刀片服务器usb虚拟媒体系统

Also Published As

Publication number Publication date
JP2011519225A (ja) 2011-06-30
EP2272214B1 (en) 2016-06-01
EP2272214A4 (en) 2013-09-11
KR101408390B1 (ko) 2014-06-17
WO2009134219A1 (en) 2009-11-05
EP2272214A1 (en) 2011-01-12
US20110029669A1 (en) 2011-02-03
CN102017533A (zh) 2011-04-13
US8903989B2 (en) 2014-12-02
EP2272214B8 (en) 2016-08-10
JP5400135B2 (ja) 2014-01-29
KR20100136527A (ko) 2010-12-28

Similar Documents

Publication Publication Date Title
CN102017533B (zh) 在多服务器箱体中的固定速度背板连接上的可调节服务器传输速率
US6988161B2 (en) Multiple port allocation and configurations for different port operation modes on a host
US7190667B2 (en) Link level packet flow control mechanism
EP1399829B1 (en) End node partitioning using local identifiers
US6760783B1 (en) Virtual interrupt mechanism
US9100349B2 (en) User selectable multiple protocol network interface device
US6912604B1 (en) Host channel adapter having partitioned link layer services for an infiniband server system
US6981025B1 (en) Method and apparatus for ensuring scalable mastership during initialization of a system area network
US8514877B2 (en) Method and system for a plurality of physical layers for network connection
US7461195B1 (en) Method and system for dynamically adjusting data transfer rates in PCI-express devices
EP1280302A2 (en) Multiple virtual channels for use in network devices
US20020071450A1 (en) Host-fabric adapter having bandwidth-optimizing, area-minimal, vertical sliced memory architecture and method of connecting a host system to a channel-based switched fabric in a data network
KR20190074962A (ko) 스토리지 장치용 로컬 매니지먼트 콘솔
KR20010024291A (ko) 전이중 통신 프로세서
WO2004095747A1 (en) Apparatus and method for enabling intelligent fibre-channel connectivity over transport
GB2532054A (en) NC-SI port controller
US7352701B1 (en) Buffer to buffer credit recovery for in-line fibre channel credit extension devices
WO2015148895A1 (en) Low latency serial data encoding scheme for enhanced burst error immunity
US8441929B1 (en) Method and system for monitoring a network link in network systems
US8089971B1 (en) Method and system for transmitting flow control information
US10505855B2 (en) Use of primitives to notify of slow drain condition
US6834307B2 (en) Event-based application layer switching for high-speed protocol processing
US6904545B1 (en) Fault tolerant computing node having multiple host channel adapters
US7613821B1 (en) Arrangement for reducing application execution based on a determined lack of flow control credits for a network channel
US7907546B1 (en) Method and system for port negotiation

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20170116

Address after: American Texas

Patentee after: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP

Address before: American Texas

Patentee before: Hewlett Packard Development Co.