CN103533018B - 基于动态网络条件为tcp代理会话分配缓冲区的方法 - Google Patents

基于动态网络条件为tcp代理会话分配缓冲区的方法 Download PDF

Info

Publication number
CN103533018B
CN103533018B CN201310262856.1A CN201310262856A CN103533018B CN 103533018 B CN103533018 B CN 103533018B CN 201310262856 A CN201310262856 A CN 201310262856A CN 103533018 B CN103533018 B CN 103533018B
Authority
CN
China
Prior art keywords
client
server
capacity
buffer
buffering area
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
CN201310262856.1A
Other languages
English (en)
Other versions
CN103533018A (zh
Inventor
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.)
A10 Networks Inc
Original Assignee
A10 Networks Inc
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 A10 Networks Inc filed Critical A10 Networks Inc
Publication of CN103533018A publication Critical patent/CN103533018A/zh
Application granted granted Critical
Publication of CN103533018B publication Critical patent/CN103533018B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/9005Buffering arrangements using dynamic buffer space allocation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

由服务网关为客户端和服务器之间的TCP代理会话分配缓冲区,包括:监控TCP代理会话的服务器和客户端侧会话的动态网络行为;以及基于所述动态服务器侧网络行为、所述动态客户端侧网络行为、以及对存储缓冲区的容量的加权平均来在所述存储缓冲区中分配服务器侧缓冲区的容量和客户端侧缓冲区的容量。在一个分配方法中,所述网关确定服务器或客户端侧缓冲区的可用容量是否足够用于存储数据分组。如果不足,则基于动态网络行为的测量和所述加权平均来增加所述服务器或客户端侧缓冲区的所分配的容量,并相应地调整所述服务器或客户端侧缓冲区的可用容量。

Description

