CN1674485A - 动态提供计算机系统资源的方法和系统 - Google Patents
动态提供计算机系统资源的方法和系统 Download PDFInfo
- Publication number
- CN1674485A CN1674485A CN200510055773.0A CN200510055773A CN1674485A CN 1674485 A CN1674485 A CN 1674485A CN 200510055773 A CN200510055773 A CN 200510055773A CN 1674485 A CN1674485 A CN 1674485A
- Authority
- CN
- China
- Prior art keywords
- backlog queue
- connection
- queue size
- recording medium
- backlog
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 69
- 230000006854 communication Effects 0.000 claims abstract description 81
- 238000004891 communication Methods 0.000 claims abstract description 79
- 238000012544 monitoring process Methods 0.000 claims abstract description 23
- 238000012545 processing Methods 0.000 claims description 38
- 230000008569 process Effects 0.000 claims description 23
- 230000008859 change Effects 0.000 claims description 21
- 238000004590 computer program Methods 0.000 claims description 11
- 238000004519 manufacturing process Methods 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 9
- 230000007423 decrease Effects 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 2
- 230000003247 decreasing effect Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 241001673391 Entandrophragma candollei Species 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
- H04L49/9063—Intermediate storage in different physical parts of a node or terminal
- H04L49/9078—Intermediate storage in different physical parts of a node or terminal using an external memory or storage device
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0806—Configuration setting for initial configuration or provisioning, e.g. plug-and-play
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0823—Errors, e.g. transmission errors
- H04L43/0829—Packet loss
- H04L43/0841—Round trip packet loss
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了用于动态提供服务器资源的方法、系统和产品。更具体地说,本发明公开了这样的用于动态提供计算机系统资源的方法、系统和产品,其包括监视在数据通信协议中运行的数据通信端口的连接性能参数,所述数据通信端口具有连接积压队列,所述连接积压队列具有连接积压队列大小;以及根据所监视的连接性能参数改变连接积压队列大小而不中断数据通信端口的运行且不需用户介入。在本发明的典型实施例中,监视连接性能参数的步骤包括接收连接请求并确定连接积压队列已满,并且根据所监视的连接性能参数改变连接积压队列大小的步骤包括增加连接积压队列大小。
Description
技术领域
本发明的领域涉及数据处理,尤其涉及用于动态提供计算机系统资源的方法、系统和产品。
背景技术
现有的数据通信环境不能动态提供计算机系统资源,以适应当前服务器负载条件的改变。面向连接的数据通信服务器实现一侦听或连接积压队列(backlog queue)最大大小,以管理数据通信连接。最大大小通常是硬编码的限制。例如,在AIX中,最大连接积压队列大小是1024。该最大限制与实际的当前服务器负载没有关系。面向连接的端口可在启动时设置小于该系统最大值的队列大小,但是该队列大小除非重新启动端口不能改变。一旦具有该最大值的队列被连接请求填满,随后的连接请求在它们到达时将被丢弃,从而导致来自请求连接的客户机的再传输。大多数客户机系统将在再传输连接请求之前等待大约几秒时间,从而导致用户可觉察的延迟。此外,该再传输增加了网络堵塞并可引起服务器过载。
对于限制连接的最大积压队列大小的可选替换是具有一可调最大值。可调最大值仍然有缺陷。可调最大连接积压队列大小是强加在系统中的所有端口上的全系统范围的限制。如果该参数被设定为大值,则在系统上提供的网络服务的数量增长时将耗尽系统资源。尽管可以基于系统资源初始地设置端口的初始积压队列大小,但是它不能动态地适应改变的服务器负载条件。例如,在系统具有轻负载且资源容易获得的情况下,特定的端口可能不能处理到达的连接,因为最大积压大小限制了队列大小。另一方面,系统可能具有重负载,在这种情况下,大常数积压值可能使系统耗尽其资源。
发明内容
本发明提供了用于动态提供服务器资源的方法、系统和产品,所述动态提供是基于当前数据通信负载条件和其他所监视的连接性能参数,从而服务器可以动态改变连接积压队列大小而不影响端口运行且不需用户介入。更具体地说,本发明提供了用于动态提供计算机系统资源的方法、系统和产品,其包括检测在数据通信协议中运行的数据通信端口的连接性能参数,所述数据通信端口具有连接积压队列,所述连接积压队列具有连接积压队列大小;以及根据监视的连接性能参数改变连接积压队列大小而不中断数据通信端口的运行且不需用户介入。在本发明的典型实施例中,监视连接性能参数的步骤包括接收连接请求并确定连接积压队列是否已满,并且根据所监视的连接性能参数改变连接积压队列大小的步骤包括增加连接积压队列大小。
在本发明的典型实施例中,监视连接性能参数的步骤包括监视连接积压队列负载,以及改变连接积压队列大小的步骤包括根据连接积压队列负载改变积压队列大小。在许多实施例中,监视连接性能参数的步骤包括计算用于连接握手的一部分的平均往返时间并计算连接请求之间的平均到达间隔,以及改变连接积压队列大小的步骤包括如果平均到达间隔小于平均往返时间则增加连接积压队列大小,并且如果平均到达间隔大于平均往返时间则减小连接积压队列大小。
在本发明的典型实施例中,监视连接性能参数的步骤包括计算连接积压队列的带宽延迟乘积(bandwidth delay product)并比较带宽延迟乘积和队列大小;以及改变连接积压队列大小的步骤包括如果连接积压队列大小小于带宽延迟乘积,则将积压队列大小改变到至少为带宽延迟乘积。在本发明的许多实施例中,监视连接性能参数的步骤包括测量接受处理时间,以及改变连接积压队列大小的步骤包括根据接受处理时间改变积压队列大小。在一些实施例中,监视连接性能参数的步骤包括计算平均接受处理时间并计算连接积压队列的平均连接请求到达间隔,以及改变连接积压队列大小的步骤包括如果接受处理时间大于连接请求到达间隔,则增加连接积压队列大小。
通过以下对附图所示的本发明示例性实施例的更具体的描述,本发明的上述和其他目标、特征和优点将会清楚起来,在附图中,相同的标号一般代表本发明各示例性实施例的相似部件。
附图说明
图1示出了在其中可实现本发明的各种实施例的数据处理系统的体系结构。
图2示出了用于在通过网络连接的两个设备之间的数据通信的示例性协议栈的框图。
图3示出了自动计算机器的框图,在该机器中可根据本发明的实施例动态提供计算机系统资源。
图4示出了用于动态提供计算机系统资源的示例性方法的流程图。
图5示出了动态提供计算机系统资源的另一个示例性方法的流程图。
图6示出了动态提供计算机系统资源的再一个示例性方法的流程图。
图7示出了动态提供计算机系统资源的再一个示例性方法的流程图。
图8示出了说明TCP连接握手以建立客户机和服务器之间的连接的调用序列图。
图9示出了动态提供计算机系统资源的另一个示例性方法的流程图。
图10示出了动态提供计算机系统资源的再一个示例性方法的流程图。
具体实施方式
导言
在本说明书中,本发明在很大程度上是根据用于动态提供计算机系统资源的方法来描述的。然而,本领域的技术人员将认识到任何这样的计算机系统也很好地落入了本发明的范围,该计算机系统包括用于根据所公开的方法运行的适合的编程装置。适合的编程装置包括用于指示计算机执行本发明的方法步骤的任何装置,包括例如由连接到计算机存储器的处理单元和算术逻辑电路构成的系统,该系统具有在计算机存储器中存储的能力,该计算机存储器包括这样的电子电路,该电子电路被设置成存储数据和程序指令,即将由处理单元执行的本发明的方法步骤。
本发明也可以体现在如磁盘或其他记录介质的计算机程序产品中,以便与任何适合的数据处理系统一起使用。可通过使用任何用于机器可读信息的记录介质,包括磁介质、光介质或者其他适合的介质,来实现计算机程序产品的实施例。本领域的技术人员将立即认识到任何具有合适编程装置的计算机系统都能够执行体现在程序产品中的根据本发明的方法步骤。本领域的技术人员将立即认识到尽管本说明书中描述的大多数示例性实施例面对在计算机硬件上安装和运行的软件,但是实现为固件或硬件的其他可选实施例也很好地落入了本发明的范围内。
动态提供计算机系统资源
现在参考附图说明用于动态提供计算机系统资源的示例性方法、系统和产品,从图1开始。图1示出了在其中可实现本发明的各种实施例的数据处理系统的结构图。图1的数据处理系统包括多个通过网络101连接的用于数据通信的计算机。网络101可以是用于数据通信的任何网络,例如本领域的技术人员公知的局域网(“LAN”)、广域网(“WAN”)、内联网、互联网、因特网、web、万维网本身、蓝牙微局域网(BluetoothmicroLan)、无线网等。这些网络是介质,用来提供在整个数据处理系统中连接在一起的各种设备和计算机之间的数据通信连接。
在图1的例子中,将几个示例性装置连接到网络101,所述示例性装置包括PDA 112、个人计算机104、移动电话110、膝上型计算机126。通过无线链路116将启用网络的移动电话110连接到网络101,并通过无线链路114将PDA 112连接到网络101。在图1的实例中,通过有线连接122将个人计算机104连接到网络101,并且膝上型计算机126通过无线链路118连接。服务器106通过有线连接123连接。
图1所示构成该体系结构的服务器和其他设备的布置是为了说明,而不是限制。如本领域的技术人员所知道的,根据本发明的各种实施例有用的数据处理系统可包括图1中未示出的附加的服务器、路由器、其他设备和对等体系结构。这种数据处理系统中的网络可以支持许多数据通信协议,例如TCP/IP、HTTP、WAP、HDTP和本领域的技术人员所知道的其他协议。本发明的各种实施例可以在除图1所示的那些之外的各种硬件平台上实现。
通常在运行时,服务器106通过监视在数据通信协议中运行的数据通信端口的连接性能参数,来动态提供计算机系统资源,其中数据通信端口具有连接积压队列124,连接积压队列124具有连接积压队列大小。服务器106接收来自客户机的连接请求,并且确认每个连接请求然后将其置于连接积压队列,直到在服务器和请求客户机之间建立起连接并且该连接被服务器上的应用接受。在TCP中,连接请求以SYN消息的形式到达,该SYN消息作为套接字被记录在SYN-RECD队列中,并且当从请求主机接收到相应的ACK时被移动到“接受”队列。在本说明书中,SYN-RECD队列和“接受”队列一起被称为连接积压队列。
连接队列大小是可以在连接积压队列中存储的连接请求的最大数目。连接积压队列还具有负载特性。连接积压队列负载是当前在队列中等待处理的连接请求的数目。在图1的例子中,示出了连接积压队列大小为10个连接请求,并示出了连接积压队列负载为3个连接请求,从而在连接积压队列124中留下用于7个更多请求的空间。如下面更详细描述的,服务器106还在运行时通过根据所监视的连接性能参数来改变连接积压队列大小而不中断数据通信端口的运行且不需要用户介入,来动态提供计算机系统资源。
参考图2来说明数据通信协议的运行。图2示出了用于在通过网络连接的两个设备之间的数据通信的示例性协议栈的框图。图2的示例性协议栈基于标准开放系统互连(“OSI”)参考模型。图2的示例性协议栈包括堆栈在一些层中的若干协议。图2的示例性协议栈从底部的物理层208开始,该物理层通过设备之间的链路传送非结构化位流。物理层连接可以实现为例如通过调制解调器的有线连接或通过无线通信适配器的无线连接。图2的示例性栈包括链路层206,该链路层传送一段信息通过单个链路。链路层将物理层的位组织成包,并控制在共享链路上的哪一个设备得到每个包。以太网协议是链路层协议的例子。以太网地址是唯一分配到链接的设备上的48位链路层地址。通过链路层协议链接的一组设备通常称为LAN。
图2的栈包括网络层204,该网络层计算通过链路和包交换机的互联网状结构的路径,并通过多个链路将包从源发送到目的地。在网络层中运行的包交换机通常称为“路由器”。图2的栈包括传输层203,该传输层通过在包中放置序列号,在目的地保持包直到全部到达,以及再传输丢失的包,来支持通过网络的一对设备之间的可靠的面向连接的通信流。图2的栈还包括应用层202,使用网络的应用程序驻留在该层中。这种应用程序的例子包括在客户机端的web浏览器和电子邮件客户端以及在服务器端的web服务器和电子邮件服务器。
在这种栈模型中的数据通信212被视为在设备之间,即该实例中的客户机108和服务器106之间逐层发生,在客户机上安装有如浏览器或电子邮件客户端的数据通信应用,该数据通信应用请求在传输层中的服务器106的数据通信连接。在物理层中的设备之间的数据通信被视为只在物理层中的发生,在链路层中的通信被认为只在链路层中在设备之间水平发生,等等。
在栈中的协议中间的垂直通信被视为通过为该目的而提供的应用编程接口(“API”)210来发生。例如作为应用层中的应用程序而运行的浏览器将它的通信视为直接来自和去往网络另一端的另一个设备上它的对应web服务器。浏览器通过对套接字API的调用来执行它的数据通信,套接字API转而可能运行例如传输层中的传输控制协议(“TCP”)客户端。TCP客户端将消息分解为包,为每个包提供一个包括序列号的传输层报头,并通过对网络层的API调用将每个包传送到另一个设备上的它的对应物。网络层可实现例如公知的网际协议(“IP”),该协议为每个包提供一个IP报头并为每个包选择通过网络的通信路径,并通过向下调用到通常实现为用于如网络接口卡或“NIC”的数据通信卡的驱动API的链路层API,来将每个包传输到另一个设备上的它的对应物。当接收数据通信时,反过来执行该过程。每层剥除它的报头并将接收的包向上传送通过协议栈。链路层以上的向上传送通常需要操作系统上下文切换。
大多数面向连接的数据通信是在传输层中实现的,通常是通过使用传输控制协议或TCP。此外,本说明书中的几个例子是根据TCP说明的。然而,应该注意,根据本发明的实施例实现数据通信连接并不以任何方式限于TCP。可以使用其他协议来实现传输层中的连接,并可以在支持面向连接的通信的任何数据通信层和任何数据通信协议中根据本发明的实施例进行面向连接的数据通信。
在图2的实例中,可请求连接的设备称为“客户机”,而可接受连接请求的设备称为“服务器”。在图1的例子中,服务器106被示为服务器,而其他设备,如膝上型计算机126、PDA 112、个人计算机104和移动电话110为客户机。在TCP的通常术语中,设备称为“主机”,客户机称为“外部主机”,而服务器称为“本地主机”。然而,所有这些设备都是计算机,即某种自动计算的机器。为了进一步说明,图3示出了包括计算机134的自动计算的机器的框图,在该机器中可根据本发明的实施例动态提供计算机系统资源。图3的计算机134包括至少一个计算机处理器156或“CPU”以及随机存取存储器168(“RAM”)。在RAM 168中存储有应用程序152。应用程序特别地包括可请求或接受数据通信连接的应用程序,包括浏览器、电子邮件客户端、web服务器和电子邮件服务器。在RAM 168中还存储有操作系统154。根据本发明的实施例在计算机中有用的操作系统包括Unix、Linux、Mircrosoft NTTM以及本领域的技术人员知道的许多其他操作系统。TCP和其他面向连接的数据通信客户端和服务通常在操作系统中得到支持。特别地,本发明的功能性步骤通常是通过主要在操作系统中实现的计算机程序指令来实现的。
图3的计算机134包括通过系统总线160连接到处理器156和计算机的其他部件的计算机存储器166。计算机存储器166可实现为硬盘驱动器170、光盘驱动器172、电可擦除可编程只读存储器空间(所谓的“EEPROM”或“闪速”存储器)174、RAM驱动器(未示出)、或本领域的技术人员知道的任何其他类型的计算机存储器。
图3的示例性计算机134包括通信适配器167,用于实现用于数据通信184的连接,该连接包括通过网络到其他计算机182如主机、服务器和客户机的连接。通信适配器实现用于数据通信的连接的硬件级,通过该硬件级本地设备和远程设备或服务器相互之间通过网络直接发送数据通信。通信适配器的例子包括用于有线拨号连接的调制解调器、用于有线LAN连接的以太网(IEEE 802.3)适配器、以及用于无线LAN连接的802.11b适配器。
图3的示例性计算机包括一个或多个输入/输出接口适配器178。计算机中的输入/输出接口适配器通过例如软件驱动程序和计算机硬件来实现面向用户的输入/输出,用于控制到例如计算机显示屏的显示设备180的输出,以及来自例如键盘和鼠标的用户输入设备181的用户输入。
为了进一步说明,图4示出了用于动态提供计算机系统资源的示例性方法的流程图,该方法包括监测502在数据通信协议203中运行的数据通信端口506的连接性能参数504,其中该数据通信端口具有连接积压队列124,该连接积压队列具有连接积压队列大小。连接性能参数是在建立数据通信连接中的系统性能的任何度量。连接性能参数的例子包括往返时间、带宽延迟乘积、连接请求到达间隔(请求速率的倒数)、接受处理时间、以及连接积压队列负载。
数据通信端口由实现有连接的数据通信的数据通信程序使用。每个端口分配有识别端口号。每个服务器具有识别网络地址。端口号和网络地址的结合唯一地识别在网络空间(cyberspace)中任何位置的数据通信进程。与网络地址结合的端口号是套接字的基本数据补足物(complement)。具有客户机和服务器的网络地址和端口号这两者的套接字称为“连接”。在图4的实例中,端口在传输层中运行,但这只是为了说明,而不是为了限制。事实上,这种端口可以在任何支持用于数据通信的连接的协议层中运行。
图4的方法还包括根据所监视的连接性能参数504改变508连接积压队列大小,而不中断数据通信端口506的运行且不需用户介入。根据所监视的连接性能参数改变连接积压队列大小而不中断数据通信端口的运行且不需用户介入的能力,有利地提供了用于动态、随要求地提供计算机系统上的资源的机制。尽管图4的系统示出了只具有一个端口,本领域的技术人员将理解许多这样的系统支持多个这样的端口。图4的方法还提供了使用每端口的积压大小而不强制使用全系统范围的积压大小的灵活性,因为一些端口可能比其他端口使用得更多。服务器106可通过动态增加对该端口的积压限制,来动态提供资源,特别是计算机存储器,这使它可以优雅地管理过载条件,并减少丢弃的连接,同时保持对系统资源的注意。
图5示出了用于动态提供计算机系统资源的另一个示例性方法的流程图,在该方法中监视连接性能参数的步骤包括接收602连接请求604并确定606连接积压队列124是否已满。如果连接请求积压队列未满619,则以通常的方式将到达的连接请求置于连接积压队列。在TCP中,如上述,通过创建套接字并将该套接字置于用于一端口的连接积压队列,来进行连接请求的入队。
在图5的方法中,根据所监视的连接性能参数改变连接积压队列大小的步骤包括增加610连接积压队列大小。如果连接请求积压队列已满614,则处理继续确定608是否能够增加连接请求积压队列大小。通过比较连接积压队列的当前大小和限定在系统上允许的最大队列大小的系统参数609,来执行该确定过程608,并且该确定过程比较在系统中运行的所有端口的所有连接积压队列的总大小和限定用于连接请求积压队列的最大存储器分配量的系统参数612。
如果在用于所有队列的限制内可以获得存储器并且当前队列的当前大小小于系统最大值,那么该过程确定它可以616增加连接积压队列的大小并执行它610。然后将连接请求入队611以等待连接和接受。注意在现有技术中,一旦确定连接请求积压队列已满614,将丢弃连接请求。在图5的方法中,只有当确定618根据系统限制不可能增加队列大小时,才丢弃615连接请求。
图6示出了用于动态提供计算机系统资源的再一个示例性方法的流程图,在该方法中监视连接性能参数的步骤包括监视702连接积压队列负载704。可通过使一进程或线程周期性地计数连接积压队列中的连接请求的数量,来进行对连接积压队列负载704的监视702。可以将该计数与用于该计数的时间戳一起存储在表中,从而创建一负载简档。从该简档可以计算负载平均值和运行平均值。系统可以被设置为具有负载阈值710、714,用于确定是否增加或减小连接积压队列大小。系统可以被设置为具有用于确定如何根据负载增加或减小连接积压队列大小的规则712。
在图6的方法中,改变连接积压队列大小的步骤包括根据连接积压队列负载704来改变积压队列大小。在图6的方法中,如果队列负载704的度量大于一增加阈值710,则增加720连接积压队列大小。如果队列负载704的度量小于一减小阈值714,则减小722连接积压队列大小。图6的方法还可以根据连接队列调整规则712运行。连接队列调整规则的一个例子是:
·规则1:如果队列大小比平均负载大或小超过10%,则将队列大小改变到平均负载的125%。
考虑这样的实例,其中连接积压队列具有50个连接请求的队列大小和48个连接请求的运行平均负载。该队列偶尔会填满并丢弃连接请求。根据上述规则1运行,图6的方法将队列大小增加到60,因此降低了丢弃连接请求的风险。在具有50的队列大小和10的运行平均负载的实例中,根据规则1运行的图6的方法将队列大小减小到13,释放存储器以便由其他进程使用,从而提高了计算机资源分配的效率。
图7示出了用于动态提供计算机系统资源的再一个示例性方法的流程图,在该方法中监视连接性能参数的步骤包括计算806用于连接握手的一部分的平均往返时间,并计算808连接请求之间的平均到达间隔。在该例子中,通过监视802往返时间,测量它们,并将它们存储在通过其计算运行平均值的简档中,来进行对平均往返时间的计算。在该例子中,通过监视804请求到达时间,并将它们存储在通过其计算运行平均值的简档中,来进行对连接请求之间的平均到达间隔的计算。在图7的方法中,通过如果平均到达间隔小于平均往返时间则增加812连接积压队列大小,并且如果平均到达间隔大于平均往返时间则减小814连接积压队列大小,来进行对连接积压队列大小的改变。
参考图8进一步说明往返时间。图8示出了说明TCP连接握手910以建立客户机108和服务器106之间的连接的调用序列图。使用TCP是为了说明简便,但是本发明并不限于使用TCP。可以使用支持面向连接的数据通信的任何协议。在TCP中,服务器106接收到的连接请求是TCP SYN消息902,这样称谓是因为通过在TCP消息报头中设置SYN(“同步”)标志来将其标识为连接请求。
当接收到SYN消息时,在服务器操作系统中的TCP服务将SYN-ACK消息904传输回客户机108,在消息报头中的SYN标志表示要求客户机继续建立连接的请求,而ACK确认接收到客户机的SYN 902。然后服务器中的TCP服务创建套接字以保持连接数据,即客户机端和服务器端数据通信应用的网络地址和端口号,并将套接字置于连接积压队列。套接字在连接积压队列中等待直到收到来自客户机的返回ACK 906,且服务器端中的端口接受该连接。
建立连接所需的消息的序列是“连接握手”。消息902、904、906的SYN/SYN-ACK/ACK序列是连接握手910的例子。在TCP服务发送SYN-ACK 904和接收到客户机的ACK 906之间的时间间隔908是用于连接握手的一部分的往返时间。
图9示出了用于动态提供计算机系统资源的另一个示例性方法的流程图。在图9的方法中,监视连接性能参数的步骤包括计算930连接积压队列124的带宽延迟乘积932,并比较934带宽延迟乘积932和队列大小。带宽延迟乘积的带宽部分是该网络数据通信端口的数据通信速度的度量。可以从已知的网络拓扑结构测量、计算或配置带宽。在已知拓扑结构的网络中,例如,其中在全速率T1线上实现数据通信,带宽是1.544Mbps或193,000字节/秒。带宽延迟乘积的延迟部分取为往返时间的一半。在具有T1线的示例性网络中,对于其连接积压队列以100毫秒的平均往返时间运行的端口,延迟是50毫秒,即0.05秒。对于该连接队列,带宽延迟乘积是193,000×0.05字节=9650字节。如果用于该端口的数据通信协议中的每个数据通信包的大小是1千字节,那么10个连接请求可填入该信道,并且容纳可填入该信道的所有连接请求所需的连接积压队列大小是10。当然,表示连接积压队列中的连接请求的数据结构的大小不太可能与数据通信包的大小一样。
在图9的方法中,改变连接积压队列大小的步骤包括如果连接积压队列大小小于带宽延迟乘积938,则将积压队列大小改变946到至少为带宽延迟乘积932。如果连接积压队列大小小于带宽延迟乘积938,则将积压队列大小改变946到至少为带宽延迟乘积932,这有利地降低了丢弃连接请求的风险,因为连接积压队列原则上足够大以包含可填入其端口侦听的数据通信信道的所有数据。
在图9的方法中,如果连接积压队列大小小于带宽延迟乘积938,则根据所监视的连接性能参数改变连接积压队列大小的处理继续确定935是否可增加连接请求积压队列大小。该确定过程935通过比较连接积压队列的当前大小和限定在系统上允许的最大队列大小的系统参数609来进行,并且该确定过程比较用于在系统中运行的所有端口的所有连接积压队列的总大小和限定用于连接请求积压队列的最大存储器分配量的系统参数612。如果在用于所有队列的限制内可以获得存储器并且当前队列的当前大小小于系统最大值,则该过程确定它可以944增加连接积压队列的大小并执行它946。
图10示出了用于动态提供计算机系统资源的再一个示例性方法的流程图,在该方法中通过测量950接受处理时间并监视804连接请求到达时间来进行对连接性能参数的监视。在图10的方法中,通过根据接受处理时间和连接请求到达时间改变958积压队列大小,来进行对连接积压队列大小的改变。更具体地说,在图10的方法中,通过计算952平均接受处理时间并计算连接积压队列124的平均连接请求到达间隔808,来进行对连接性能参数的监视。在图10的方法中,改变连接积压队列大小的步骤包括如果接受处理时间大于连接请求到达间隔,则增加958连接积压队列大小。
连接请求到达间隔是连接请求速率的倒数,该速率是连接请求到达并被置于连接积压队列的速率。连接积压队列的平均负载取决于服务器和客户机之间的平均往返时间,并也取决于连接请求速率,因为连接请求在队列中停留的时间等于往返延迟加上接受处理时间。长的往返延迟和高的请求速率增加了连接积压队列的长度。连接积压队列负载也取决于服务器进程多快地调用accept(),即它为请求服务的速率。如果服务器在它的最大容量下运行,则它不能足够快地调用accept()以跟上连接请求速率,并且队列负载增加。
下面是一示例性服务器进程的伪代码实例,该服务器进程打开端口上的套接字并接受来自连接积压队列的连接:
int listenSocket,connectSocket;
int QUEUE_SIZE=5;
if((listenSocket=socket(...))<0)
err_sys(“socket error”);
if(bind(listenSocket,...)<0)
err_sys(“bind error”);
if(listen(listenSocket,QUEUE_SIZE)<0)
err_sys(“listen error”);
for(;;){
connectSocket=accept(connectSocket,...);/*blocks*/
if(connectSocket<0)
<!-- SIPO <DP n="13"> -->
<dp n="d13"/>
err_sys(“accept error”);
if(fork()==0){
/***child processing***/
close(listenSocket);
doit(connectSocket);
exit(0);
}
close(connectSocket);
}
当接收到并接受连接请求时,进程派生,子进程为该连接服务,而父进程等待另一个连接请求。由accept()返回的connectSocket描述符是指一完整的TCP关联、一“连接”、一包含用于该连接的客户机和服务器两者的完整的网络地址和端口号的数据结构。另一方面,传递给accept()的listenSocket自变量只具有服务器进程的网络地址和端口号。此时客户机网络地址和客户机端口号未知,并且直到accept()返回都是这样。这允许初始的进程即父进程使用listenSocket来accept()另一个连接而不必建立另一个套接字描述符。该服务器,如大多数面向连接的服务器一样,是并发处理器,因此作为accept()系统调用的一部分自动建立新的套接字(‘connectSocket’)。在TCP系统中,connectSocket通常是表示连接积压队列上的下一个连接请求的套接字。这样,系统继续使用相同的套接字,用于该端口(‘listenSocket’)上的所有侦听,而使用来自连接积压队列的套接字,作为连接以用于服务器处理。
接受处理时间是调用accept()之间的时间间隔。如果在连接积压队列上没有就绪的连接的套接字,accept()阻塞并等待一个连接的套接字。因此,如果fork()和close()处理很快,接受处理速率就是请求速率。然而,fork()和close()是CPU限制的系统调用。如果fork()和close()进程足够慢以将接受处理速率减小到请求速率以下,连接积压队列负载将增加。因此图10的方法有利地包括比较954接受处理时间和到达间隔(请求速率的倒数)。如果接受处理时间大于956到达间隔,则图10的方法包括增加958连接积压队列大小。
通过上述说明应理解只要不脱离本发明的真正精神,可以对本发明的各种实施例进行修改和改变。本说明书的说明只是为了说明目的而不应在限制的意义上被理解。本发明的范围只由下述权利要求的语言来限制。
Claims (21)
1.一种动态提供计算机系统资源的方法,该方法包括:
监视在数据通信协议中运行的数据通信端口的连接性能参数,所述数据通信端口具有连接积压队列,所述连接积压队列具有连接积压队列大小;以及
根据所监视的连接性能参数改变连接积压队列大小,而不中断数据通信端口的运行且不需用户介入。
2.根据权利要求1的方法,其中:
监视连接性能参数的所述步骤还包括接收连接请求并确定连接积压队列已满;以及
根据所监视的连接性能参数改变连接积压队列大小的所述步骤还包括增加连接积压队列大小。
3.根据权利要求1的方法,其中:
监视连接性能参数的所述步骤还包括监视连接积压队列负载;以及
改变连接积压队列大小的所述步骤还包括根据所述连接积压队列负载改变所述积压队列大小。
4.根据权利要求1的方法,其中:
监视连接性能参数的所述步骤还包括计算用于连接握手的一部分的平均往返时间并计算连接请求之间的平均到达间隔;以及
改变连接积压队列大小的所述步骤还包括如果所述平均到达间隔小于所述平均往返时间则增加所述连接积压队列大小,并且如果所述平均到达间隔大于所述平均往返时间则减小所述连接积压队列大小。
5.根据权利要求1的方法,其中:
监视连接性能参数的所述步骤还包括计算连接积压队列的带宽延迟乘积并比较所述带宽延迟乘积和所述队列大小;以及
改变连接积压队列大小的所述步骤还包括如果所述连接积压队列大小小于所述带宽延迟乘积,则将所述积压队列大小改变到至少为所述带宽延迟乘积。
6.根据权利要求1的方法,其中:
监视连接性能参数的所述步骤还包括测量接受处理时间;以及
改变连接积压队列大小的所述步骤还包括根据所述接受处理时间改变所述积压队列大小。
7.根据权利要求1的方法,其中:
监视连接性能参数的所述步骤还包括计算平均接受处理时间并计算连接积压队列的平均连接请求到达间隔;以及
改变连接积压队列大小的所述步骤还包括如果所述接受处理时间大于所述连接请求到达间隔,则增加所述连接积压队列大小。
8.一种用于动态提供计算机系统资源的系统,该系统包括:
用于监视在数据通信协议中运行的数据通信端口的连接性能参数的装置,所述数据通信端口具有连接积压队列,所述连接积压队列具有连接积压队列大小;以及
用于根据所监视的连接性能参数改变连接积压队列大小而不中断数据通信端口的运行且不需用户介入的装置。
9.根据权利要求8的系统,其中:
用于监视连接性能参数的所述装置还包括用于接收连接请求的装置和用于确定连接积压队列已满的装置;以及
用于根据所监视的连接性能参数改变连接积压队列大小的所述装置还包括用于增加连接积压队列大小的装置。
10.根据权利要求8的系统,其中:
用于监视连接性能参数的所述装置还包括用于监视连接积压队列负载的装置;以及
用于改变连接积压队列大小的所述装置还包括用于根据所述连接积压队列负载改变所述积压队列大小的装置。
11.根据权利要求8的系统,其中:
用于监视连接性能参数的所述装置还包括用于计算用于连接握手的一部分的平均往返时间的装置和用于计算连接请求之间的平均到达间隔的装置;以及
用于改变连接积压队列大小的所述装置还包括用于增加所述连接积压队列大小的装置,和用于减小所述连接积压队列大小的装置。
12.根据权利要求8的系统,其中:
用于监视连接性能参数的所述装置还包括用于计算连接积压队列的带宽延迟乘积的装置和用于比较所述带宽延迟乘积和所述队列大小的装置;以及
用于改变连接积压队列大小的所述装置还包括用于将所述积压队列大小改变到至少为所述带宽延迟乘积的装置。
13.根据权利要求8的系统,其中:
用于监视连接性能参数的所述装置还包括用于测量接受处理时间的装置;以及
用于改变连接积压队列大小的所述装置还包括用于根据所述接受处理时间改变所述积压队列大小的装置。
14.根据权利要求8的系统,其中:
用于监视连接性能参数的所述装置还包括用于计算平均接受处理时间的装置和用于计算连接积压队列的平均连接请求到达间隔的装置;以及
用于改变连接积压队列大小的所述装置还包括用于增加所述连接积压队列大小的装置。
15.一种用于动态提供计算机产品资源的计算机程序产品,该计算机程序产品包括:
记录介质;
在所述记录介质上记录的用于监视在数据通信协议中运行的数据通信端口的连接性能参数的装置,所述数据通信端口具有连接积压队列,所述连接积压队列具有连接积压队列大小;以及
在所述记录介质上记录的用于根据所监视的连接性能参数改变连接积压队列大小而不中断数据通信端口的运行且不需用户介入的装置。
16.根据权利要求15的计算机程序产品,其中:
在所述记录介质上记录的用于监视连接性能参数的所述装置还包括在所述记录介质上记录的用于接收连接请求的装置和在所述记录介质上记录的用于确定连接积压队列已满的装置;以及
在所述记录介质上记录的用于根据所监视的连接性能参数改变连接积压队列大小的所述装置还包括在所述记录介质上记录的用于增加连接积压队列大小的装置。
17.根据权利要求15的计算机程序产品,其中:
在所述记录介质上记录的用于监视连接性能参数的所述装置还包括在所述记录介质上记录的用于监视连接积压队列负载的装置;以及
在所述记录介质上记录的用于改变连接积压队列大小的所述装置还包括在所述记录介质上记录的用于根据所述连接积压队列负载改变所述积压队列大小的装置。
18.根据权利要求15的计算机程序产品,其中:
在所述记录介质上记录的用于监视连接性能参数的所述装置还包括:
在所述记录介质上记录的用于计算用于连接握手的一部分的平均往返时间的装置;和
在所述记录介质上记录的用于计算连接请求之间的平均到达间隔的装置;以及
在所述记录介质上记录的用于改变连接积压队列大小的所述装置还包括:
在所述记录介质上记录的用于增加所述连接积压队列大小的装置;和
在所述记录介质上记录的用于减小所述连接积压队列大小的装置。
19.根据权利要求15的计算机程序产品,其中:
在所述记录介质上记录的用于监视连接性能参数的所述装置还包括在所述记录介质上记录的用于计算连接积压队列的带宽延迟乘积的装置,和在所述记录介质上记录的用于比较所述带宽延迟乘积和所述队列大小的装置;以及
在所述记录介质上记录的用于改变连接积压队列大小的所述装置还包括在所述记录介质上记录的用于将所述积压队列大小改变到至少为所述带宽延迟乘积的装置。
20.根据权利要求15的计算机程序产品,其中:
在所述记录介质上记录的用于监视连接性能参数的所述装置还包括在所述记录介质上记录的用于测量接受处理时间的装置;以及
在所述记录介质上记录的用于改变连接积压队列大小的所述装置还包括在所述记录介质上记录的用于根据所述接受处理时间改变所述积压队列大小的装置。
21.根据权利要求15的计算机程序产品,其中:
在所述记录介质上记录的用于监视连接性能参数的所述装置还包括在所述记录介质上记录的用于计算平均接受处理时间的装置,和在所述记录介质上记录的用于计算连接积压队列的平均连接请求到达间隔的装置;以及
在所述记录介质上记录的用于改变连接积压队列大小的所述装置还包括在所述记录介质上记录的用于增加所述连接积压队列大小的装置。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US10/809,591 | 2004-03-25 | ||
| US10/809,591 US20050213507A1 (en) | 2004-03-25 | 2004-03-25 | Dynamically provisioning computer system resources |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| CN1674485A true CN1674485A (zh) | 2005-09-28 |
Family
ID=34989698
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN200510055773.0A Pending CN1674485A (zh) | 2004-03-25 | 2005-03-21 | 动态提供计算机系统资源的方法和系统 |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US20050213507A1 (zh) |
| CN (1) | CN1674485A (zh) |
| TW (1) | TW200603568A (zh) |
Cited By (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101420341B (zh) * | 2008-12-08 | 2011-01-05 | 福建星网锐捷网络有限公司 | 嵌入式系统的处理器性能测试方法和装置 |
| CN105516024A (zh) * | 2014-12-31 | 2016-04-20 | 哈尔滨安天科技股份有限公司 | 一种基于队列的任务流量监控方法及系统 |
| CN108885561A (zh) * | 2016-03-04 | 2018-11-23 | 谷歌有限责任公司 | 计算机处理的资源调配 |
| CN109101349A (zh) * | 2018-08-15 | 2018-12-28 | 无锡江南计算技术研究所 | 一种动静结合的多策略通信支撑方法 |
| CN109639340A (zh) * | 2018-12-11 | 2019-04-16 | 成都天奥信息科技有限公司 | 一种适用于卫星链路的tcp加速方法 |
| CN109729119A (zh) * | 2017-10-30 | 2019-05-07 | 中兴通讯股份有限公司 | 一种协调数据同步数据的方法、装置、设备及存储介质 |
| CN110019944A (zh) * | 2017-12-21 | 2019-07-16 | 飞狐信息技术(天津)有限公司 | 一种视频的推荐方法及系统 |
| CN110300026A (zh) * | 2019-06-28 | 2019-10-01 | 北京金山云网络技术有限公司 | 一种网络连接故障处理方法及装置 |
Families Citing this family (26)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8782654B2 (en) | 2004-03-13 | 2014-07-15 | Adaptive Computing Enterprises, Inc. | Co-allocating a reservation spanning different compute resources types |
| WO2005089240A2 (en) | 2004-03-13 | 2005-09-29 | Cluster Resources, Inc. | System and method for providing multi-resource management support in a compute environment |
| ES2469541T3 (es) * | 2004-04-19 | 2014-06-18 | Telecom Italia S.P.A. | Procedimiento y sistema para la gestión de recursos en redes de comunicación, una red relacionada y un producto de programa inform�tico para el mismo |
| US20070266388A1 (en) | 2004-06-18 | 2007-11-15 | Cluster Resources, Inc. | System and method for providing advanced reservations in a compute environment |
| US8176490B1 (en) | 2004-08-20 | 2012-05-08 | Adaptive Computing Enterprises, Inc. | System and method of interfacing a workload manager and scheduler with an identity manager |
| WO2006053093A2 (en) | 2004-11-08 | 2006-05-18 | Cluster Resources, Inc. | System and method of providing system jobs within a compute environment |
| US8631130B2 (en) | 2005-03-16 | 2014-01-14 | Adaptive Computing Enterprises, Inc. | Reserving resources in an on-demand compute environment from a local compute environment |
| US8863143B2 (en) | 2006-03-16 | 2014-10-14 | Adaptive Computing Enterprises, Inc. | System and method for managing a hybrid compute environment |
| US20060212581A1 (en) * | 2005-03-15 | 2006-09-21 | International Business Machines Corporation | Web server HTTP service overload handler |
| US9231886B2 (en) | 2005-03-16 | 2016-01-05 | Adaptive Computing Enterprises, Inc. | Simple integration of an on-demand compute environment |
| US9015324B2 (en) | 2005-03-16 | 2015-04-21 | Adaptive Computing Enterprises, Inc. | System and method of brokering cloud computing resources |
| CA2603577A1 (en) | 2005-04-07 | 2006-10-12 | Cluster Resources, Inc. | On-demand access to compute resources |
| US8782120B2 (en) | 2005-04-07 | 2014-07-15 | Adaptive Computing Enterprises, Inc. | Elastic management of compute resources between a web server and an on-demand compute environment |
| US7729249B2 (en) | 2007-07-16 | 2010-06-01 | Microsoft Corporation | Systems and methods for improving TCP-friendliness of delay-based congestion control |
| US8041773B2 (en) | 2007-09-24 | 2011-10-18 | The Research Foundation Of State University Of New York | Automatic clustering for self-organizing grids |
| US8593946B2 (en) * | 2008-08-25 | 2013-11-26 | International Business Machines Corporation | Congestion control using application slowdown |
| US10877695B2 (en) | 2009-10-30 | 2020-12-29 | Iii Holdings 2, Llc | Memcached server functionality in a cluster of data processing nodes |
| US11720290B2 (en) | 2009-10-30 | 2023-08-08 | Iii Holdings 2, Llc | Memcached server functionality in a cluster of data processing nodes |
| US20120203824A1 (en) * | 2011-02-07 | 2012-08-09 | Nokia Corporation | Method and apparatus for on-demand client-initiated provisioning |
| US9069617B2 (en) | 2011-09-27 | 2015-06-30 | Oracle International Corporation | System and method for intelligent GUI navigation and property sheets in a traffic director environment |
| US9386128B2 (en) * | 2012-03-23 | 2016-07-05 | Qualcomm Incorporated | Delay based active queue management for uplink traffic in user equipment |
| US8621074B2 (en) * | 2012-04-27 | 2013-12-31 | Xerox Business Services, Llc | Intelligent work load manager |
| US9703638B2 (en) | 2013-12-27 | 2017-07-11 | Oracle International Corporation | System and method for supporting asynchronous invocation in a distributed data grid |
| US9983955B1 (en) * | 2014-12-22 | 2018-05-29 | Amazon Technologies, Inc. | Remote service failure monitoring and protection using throttling |
| US10812389B2 (en) * | 2016-06-30 | 2020-10-20 | Hughes Network Systems, Llc | Optimizing network channel loading |
| US10880217B2 (en) * | 2018-12-24 | 2020-12-29 | EMC IP Holding Company LLC | Host device with multi-path layer configured for detection and resolution of oversubscription conditions |
Family Cites Families (13)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5951644A (en) * | 1996-12-24 | 1999-09-14 | Apple Computer, Inc. | System for predicting and managing network performance by managing and monitoring resourse utilization and connection of network |
| US6469991B1 (en) * | 1997-10-14 | 2002-10-22 | Lucent Technologies Inc. | Method for overload control in a multiple access system for communication networks |
| US6519595B1 (en) * | 1999-03-02 | 2003-02-11 | Nms Communications, Inc. | Admission control, queue management, and shaping/scheduling for flows |
| US6252848B1 (en) * | 1999-03-22 | 2001-06-26 | Pluris, Inc. | System performance in a data network through queue management based on ingress rate monitoring |
| US6647413B1 (en) * | 1999-05-28 | 2003-11-11 | Extreme Networks | Method and apparatus for measuring performance in packet-switched networks |
| US7149664B1 (en) * | 1999-06-02 | 2006-12-12 | Nortel Networks Limited | Method and apparatus for queue modeling |
| US20010049741A1 (en) * | 1999-06-18 | 2001-12-06 | Bryan D. Skene | Method and system for balancing load distribution on a wide area network |
| US6754182B1 (en) * | 1999-10-21 | 2004-06-22 | International Business Machines Corporation | Method and apparatus for policing cell-based traffic |
| US7069313B2 (en) * | 2000-03-14 | 2006-06-27 | Microsoft Corporation | Methods and systems for preventing socket flooding during denial of service attacks |
| US20020138643A1 (en) * | 2000-10-19 | 2002-09-26 | Shin Kang G. | Method and system for controlling network traffic to a network computer |
| US6901593B2 (en) * | 2001-05-08 | 2005-05-31 | Nortel Networks Limited | Active queue management with flow proportional buffering |
| EP1355458B1 (en) * | 2002-04-16 | 2005-09-21 | ROBERT BOSCH GmbH | Method for transmitting data within a communication system |
| US6791995B1 (en) * | 2002-06-13 | 2004-09-14 | Terayon Communications Systems, Inc. | Multichannel, multimode DOCSIS headend receiver |
-
2004
- 2004-03-25 US US10/809,591 patent/US20050213507A1/en not_active Abandoned
-
2005
- 2005-03-10 TW TW094107352A patent/TW200603568A/zh unknown
- 2005-03-21 CN CN200510055773.0A patent/CN1674485A/zh active Pending
Cited By (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101420341B (zh) * | 2008-12-08 | 2011-01-05 | 福建星网锐捷网络有限公司 | 嵌入式系统的处理器性能测试方法和装置 |
| CN105516024A (zh) * | 2014-12-31 | 2016-04-20 | 哈尔滨安天科技股份有限公司 | 一种基于队列的任务流量监控方法及系统 |
| CN105516024B (zh) * | 2014-12-31 | 2019-05-07 | 哈尔滨安天科技股份有限公司 | 一种基于队列的任务流量监控方法及系统 |
| CN108885561A (zh) * | 2016-03-04 | 2018-11-23 | 谷歌有限责任公司 | 计算机处理的资源调配 |
| US12541403B2 (en) | 2016-03-04 | 2026-02-03 | Google Llc | Resource allocation for computer processing |
| CN109729119A (zh) * | 2017-10-30 | 2019-05-07 | 中兴通讯股份有限公司 | 一种协调数据同步数据的方法、装置、设备及存储介质 |
| CN110019944A (zh) * | 2017-12-21 | 2019-07-16 | 飞狐信息技术(天津)有限公司 | 一种视频的推荐方法及系统 |
| CN109101349A (zh) * | 2018-08-15 | 2018-12-28 | 无锡江南计算技术研究所 | 一种动静结合的多策略通信支撑方法 |
| CN109639340A (zh) * | 2018-12-11 | 2019-04-16 | 成都天奥信息科技有限公司 | 一种适用于卫星链路的tcp加速方法 |
| CN109639340B (zh) * | 2018-12-11 | 2021-05-28 | 成都天奥信息科技有限公司 | 一种适用于卫星链路的tcp加速方法 |
| CN110300026A (zh) * | 2019-06-28 | 2019-10-01 | 北京金山云网络技术有限公司 | 一种网络连接故障处理方法及装置 |
| WO2020259551A1 (zh) * | 2019-06-28 | 2020-12-30 | 北京金山云网络技术有限公司 | 一种网络连接故障处理方法及装置 |
Also Published As
| Publication number | Publication date |
|---|---|
| TW200603568A (en) | 2006-01-16 |
| US20050213507A1 (en) | 2005-09-29 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN1674485A (zh) | 动态提供计算机系统资源的方法和系统 | |
| US8402142B2 (en) | System and method for TCP/IP offload independent of bandwidth delay product | |
| US8873385B2 (en) | Incast congestion control in a network | |
| EP1513321B1 (en) | System and method for TCP/IP offload independent of bandwidth delay product | |
| CN1283078C (zh) | 数据流控制方法 | |
| US9985908B2 (en) | Adaptive bandwidth control with defined priorities for different networks | |
| US7839783B2 (en) | Systems and methods of improving performance of transport protocols | |
| US9660912B2 (en) | Control of packet transfer through a multipath session comprising a single congestion window | |
| KR101143172B1 (ko) | 웹 서비스를 위한 신뢰성 있는 메시징 프로토콜을 이용한메시지의 효율적인 전송 | |
| WO2020001192A1 (zh) | 一种数据传输方法、计算设备、网络设备及数据传输系统 | |
| US8072886B2 (en) | Method and system for transmission control protocol (TCP) traffic smoothing | |
| CN106464598A (zh) | 用于基于传输速率梯度的网络拥塞控制的方法和装置 | |
| WO2011000307A1 (en) | Network traffic accelerator | |
| CN1910868A (zh) | 用于控制队列缓冲器的方法及装置 | |
| WO2005006673A1 (ja) | 帯域制御装置 | |
| Lu et al. | Dynamic ECN marking threshold algorithm for TCP congestion control in data center networks | |
| CN106936730A (zh) | 一种报文发送方法、tcp代理以及tcp客户端 | |
| CN114666276A (zh) | 一种发送报文的方法和装置 | |
| CN112532535B (zh) | 一种用于优化网络拥塞的方法和装置 | |
| Ji et al. | {MTP}: Transport for {In-Network} Computing | |
| WO2004021150A2 (en) | System and method for tpc/ip offload independent of bandwidth delay product | |
| CN119166567B (zh) | 用于远程直接存储器访问的设备和方法 | |
| WO2010081321A1 (zh) | 实现上送速率动态联动的方法、装置和系统 | |
| Kheirkhah Sabetghadam | Mmptcp: a novel transport protocol for data centre networks | |
| JP2001195326A (ja) | ファイル転送方式 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| C06 | Publication | ||
| PB01 | Publication | ||
| C10 | Entry into substantive examination | ||
| SE01 | Entry into force of request for substantive examination | ||
| C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
| WD01 | Invention patent application deemed withdrawn after publication |
Open date: 20050928 |