基于动态网络条件为TCP代理会话分配缓冲区的方法
技术领域
本发明一般涉及数据通信,并且更具体地,涉及服务网关。
背景技术
一段时间以来,诸如是防火墙和服务器负载均衡器的众多服务网关提供了传输控制协议(TCP)代理功能性。TCP代理的典型使用包括网络分析、安全、和由于不对称客户端和服务器条件而引起的话务适配。TCP代理服务器典型地分配固定量的存储缓冲区来处理在客户端设备和服务器之间的TCP代理会话的数据分组缓冲。存储缓冲区用于处理客户端侧会话和服务器侧会话的数据分组缓冲区。在客户端侧会话发送和接收缓冲区、以及服务器侧会话发送和接收缓冲区之间的存储空间分配并不经常考虑性能。通常的分配方法包括在会话发送和接收缓冲区之间等分存储缓冲区,或者在发送和接收缓冲区之间的固定的加权平均,诸如在服务器侧接收缓冲区和客户端侧发送缓冲区之间2比1的比例。
虽然TCP代理在一段时间以来是已知的,但是其还没有以任何显著的方式使用。在缓冲区分配方法和TCP代理会话的性能之间的相关性没有得到很好的理解。现今,广泛使用诸如是HTTP代理、内容过滤应用、高级服务器负载均衡方法的众多服务网关应用。这些应用的性能部分地取决于TCP代理会话缓冲区分配方法的性能。
由于客户端设备和服务器不同的和动态的网络特性,缓冲区空间的预定分配并不能在不同的网络条件上均性能良好。因此,需要基于一个或多个动态网络条件来为TCP代理会话分配缓冲区空间。
发明内容
根据本发明的一个实施例,一种由包括处理器的服务网关为客户端和服务器之间的TCP代理会话分配缓冲区的方法,包括:(a)由处理器监控TCP代理会话的服务器侧会话的动态服务器侧网络行为和该TCP代理会话的客户端侧会话的动态客户端侧网络行为;以及(b)由处理器基于所述动态服务器侧网络行为、所述动态客户端侧网络行为、以及对存储缓冲区的容量的加权平均来在所述存储缓冲区中分配服务器侧缓冲区的容量和客户端侧缓冲区的容量。
在本发明的一个方面中,所述分配(b)包括:(b1)基于所述动态服务器侧网络行为、所述动态客户端侧网络行为、以及对存储缓冲区的容量的加权平均来计算所述服务器侧缓冲区的最大容量和所述客户端侧缓冲区的最大容量;以及(b2)基于所述服务器侧缓冲区的最大容量和所述客户端侧缓冲区的最大容量来分配所述服务器侧缓冲区的容量和所述客户端侧缓冲区的容量。
在本发明的一个方面中,所述分配(b)包括:(b1)从所述服务器接收服务器侧会话数据,或者从所述客户端接收客户端侧会话数据分组;(b2)确定所述服务器侧缓冲区的可用容量是否足够用于存储所述服务器侧会话数据分组,或者确定所述客户端侧缓冲区的可用容量是否足够用于存储所述客户端侧会话数据分组;(b3)响应于确定所述服务器侧缓冲区的可用容量不足够用于存储所述服务器侧会话数据分组,增加所述服务器侧缓冲区的所分配的容量,或者响应于确定所述客户端侧缓冲区的可用容量不足够用于存储所述客户端侧会话数据分组,增加所述客户端侧缓冲区的所分配的容量;以及(b4)根据所述服务器侧缓冲区的所分配的容量的增加来调整所述服务器侧缓冲区的可用容量,或者根据所述客户端侧缓冲区的所分配的容量的增加来调整所述客户端侧缓冲区的可用容量。
在本发明的一个方面中,所述增加(b3)包括:(b3i)响应于确定所述服务器侧缓冲区的可用容量不足够用于存储所述服务器侧会话数据分组,确定所述服务器侧缓冲区的所分配的容量是否小于所述服务器侧缓冲区的最大容量,或者响应于确定所述客户端侧缓冲区的可用容量不足够用于存储所述客户端侧会话数据分组,确定所述客户端侧缓冲区的所分配的容量是否小于所述客户端侧缓冲区的最大容量;以及(b3ii)响应于确定所述服务器侧缓冲区的所分配的容量小于所述服务器侧缓冲区的最大容量,确定在所述服务器侧缓冲区的最大容量以内是否存在足够的存储空间来存储所述服务器侧会话数据分组,或者响应于确定所述客户端侧缓冲区的所分配的容量小于所述客户端侧缓冲区的最大容量,确定所述客户端侧缓冲区的最大容量以内是否存在足够的存储空间来存储所述客户端侧会话数据分组;(b3iii)响应于确定在所述服务器侧缓冲区的最大容量以内存在足够的存储空间来存储所述服务器侧会话数据分组,将所述存储空间分配给所述服务器侧缓冲区并根据所分配的存储空间来调整所述服务器侧缓冲区的可用容量,或者响应于确定在所述客户端侧缓冲区的最大容量以内存在足够的存储空间用于存储所述客户端侧会话数据分组,将所述存储空间分配给所述客户端侧缓冲区并根据所分配的存储空间来调整所述客户端侧缓冲区的可用容量。
在本发明的一个方面中,所述监控(a)和所述计算(b1)包括:(a1)测量服务器侧数据分组往返时间(RTT)和客户端侧数据分组RTT;以及(b1i)使用所述服务器侧数据分组RTT、客户端侧数据分组RTT、以及对所述存储缓冲区的容量的加权平均来计算所述服务器侧缓冲区的最大容量和所述客户端侧缓冲区的最大容量。
在本发明的一个方面中,在计算所述服务器侧缓冲区的最大容量时,使所述存储缓冲区的容量的加权平均偏向于所述服务器,或者其中,在计算所述客户端侧缓冲区的最大容量时,使所述存储缓冲区的容量的加权平均偏向于所述客户端。
在本发明的一个方面中,所述监控(a)进一步包括:(a3)获取所述服务器侧数据分组RTT和所述客户端侧数据分组RTT的新的测量;以及(a4)使用新的服务器侧数据分组RTT、新的客户端侧数据分组RTT、以及对所述存储缓冲区的容量的加权平均来修改所述服务器侧缓冲区的最大容量和所述客户端侧缓冲区的最大容量。
在本发明的一个方面中,所述测量(a1)和所述计算(a2)包括:(a1i)测量所述服务器侧数据分组RTT、所述客户端侧数据分组RTT、服务器侧传输速率、以及客户端侧传输速率;以及(a2i)使用所述服务器侧数据分组RTT、所述客户端侧数据分组RTT、所述服务器侧传输速率、所述客户端侧传输速率、以及对所述存储缓冲区的容量的加权平均来计算所述服务器侧缓冲区的最大容量和所述客户端侧缓冲区的最大容量。
在本发明的一个方面中,所述监控(a)进一步包括:(a3)获取所述服务器侧传输速率和所述客户端侧传输速率的新的测量;以及(a4)使用所述服务器侧数据分组RTT、所述客户端侧数据分组RTT、新的服务器侧传输速率、新的客户端侧传输速率、以及对所述存储缓冲区的容量的加权平均来修改所述服务器侧缓冲区的最大容量和所述客户端侧缓冲区的最大容量。
在此还描述和要求保护了对应于以上概述的方法的系统和计算机程序产品。
附图说明
图1说明了根据本发明的用于提供在客户端设备和服务器之间的TCP代理会话的服务网关的实施例。
图2a说明了根据本发明的用于从服务器接收数据分组的服务网关的实施例。
图2b说明了根据本发明的用于发送数据分组到客户端设备的服务网关的实施例。
图3说明了根据本发明的用于监控服务器侧网络行为和客户端侧网络行为的服务网关的实施例。
图4说明了根据本发明的用于服务器侧接收缓冲区和客户端侧发送缓冲区的存储空间分配过程的实施例。
图5a说明了根据本发明的用于将数据分组存储到服务器侧接收缓冲区中的服务网关的实施例。
图5b说明了根据本发明的用于将数据分组存储到客户端侧发送缓冲区中的服务网关的实施例。
图6说明了根据本发明的用于从客户端设备接收数据分组的服务网关的实施例。
图7说明了根据本发明的用于客户端侧接收缓冲区和服务器侧发送缓冲区的存储空间分配过程的实施例。
图8a说明了根据本发明的用于将数据分组存储到客户端侧接收缓冲区中的服务网关的实施例。
图8b说明了根据本发明的用于将数据分组存储到服务器侧发送缓冲区中的服务网关的实施例。
具体实施方式
本发明能够采用完全硬件实施例、完全软件实施例或包含硬件和软件元素两者的实施例的形式。在优选实施例中,本发明以软件来实现,其包括但不限于固件、常驻软件、微码等等。
进一步,本发明能够采用从计算机可使用或计算机可读介质可访问的计算机程序产品的形式,其提供了由计算机或任何指令执行系统使用或者与计算机或任何指令执行系统一起使用的程序代码。为了本说明书的目的,计算机可使用或计算机可读介质能够是能够包含、存储、通信、传播、或传输该程序以由指令执行系统、装置或设备使用或与指令执行系统、装置或设备一起使用的任何装置。
所述介质能够是电子、磁、光、电磁、红外、或者半导系统(或装置或设备)或传播介质。计算机可读介质的示例包括半导体或固态存储器、磁带、可移动计算机软磁盘、随机访问存储器(RAM)、只读存储器(ROM)、硬磁盘和光盘。光盘的当前示例包括压缩盘-只读存储器(CD-ROM)、压缩盘-读/写(CD-R/W)和DVD。
适用于存储和/或执行程序代码的数据处理系统将包括直接或间接通过系统总线耦合到存储元件的至少一个处理器。所述存储元件能够包括在程序代码实际执行期间所采用的本地存储器、大容量存储器、以及提供暂时对至少某些程序代码的存储从而减少在执行期间必须从大容量存储器取回代码的次数的高速缓存。
能够直接地或通过居间的I/O控制器将输入/输出或I/O设备(包括但不限于键盘、显示器、定点设备等)耦合到系统。
还可以将网络适配器耦合到所述系统以便使得所述数据处理系统能够成为通过居间的专用或公共网络耦合到其它数据处理系统或远程打印机或存储设备。调制解调器、电缆调制解调器和以太网卡仅仅是当前可用的网络适配器类型之中的一些。
图中的流程图和方框图说明了根据本发明的各种实施例的系统、方法和计算机程序产品的可能实现的架构、功能性和操作。在这一点上,流程图和方框图中的每个块可以代表代码的模块、片段或部分,其包括用于实现特定的局部功能的一个或多个可执行指令。还应当注意,在某些可替代实现中,在方框中标注的功能可以不按图中标注的次序发生。例如,取决于所涉及的功能性,连续示出的两个块实际上可以基本上同时地执行,或者有时可以以相反的次序来执行这些块。还将注意,方框图和/或流程图说明中的每个框以及方框图和/或流程图说明中的方框的组合能够由执行特定功能或动作的基于专用硬件的系统、或专用硬件和计算机指令的组合来实现。
在此所使用的术语仅仅是为了描述特定实施例的目的,并且不意图成为对本发明的限制。如在此使用的,除非上下文中清楚指示的另外情形,否则单数形式“一”、“某”和“该”同样意图包括复数形式。将进一步理解,当在本说明书中使用时,术语“包括”和/或“具有”具体说明了阐明的特征、整体、步骤、操作、元素、和/或组件的存在,但是并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其群组的存在或添加。
图1说明了经由数据网络153提供客户端设备100和服务器设备200之间的TCP代理会话400的服务网关300的实施例。
在一个实施例中,数据网络153包括网际协议(IP)网络、公司数据网络、区域公司数据网络、和因特网服务提供商网络、住宅数据网络、诸如是以太网的有线网络、诸如是WiFi网络的无线网络、或者蜂窝网络。在一个实施例中,数据网络153驻留于数据中心,或者连接到网络或应用网络云。
客户端设备100典型地是具有网络接入能力的计算设备。在一个实施例中,客户端设备100是工作站、台式个人计算机或膝上型个人计算机、个人数据助理(PDA)、平板计算设备、智能电话、或蜂窝电话、机顶盒、因特网媒体浏览器、因特网媒体播放器、智能传感器、智能医疗设备、网顶盒、联网电视机、联网DVR、联网蓝光播放器、联网手持游戏设备、或媒体中心。
在一个实施例中,客户端设备100是住宅宽带网关、商业因特网网关、商业Web代理服务器、网络顾客前端设备(CPE)、或因特网接入网关。
在一个实施例中,客户端设备100包括宽带远程接入服务器(BRAS)、数字订户线接入复用器(DSLAM)、电缆调制解调器终接系统(CMTS)、或服务提供商接入网关。
在一个实施例中,客户端设备100包括移动宽带接入网关,诸如,网关GPRS支持节点(GGSN)、归属代理(HA)、或PDN网关(PGW)。
在一个实施例中,客户端设备100包括服务器负载均衡器、应用投递控制器、话务管理器、防火墙、VPN服务器、远程接入服务器、或企业或数据中心接入网关。
在一个实施例中,客户端设备100是执行类似于服务网关300的功能的设备。
客户端设备100经由服务网关300向服务器200发起TCP会话400。
服务器200是典型情况下耦合到处理器和存储了计算机可读程序代码的计算机可读介质的计算设备。服务器200与处理器和计算机可读程序代码一起实现了使用TCP会话400来将基于TCP的服务或应用服务提供给客户端设备100的Web服务器、文件服务器、视频服务器、数据库服务器、应用服务器、语音系统、会议服务器、媒体网关、媒体中心、app服务器或网络服务器的功能性。
在一个实施例中,服务器200是执行类似于服务网关300的功能的设备。
在一个实施例中,TCP会话400包括HTTP会话、FTP文件传递会话、基于TCP的视频流送会话、基于TCP的音乐流送会话、文件下载会话、群组会议会话、数据库访问会话、远程终端接入会话、远程登陆会话、电子商务交易、远程规程呼叫、或基于TCP的网络通信会话。
服务网关300操作地耦合到处理器310、存储模块320、网络接口模块330、以及计算机可读介质340。计算机可读介质340存储计算机可读程序代码,其在由处理器310使用存储模块320来执行时实现了如这里所述的本发明的各种实施例。在某些实施例中,将服务网关300实现为服务器负载均衡器、应用投递控制器、服务投递平台、话务管理器、安全网关、防火墙系统的组件、虚拟专用网络(VPN)的组件、视频服务器的负载均衡器、将负载分发给一个或多个服务器的网关、Web或HTTP服务器、网络地址转译(NAT)网关、或TCP代理服务器。
在客户端设备100和服务器200之间提供TCP代理会话400的一个实施例中,服务网关300建立与客户端设备100的客户端侧TCP会话420,以及与服务器200的服务器侧TCP会话470。
在一个实施例中,计算机可读介质340包括用于服务应用350和执行服务应用350的处理器310的指令。
在一个实施例中,服务应用350实现VPN防火墙、网关安全应用、HTTP代理、基于TCP的音频或视频流送会话代理、Web会话代理、内容过滤、服务器负载均衡、防火墙、或网络应用会话代理的功能性。
在一个实施例中,服务网关300包括用于处理TCP代理会话400的存储缓冲区327。在一个实施例中,存储缓冲区327的容量是预先确定的,例如,1MB、400KB、200KB或者2MB。在一实施例中,服务网关300保留存储模块320的一部分作为存储缓冲区327以处理TCP代理会话400。
在一个实施例中,服务网关300为客户端侧TCP会话420分配客户端侧发送缓冲区424,并且为服务器侧TCP会话470分配服务器侧接收缓冲区474,其中,客户端侧发送缓冲区424和服务器侧接收缓冲区474驻留在存储缓冲区327中。
在一个实施例中,服务网关300监控服务器侧会话470的动态服务器侧网络行为460和客户端侧会话420的动态客户端侧网络行为410。服务网关300基于网络行为410和网络行为460来分配客户端侧发送缓冲区424以及分配服务器侧接收缓冲区474。
在如图2a中所说明的一个实施例中,服务网关300接收来自服务器200的服务器侧TCP会话470的数据分组479。服务网关300将数据分组479存储在服务器侧接收缓冲区474中。服务应用350从服务器侧接收缓冲区474中取回数据分组479并处理数据分组479。在一个实施例中,服务应用350使用数据分组479来创建数据分组429。服务应用350通过将数据分组429置于客户端侧发送缓冲区424中来发送数据分组429到客户端设备100。服务网关300指令网络模块330从客户端侧发送缓冲区424传送数据分组429到客户端设备100。
在一个实施例中,服务网关300确定服务器侧接收缓冲区474的可用容量484足够用于存储数据分组479。服务网关300将数据分组479存储到服务器侧接收缓冲区474中并将可用容量484减小达存储数据分组479所需的存储空间量。
在一个实施例中,服务网关300确定可用容量484不足,服务网关300增加服务器侧接收缓冲区474的所分配的容量494,并根据所分配的容量494的增加来调整可用容量484。如果所调整的可用容量484足够,则服务网关300将数据分组479存储在服务器侧接收缓冲区474中并根据存储数据分组479所需的存储空间来减小可用容量484。
在服务网关300确定可用容量484不足的一个实施例中,即使在调整之后,服务网关300也会丢弃数据分组479。
在一个实施例中,服务应用350从服务器侧接收缓冲区474取回数据分组479。服务网关300从服务器侧接收缓冲区474中移除数据分组479并根据数据分组479所消耗的存储空间来增加可用容量484。
在如图2b中所说明的一个实施例中,在服务网关300将数据分组429存储到客户端侧发送缓冲区424中之前,服务网关300检查客户端侧发送缓冲区424的可用容量是否足够用于存储数据分组429。如果该检查是肯定的,则服务网关300将数据分组429存储到客户端侧发送缓冲区424中并根据存储数据分组429所需的存储空间来减小可用容量434。
在一个实施例中,服务网关300确定可用容量434不足,服务网关300增加客户端侧发送缓冲区424的所分配的容量444,并根据所分配的容量444的增加来调整可用容量434。如果所调整的可用容量434足够,则服务网关300将数据分组429存储到客户端侧发送缓冲区424中并根据存储数据分组429所需的存储空间来减小可用容量434。
在服务网关300确定可用容量434不足的一个实施例中,即使在调整之后,服务网关300也丢弃数据分组429。在一个实施例中,服务网关300等待直到可用容量434在调整之后变得足够。
在一个实施例中,网络模块330成功传送来自客户端侧发送缓冲区424的数据分组429。服务网关300从客户端侧发送缓冲区424移除数据分组429并根据数据分组429所消耗的存储空间来增加可用容量434。
在图3所说明的实施例中,服务网关300为服务器侧会话470监控动态网络行为460。在一个实施例中,网络行为460包括服务器侧数据分组往返时间(RTT)462、服务器侧传输速率463、或影响服务网关300接收数据分组479的动态服务器侧网络属性。在一个实施例中,服务器侧数据分组RTT462影响通过数据网络153传送数据分组479的时间。在一个实施例中,服务器侧传输速率463影响网络模块330接收数据分组479的速率。在一个实施例中,RTT 462和传输速率463是相关的。
服务网关300为服务器侧会话470测量或估计服务器侧数据分组RTT462。在一个示例实施例中,服务网关300基于在服务网关300发送服务器侧会话470的数据分组到服务器200的时刻和服务网关300接收到对该已发送数据分组的确认的时刻之间的持续时间来测量服务器侧数据分组RTT462。在一个实施例中,服务网关300在服务器侧TCP会话470期间不时地测量RTT 462。在一个实施例中,服务网关300基于与服务器200的一个或多个先前的服务器侧TCP会话来估计服务器侧数据分组RTT462。在一个实施例中,服务网关300估计服务器侧数据分组RTT462为10毫秒、100毫秒、3毫秒、22毫秒、或3秒。
在一个实施例中,服务网关300计算服务器侧传输速率463为网络模块330接收服务器侧TCP会话470的数据分组所使用的网络接口的带宽。在一个实施例中,服务器侧传输速率463是虚拟网络接口的带宽。在一个实施例中,服务网关300通过计算一段时间期间服务器侧TCP会话470的一个或多个数据分组的一个或多个传输速率来计算服务器侧传输速率463。在一个实施例中,服务网关300不时地计算新的传输速率463。在一个实施例中,服务网关300计算服务器侧传输速率463为1Mbps、43Mbps、100Mbps、1Gbps、600Mbps、25Mbps或10Gbps。
在一个实施例中,服务网关300监控客户端侧会话420的动态网络行为410。在一个实施例中,网络行为410包括客户端侧数据分组往返时间(RTT)412、客户端侧传输速率413、或影响服务网关300发送数据分组429的动态网络属性。在一个实施例中,客户端侧数据分组RTT 412影响通过数据网络153传送数据分组429的时间。在一个实施例中,客户端侧传输速率413影响网络模块330发送数据分组429的速率。在一个实施例中,RTT 412和传输速率413是相关的。
服务网关300测量或估计客户端侧数据分组RTT 412。在一个示例实施例中,服务网关300基于在服务网关300发送客户端侧会话420的数据分组到客户端设备100的时刻和服务网关300接收到对该已发送数据分组的确认的时刻之间的持续时间来测量客户端侧数据分组RTT 412。在一个实施例中,服务网关300在客户端侧TCP会话420期间不时地测量RTT412。在一个实施例中,服务网关300基于与客户端设备100的一个或多个先前的服务器侧TCP会话来估计客户端侧数据分组RTT 412。在一个实施例中,服务网关300估计服务器侧数据分组RTT412为10毫秒、100毫秒、3毫秒、22毫秒、或3秒。
在一个实施例中,服务网关300计算客户端侧传输速率413为网络模块330传送客户端侧TCP会话420的数据分组所使用的网络接口的带宽。在一个实施例中,客户端侧传输速率413是虚拟网络接口的带宽。在一个实施例中,服务网关300通过计算一段时间期间客户端侧TCP会话410的一个或多个数据分组的一个或多个传输速率来计算客户端侧传输速率413。在一个实施例中,服务网关300不时地计算新的传输速率413。在一个实施例中,服务网关300计算客户端侧传输速率413为1Mbps、43Mbps、100Mbps、1Gbps、600Mbps、25Mbps或10Gbps。
图4说明了服务网关300从存储缓冲区327分配存储空间给服务器侧接收缓冲区474和客户端侧发送缓冲区424的实施例。在一个实施例中,当服务网关300开始处理TCP代理会话400时,服务网关300为服务器侧接收缓冲区474保留存储缓冲区327的一部分,并为客户端侧发送缓冲区424保留存储缓冲区327的一部分。在一个实施例中,当服务网关300建立服务器侧TCP会话470和/或客户端侧TCP会话420时,服务网关300开始处理TCP代理会话400。在一个实施例中,服务网关300初始分配预定容量494的服务器侧接收缓冲区474。例如,所分配的容量494初始被预定为在存储缓冲区327的10%、8%、1/8或存储缓冲区327的另一预定分数。在另一实施例中,将初始分配的容量494预设为30KB、32KB、4KB、64KB或100KB。同样地,服务网关300预先确定初始分配容量444的客户端发送缓冲区424。服务网关300进一步将服务器侧接收缓冲区474的可用容量484设置为与所分配的容量494相同,并将客户端侧发送缓冲区424的可用容量434设置为与所分配的容量444相同。
在一个实施例中,服务网关300计算服务器侧接收缓冲区474的最大容量492和客户端侧发送缓冲区424的最大容量442。在一个实施例中,服务网关300根据公式1和公式2来使用RTT 462和RTT 412、并使用基于RTT 462和RTT 412对存储缓冲区327的容量328的加权平均来计算。所述加权平均具有朝服务器侧接收缓冲区474的偏向。
公式1
公式2
公式1和公式2说明了其中最大容量492和最大容量442的和等于容量328的实施例。在该实施例中,选择RTT 462的因子为2使得服务网关300为服务器侧TCP会话470通告服务器侧接收缓冲区474最大容量492的1/2或一半。使用与为服务器侧TCP会话470所通告的服务器侧接收缓冲区474的该部分相关的不同因子来调整因子2是合适的。
在一个实施例中,服务网关300获取服务器侧数据分组RTT 462的新的测量和/或客户端侧数据分组RTT 412的新的测量。服务网关300应用公式1和公式2以修正最大容量492和最大容量442。
在一个实施例中,服务网关300进一步考虑服务器侧传输速率463和客户端侧传输速率413。服务网关使用公式3和公式4、并使用基于传输速率463和RTT462以及传输速率413和RTT 412的组合对容量328的加权平均来计算。所述加权平均具有朝服务器侧接收缓冲区474的偏向。
公式3
公式4
公式3和公式4说明了其中最大容量492和最大容量442的和等于容量328的实施例。
在一个实施例中,服务网关300获取新的服务器侧传输速率463和/或新的客户端侧传输速率413。服务网关300应用公式3和4以修正最大容量492和最大容量442。在一个实施例中,服务网关300获取服务器侧数据分组RTT462的新的测量和/或客户端侧数据分组RTT 412的新的测量。服务网关300应用公式3和公式4以修正最大容量492和最大容量442。
在图5a中,进一步说明了图2a中的实施例,其中,服务网关300将服务器数据分组479存储到服务器侧接收缓冲区474中并发现服务器侧接收缓冲区474的可用容量484不足。服务网关300检查服务器侧接收缓冲区474的所分配容量494是否小于服务器侧接收缓冲区474的最大容量492。如果所分配的容量494至少是最大容量492或者容量494和最大容量492之间的差小于存储数据分组479所需的存储,则服务网关300丢弃数据分组479。
在一个实施例中,服务网关300确定在最大容量492以内存在足够的存储空间用于存储数据分组479。服务网关300从存储缓冲区327分配存储空间321。在一个实施例中,存储空间321具有容量322。服务网关300将服务器侧接收缓冲区474的所分配容量494增加达容量322的量,并将存储空间321包括到服务器侧接收缓冲区474中。服务网关300分配存储空间321以使得经调整的所分配容量494不超过服务器侧接收缓冲区474的最大容量492。在将数据分组479存储到经更新的服务器侧接收缓冲区474之后,服务网关300使用容量322、以及数据分组479所消耗的空间来更新服务器侧接收缓冲区474的可用容量484。
在图5b中,进一步说明了图2b中的实施例,其中,服务网关300将数据分组429存储到客户端侧发送缓冲区424中并发现客户端侧发送缓冲区424的可用容量434不足。服务网关300检查客户端侧发送缓冲区424的所分配容量444是否小于客户端侧发送缓冲区424的最大容量442。如果容量444至少是最大容量442或者所分配容量444和最大容量442之间的差小于存储数据分组429所需的存储,则服务网关300丢弃数据分组429。
在一个实施例中,服务网关300确定在最大容量442以内存在足够的存储空间用于存储数据分组429。服务网关300从存储缓冲区327分配存储空间325。在一个实施例中,存储空间325具有容量326。服务网关300将客户端侧发送缓冲区424的所分配容量增加达容量326的量,并将存储空间325包括到客户端侧发送缓冲区424中。服务网关300分配存储空间325以使得经调整的所分配容量444不超过客户端侧发送缓冲区424的最大容量442。在将数据分组429存储到经更新的客户端侧发送缓冲区424之后,服务网关300使用容量326、以及数据分组429所消耗的空间来更新可用容量434。
在一个实施例中,客户端设备100经由客户端侧TCP会话420发送数据分组421到服务网关300。如图6中所说明地,在一个实施例中,服务网关300包括存储缓冲区377,其包括客户端侧接收缓冲区426和服务器侧发送缓冲区476。存储缓冲区377与容量378相关联。客户端侧接收缓冲区426与所分配的容量446、可用容量436和最大容量448相关联。服务器侧发送缓冲区476与所分配的容量496、可用容量486和最大容量498相关联。
服务网关300使用客户端侧接收缓冲区426和服务器侧发送缓冲区476来处理数据分组421。服务网关300接收数据分组421并将数据分组421存储到客户端侧接收缓冲区426中。服务应用350从客户端侧接收缓冲区426取回数据分组421,并基于数据分组421来生成数据分组471。服务应用350将数据分组471置于服务器侧发送缓冲区476中。服务网关300将数据分组471从服务器侧发送缓冲区476发送到服务器200。
在一个实施例中,服务网关300保留预定容量378的存储缓冲区377用于处理TCP代理会话400。在一个实施例中,存储缓冲区377的容量378与存储缓冲区327的容量328相同。在一个实施例中,容量378不同于容量328。
图7说明了服务网关300将来自存储缓冲区377的存储空间分配给服务器侧发送缓冲区476和客户端侧接收缓冲区426的实施例。在一个实施例中,当服务网关300开始处理TCP代理会话400时,服务网关300为服务器侧发送缓冲区476保留存储缓冲区377的一部分,并为客户端侧接收缓冲区426保留存储缓冲区377的一部分。在一个实施例中,当服务网关300建立服务器侧TCP会话470和/或客户端侧TCP会话420时,服务网关300开始处理TCP代理会话400。在一个实施例中,服务网关300初始分配预定容量496的服务器侧发送缓冲区476。例如,所分配容量496被初始地预定为在存储缓冲区377的10%、8%、1/8、或存储缓冲区377的另一分数。在另一实施例中,将所分配容量496的初始值预设为30KB、32KB、4KB、64KB或100KB。同样地,服务网关300预先确定客户端侧接收缓冲区426的初始分配容量446。服务网关300进一步将服务器侧发送缓冲区476的可用容量486设置为与所分配容量496相同,并将客户端侧接收缓冲区426的可用容量436设置为与所分配容量446相同。
在一个实施例中,网络条件460的RTT 462影响数据分组471的发送。在一个实施例中,网络条件460包括服务器侧传输速率464。服务网关300计算服务器侧传输速率464为网络模块330传送服务器侧TCP会话470的数据分组所使用的网络接口的带宽。在一个实施例中,服务器侧传输速率464是虚拟网络接口的带宽。在一个实施例中,服务网关300通过计算一段时间内服务器侧TCP会话470的一个或多个数据的一个或多个传输速率来计算服务器侧传输速率464。在一个实施例中,服务网关300不时地计算新的传输速率464。在一个实施例中,服务网关300计算服务器侧传输速率464为1Mbps、43Mbps、100Mbps、1Gbps、600Mbps、25Mbps或10Gbps。
在一个实施例中,网络条件410的RTT 412还影响数据分组421的接收。在一个实施例中,网络条件410包括客户端侧传输速率414。服务网关300计算客户端侧传输速率414为网络模块330接收客户端侧TCP会话420的数据分组所使用的网络接口的带宽。在一个实施例中,客户端侧传输速率414是虚拟网络接口的带宽。在一个实施例中,服务网关300通过计算在一段时间内客户端侧TCP会话410的一个或多个数据分组的一个或多个传输速率来计算客户端侧传输速率414。在一个实施例中,服务网关300不时地计算新的传输速率414。在一个实施例中,服务网关300计算客户端侧传输速率414为1Mbps、43Mbps、100Mbps、1Gbps、600Mbps、25Mbps或10Gbps。
在一个实施例中,服务网关300根据公式5和公式6使用网络条件460和网络条件410,并使用基于RTT 462和RTT 412对容量378的加权平均来计算最大容量498和最大容量448。所述加权平均具有朝客户端侧接收缓冲区426的偏向。
公式5
公式6
公式5和公式6说明了其中最大容量498和最大容量448的和等于容量378的实施例。在这一实施例中,选择RTT 412的因子为2以使得服务网关300为客户端侧TCP会话420通告客户端侧接收缓冲区426的最大容量448的1/2或一半。使用与为客户端侧TCP会话420通告的客户端侧接收缓冲区426的该部分相关的不同因子来调整因子2是合适的。
在一个实施例中,服务网关300获取服务器侧数据分组RTT462的新的测量和/或客户端侧数据分组RTT 412的新的测量。服务网关300应用公式5和公式6来修正最大容量498和最大容量448。
在一个实施例中,服务网关300进一步考虑服务器侧传输速率464和客户端侧传输速率414。服务网关使用公式7和公式8、使用基于传输速率464和RTT462、以及传输速率414和RTT 412的组合对容量378的加权平均来计算。所述加权平均具有朝客户端侧接收缓冲区426的偏向。
公式7
公式9
公式7和公式8说明了其中最大容量498和最大容量448的和等于容量378的实施例。
在一个实施例中,服务网关300获取新的服务器侧传输速率464和/或新的客户端侧传输速率414,服务网关300应用公式7和公式8来修正最大容量498和最大容量448。在一个实施例中,服务网关300获取服务器侧数据分组RTT462的新的测量和/或客户端侧数据分组RTT 412的新的测量,服务网关300应用公式7和公式8来修正最大容量492和最大容量442。
在图8a中,服务网关300接收来自客户端设备100的数据分组421并将数据分组421存储到客户端侧接收缓冲区426中,并发现客户端侧接收缓冲区426的可用容量436不足。服务网关300检查客户端侧接收缓冲区426的所分配容量446是否小于客户端侧接收缓冲区426的最大容量448。如果所分配的容量446至少是最大容量448或者所分配容量446和最大容量448之间的差小于存储数据分组421所需的存储,则服务网关300丢弃数据分组421。
在一个实施例中,服务网关300确定在最大容量448以内存在足够的存储空间用于存储数据分组421。服务网关300从存储器缓冲区377分配存储空间375。在一个实施例中,存储空间375具有容量376。服务网关300将所分配的容量446增加达容量376的量,并将存储空间375包括在客户端侧接收缓冲区426中。服务网关300分配存储空间375以使得经调整的所分配容量446不超过客户端侧发送缓冲区426的最大容量448。在将数据分组421存储到经更新的客户端侧接收缓冲区426之后,服务网关300使用容量376、以及数据分组421所消耗的空间来更新客户端侧接收缓冲区426的可用容量436。
在图8b中,服务网关300将数据分组471存储到服务器侧发送缓冲区476中。在一个实施例中,服务网关300发现服务器侧发送缓冲区476的可用容量486不足。服务网关300检查服务器侧发送缓冲区476的所分配容量496是否小于服务器侧发送缓冲区476的最大容量498。如果所分配容量496至少是最大容量498或者在所分配的容量496和最大容量498之间的差小于存储数据分组471所需的存储,则服务网关丢弃数据分组471。
在一个实施例中,服务网关300确定在最大容量498以内存在足够的存储空间用于存储数据分组471。服务网关300从存储缓冲区377分配存储空间371。在一个实施例中,存储空间371具有容量372。服务网关300将所分配的容量496增加达容量372的量,并将存储空间371包括到服务器侧发送缓冲区476中。服务网关300分配存储空间371以使得经调整的所分配的容量496不超过最大容量498。在将数据分组471存储到经更新的服务器侧发送缓冲区476之后,服务网关300使用容量372、以及数据分组471所消耗的空间来更新服务器侧发送缓冲区476的可用容量486。
在一个实施例中,服务应用350从客户端侧接收缓冲区426取回数据分组471。服务网关300从客户端侧接收缓冲区426移除数据分组471并根据数据分组471所消耗的存储空间来增加可用容量436。
在一个实施例中,网络模块330成功传送来自服务器侧发送缓冲区476的数据分组471。服务网关300从服务器侧发送缓冲区476移除数据分组471并根据数据分组471所消耗的存器空间来增加可用容量486。
虽然已经按照所示实施例描述了本发明,但是本领域普通技术人员将容易意识到实施例可以有变化,并且那些变化将在本发明的精神和范围内。相应地,本领域普通技术人员可以作出众多修改,而不脱离所附权利要求书的精神和范围。

Claims (24)

1.一种由包括处理器的服务网关为客户端和服务器之间的TCP代理会话分配缓冲区的方法,包括:
(a)由所述处理器监控所述TCP代理会话的服务器侧会话的动态服务器侧网络行为和所述TCP代理会话的客户端侧会话的动态客户端侧网络行为;以及
(b)由所述处理器基于所述动态服务器侧网络行为、所述动态客户端侧网络行为、以及对存储缓冲区的容量的加权平均来在所述存储缓冲区中分配服务器侧缓冲区的容量和客户端侧缓冲区的容量,所述分配(b)包括:
(b1)从所述服务器接收服务器侧会话数据,或者
从所述客户端接收客户端侧会话数据分组;
(b2)确定所述服务器侧缓冲区的可用容量是否足够用于存储所述服务器侧会话数据分组,或者
确定所述客户端侧缓冲区的可用容量是否足够用于存储所述客户端侧会话数据分组;
(b3)响应于确定所述服务器侧缓冲区的可用容量不足以用于存储所述服务器侧会话数据分组,增加所述服务器侧缓冲区的所分配容量,或者
响应于确定所述客户端侧缓冲区的可用容量不足以用于存储所述客户端侧会话数据分组,增加所述客户端侧缓冲区的所分配容量;以及
(b4)根据所述服务器侧缓冲区的所分配容量的增加来调整所述服务器侧缓冲区的可用容量,或者
根据所述客户端侧缓冲区的所分配容量的增加来调整所述客户端侧缓冲区的可用容量。
2.根据权利要求1所述的方法,其中所述分配(b)包括:
(b1)基于所述动态服务器侧网络行为、所述动态客户端侧网络行为、以及对所述存储缓冲区的容量的加权平均来计算所述服务器侧缓冲区的最大容量和所述客户端侧缓冲区的最大容量;以及
(b2)基于所述服务器侧缓冲区的最大容量和所述客户端侧缓冲区的最大容量来分配所述服务器侧缓冲区的容量和所述客户端侧缓冲区的容量。
3.根据权利要求1所述的方法,其中所述增加(b3)包括:
(b3i)响应于确定所述服务器侧缓冲区的可用容量不足以用于存储所述服务器侧会话数据分组,确定所述服务器侧缓冲区的所分配容量是否小于所述服务器侧缓冲区的最大容量,或者
响应于确定所述客户端侧缓冲区的可用容量不足以用于存储所述客户端侧会话数据分组,确定所述客户端侧缓冲区的所分配容量是否小于所述客户端侧缓冲区的最大容量;以及
(b3ii)响应于确定所述服务器侧缓冲区的所分配容量小于所述服务器侧缓冲区的最大容量,确定在所述服务器侧缓冲区的最大容量以内是否存在足够的存储空间以用于存储所述服务器侧会话数据分组,或者
响应于确定所述客户端侧缓冲区的所分配容量小于所述客户端侧缓冲区的最大容量,确定所述客户端侧缓冲区的最大容量以内是否存在足够的存储空间以用于存储所述客户端侧会话数据分组;
(b3iii)响应于确定在所述服务器侧缓冲区的最大容量以内存在足够的存储空间以用于存储所述服务器侧会话数据分组,将所述存储空间分配给所述服务器侧缓冲区并根据所分配的存储空间来调整所述服务器侧缓冲区的可用容量,或者
响应于确定在所述客户端侧缓冲区的最大容量以内存在足够的存储空间以用于存储所述客户端侧会话数据分组,将所述存储空间分配给所述客户端侧缓冲区并根据所分配的存储空间来调整所述客户端侧缓冲区的可用容量。
4.根据权利要求2所述的方法,其中所述监控(a)和所述计算(b1)包括:
(a1)测量服务器侧数据分组往返时间(RTT)和客户端侧数据分组RTT;以及
(b1i)使用所述服务器侧数据分组RTT、客户端侧数据分组RTT、以及对所述存储缓冲区的容量的加权平均来计算所述服务器侧缓冲区的最大容量和所述客户端侧缓冲区的最大容量。
5.根据权利要求4所述的方法,其中,在计算所述服务器侧缓冲区的最大容量时,使对所述存储缓冲区的容量的加权平均偏向于所述服务器,或者
其中,在计算所述客户端侧缓冲区的最大容量时,使对所述存储缓冲区的容量的加权平均偏向于所述客户端。
6.根据权利要求4所述的方法,其中所述监控(a)进一步包括:
(a3)获取所述服务器侧数据分组RTT和所述客户端侧数据分组RTT的新的测量;以及
(a4)使用新的服务器侧数据分组RTT、新的客户端侧数据分组RTT、以及对所述存储缓冲区的容量的加权平均来修改所述服务器侧缓冲区的最大容量和所述客户端侧缓冲区的最大容量。
7.根据权利要求4所述的方法,其中所述测量(a1)和所述计算(a2)包括:
(a1i)测量所述服务器侧数据分组RTT、所述客户端侧数据分组RTT、服务器侧传输速率、以及客户端侧传输速率;以及
(a2i)使用所述服务器侧数据分组RTT、所述客户端侧数据分组RTT、所述服务器侧传输速率、所述客户端侧传输速率、以及对所述存储缓冲区的容量的加权平均来计算所述服务器侧缓冲区的最大容量和所述客户端侧缓冲区的最大容量。
8.根据权利要求7所述的方法,其中所述监控(a)进一步包括:
(a3)获取所述服务器侧传输速率和所述客户端侧传输速率的新的测量;以及
(a4)使用所述服务器侧数据分组RTT、客户端侧数据分组RTT、新的服务器侧传输速率、新的客户端侧传输速率、以及对所述存储缓冲区的容量的加权平均来修改所述服务器侧缓冲区的最大容量和所述客户端侧缓冲区的最大容量。
9.一种用于为客户端和服务器之间的TCP代理会话分配缓冲区的具有嵌入在其中的计算机可读程序代码的非瞬时性的计算机可读存储介质,所述计算机可读程序代码配置用于:
(a)监控所述TCP代理会话的服务器侧会话的动态服务器侧网络行为和所述TCP代理会话的客户端侧会话的动态客户端侧网络行为;以及
(b)基于所述动态服务器侧网络行为、所述动态客户端侧网络行为、以及对存储缓冲区的容量的加权平均来在所述存储缓冲区中分配服务器侧缓冲区的容量和客户端侧缓冲区的容量,所述分配(b)包括:
(b1)从所述服务器接收服务器侧会话数据,或者
从所述客户端接收客户端侧会话数据分组;
(b2)确定所述服务器侧缓冲区的可用容量是否足够用于存储所述服务器侧会话数据分组,或者
确定所述客户端侧缓冲区的可用容量是否足够用于存储所述客户端侧会话数据分组;
(b3)响应于确定所述服务器侧缓冲区的可用容量不足以用于存储所述服务器侧会话数据分组,增加所述服务器侧缓冲区的所分配容量,或者
响应于确定所述客户端侧缓冲区的可用容量不足以用于存储所述客户端侧会话数据分组,增加所述客户端侧缓冲区的所分配容量;以及
(b4)根据所述服务器侧缓冲区的所分配容量的增加来调整所述服务器侧缓冲区的可用容量,或者
根据所述客户端侧缓冲区的所分配容量的增加来调整所述客户端侧缓冲区的可用容量。
10.根据权利要求9所述的非瞬时性的计算机可读存储介质,其中所述配置用于分配(b)的计算机可读程序代码进一步配置用于:
(b1)基于所述动态服务器侧网络行为、所述动态客户端侧网络行为、以及对存储缓冲区的容量的加权平均来计算所述服务器侧缓冲区的最大容量和所述客户端侧缓冲区的最大容量;以及
(b2)基于所述服务器侧缓冲区的最大容量和所述客户端侧缓冲区的最大容量来分配所述服务器侧缓冲区的容量和所述客户端侧缓冲区的容量。
11.根据权利要求9所述的非瞬时性的计算机可读存储介质,其中所述配置用于增加(b3)的计算机可读程序代码进一步配置用于:
(b3i)响应于确定所述服务器侧缓冲区的可用容量不足以用于存储所述服务器侧会话数据分组,确定所述服务器侧缓冲区的所分配容量是否小于所述服务器侧缓冲区的最大容量,或者
响应于确定所述客户端侧缓冲区的可用容量不足以用于存储所述客户端侧会话数据分组,确定所述客户端侧缓冲区的所分配容量是否小于所述客户端侧缓冲区的最大容量;
(b3ii)响应于确定所述服务器侧缓冲区的所分配容量小于所述服务器侧缓冲区的最大容量,确定在所述服务器侧缓冲区的最大容量以内是否存在足够的存储空间以用于存储所述服务器侧会话数据分组,或者
响应于确定所述客户端侧缓冲区的所分配容量小于所述客户端侧缓冲区的最大容量,确定所述客户端侧缓冲区的最大容量以内是否存在足够的存储空间以用于存储所述客户端侧会话数据分组;以及
(b3iii)响应于确定在所述服务器侧缓冲区的最大容量以内存在足够的存储空间以用于存储所述服务器侧会话数据分组,将所述存储空间分配给所述服务器侧缓冲区并根据所分配的存储空间来调整所述服务器侧缓冲区的可用容量,或者
响应于确定在所述客户端侧缓冲区的最大容量以内存在足够的存储空间以用于存储所述客户端侧会话数据分组,将所述存储空间分配给所述客户端侧缓冲区并根据所分配的存储空间来调整所述客户端侧缓冲区的可用容量。
12.根据权利要求10所述的非瞬时性的计算机可读存储介质,其中所述配置用于监控(a)和用于计算(b1)的计算机可读程序代码进一步配置用于:
(a1)测量服务器侧数据分组往返时间(RTT)和客户端侧数据分组RTT;以及
(b1i)使用所述服务器侧数据分组RTT、客户端侧数据分组RTT、和对所述存储缓冲区的容量的加权平均来计算所述服务器侧缓冲区的最大容量和所述客户端侧缓冲区的最大容量。
13.根据权利要求12所述的非瞬时性的计算机可读存储介质,其中,在计算所述服务器侧缓冲区的最大容量时,使对所述存储缓冲区的容量的加权平均偏向于所述服务器,或者
其中,在计算所述客户端侧缓冲区的最大容量时,使对所述存储缓冲区的容量的加权平均偏向于所述客户端。
14.根据权利要求12所述的非瞬时性的计算机可读存储介质,其中,所述配置用于监控(a)的计算机可读程序代码进一步配置用于:
(a3)获取所述服务器侧数据分组RTT和所述客户端侧数据分组RTT的新的测量;以及
(a4)使用新的服务器侧数据分组RTT、新的客户端侧数据分组RTT、以及对所述存储缓冲区的容量的加权平均来修改所述服务器侧缓冲区的最大容量和所述客户端侧缓冲区的最大容量。
15.根据权利要求12所述的非瞬时性的计算机可读存储介质,其中,所述配置用于测量(a1)和用于计算(a2)的计算机可读程序代码进一步配置用于:
(a1i)测量所述服务器侧数据分组RTT、所述客户端侧数据分组RTT、服务器侧传输速率、以及客户端侧传输速率;以及
(a2i)使用所述服务器侧数据分组RTT、所述客户端侧数据分组RTT、所述服务器侧传输速率、所述客户端侧传输速率、以及对所述存储缓冲区的容量的加权平均来计算所述服务器侧缓冲区的最大容量和所述客户端侧缓冲区的最大容量。
16.根据权利要求15所述的非瞬时性的计算机可读存储介质,其中,所述配置用于监控(a)的计算机可读程序代码进一步配置用于:
(a3)获取所述服务器侧传输速率和所述客户端侧传输速率的新的测量;以及
(a4)使用所述服务器侧数据分组RTT、所述客户端侧数据分组RTT、所述新的服务器侧传输速率、所述新的客户端侧传输速率、以及对所述存储缓冲区的容量的加权平均来修改所述服务器侧缓冲区的最大容量和所述客户端侧缓冲区的最大容量。
17.一种用于为客户端和服务器之间的TCP代理会话分配缓冲区的系统,包括:
处理器;以及
具有嵌入在其中的计算机可读程序代码的非瞬时性的计算机可读存储介质,所述计算机可读程序代码配置用于:
(a)监控所述TCP代理会话的服务器侧会话的动态服务器侧网络行为和所述TCP代理会话的客户端侧会话的动态客户端侧网络行为;以及
(b)基于所述动态服务器侧网络行为、所述动态客户端侧网络行为、以及对存储缓冲区的容量的加权平均来在所述存储缓冲区中分配服务器侧缓冲区的容量和客户端侧缓冲区的容量,所述分配(b)包括:
(b1)从所述服务器接收服务器侧会话数据,或者
从所述客户端接收客户端侧会话数据分组;
(b2)确定所述服务器侧缓冲区的可用容量是否足够用于存储所述服务器侧会话数据分组,或者
确定所述客户端侧缓冲区的可用容量是否足够用于存储所述客户端侧会话数据分组;
(b3)响应于确定所述服务器侧缓冲区的可用容量不足以用于存储所述服务器侧会话数据分组,增加所述服务器侧缓冲区的所分配容量,或者
响应于确定所述客户端侧缓冲区的可用容量不足以用于存储所述客户端侧会话数据分组,增加所述客户端侧缓冲区的所分配容量;以及
(b4)根据所述服务器侧缓冲区的所分配容量的增加来调整所述服务器侧缓冲区的可用容量,或者
根据所述客户端侧缓冲区的所分配容量的增加来调整所述客户端侧缓冲区的可用容量。
18.根据权利要求17所述的系统,其中,所述配置用于分配(b)的计算机可读程序代码进一步配置用于:
(b1)基于所述动态服务器侧网络行为、所述动态客户端侧网络行为、以及对存储缓冲区的容量的加权平均来计算所述服务器侧缓冲区的最大容量和所述客户端侧缓冲区的最大容量;以及
(b2)基于所述服务器侧缓冲区的最大容量和所述客户端侧缓冲区的最大容量来分配所述服务器侧缓冲区的容量和所述客户端侧缓冲区的容量。
19.根据权利要求17所述的系统,其中所述配置用于增加(b3)的计算机可读程序代码进一步配置用于:
(b3i)响应于确定所述服务器侧缓冲区的可用容量不足以用于存储所述服务器侧会话数据分组,确定所述服务器侧缓冲区的所分配容量是否小于所述服务器侧缓冲区的最大容量,或者
响应于确定所述客户端侧缓冲区的可用容量不足以用于存储所述客户端侧会话数据分组,确定所述客户端侧缓冲区的所分配容量是否小于所述客户端侧缓冲区的最大容量;
(b3ii)响应于确定所述服务器侧缓冲区的所分配容量小于所述服务器侧缓冲区的最大容量,确定在所述服务器侧缓冲区的最大容量以内是否存在足够的存储空间用于存储所述服务器侧会话数据分组,或者
响应于确定所述客户端侧缓冲区的所分配容量小于所述客户端侧缓冲区的最大容量,确定在所述客户端侧缓冲区的最大容量以内是否存在足够的存储空间用于存储所述客户端侧会话数据分组;以及
(b3iii)响应于确定在所述服务器侧缓冲区的最大容量以内存在足够的存储空间用于存储所述服务器侧会话数据分组,将所述存储空间分配给所述服务器侧缓冲区并根据所分配的存储空间来调整所述服务器侧缓冲区的可用容量,或者
响应于确定在所述客户端侧缓冲区的最大容量以内存在足够的存储空间用于存储所述客户端侧会话数据分组,将所述存储空间分配给所述客户端侧缓冲区并根据所分配的存储空间来调整所述客户端侧缓冲区的可用容量。
20.根据权利要求18所述的系统,其中所述配置用于监控(a)和用于计算(b1)的计算机可读程序代码进一步配置用于:
(a1)测量服务器侧数据分组往返时间(RTT)和客户端侧数据分组RTT;以及
(b1i)使用所述服务器侧数据分组RTT、客户端侧数据分组RTT、以及对所述存储缓冲区的容量的加权平均来计算所述服务器侧缓冲区的最大容量和所述客户端侧缓冲区的最大容量。
21.根据权利要求20所述的系统,其中,在计算所述服务器侧缓冲区的最大容量时,使对所述存储缓冲区的容量的加权平均偏向于所述服务器,或者
其中,在计算所述客户端侧缓冲区的最大容量时,使对所述存储缓冲区的容量的加权平均偏向于所述客户端。
22.根据权利要求20所述的系统,其中,所述配置用于监控(a)的计算机可读程序代码进一步配置用于:
(a3)获取所述服务器侧数据分组RTT和所述客户端侧数据分组RTT的新的测量;以及
(a4)使用所述新的服务器侧数据分组RTT、所述新的客户端侧数据分组RTT、以及对所述存储缓冲区的容量的加权平均来修改所述服务器侧缓冲区的最大容量和所述客户端侧缓冲区的最大容量。
23.根据权利要求20所述的系统,其中,所述配置用于测量(a1)和计算(a2)的计算机可读程序代码进一步配置用于:
(a1i)测量所述服务器侧数据分组RTT、所述客户端侧数据分组RTT、服务器侧传输速率、以及客户端侧传输速率;以及
(a2i)使用所述服务器侧数据分组RTT、所述客户端侧数据分组RTT、所述服务器侧传输速率、所述客户端侧传输速率、以及对所述存储缓冲区的容量的加权平均来计算所述服务器侧缓冲区的最大容量和所述客户端侧缓冲区的最大容量。
24.根据权利要求23所述的系统,其中所述配置用于监控(a)的计算机可读程序代码进一步配置用于:
(a3)获取所述服务器侧传输速率和所述客户端侧传输速率的新的测量;以及
(a4)使用所述服务器侧数据分组RTT、所述客户端侧数据分组RTT、所述新的服务器侧传输速率、所述新的客户端侧传输速率、以及对所述存储缓冲区的容量的加权平均来修改所述服务器侧缓冲区的最大容量和所述客户端侧缓冲区的最大容量。
CN201310262856.1A 2012-07-05 2013-04-27 基于动态网络条件为tcp代理会话分配缓冲区的方法 Active CN103533018B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/541,792 US8782221B2 (en) 2012-07-05 2012-07-05 Method to allocate buffer for TCP proxy session based on dynamic network conditions
US13/541,792 2012-07-05

Publications (2)

Publication Number Publication Date
CN103533018A CN103533018A (zh) 2014-01-22
CN103533018B true CN103533018B (zh) 2018-01-09

Family

ID=49879368

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310262856.1A Active CN103533018B (zh) 2012-07-05 2013-04-27 基于动态网络条件为tcp代理会话分配缓冲区的方法

Country Status (2)

Country Link
US (4) US8782221B2 (zh)
CN (1) CN103533018B (zh)

Families Citing this family (57)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7675854B2 (en) 2006-02-21 2010-03-09 A10 Networks, Inc. System and method for an adaptive TCP SYN cookie with time validation
US8312507B2 (en) 2006-10-17 2012-11-13 A10 Networks, Inc. System and method to apply network traffic policy to an application session
US8584199B1 (en) 2006-10-17 2013-11-12 A10 Networks, Inc. System and method to apply a packet routing policy to an application session
US9960967B2 (en) 2009-10-21 2018-05-01 A10 Networks, Inc. Determining an application delivery server based on geo-location information
US9215275B2 (en) 2010-09-30 2015-12-15 A10 Networks, Inc. System and method to balance servers based on server load status
US9609052B2 (en) 2010-12-02 2017-03-28 A10 Networks, Inc. Distributing application traffic to servers based on dynamic service response time
US8897154B2 (en) * 2011-10-24 2014-11-25 A10 Networks, Inc. Combining stateless and stateful server load balancing
US9386088B2 (en) 2011-11-29 2016-07-05 A10 Networks, Inc. Accelerating service processing using fast path TCP
US9094364B2 (en) 2011-12-23 2015-07-28 A10 Networks, Inc. Methods to manage services over a service gateway
US10044582B2 (en) 2012-01-28 2018-08-07 A10 Networks, Inc. Generating secure name records
US8782221B2 (en) 2012-07-05 2014-07-15 A10 Networks, Inc. Method to allocate buffer for TCP proxy session based on dynamic network conditions
US9843484B2 (en) 2012-09-25 2017-12-12 A10 Networks, Inc. Graceful scaling in software driven networks
KR101692751B1 (ko) 2012-09-25 2017-01-04 에이10 네트워크스, 인코포레이티드 데이터망 부하 분산
US10002141B2 (en) 2012-09-25 2018-06-19 A10 Networks, Inc. Distributed database in software driven networks
US10021174B2 (en) 2012-09-25 2018-07-10 A10 Networks, Inc. Distributing service sessions
US9338225B2 (en) 2012-12-06 2016-05-10 A10 Networks, Inc. Forwarding policies on a virtual service network
US8954495B2 (en) 2013-01-04 2015-02-10 Netfilx, Inc. Proxy application with dynamic filter updating
US9531846B2 (en) 2013-01-23 2016-12-27 A10 Networks, Inc. Reducing buffer usage for TCP proxy session based on delayed acknowledgement
US9900252B2 (en) 2013-03-08 2018-02-20 A10 Networks, Inc. Application delivery controller and global server load balancer
US9992107B2 (en) 2013-03-15 2018-06-05 A10 Networks, Inc. Processing data packets using a policy based network path
US10038693B2 (en) 2013-05-03 2018-07-31 A10 Networks, Inc. Facilitating secure network traffic by an application delivery controller
US10027761B2 (en) 2013-05-03 2018-07-17 A10 Networks, Inc. Facilitating a secure 3 party network session by a network device
US10230770B2 (en) 2013-12-02 2019-03-12 A10 Networks, Inc. Network proxy layer for policy-based application proxies
US9170928B1 (en) * 2013-12-31 2015-10-27 Symantec Corporation I/O scheduling and load balancing across the multiple nodes of a clustered environment
KR20150084307A (ko) * 2014-01-13 2015-07-22 삼성전자주식회사 네트워크에서 웹 로딩 시간 제어 방법 및 장치
US10020979B1 (en) 2014-03-25 2018-07-10 A10 Networks, Inc. Allocating resources in multi-core computing environments
US9942152B2 (en) 2014-03-25 2018-04-10 A10 Networks, Inc. Forwarding data packets using a service-based forwarding policy
US9942162B2 (en) 2014-03-31 2018-04-10 A10 Networks, Inc. Active application response delay time
US9806943B2 (en) 2014-04-24 2017-10-31 A10 Networks, Inc. Enabling planned upgrade/downgrade of network devices without impacting network sessions
US9906422B2 (en) 2014-05-16 2018-02-27 A10 Networks, Inc. Distributed system to determine a server's health
US9986061B2 (en) 2014-06-03 2018-05-29 A10 Networks, Inc. Programming a data network device using user defined scripts
US9992229B2 (en) 2014-06-03 2018-06-05 A10 Networks, Inc. Programming a data network device using user defined scripts with licenses
US10129122B2 (en) 2014-06-03 2018-11-13 A10 Networks, Inc. User defined objects for network devices
US9912641B2 (en) * 2014-07-03 2018-03-06 Juniper Networks, Inc. System, method, and apparatus for inspecting online communication sessions via polymorphic security proxies
US10296973B2 (en) * 2014-07-23 2019-05-21 Fortinet, Inc. Financial information exchange (FIX) protocol based load balancing
US10581976B2 (en) 2015-08-12 2020-03-03 A10 Networks, Inc. Transmission control of protocol state exchange for dynamic stateful service insertion
US10243791B2 (en) 2015-08-13 2019-03-26 A10 Networks, Inc. Automated adjustment of subscriber policies
TWI649991B (zh) * 2015-09-25 2019-02-01 日商日本電氣股份有限公司 資料通信裝置、資料通信控制方法及程式
US10318288B2 (en) 2016-01-13 2019-06-11 A10 Networks, Inc. System and method to process a chain of network applications
CN105897898B (zh) * 2016-04-18 2019-03-15 宁波轩悦行电动汽车服务有限公司 租车用户获取车桩信息的系统及负载均衡方法及租车方法
CN105957259B (zh) * 2016-04-18 2018-09-14 宁波轩悦行电动汽车服务有限公司 手机app获取充电桩信息系统及负载均衡方法及租车方法
CN105869299B (zh) * 2016-04-18 2018-07-17 宁波轩悦行电动汽车服务有限公司 电脑终端获取车桩信息的系统及负载均衡方法及租车方法
KR20180015486A (ko) * 2016-08-03 2018-02-13 삼성전자주식회사 복수의 무선 통신 방식을 사용하는 통신 방법, 장치 및 시스템
US20180063013A1 (en) * 2016-08-24 2018-03-01 Machine Zone, Inc. Systems and methods for network connection buffer sizing
US10389835B2 (en) 2017-01-10 2019-08-20 A10 Networks, Inc. Application aware systems and methods to process user loadable network applications
US10447619B2 (en) * 2017-03-15 2019-10-15 Verizon Patent And Licensing Inc. Dynamic application buffer adaptation for proxy based communication
US10361837B2 (en) 2017-06-16 2019-07-23 Cisco Technology, Inc. Selective proxy to alleviate adjacent channel interference in full duplex cable network environments
CN109218356B (zh) 2017-06-30 2021-10-08 伊姆西Ip控股有限责任公司 管理服务器上有状态应用的方法和设备
US11100058B2 (en) 2017-09-06 2021-08-24 Oracle International Corporation System and method for connection concentration in a database environment
US11025690B2 (en) * 2018-02-05 2021-06-01 Avago Technologies International Sales Pte. Limited Audio-video (AV) packet delivery over a local area network
US12058196B1 (en) * 2020-03-26 2024-08-06 Amazon Technologies, Inc. Data transfer timeout management
CN113972962B (zh) * 2020-07-25 2023-02-03 华为技术有限公司 一种缓冲区管理方法及相关装置
CN112583935B (zh) * 2020-12-28 2022-11-22 深信服科技股份有限公司 缓冲区窗口调整方法、网关设备及存储介质
US11463560B2 (en) 2021-01-20 2022-10-04 Jump Algorithms, Llc Network interface architecture having a directly modifiable pre-stage packet transmission buffer
WO2023097575A1 (en) * 2021-12-01 2023-06-08 Huawei Technologies Co.,Ltd. Devices and methods for wirelesscommunication in a wireless network
US11811675B2 (en) 2022-01-24 2023-11-07 Bank Of America Corporation System for triggering adaptive resource channel requisition within a distributed network
CN117215973B (zh) * 2023-09-13 2024-05-28 之江实验室 一种缓存数据的处理方法、深度学习训练方法和系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1836410A (zh) * 2003-08-20 2006-09-20 日本电气株式会社 会话中继设备和中继方法
CN1868193A (zh) * 2003-09-05 2006-11-22 高通股份有限公司 通信缓冲管理器和通信缓冲管理方法
US7328267B1 (en) * 2002-01-18 2008-02-05 Cisco Technology, Inc. TCP proxy connection management in a gigabit environment
CN102282828A (zh) * 2009-01-16 2011-12-14 松下电器产业株式会社 缓冲控制器和无线电通信终端

Family Cites Families (390)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5218602A (en) 1991-04-04 1993-06-08 Dsc Communications Corporation Interprocessor switching network
TW269763B (en) 1995-09-12 1996-02-01 Ind Tech Res Inst Seamless handoff for a wireless/wired LAN internetworking
JP2962203B2 (ja) 1995-09-28 1999-10-12 日本電気株式会社 オンライン情報処理システムにおける負荷分散方法
US5875185A (en) 1995-10-10 1999-02-23 Industrial Technology Research Inst. Seamless handoff for a wireless lan/wired lan internetworking
US5935207A (en) 1996-06-03 1999-08-10 Webtv Networks, Inc. Method and apparatus for providing remote site administrators with user hits on mirrored web sites
US5862339A (en) 1996-07-09 1999-01-19 Webtv Networks, Inc. Client connects to an internet access provider using algorithm downloaded from a central server based upon client's desired criteria after disconnected from the server
US5774660A (en) 1996-08-05 1998-06-30 Resonate, Inc. World-wide-web server with delayed resource-binding for resource-based load balancing on a distributed resource multi-node network
US5958053A (en) 1997-01-30 1999-09-28 At&T Corp. Communications protocol with improved security
US6075783A (en) 1997-03-06 2000-06-13 Bell Atlantic Network Services, Inc. Internet phone to PSTN cellular/PCS system
JP3346234B2 (ja) 1997-08-12 2002-11-18 ケイディーディーアイ株式会社 回線交換網とインターネット網との網間経路制御通信システム
JP3369445B2 (ja) 1997-09-22 2003-01-20 富士通株式会社 ネットワークサービスサーバ負荷調整装置、方法および記録媒体
US6434620B1 (en) 1998-08-27 2002-08-13 Alacritech, Inc. TCP/IP offload network interface device
US6226680B1 (en) 1997-10-14 2001-05-01 Alacritech, Inc. Intelligent network interface system method for protocol processing
US8782199B2 (en) 1997-10-14 2014-07-15 A-Tech Llc Parsing a packet header
US7237036B2 (en) 1997-10-14 2007-06-26 Alacritech, Inc. Fast-path apparatus for receiving data corresponding a TCP connection
US7167927B2 (en) 1997-10-14 2007-01-23 Alacritech, Inc. TCP/IP offload device with fast-path TCP ACK generating and transmitting mechanism
US6047268A (en) 1997-11-04 2000-04-04 A.T.&T. Corporation Method and apparatus for billing for transactions conducted over the internet
US6003069A (en) * 1997-12-16 1999-12-14 Lexmark International, Inc. Client/server printer driver system
US6167062A (en) 1998-02-02 2000-12-26 Tellabs Operations, Inc. System and associated method for the synchronization and control of multiplexed payloads over a telecommunications network
US6131163A (en) 1998-02-17 2000-10-10 Cisco Technology, Inc. Network gateway mechanism having a protocol stack proxy
US6459682B1 (en) 1998-04-07 2002-10-01 International Business Machines Corporation Architecture for supporting service level agreements in an IP network
JPH11338836A (ja) 1998-05-25 1999-12-10 Nippon Telegr & Teleph Corp <Ntt> コンピュータネットワークの負荷分散システム
US6578066B1 (en) 1999-09-17 2003-06-10 Alteon Websystems Distributed load-balancing internet servers
US6219706B1 (en) 1998-10-16 2001-04-17 Cisco Technology, Inc. Access control for networks
US7418504B2 (en) 1998-10-30 2008-08-26 Virnetx, Inc. Agile network protocol for secure communications using secure domain names
US6571274B1 (en) 1998-11-05 2003-05-27 Beas Systems, Inc. Clustered enterprise Java™ in a secure distributed processing system
US6321338B1 (en) 1998-11-09 2001-11-20 Sri International Network surveillance
US6850965B2 (en) * 1998-11-17 2005-02-01 Arthur Douglas Allen Method for connection acceptance and rapid determination of optimal multi-media content delivery over network
TW444478B (en) 1998-12-10 2001-07-01 Ind Tech Res Inst Ethernet switch IC with shared memory structure and its network
US6483600B1 (en) 1999-02-26 2002-11-19 3Com Corporation System and method for communicating real-time facsimiles over data networks
AU3740500A (en) 1999-03-12 2000-09-28 Nortel Networks Limited Method and apparatus for accessing network information on a network device
JP2000276432A (ja) 1999-03-24 2000-10-06 Nec Corp トランザクション・メッセージの動的負荷分散方式
JP2000307634A (ja) 1999-04-15 2000-11-02 Kdd Corp パケット交換網の中継局による輻輳制御方法
TW425821B (en) 1999-05-31 2001-03-11 Ind Tech Res Inst Key management method
US20010049741A1 (en) 1999-06-18 2001-12-06 Bryan D. Skene Method and system for balancing load distribution on a wide area network
EP1067458A1 (en) 1999-07-09 2001-01-10 CANAL+ Société Anonyme Running and testing applications
US6374300B2 (en) 1999-07-15 2002-04-16 F5 Networks, Inc. Method and system for storing load balancing information with an HTTP cookie
JP2001051859A (ja) 1999-08-11 2001-02-23 Hitachi Ltd 負荷情報連絡方法
DE60035422D1 (de) 1999-08-13 2007-08-16 Sun Microsystems Inc Elegante verteilung des lastausgleichs für anwendungs-server
AU6795100A (en) 1999-08-21 2001-03-19 Webever, Inc. Method for content delivery over the internet
US8179809B1 (en) 1999-08-23 2012-05-15 Oracle America, Inc. Approach for allocating resources to an apparatus based on suspendable resource requirements
US7463648B1 (en) 1999-08-23 2008-12-09 Sun Microsystems, Inc. Approach for allocating resources to an apparatus based on optional resource requirements
US7703102B1 (en) 1999-08-23 2010-04-20 Oracle America, Inc. Approach for allocating resources to an apparatus based on preemptable resource requirements
US8032634B1 (en) 1999-08-23 2011-10-04 Oracle America, Inc. Approach for allocating resources to an apparatus based on resource requirements
US8019870B1 (en) 1999-08-23 2011-09-13 Oracle America, Inc. Approach for allocating resources to an apparatus based on alternative resource requirements
US6600738B1 (en) 1999-10-02 2003-07-29 Ericsson, Inc. Routing in an IP network based on codec availability and subscriber preference
US6748414B1 (en) 1999-11-15 2004-06-08 International Business Machines Corporation Method and apparatus for the load balancing of non-identical servers in a network environment
US6754706B1 (en) 1999-12-16 2004-06-22 Speedera Networks, Inc. Scalable domain name system with persistence and load balancing
US6587866B1 (en) 2000-01-10 2003-07-01 Sun Microsystems, Inc. Method for distributing packets to server nodes using network client affinity and packet distribution table
US6820133B1 (en) 2000-02-07 2004-11-16 Netli, Inc. System and method for high-performance delivery of web content using high-performance communications protocol between the first and second specialized intermediate nodes to optimize a measure of communications performance between the source and the destination
US6725272B1 (en) 2000-02-18 2004-04-20 Netscaler, Inc. Apparatus, method and computer program product for guaranteed content delivery incorporating putting a client on-hold based on response time
US6804224B1 (en) 2000-02-29 2004-10-12 3Com Corporation System and method for providing telephone service having private branch exchange features in a voice-over-data network telephony system
US8380854B2 (en) 2000-03-21 2013-02-19 F5 Networks, Inc. Simplified method for processing multiple connections from the same client
US20020032799A1 (en) 2000-05-02 2002-03-14 Globalstar L.P. Deferring DNS service for a satellite ISP system using non-geosynchronous orbit satellites
TW518864B (en) 2000-05-12 2003-01-21 Ibm Methods and system for defeating TCP SYN flooding attacks
US20030061506A1 (en) 2001-04-05 2003-03-27 Geoffrey Cooper System and method for security policy
US8204082B2 (en) 2000-06-23 2012-06-19 Cloudshield Technologies, Inc. Transparent provisioning of services over a network
US7031267B2 (en) 2000-12-21 2006-04-18 802 Systems Llc PLD-based packet filtering methods with PLD configuration data update of filtering rules
US7013482B1 (en) 2000-07-07 2006-03-14 802 Systems Llc Methods for packet filtering including packet invalidation if packet validity determination not timely made
US7814180B2 (en) 2000-07-13 2010-10-12 Infoblox, Inc. Domain name service server
CN1200368C (zh) 2000-08-18 2005-05-04 清华大学 一种将tcp用于不可靠传输网络的局域重传方法
US7711790B1 (en) 2000-08-24 2010-05-04 Foundry Networks, Inc. Securing an accessible computer system
US7010605B1 (en) 2000-08-29 2006-03-07 Microsoft Corporation Method and apparatus for encoding and storing session data
EP1189404A1 (en) 2000-08-29 2002-03-20 Alcatel Data network
US6772334B1 (en) 2000-08-31 2004-08-03 Networks Associates, Inc. System and method for preventing a spoofed denial of service attack in a networked computing environment
JP3501361B2 (ja) 2000-09-04 2004-03-02 インターナショナル・ビジネス・マシーンズ・コーポレーション コンピュータネットワークシステム、コンピュータシステム、コンピュータシステム間の通信方法、コンピュータシステムのパフォーマンス測定方法および記録媒体
US7398317B2 (en) 2000-09-07 2008-07-08 Mazu Networks, Inc. Thwarting connection-based denial of service attacks
JP2002091936A (ja) 2000-09-11 2002-03-29 Hitachi Ltd 負荷分散装置及び負荷見積もり方法
US9525696B2 (en) 2000-09-25 2016-12-20 Blue Coat Systems, Inc. Systems and methods for processing data flows
US7454500B1 (en) 2000-09-26 2008-11-18 Foundry Networks, Inc. Global server load balancing
AU2001296331A1 (en) 2000-09-29 2002-04-08 Alacritech, Inc. Intelligent network storage interface system and devices
US6813635B1 (en) 2000-10-13 2004-11-02 Hewlett-Packard Development Company, L.P. System and method for distributing load among redundant independent stateful world wide web server sites
AU2002214659A1 (en) 2000-10-26 2002-05-06 James C. Flood Jr. Method and system for managing distributed content and related metadata
US7739398B1 (en) 2000-11-21 2010-06-15 Avaya Inc. Dynamic load balancer
US20020078164A1 (en) * 2000-12-13 2002-06-20 Marnetics Ltd. System and method for data transfer acceleration in a TCP network environment
US6779033B1 (en) 2000-12-28 2004-08-17 Networks Associates Technology, Inc. System and method for transacting a validated application session in a networked computing environment
US7301899B2 (en) 2001-01-31 2007-11-27 Comverse Ltd. Prevention of bandwidth congestion in a denial of service or other internet-based attack
US7155515B1 (en) 2001-02-06 2006-12-26 Microsoft Corporation Distributed load balancing for single entry-point systems
US7149817B2 (en) 2001-02-15 2006-12-12 Neteffect, Inc. Infiniband TM work queue to TCP/IP translation
US7454523B2 (en) 2001-03-16 2008-11-18 Intel Corporation Geographic location determination including inspection of network address
US7313822B2 (en) 2001-03-16 2007-12-25 Protegrity Corporation Application-layer security method and system
US7533409B2 (en) 2001-03-22 2009-05-12 Corente, Inc. Methods and systems for firewalling virtual private networks
US20020141386A1 (en) 2001-03-29 2002-10-03 Minert Brian D. System, apparatus and method for voice over internet protocol telephone calling using enhanced signaling packets and localized time slot interchanging
GB0107967D0 (en) 2001-03-29 2001-05-23 Ibm Workload management of stateful program entities
US6839700B2 (en) 2001-05-23 2005-01-04 International Business Machines Corporation Load balancing content requests using dynamic document generation cost information
US7269632B2 (en) 2001-06-05 2007-09-11 Xdyne, Inc. Networked computer system for communicating and operating in a virtual reality environment
US20040103315A1 (en) 2001-06-07 2004-05-27 Geoffrey Cooper Assessment tool
GB0113844D0 (en) 2001-06-07 2001-08-01 Marconi Comm Ltd Real time processing
EP1405475A4 (en) 2001-06-18 2008-07-23 Tatara Systems Inc METHOD AND DEVICE FOR COMBINING LOCAL AND LARGE AREA WIRELESS DATA NETWORKS
US6944678B2 (en) 2001-06-18 2005-09-13 Transtech Networks Usa, Inc. Content-aware application switch and methods thereof
US8180921B2 (en) 2001-06-19 2012-05-15 Intel Corporation Method and apparatus for load balancing
US7343399B2 (en) 2001-06-25 2008-03-11 Nortel Networks Limited Apparatus and method for managing internet resource requests
US7177642B2 (en) 2001-07-03 2007-02-13 Telefonaktiebolaget Lm Ericsson (Publ) Method and system for handling multiple registration
US7305492B2 (en) 2001-07-06 2007-12-04 Juniper Networks, Inc. Content service aggregation system
US7509369B1 (en) 2001-07-11 2009-03-24 Swsoft Holdings, Ltd. Balancing shared servers in virtual environments
US7366794B2 (en) 2001-07-13 2008-04-29 Certicom Corp. Method and apparatus for resolving a web site address when connected with a virtual private network (VPN)
US7072958B2 (en) 2001-07-30 2006-07-04 Intel Corporation Identifying network management policies
US20040187032A1 (en) 2001-08-07 2004-09-23 Christoph Gels Method, data carrier, computer system and computer progamme for the identification and defence of attacks in server of network service providers and operators
US7039037B2 (en) 2001-08-20 2006-05-02 Wang Jiwei R Method and apparatus for providing service selection, redirection and managing of subscriber access to multiple WAP (Wireless Application Protocol) gateways simultaneously
FR2830397B1 (fr) 2001-09-28 2004-12-03 Evolium Sas Procede pour ameliorer les performances d'un protocole de transmission utilisant un temporisateur de retransmission
JP4160506B2 (ja) 2001-09-28 2008-10-01 レヴェル 3 シーディーエヌ インターナショナル インコーポレーテッド. 構成可能な適応型広域トラフィック制御および管理
US7958199B2 (en) 2001-11-02 2011-06-07 Oracle America, Inc. Switching systems and methods for storage management in digital networks
JP3730563B2 (ja) 2001-11-02 2006-01-05 キヤノンソフトウェア株式会社 セッション管理装置およびセッション管理方法およびプログラムおよび記録媒体
US7370353B2 (en) 2001-11-05 2008-05-06 Cisco Technology, Inc. System and method for managing dynamic network sessions
US7512980B2 (en) 2001-11-30 2009-03-31 Lancope, Inc. Packet sampling flow-based detection of network intrusions
US20030131245A1 (en) 2002-01-04 2003-07-10 Michael Linderman Communication security system
US6801940B1 (en) * 2002-01-10 2004-10-05 Networks Associates Technology, Inc. Application performance monitoring expert
US7058718B2 (en) 2002-01-15 2006-06-06 International Business Machines Corporation Blended SYN cookies
US7076555B1 (en) 2002-01-23 2006-07-11 Novell, Inc. System and method for transparent takeover of TCP connections between servers
CN1714545A (zh) 2002-01-24 2005-12-28 艾维西系统公司 容错的数据通信的方法和系统
AU2003216161A1 (en) * 2002-02-01 2003-09-02 John Fairweather System and method for creating a distributed network architecture
US7584262B1 (en) 2002-02-11 2009-09-01 Extreme Networks Method of and system for allocating resources to resource requests based on application of persistence policies
US7228359B1 (en) 2002-02-12 2007-06-05 Cisco Technology, Inc. Methods and apparatus for providing domain name service based on a client identifier
CA2372092C (en) 2002-02-15 2010-04-06 Cognos Incorporated A queuing model for a plurality of servers
US20030195962A1 (en) 2002-04-10 2003-10-16 Satoshi Kikuchi Load balancing of servers
US8554929B1 (en) 2002-05-03 2013-10-08 Foundry Networks, Llc Connection rate limiting for server load balancing and transparent cache switching
US7707295B1 (en) 2002-05-03 2010-04-27 Foundry Networks, Inc. Connection rate limiting
US7340535B1 (en) 2002-06-04 2008-03-04 Fortinet, Inc. System and method for controlling routing in a virtual router system
US6888807B2 (en) 2002-06-10 2005-05-03 Ipr Licensing, Inc. Applying session services based on packet flows
US20040010612A1 (en) 2002-06-11 2004-01-15 Pandya Ashish A. High performance IP processor using RDMA
SE525271C2 (sv) 2002-06-19 2005-01-18 Marratech Ab Anordning och förfarande för överföring av privat information inom ett gruppkommunikationssystem
US7277963B2 (en) 2002-06-26 2007-10-02 Sandvine Incorporated TCP proxy providing application layer modifications
US7254133B2 (en) 2002-07-15 2007-08-07 Intel Corporation Prevention of denial of service attacks
US7418494B2 (en) * 2002-07-25 2008-08-26 Intellectual Ventures Holding 40 Llc Method and system for background replication of data objects
US7069438B2 (en) 2002-08-19 2006-06-27 Sowl Associates, Inc. Establishing authenticated network connections
US7430755B1 (en) 2002-09-03 2008-09-30 Fs Networks, Inc. Method and system for providing persistence in a secure network access
US7337241B2 (en) 2002-09-27 2008-02-26 Alacritech, Inc. Fast-path apparatus for receiving data corresponding to a TCP connection
US7506360B1 (en) 2002-10-01 2009-03-17 Mirage Networks, Inc. Tracking communication for determining device states
US7236457B2 (en) 2002-10-04 2007-06-26 Intel Corporation Load balancing in a network
US7487248B2 (en) 2002-10-08 2009-02-03 Brian Moran Method and system for transferring a computer session between devices
US7792113B1 (en) 2002-10-21 2010-09-07 Cisco Technology, Inc. Method and system for policy-based forwarding
US7310686B2 (en) 2002-10-27 2007-12-18 Paxfire, Inc. Apparatus and method for transparent selection of an Internet server based on geographic location of a user
US7406087B1 (en) 2002-11-08 2008-07-29 Juniper Networks, Inc. Systems and methods for accelerating TCP/IP data stream processing
US7386889B2 (en) 2002-11-18 2008-06-10 Trusted Network Technologies, Inc. System and method for intrusion prevention in a communications network
US7945673B2 (en) 2002-12-06 2011-05-17 Hewlett-Packard Development Company, L.P. Reduced wireless internet connect time
US7379958B2 (en) 2002-12-30 2008-05-27 Nokia Corporation Automatic and dynamic service information delivery from service providers to data terminals in an access point network
US7269850B2 (en) 2002-12-31 2007-09-11 Intel Corporation Systems and methods for detecting and tracing denial of service attacks
US7234161B1 (en) 2002-12-31 2007-06-19 Nvidia Corporation Method and apparatus for deflecting flooding attacks
US7835363B2 (en) 2003-02-12 2010-11-16 Broadcom Corporation Method and system to provide blade server load balancing using spare link bandwidth
US7979694B2 (en) 2003-03-03 2011-07-12 Cisco Technology, Inc. Using TCP to authenticate IP source addresses
US20040210623A1 (en) 2003-03-06 2004-10-21 Aamer Hydrie Virtual network topology generation
WO2004084085A1 (ja) 2003-03-18 2004-09-30 Fujitsu Limited サイト間連携による負荷分散システム
US20040210663A1 (en) 2003-04-15 2004-10-21 Paul Phillips Object-aware transport-layer network processing engine
US7373500B2 (en) 2003-04-15 2008-05-13 Sun Microsystems, Inc. Secure network processing
US7308499B2 (en) 2003-04-30 2007-12-11 Avaya Technology Corp. Dynamic load balancing for enterprise IP traffic
US7181524B1 (en) 2003-06-13 2007-02-20 Veritas Operating Corporation Method and apparatus for balancing a load among a plurality of servers in a computer system
US7590736B2 (en) * 2003-06-30 2009-09-15 Microsoft Corporation Flexible network load balancing
US7613822B2 (en) * 2003-06-30 2009-11-03 Microsoft Corporation Network load balancing with session information
US20050027862A1 (en) 2003-07-18 2005-02-03 Nguyen Tien Le System and methods of cooperatively load-balancing clustered servers
US7814093B2 (en) 2003-07-25 2010-10-12 Microsoft Corporation Method and system for building a report for execution against a data store
KR100568231B1 (ko) 2003-08-11 2006-04-07 삼성전자주식회사 도메인 네임 서비스 시스템 및 방법
US7385923B2 (en) 2003-08-14 2008-06-10 International Business Machines Corporation Method, system and article for improved TCP performance during packet reordering
US7467202B2 (en) * 2003-09-10 2008-12-16 Fidelis Security Systems High-performance network content analysis platform
CN100456690C (zh) 2003-10-14 2009-01-28 北京邮电大学 基于全球网络定位的全局负载均衡方法
KR100570836B1 (ko) 2003-10-14 2006-04-13 한국전자통신연구원 부하 분산 세션 레이블을 이용한 서버간의 부하 분산장치 및 방법
US7472190B2 (en) 2003-10-17 2008-12-30 International Business Machines Corporation Method, system and program product for preserving a user state in an application
JP2005141441A (ja) 2003-11-06 2005-06-02 Hitachi Ltd 負荷分散システム
US6996070B2 (en) 2003-12-05 2006-02-07 Alacritech, Inc. TCP/IP offload device with reduced sequential processing
US20050125276A1 (en) 2003-12-05 2005-06-09 Grigore Rusu System and method for event tracking across plural contact mediums
US20050213586A1 (en) 2004-02-05 2005-09-29 David Cyganski System and method to increase network throughput
US7881215B1 (en) 2004-03-18 2011-02-01 Avaya Inc. Stateful and stateless data processing
EP1741236A4 (en) 2004-04-15 2011-02-23 Qualcomm Inc PACKAGE CONCENTRATION IN WIRELESS NETWORKS
US20050240989A1 (en) 2004-04-23 2005-10-27 Seoul National University Industry Foundation Method of sharing state between stateful inspection firewalls on mep network
US7584301B1 (en) 2004-05-06 2009-09-01 Foundry Networks, Inc. Host-level policies for global server load balancing
US8423758B2 (en) 2004-05-10 2013-04-16 Tara Chand Singhal Method and apparatus for packet source validation architecture system for enhanced internet security
US7391725B2 (en) 2004-05-18 2008-06-24 Christian Huitema System and method for defeating SYN attacks
US7979072B2 (en) 2004-06-04 2011-07-12 Nortel Networks Limited Method and system for soft handoff in mobile broadband systems
US20060069774A1 (en) 2004-06-17 2006-03-30 International Business Machine Corporation Method and apparatus for managing data center using Web services
US7990849B2 (en) 2004-06-17 2011-08-02 Hewlett-Packard Development Company, L.P. Automated recovery from a split segment condition in a layer2 network for teamed network resources of a computer system
FI20040888A0 (fi) 2004-06-28 2004-06-28 Nokia Corp Palvelujen ohjaaminen pakettivälitteisessä dataverkossa
US8688834B2 (en) 2004-07-09 2014-04-01 Toshiba America Research, Inc. Dynamic host configuration and network access authentication
CN1317853C (zh) 2004-07-20 2007-05-23 联想网御科技(北京)有限公司 一种网络安全设备及其组成的实现高可用性的系统及方法
JP4313266B2 (ja) 2004-07-29 2009-08-12 株式会社エヌ・ティ・ティ・ドコモ サーバ装置、その制御方法およびコネクション確立方法
TW200606667A (en) * 2004-08-13 2006-02-16 Reallusion Inc System and method of converting and sharing data
US7423977B1 (en) 2004-08-23 2008-09-09 Foundry Networks Inc. Smoothing algorithm for round trip time (RTT) measurements
JP4555025B2 (ja) 2004-08-25 2010-09-29 株式会社エヌ・ティ・ティ・ドコモ サーバ装置、クライアント装置および処理実行方法
US7292592B2 (en) 2004-10-08 2007-11-06 Telefonaktiebolaget Lm Ericsson (Publ) Home network-assisted selection of intermediary network for a roaming mobile terminal
US20060092950A1 (en) 2004-10-28 2006-05-04 Cisco Technology, Inc. Architecture and method having redundancy in active/active stateful devices based on symmetric global load balancing protocol (sGLBP)
US20060098645A1 (en) 2004-11-09 2006-05-11 Lev Walkin System and method for providing client identifying information to a server
US8458467B2 (en) 2005-06-21 2013-06-04 Cisco Technology, Inc. Method and apparatus for adaptive application message payload content transformation in a network infrastructure element
US7634564B2 (en) 2004-11-18 2009-12-15 Nokia Corporation Systems and methods for invoking a service from a plurality of event servers in a network
US20070022479A1 (en) 2005-07-21 2007-01-25 Somsubhra Sikdar Network interface and firewall device
US7539132B2 (en) 2005-01-21 2009-05-26 At&T Intellectual Property Ii, L.P. Methods, systems, and devices for determining COS level
CN101147376A (zh) 2005-02-04 2008-03-19 诺基亚公司 降低tcp洪泛攻击同时节省无线网络带宽的装置、方法和计算机程序产品
US20060190997A1 (en) 2005-02-22 2006-08-24 Mahajani Amol V Method and system for transparent in-line protection of an electronic communications network
US20060187901A1 (en) 2005-02-23 2006-08-24 Lucent Technologies Inc. Concurrent dual-state proxy server, method of providing a proxy and SIP network employing the same
US8533473B2 (en) 2005-03-04 2013-09-10 Oracle America, Inc. Method and apparatus for reducing bandwidth usage in secure transactions
US20060206586A1 (en) 2005-03-09 2006-09-14 Yibei Ling Method, apparatus and system for a location-based uniform resource locator
WO2006098033A1 (ja) 2005-03-17 2006-09-21 Fujitsu Limited 負荷分散用通信装置及び負荷分散管理装置
KR101141645B1 (ko) 2005-03-29 2012-05-17 엘지전자 주식회사 데이터 블록 전송 제어 방법
US7606147B2 (en) 2005-04-13 2009-10-20 Zeugma Systems Inc. Application aware traffic shaping service node positioned between the access and core networks
US7990847B1 (en) 2005-04-15 2011-08-02 Cisco Technology, Inc. Method and system for managing servers in a server cluster
KR100642935B1 (ko) 2005-05-06 2006-11-10 (주)아이디스 네임 서비스 시스템 및 방법
US7826487B1 (en) 2005-05-09 2010-11-02 F5 Network, Inc Coalescing acknowledgement responses to improve network communications
JP4101251B2 (ja) 2005-05-24 2008-06-18 富士通株式会社 負荷分散プログラム、負荷分散方法、及び負荷分散装置
IES20050376A2 (en) 2005-06-03 2006-08-09 Asavie R & D Ltd Secure network communication system and method
US20060277303A1 (en) 2005-06-06 2006-12-07 Nikhil Hegde Method to improve response time when clients use network services
JP4557815B2 (ja) 2005-06-13 2010-10-06 富士通株式会社 中継装置および中継システム
US7774402B2 (en) 2005-06-29 2010-08-10 Visa U.S.A. Adaptive gateway for switching transactions and data on unreliable networks using context-based rules
US7609625B2 (en) 2005-07-06 2009-10-27 Fortinet, Inc. Systems and methods for detecting and preventing flooding attacks in a network environment
US7496566B2 (en) 2005-08-03 2009-02-24 Intenational Business Machines Corporation Priority based LDAP service publication mechanism
US8982778B2 (en) 2005-09-19 2015-03-17 Qualcomm Incorporated Packet routing in a wireless communications environment
EP1770915A1 (en) 2005-09-29 2007-04-04 Matsushita Electric Industrial Co., Ltd. Policy control in the evolved system architecture
US20070086382A1 (en) 2005-10-17 2007-04-19 Vidya Narayanan Methods of network access configuration in an IP network
JP4650203B2 (ja) 2005-10-20 2011-03-16 株式会社日立製作所 情報システム及び管理計算機
US7606232B1 (en) 2005-11-09 2009-10-20 Juniper Networks, Inc. Dynamic virtual local area network (VLAN) interface configuration
US20070118881A1 (en) 2005-11-18 2007-05-24 Julian Mitchell Application control at a policy server
CN100461692C (zh) 2005-11-28 2009-02-11 华为技术有限公司 网络设备配置系统和方法
US7694011B2 (en) 2006-01-17 2010-04-06 Cisco Technology, Inc. Techniques for load balancing over a cluster of subscriber-aware application servers
CN100452041C (zh) 2006-01-18 2009-01-14 腾讯科技(深圳)有限公司 一种读取网络资源站点信息的方法及其系统
US8149771B2 (en) 2006-01-31 2012-04-03 Roundbox, Inc. Reliable event broadcaster with multiplexing and bandwidth control functions
US7610622B2 (en) 2006-02-06 2009-10-27 Cisco Technology, Inc. Supporting options in a communication session using a TCP cookie
US8116312B2 (en) 2006-02-08 2012-02-14 Solarflare Communications, Inc. Method and apparatus for multicast packet reception
US7675854B2 (en) 2006-02-21 2010-03-09 A10 Networks, Inc. System and method for an adaptive TCP SYN cookie with time validation
US7808994B1 (en) 2006-02-22 2010-10-05 Juniper Networks, Inc. Forwarding traffic to VLAN interfaces built based on subscriber information strings
US7492766B2 (en) 2006-02-22 2009-02-17 Juniper Networks, Inc. Dynamic building of VLAN interfaces based on subscriber information strings
US8832247B2 (en) 2006-03-24 2014-09-09 Blue Coat Systems, Inc. Methods and systems for caching content at multiple levels
JP5108244B2 (ja) 2006-03-30 2012-12-26 株式会社エヌ・ティ・ティ・ドコモ 通信端末及び再送制御方法
US8170572B2 (en) 2006-04-14 2012-05-01 Qualcomm Incorporated Methods and apparatus for supporting quality of service in communication systems
US7907970B2 (en) 2006-04-14 2011-03-15 Qualcomm Incorporated Providing quality of service for various traffic flows in a communications environment
US8539075B2 (en) 2006-04-21 2013-09-17 International Business Machines Corporation On-demand global server load balancing system and method of use
US7733781B2 (en) 2006-04-24 2010-06-08 Broadcom Corporation Distributed congestion avoidance in a network switching system
US7680478B2 (en) 2006-05-04 2010-03-16 Telefonaktiebolaget Lm Ericsson (Publ) Inactivity monitoring for different traffic or service classifications
US8924269B2 (en) 2006-05-13 2014-12-30 Sap Ag Consistent set of interfaces derived from a business object model
KR100830413B1 (ko) 2006-05-25 2008-05-20 (주)씨디네트웍스 클라이언트용 서버 접속 시스템과 그를 포함하는 로드밸런싱 네트워크 시스템
US20070283429A1 (en) 2006-05-30 2007-12-06 A10 Networks Inc. Sequence number based TCP session proxy
GB0611249D0 (en) 2006-06-07 2006-07-19 Nokia Corp Communication system
US20070288247A1 (en) 2006-06-11 2007-12-13 Michael Mackay Digital life server
US20070294209A1 (en) 2006-06-20 2007-12-20 Lyle Strub Communication network application activity monitoring and control
US20090313379A1 (en) 2006-07-03 2009-12-17 Telefonaktiebolaget L M Ericsson (Publ) Topology Hiding Of Mobile Agents
US20080016161A1 (en) 2006-07-14 2008-01-17 George Tsirtsis Methods and apparatus for using electronic envelopes to configure parameters
US7970934B1 (en) 2006-07-31 2011-06-28 Google Inc. Detecting events of interest
EP1885096B1 (en) 2006-08-01 2012-07-04 Alcatel Lucent Application session border element
JP4916809B2 (ja) 2006-08-04 2012-04-18 日本電信電話株式会社 負荷分散制御装置および方法
US7580417B2 (en) 2006-08-07 2009-08-25 Cisco Technology, Inc. Method and apparatus for load balancing over virtual network links
JP4724629B2 (ja) * 2006-09-14 2011-07-13 富士通株式会社 放送配信システムおよび放送配信方法
US8584199B1 (en) 2006-10-17 2013-11-12 A10 Networks, Inc. System and method to apply a packet routing policy to an application session
US7716378B2 (en) 2006-10-17 2010-05-11 A10 Networks, Inc. System and method to associate a private user identity with a public user identity
US8312507B2 (en) 2006-10-17 2012-11-13 A10 Networks, Inc. System and method to apply network traffic policy to an application session
JP4680866B2 (ja) 2006-10-31 2011-05-11 株式会社日立製作所 ゲートウェイ負荷分散機能を備えたパケット転送装置
WO2008053954A1 (fr) 2006-11-01 2008-05-08 Panasonic Corporation Procédé de commande de communication, système de communication, serveur d'attribution d'agent domestique et noeud mobile associés
US8584195B2 (en) 2006-11-08 2013-11-12 Mcafee, Inc Identities correlation infrastructure for passive network monitoring
CN101094225B (zh) 2006-11-24 2011-05-11 中兴通讯股份有限公司 一种差异化安全服务的网络、系统和方法
US7974286B2 (en) 2006-12-04 2011-07-05 International Business Machines Corporation Reduced redundant security screening
JP4988766B2 (ja) 2006-12-22 2012-08-01 インターナショナル・ビジネス・マシーンズ・コーポレーション メッセージ・ハブ装置、プログラム、および方法
US7992192B2 (en) 2006-12-29 2011-08-02 Ebay Inc. Alerting as to denial of service attacks
US9155118B2 (en) 2007-01-22 2015-10-06 Qualcomm Incorporated Multi-link support for network based mobility management systems
US8548520B2 (en) 2007-01-26 2013-10-01 Wi-Lan Inc. Multiple network access system and method
US8379515B1 (en) 2007-02-01 2013-02-19 F5 Networks, Inc. TCP throughput control by imposing temporal delay
US8631147B2 (en) 2007-03-12 2014-01-14 Citrix Systems, Inc. Systems and methods for configuring policy bank invocations
CN100531098C (zh) 2007-03-13 2009-08-19 华为技术有限公司 一种对等网络系统及重叠网间节点的互通方法
US8352634B2 (en) 2007-04-06 2013-01-08 International Business Machines Corporation On-demand propagation of routing information in distributed computing system
US7809002B2 (en) 2007-04-16 2010-10-05 Alcatel-Lucent Usa Inc. Method and apparatus for priority services management
US20080271130A1 (en) 2007-04-30 2008-10-30 Shankar Ramamoorthy Minimizing client-side inconsistencies in a distributed virtual file system
US20080291911A1 (en) 2007-05-21 2008-11-27 Ist International, Inc. Method and apparatus for setting a TCP retransmission timer
US8191106B2 (en) 2007-06-07 2012-05-29 Alcatel Lucent System and method of network access security policy management for multimodal device
US7743157B2 (en) 2007-06-26 2010-06-22 Sap Ag System and method for switching between stateful and stateless communication modes
US20090024722A1 (en) 2007-07-17 2009-01-22 International Business Machines Corporation Proxying availability indications in a failover configuration
US7992201B2 (en) 2007-07-26 2011-08-02 International Business Machines Corporation Dynamic network tunnel endpoint selection
US8032632B2 (en) 2007-08-14 2011-10-04 Microsoft Corporation Validating change of name server
US9407693B2 (en) 2007-10-03 2016-08-02 Microsoft Technology Licensing, Llc Network routing of endpoints to content based on content swarms
JP4964735B2 (ja) 2007-10-24 2012-07-04 株式会社日立製作所 ネットワークシステム、管理計算機、及びフィルタ再構成方法
US8553537B2 (en) 2007-11-09 2013-10-08 International Business Machines Corporation Session-less load balancing of client traffic across servers in a server group
CN101163336B (zh) 2007-11-15 2010-06-16 中兴通讯股份有限公司 一种手机终端访问权限认证的实现方法
CN101169785A (zh) 2007-11-21 2008-04-30 浪潮电子信息产业股份有限公司 集群数据库系统的动态负载均衡方法
CN101442425B (zh) 2007-11-22 2012-03-21 华为技术有限公司 网关的管理方法及装置、系统
GB0723422D0 (en) 2007-11-29 2008-01-09 Level 5 Networks Inc Virtualised receive side scaling
US8125908B2 (en) 2007-12-04 2012-02-28 Extrahop Networks, Inc. Adaptive network traffic classification using historical context
US8756340B2 (en) 2007-12-20 2014-06-17 Yahoo! Inc. DNS wildcard beaconing to determine client location and resolver load for global traffic load balancing
JP5296373B2 (ja) 2007-12-26 2013-09-25 インターナショナル・ビジネス・マシーンズ・コーポレーション 処理の所要時間を予め提供する技術
US9100268B2 (en) 2008-02-27 2015-08-04 Alcatel Lucent Application-aware MPLS tunnel selection
US7930427B2 (en) 2008-03-03 2011-04-19 Microsoft Corporation Client-side load balancing
JP2009211343A (ja) 2008-03-04 2009-09-17 Kddi Corp サーバ装置および通信システム
US8185628B2 (en) 2008-03-07 2012-05-22 At&T Mobility Ii Llc Enhanced policy capabilities for mobile data services
CN101247349A (zh) 2008-03-13 2008-08-20 华耀环宇科技(北京)有限公司 一种网络流量快速分配方法
CN101547189B (zh) 2008-03-28 2011-08-10 华为技术有限公司 一种CoD业务的建立方法,系统和装置
US8151019B1 (en) 2008-04-22 2012-04-03 Lockheed Martin Corporation Adaptive network traffic shaper
CN101261644A (zh) 2008-04-30 2008-09-10 杭州华三通信技术有限公司 访问统一资源定位符数据库的方法及装置
CN101577661B (zh) 2008-05-09 2013-09-11 华为技术有限公司 一种路径切换的方法和设备
US8345691B2 (en) 2008-05-15 2013-01-01 Cellco Partnership Scheduling with quality of service support in wireless system
US8352594B2 (en) * 2008-06-12 2013-01-08 Panasonic Corporation Network monitoring device, bus system monitoring device, method and program
US7990855B2 (en) 2008-07-11 2011-08-02 Alcatel-Lucent Usa Inc. Method and system for joint reverse link access and traffic channel radio frequency overload control
CN101631065B (zh) 2008-07-16 2012-04-18 华为技术有限公司 一种无线多跳网络拥塞的控制方法和装置
US8271652B2 (en) 2008-07-24 2012-09-18 Netapp, Inc. Load-derived probability-based domain name service in a network storage cluster
US7890632B2 (en) 2008-08-11 2011-02-15 International Business Machines Corporation Load balancing using replication delay
US8307422B2 (en) 2008-08-14 2012-11-06 Juniper Networks, Inc. Routing device having integrated MPLS-aware firewall
JP5211987B2 (ja) 2008-09-26 2013-06-12 ブラザー工業株式会社 端末装置及びその時刻調整方法
US7958247B2 (en) 2008-10-14 2011-06-07 Hewlett-Packard Development Company, L.P. HTTP push to simulate server-initiated sessions
US8266288B2 (en) 2008-10-23 2012-09-11 International Business Machines Corporation Dynamic expiration of domain name service entries
US20100106854A1 (en) 2008-10-29 2010-04-29 Hostway Corporation System and method for controlling non-existing domain traffic
JP2010108409A (ja) * 2008-10-31 2010-05-13 Hitachi Ltd ストレージ管理方法及び管理サーバ
US8359402B2 (en) 2008-11-19 2013-01-22 Seachange International, Inc. Intercept device for providing content
US8260926B2 (en) 2008-11-25 2012-09-04 Citrix Systems, Inc. Systems and methods for GSLB site persistence
US8844018B2 (en) 2008-12-18 2014-09-23 At&T Intellectual Property I, L.P. Methods and apparatus to enhance security in residential networks
US20100205310A1 (en) * 2009-02-12 2010-08-12 Yaniv Altshuler System and method for dynamically optimizing tcp window size
US9112871B2 (en) 2009-02-17 2015-08-18 Core Wireless Licensing S.A.R.L Method and apparatus for providing shared services
US8364163B2 (en) 2009-02-23 2013-01-29 Research In Motion Limited Method, system and apparatus for connecting a plurality of client machines to a plurality of servers
WO2010102084A2 (en) 2009-03-05 2010-09-10 Coach Wei System and method for performance acceleration, data protection, disaster recovery and on-demand scaling of computer applications
CN101834777B (zh) 2009-03-11 2015-07-29 瞻博网络公司 基于会话高速缓存的http加速
EP2234333B1 (en) 2009-03-23 2015-07-15 Corvil Limited System and method for estimation of round trip times within a tcp based data network
US8296434B1 (en) 2009-05-28 2012-10-23 Amazon Technologies, Inc. Providing dynamically scaling computing load balancing
US8259726B2 (en) 2009-05-28 2012-09-04 Force10 Networks, Inc. Method and apparatus for forwarding table reduction
US8266088B2 (en) 2009-06-09 2012-09-11 Cisco Technology, Inc. Tracking policy decisions in a network
US8060579B2 (en) 2009-06-12 2011-11-15 Yahoo! Inc. User location dependent DNS lookup
US8289975B2 (en) * 2009-06-22 2012-10-16 Citrix Systems, Inc. Systems and methods for handling a multi-connection protocol between a client and server traversing a multi-core system
US8863111B2 (en) 2009-06-26 2014-10-14 Oracle International Corporation System and method for providing a production upgrade of components within a multiprotocol gateway
US9137301B1 (en) 2009-06-30 2015-09-15 Amazon Technologies, Inc. Client based opportunistic routing
US9749387B2 (en) 2009-08-13 2017-08-29 Sap Se Transparently stateful execution of stateless applications
US9960967B2 (en) 2009-10-21 2018-05-01 A10 Networks, Inc. Determining an application delivery server based on geo-location information
WO2011049135A1 (ja) 2009-10-23 2011-04-28 日本電気株式会社 ネットワークシステムとその制御方法、及びコントローラ
US8370920B2 (en) 2009-10-28 2013-02-05 Aunigma Network Security Corp. System and method for providing unified transport and security protocols
US8311014B2 (en) 2009-11-06 2012-11-13 Telefonaktiebolaget L M Ericsson (Publ) Virtual care-of address for mobile IP (internet protocol)
CN102714657B (zh) 2009-11-25 2015-02-04 思杰系统有限公司 用于经由tcp选项插入客户机ip地址的系统和方法
US8190736B2 (en) 2009-12-16 2012-05-29 Quantum Corporation Reducing messaging in a client-server system
US8335853B2 (en) 2009-12-17 2012-12-18 Sonus Networks, Inc. Transparent recovery of transport connections using packet translation techniques
US8255528B2 (en) 2009-12-23 2012-08-28 Citrix Systems, Inc. Systems and methods for GSLB spillover
US8285298B2 (en) 2009-12-23 2012-10-09 At&T Mobility Ii Llc Chromatic scheduler for network traffic with disparate service requirements
US7991859B1 (en) 2009-12-28 2011-08-02 Amazon Technologies, Inc. Using virtual networking devices to connect managed computer networks
US8224971B1 (en) 2009-12-28 2012-07-17 Amazon Technologies, Inc. Using virtual networking devices and routing information to initiate external actions
CA2785842A1 (en) 2009-12-31 2011-07-07 Bce Inc. Method and system for increasing performance of transmission control protocol sessions in data networks
US8789061B2 (en) 2010-02-01 2014-07-22 Ca, Inc. System and method for datacenter power management
US8301786B2 (en) 2010-02-10 2012-10-30 Cisco Technology, Inc. Application session control using packet inspection
US8804513B2 (en) * 2010-02-25 2014-08-12 The Trustees Of Columbia University In The City Of New York Methods and systems for controlling SIP overload
JP5557590B2 (ja) * 2010-05-06 2014-07-23 株式会社日立製作所 負荷分散装置及びシステム
US8533337B2 (en) 2010-05-06 2013-09-10 Citrix Systems, Inc. Continuous upgrading of computers in a load balanced environment
US8499093B2 (en) 2010-05-14 2013-07-30 Extreme Networks, Inc. Methods, systems, and computer readable media for stateless load balancing of network traffic flows
US20110289496A1 (en) 2010-05-18 2011-11-24 North End Technologies, Inc. Method & apparatus for load balancing software update across a plurality of publish/subscribe capable client devices
US8539068B2 (en) 2010-06-07 2013-09-17 Salesforce.Com, Inc. Methods and systems for providing customized domain messages
US20110307541A1 (en) 2010-06-10 2011-12-15 Microsoft Corporation Server load balancing and draining in enhanced communication systems
US9680750B2 (en) 2010-07-06 2017-06-13 Nicira, Inc. Use of tunnels to hide network addresses
US8842679B2 (en) 2010-07-06 2014-09-23 Nicira, Inc. Control system that elects a master controller instance for switching elements
US9363312B2 (en) 2010-07-28 2016-06-07 International Business Machines Corporation Transparent header modification for reducing serving load based on current and projected usage
US8520672B2 (en) 2010-07-29 2013-08-27 Cisco Technology, Inc. Packet switching device using results determined by an application node
US8675488B1 (en) 2010-09-07 2014-03-18 Juniper Networks, Inc. Subscriber-based network traffic management
US8949410B2 (en) 2010-09-10 2015-02-03 Cisco Technology, Inc. Server load balancer scaling for virtual servers
US9215275B2 (en) 2010-09-30 2015-12-15 A10 Networks, Inc. System and method to balance servers based on server load status
US20120084460A1 (en) 2010-10-04 2012-04-05 Openwave Systems Inc. Method and system for dynamic traffic steering
US9237194B2 (en) 2010-11-05 2016-01-12 Verizon Patent And Licensing Inc. Load balancer and firewall self-provisioning system
US8533285B2 (en) 2010-12-01 2013-09-10 Cisco Technology, Inc. Directing data flows in data centers with clustering services
US9609052B2 (en) 2010-12-02 2017-03-28 A10 Networks, Inc. Distributing application traffic to servers based on dynamic service response time
EP2649858B1 (en) 2010-12-07 2018-09-19 Telefonaktiebolaget LM Ericsson (publ) Method for enabling traffic acceleration in a mobile telecommunication network
US9152293B2 (en) 2010-12-09 2015-10-06 Verizon Patent And Licensing Inc. Server IP addressing in a computing-on-demand system
US8965957B2 (en) 2010-12-15 2015-02-24 Sap Se Service delivery framework
EP2659651B1 (en) 2010-12-29 2019-10-23 Citrix Systems Inc. Systems and methods for policy based integration to horizontally deployed wan optimization appliances
US8477730B2 (en) 2011-01-04 2013-07-02 Cisco Technology, Inc. Distributed load management on network devices
JP5743589B2 (ja) 2011-02-18 2015-07-01 キヤノン株式会社 Webサービスシステム、サーバ管理装置およびWebサービス提供方法
US8732267B2 (en) 2011-03-15 2014-05-20 Cisco Technology, Inc. Placement of a cloud service using network topology and infrastructure performance
EP2628281B1 (en) 2011-04-18 2017-08-16 Nec Corporation Terminal, control device, communication method,communication system, communication module, program, and information processing device
US8804620B2 (en) 2011-10-04 2014-08-12 Juniper Networks, Inc. Methods and apparatus for enforcing a common user policy within a network
US8885463B1 (en) 2011-10-17 2014-11-11 Juniper Networks, Inc. Path computation element communication protocol (PCEP) extensions for stateful label switched path management
US8897154B2 (en) 2011-10-24 2014-11-25 A10 Networks, Inc. Combining stateless and stateful server load balancing
US8918501B2 (en) 2011-11-10 2014-12-23 Microsoft Corporation Pattern-based computational health and configuration monitoring
US9788362B2 (en) 2011-11-23 2017-10-10 Telefonaktiebolaget L M Ericsson Methods and arrangements for improving transmission control protocol performance in a cellular network
US9386088B2 (en) 2011-11-29 2016-07-05 A10 Networks, Inc. Accelerating service processing using fast path TCP
US8660006B2 (en) 2011-11-29 2014-02-25 Hughes Network Systems, Llc Method and system for traffic management and resource allocation on a shared access network
US9094364B2 (en) 2011-12-23 2015-07-28 A10 Networks, Inc. Methods to manage services over a service gateway
US8874790B2 (en) 2011-12-30 2014-10-28 Verisign, Inc. DNS package in a partitioned network
US9380635B2 (en) * 2012-01-09 2016-06-28 Google Technology Holdings LLC Dynamic TCP layer optimization for real-time field performance
JP2013152095A (ja) 2012-01-24 2013-08-08 Sony Corp 時刻制御装置、時刻制御方法、およびプログラム
US10044582B2 (en) 2012-01-28 2018-08-07 A10 Networks, Inc. Generating secure name records
KR101348739B1 (ko) 2012-02-22 2014-01-08 유대영 엘이디조명장치 및 그를 가지는 엘이디조명시스템
US9386128B2 (en) 2012-03-23 2016-07-05 Qualcomm Incorporated Delay based active queue management for uplink traffic in user equipment
US8880704B2 (en) 2012-04-19 2014-11-04 Empire Technology Development Llc Migration in place by infrastructure deployment of platforms to customer hardware
US9027129B1 (en) 2012-04-30 2015-05-05 Brocade Communications Systems, Inc. Techniques for protecting against denial of service attacks
US8782221B2 (en) 2012-07-05 2014-07-15 A10 Networks, Inc. Method to allocate buffer for TCP proxy session based on dynamic network conditions
WO2014031046A1 (en) 2012-08-23 2014-02-27 Telefonaktiebolaget L M Ericsson (Publ) Tcp proxy server
US9106561B2 (en) 2012-12-06 2015-08-11 A10 Networks, Inc. Configuration of a virtual service network
US10002141B2 (en) 2012-09-25 2018-06-19 A10 Networks, Inc. Distributed database in software driven networks
KR101692751B1 (ko) 2012-09-25 2017-01-04 에이10 네트워크스, 인코포레이티드 데이터망 부하 분산
US10021174B2 (en) 2012-09-25 2018-07-10 A10 Networks, Inc. Distributing service sessions
US9843484B2 (en) 2012-09-25 2017-12-12 A10 Networks, Inc. Graceful scaling in software driven networks
US9338225B2 (en) 2012-12-06 2016-05-10 A10 Networks, Inc. Forwarding policies on a virtual service network
US9531846B2 (en) 2013-01-23 2016-12-27 A10 Networks, Inc. Reducing buffer usage for TCP proxy session based on delayed acknowledgement
US9900252B2 (en) 2013-03-08 2018-02-20 A10 Networks, Inc. Application delivery controller and global server load balancer
US20140258465A1 (en) 2013-03-11 2014-09-11 Cisco Technology, Inc. Identification of originating ip address and client port connection to a web server via a proxy server
US9992107B2 (en) 2013-03-15 2018-06-05 A10 Networks, Inc. Processing data packets using a policy based network path
WO2014165538A2 (en) 2013-04-01 2014-10-09 Nebula, Inc. Update management for a distributed computing system
US10027761B2 (en) 2013-05-03 2018-07-17 A10 Networks, Inc. Facilitating a secure 3 party network session by a network device
US10038693B2 (en) 2013-05-03 2018-07-31 A10 Networks, Inc. Facilitating secure network traffic by an application delivery controller
US9225638B2 (en) 2013-05-09 2015-12-29 Vmware, Inc. Method and system for service switching using service tags
US9319476B2 (en) 2013-05-28 2016-04-19 Verizon Patent And Licensing Inc. Resilient TCP splicing for proxy services
US10230770B2 (en) 2013-12-02 2019-03-12 A10 Networks, Inc. Network proxy layer for policy-based application proxies
US9825808B2 (en) 2014-02-24 2017-11-21 Red Hat Israel, Ltd. Network configuration via abstraction components and standard commands
US9942152B2 (en) 2014-03-25 2018-04-10 A10 Networks, Inc. Forwarding data packets using a service-based forwarding policy
US9942162B2 (en) 2014-03-31 2018-04-10 A10 Networks, Inc. Active application response delay time
US9806943B2 (en) 2014-04-24 2017-10-31 A10 Networks, Inc. Enabling planned upgrade/downgrade of network devices without impacting network sessions
US9917851B2 (en) 2014-04-28 2018-03-13 Sophos Limited Intrusion detection using a heartbeat
US9906422B2 (en) 2014-05-16 2018-02-27 A10 Networks, Inc. Distributed system to determine a server's health
US10129122B2 (en) 2014-06-03 2018-11-13 A10 Networks, Inc. User defined objects for network devices
US9986061B2 (en) 2014-06-03 2018-05-29 A10 Networks, Inc. Programming a data network device using user defined scripts

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7328267B1 (en) * 2002-01-18 2008-02-05 Cisco Technology, Inc. TCP proxy connection management in a gigabit environment
CN1836410A (zh) * 2003-08-20 2006-09-20 日本电气株式会社 会话中继设备和中继方法
CN1868193A (zh) * 2003-09-05 2006-11-22 高通股份有限公司 通信缓冲管理器和通信缓冲管理方法
CN102282828A (zh) * 2009-01-16 2011-12-14 松下电器产业株式会社 缓冲控制器和无线电通信终端

Also Published As

Publication number Publication date
US9602442B2 (en) 2017-03-21
US9154584B1 (en) 2015-10-06
US20160014052A1 (en) 2016-01-14
US20140012972A1 (en) 2014-01-09
US8977749B1 (en) 2015-03-10
US8782221B2 (en) 2014-07-15
CN103533018A (zh) 2014-01-22

Similar Documents

Publication Publication Date Title
CN103533018B (zh) 基于动态网络条件为tcp代理会话分配缓冲区的方法
CN103944954B (zh) 基于延迟的确认减少对tcp代理会话的缓存使用的方法、介质和系统
US9338225B2 (en) Forwarding policies on a virtual service network
EP3780542B1 (en) Data transmission method and device
CN104040990A (zh) 使用快速路径tcp加快服务处理
US20160094465A1 (en) Apparatus and Method for Controlling Data Flow in Communication System
CN101895466A (zh) 一种降低sctp多路径传输数据包乱序影响的方法
WO2018112877A1 (zh) 路径计算和访问请求分发方法、装置及系统
US8024483B1 (en) Selective compression for network connections
CN103401799A (zh) 负载均衡的实现方法和装置
US9843526B2 (en) Pacing enhanced packet forwarding/switching and congestion avoidance
US8159939B1 (en) Dynamic network congestion control
US20170346749A1 (en) Method and system for upload optimization
CN104767591B (zh) 一种数据发送方法及装置
CN114389959A (zh) 网络拥塞控制方法、装置、电子设备及存储介质
WO2014001458A1 (en) A method and apparatus for estimating available capacity of a data transfer path
El Khoury et al. Analysis of scalable TCP congestion control algorithm
CN104202297B (zh) 一种动态地适应服务器性能的防攻击方法和设备
CN108696450A (zh) 一种网络tcp流量处理方法及其装置
US20150012792A1 (en) Method and apparatus for providing a transmission control protocol minimum retransmission timer
Lautenschlaeger A deterministic tcp bandwidth sharing model
Yang et al. GDMD: A Transmission Control Scheme with Block Information-aware for Delay Sensitive Multimedia
CN107438106A (zh) 对等网络的负载均衡的方法、装置及对等网络系统
CN102868671B (zh) 网络拥塞控制方法、设备及系统
JP5087594B2 (ja) エッジノード、ウィンドウサイズ制御方法およびプログラム

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1189438

Country of ref document: HK

C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
REG Reference to a national code

Ref country code: HK

Ref legal event code: GR

Ref document number: 1189438

Country of ref document: HK