CN101965717A - 用于应用层资源流量控制的系统和方法 - Google Patents
用于应用层资源流量控制的系统和方法 Download PDFInfo
- Publication number
- CN101965717A CN101965717A CN2009801074315A CN200980107431A CN101965717A CN 101965717 A CN101965717 A CN 101965717A CN 2009801074315 A CN2009801074315 A CN 2009801074315A CN 200980107431 A CN200980107431 A CN 200980107431A CN 101965717 A CN101965717 A CN 101965717A
- Authority
- CN
- China
- Prior art keywords
- application layer
- way
- layer messages
- message
- web service
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/19—Flow control; Congestion control at layers above the network layer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/26—Flow control; Congestion control using explicit feedback to the source, e.g. choke packets
- H04L47/263—Rate modification at the source after receiving feedback
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/26—Flow control; Congestion control using explicit feedback to the source, e.g. choke packets
- H04L47/266—Stopping or restarting the source, e.g. X-on or X-off
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
Abstract
给出了用于控制中央web服务资源处的应用层消息流量的方法和系统,其中与中央资源相关联的web服务网关向与远程web服务客户端相关联的网关发送退避消息,与远程web服务客户端相关联的网关转而减缓去往中央资源的应用层消息流量。
Description
技术领域
本发明总体上涉及联网通信领域,并且更具体地,涉及用于控制针对资源的应用层消息流量的方法和系统。
背景技术
计算机网络在通过中央资源向远程客户端应用提供基于web的服务方面正变得日益重要。在一个示例中,工业企业、商业合作者群体或者政府代理可能希望为信息记录创建成本有效(可扩展)并且可靠的中央存储,其中信息记录在多个分布的站点处被录入或修改,继而使用web服务被动态地汇聚到中央数据存储资源中。然而,在这种情况下,预期的服务使用模式可能对网络级别和服务级别二者处的系统设计都具有巨大影响,特别是在可能期望分布式站点全部在短时间内访问中央数据存储资源的情况下。对于这些情况而言,在有限的时间量中的系统峰值负载可能极大,而平均使用率则很低。这类系统的一个示例是向地方或国家当局进行报告的文教区,其中诸如9月注册的事件在短时间内生成大量的学生记录处理。实现此类系统的一个设计挑战是缺乏足够的服务级别监测和控制点,以有效地应对关键web服务上的峰值负载。即便能够以合理的精度预测峰值负载,扩展应用部署以满足峰值负载可能过分昂贵,特别是对于必须响应其他临时负载增加的网络来说。在这些情况下,在信息存储处部署足够的处理能力以支持来自每个端点的服务峰值负载是不经济的,特别是在多数处理能力在多数时间并不使用的时候。当存在可以生成信息更新请求的多个数据录入点时,信息存储上生成的峰值负载可能是可观的。对客户端系统施加严格的使用限制常常也是不可行和有问题的,并且对于需要来自中央资源的即时服务的被阻塞web服务客户端应用来说可能是不可接受的。在端点处本地处理数据的能力将受到不利影响,并且任何网络中断实际上将终止系统使用。由此,需要这样的技术和系统,其可供中央web服务资源用以向在短时间内要求高使用级别的远程web服务客户端可靠且经济地提供web服务,而不会显著超过资源容量,并且无需对客户端系统施加严格的阻塞条件。
发明内容
下面是本发明一个或多个方面的发明内容,用以促进对本发明的基本理解,其中本发明内容不是对本发明的涵盖,而且并非意在标识本发明的特定元素或者限定本发明的范围。相反,发明内容的主要目的是在下文给出详细描述之前,以简化形式给出本发明的概念。本公开的各个方面涉及用于受控流量整形和可靠的应用层消息收发技术的系统和方法,其可以有益地用于对中央web服务资源所经历的负载进行平缓,从而降低对资源的峰值处理要求,同时避免端点阻塞备选方案的不利影响,以提供将由远程客户端使用的可靠、可扩展的信息存储或其他中央资源。由此,可以对聚合式信息存储或其他中央web服务资源进行工程化和估量,以便调节由于流量整形而产生的信息更新请求和其他资源请求消息收发,以产生“平缓的”处理要求,从而在不阻塞终端系统的情况下获得显著的成本节约。所描述的系统使用数据录入点附近的中间web服务网关(WSG)节点,用以执行应用层消息流量整形以防止数据丢失和分布式站点处的应用阻塞,并且可以在任何适当的网络节点或元件中实现,诸如一种web服务网关,其配置用于允许企业和代理在外部网环境中部署管理的服务,以用于外部公司与自治实体之间安全的服务互操作性。某些实现中的WSG位于公司的DMZ中,以实时处理web服务消息,以便促进与各个参与端点处的web服务的整合。此方面的WSG可被部署以支持聚合式信息存储或者其他中央web服务资源,其中多个数据录入点必须聚合到单个信息存储中,并且由数据录入点生成的峰值负载明显大于信息存储的平均负载要求。
按照本公开的一个或多个方面,提供一种用于控制web服务资源处的消息流量的系统,包括第一web服务网关和第二web服务网关,其可操作地与网络耦合,其中第一WSG可操作地与web服务客户端应用耦合,并且第二WSG可操作地与中央web服务资源耦合,诸如在一个示例中,中央web服务资源是数据存储。第一WSG操作以经由网络在客户端应用与web服务资源之间传送诸如XML请求和响应的应用层消息,并且包括消息队列、消息收发管理器和退避(backoff)中介组件。第一消息队列存储来自客户端应用的针对资源的外发应用层消息,并且消息收发管理器操作以经由网络将外发消息从队列向web服务资源发送,并且在消息的递送一经确认时将该消息从队列中移除。第一退避中介组件可操作用以根据接收自网络的退避消息,选择性地减缓外发应用层消息向web服务资源的传输。
第二WSG可操作用以经由网络在客户端应用与web服务资源之间传送应用层消息,并且包括:第二消息队列,用于存储来自客户端应用的针对资源的传入应用层消息;以及第二消息收发管理器,其将来自网络的传入应用层消息存储至第二消息队列,并且向第一消息收发管理器确认传入应用层消息的接收。第二WSG还包括第二退避中介组件,其至少部分地基于在第二WSG处从网络接收的传入应用层消息的速率,选择性地向第一退避中介组件发送退避消息。
按照本公开的其他方面,第二退避中介组件选择性地发送包括根据在WSG处接收的传入应用层消息的速率而确定的退避时段持续时间的退避消息,并且第一退避中介组件根据该退避时段持续时间选择性地停止外发应用层消息向web服务资源的传输。
按照本公开的另一些方面,第一退避中介组件实现退避算法,用于在从第二退避中介组件接收到退避消息时,选择性地减缓外发应用层消息向web服务资源的传输。
按照本公开的又一些方面,第一退避中介组件至少部分地基于至少一个运行时参数来实现退避算法。在这些方面的某些实现中,第一消息收发管理器确定用于将接收自第二WSG的应用层响应的等待时间,并且第一退避中介组件至少部分地基于该等待时间来实现退避算法。
按照本公开的其他方面,第一退避中介组件至少部分地基于至少一个可配置退避参数来实现退避算法。
本公开的另一些方面提供用于在网络与客户端应用或web服务资源之间传送应用层消息的WSG。该WSG包括:消息队列,用于存储来自客户端应用或者web服务资源的外发应用层消息;消息收发管理器,可操作用以将外发应用层消息从消息队列发送至网络,并且在外发应用层消息的递送一经确认时将该消息从消息队列中移除;以及退避中介组件,其可操作地与消息收发管理器耦合,用以根据接收自网络的退避消息,选择性地减缓外发应用层消息的传输。
按照本公开的另一些方面,退避中介组件可操作用以至少部分地基于接收自网络的传入应用层消息的速率,选择性地向网络上的另一WSG发送退避消息。
按照本公开的又一些方面,退避中介组件选择性地发送退避消息,该退避消息包括根据WSG处接收的传入应用层消息的速率而确定的退避时段持续时间。
按照本公开的其他方面,退避中介组件根据接收自网络的退避消息中的退避时段持续时间,选择性地停止外发应用层消息的传输。
按照本公开的另一些方面,退避中介组件实现退避算法,用于在接收到退避消息时选择性地减缓外发应用层消息的传输。而且,在某些实施方式中,退避中介组件可以至少部分地基于一个或多个运行时参数或者可配置退避参数来实现退避算法。在其他实现中,消息收发管理器确定用于将从网络上的其他WSG接收的应用层响应的等待时间,并且退避中介组件至少部分地基于该等待时间来实现退避算法。
按照本公开的另一些方面,提供一种用于控制中央web服务资源处的应用层消息流量的方法。该方法包括:至少部分地基于在与资源相关联的WSG处接收的传入应用层消息的速率,选择性地从与web服务资源相关联的WSG向与web服务客户端应用相关联的另一WSG发送退避消息;以及根据接收自WSG的退避消息,选择性地减缓外发应用层消息从该另一WSG向web服务资源的传输。
按照本公开的另一些方面,退避消息包括根据WSG处接收的传入应用层消息的速率而确定的退避时段持续时间,并且选择性地减缓外发消息传输包括:根据退避消息中的退避时段持续时间,选择性地停止外发应用层消息的传输。
按照本公开的又一些方面,选择性地减缓外发应用层消息的传输包括:在接收到退避消息时实现退避算法。
按照本公开的另一些方面,该方法还可以包括:确定用于将接收自WSG的应用层响应的等待时间,并且其中退避算法至少部分地基于等待时间来实现。
附图说明
下文的描述和附图详细记载了本发明的某些示范性实现,其代表了可以实现本发明原理的若干示例性方式。通过结合附图考虑对本发明的下文详述,本发明的各种目的、优点和新颖特征将变得易见,其中:
图1是示出一个示例性通信网络的示意性系统级框图,该通信网络具有经由web服务网关耦合至网络的多个远程web服务客户端应用,以及通过web服务网关耦合至网络的中央web服务资源,其中网关配置有退避中介组件,用于根据本公开的各个方面来控制中央web服务资源处的应用层消息流量;
图2是示出图1的系统中的两个示例性web服务网关的进一步细节的示意图;以及
图3是示出按照本公开的图1和图2的系统中的中央和远程web服务网关之间的各种应用层消息的信号流框图。
具体实施方式
此后将结合附图示出和描述本公开的各个方面的若干实施方式或实现,附图中的类似参考标号用于指代类似的单元。
首先参考图1,示出了示例性联网系统2,用于根据本公开的各个方面来控制中央web服务资源14处的应用层消息流量。系统2包括中央资源中心10,其具有中央服务应用服务器12和中央web服务资源14,在此示例中,中央web服务资源14是数据存储,用于存储和维护由远程站点20处的各远程web服务客户端应用(客户端)22使用和更新的记录、信息或者其他数据。远程站点30经由网络40可操作地与中央资源中心10耦合,并且可操作地与位于远程站点20处的远程web服务网关(WSG)30和中央资源中心10处的中央WSG 30a耦合。本公开可以通过任何形式、类型和拓扑的网络来实现,不论是有线的、无线的或其组合,其中各种消息、分组、信号、数据等根据任何适当的消息收发协议来发送和接收,其中网络可以根据任何适当的多层方案(例如,在一个实施方式中是SOAP栈、OSI基本参考模型或其衍生或变形)来操作,其中去往、来自各联网组件及其之间(包括客户端22与中央资源12、14之间)的诸如XML请求和响应消息的应用层消息在应用层之下的较低层处被分段或者分割为分组,并且其中一个或多个层可以在来自另一层的载荷部分周围添加特定的控制信息,以形成封装的分组或消息。
参考图2,WSG 30、30a按照本公开在应用层执行各种流量控制功能(针对应用层消息的传送),而不考虑较低层采用的技术。在此方面,每个WSG 30、30a包括各种组件,诸如:调度组件31、31a,消息队列32、32a,消息收发管理器组件33、33a,退避中介组件34、34a,以及接收机发射机组件36,36a,这些组件可以通过任何适当形式的硬件、软件、固件、可编程或可配置逻辑或其组合来实现,不论其是一元的还是在两个或更多实体之间分布,其中,可以预见所有这些实现都落入本公开和所附权利要求的范围之内。本公开的各种方面按照软件或算法和/或针对计算机存储器中数据位的符号化操作表示来示出和描述,普通技术人员借此表达其工作的实质。由此,所描述组件的算法、脚本、计算和其他操作可以通过编程的软件核或者其他编程或配置而实现为计算机实现的步骤,以提供期望的结果,其中这些步骤包括对诸如计算机存储器中存储的存储器状态的物理量的操作或转换。特别地,某些实施方式可以包括按照存储在电子存储器中的已编程计算机可执行指令进行操作的软件组件,其对向网络40发送或者从网络40接收的应用层消息进行操作,这些数据可以类似地在电子存储器中存储至少一段时间,其中在此描述的分组和数据可以是任何适当的形式,包括但不限于:能够被存储、传送、合并、比较以及以其他方式操作的光信号、电信号或磁信号,并且其中它们可能通过不同的说法被提及,诸如比特、值、元素、符号、字符、项、数字等。
在此方面,除非特别声明,或者根据讨论清晰可见,否则诸如“处理”或“计算”或“运算”或“确定”或“显示”等术语表示计算机系统或者类似电子计算设备的动作和过程,其操作表示为计算机系统的寄存器和存储器中的物理、电子量的数据,并将其转换成类似地表示为计算机系统存储器或寄存器或其他此类信息存储、传输或显示设备中的物理量的其他数据。此外,本公开的各个软件实现的方面通常编码在某种形式的程序存储介质上,或者在某类传输介质上实现。程序存储介质可以是磁性的(例如,软盘或硬驱动)或者光学的(例如,压缩盘只读存储器或称“CD ROM”),并且可以是只读的或随机访问的。类似地,传输介质可以是双绞线对、同轴电缆、光纤或本领域已知的某些其他适当的传输介质。本公开不限于任何给定实现的这些方面。
在操作中,系统2通过由WSG 30、30a来执行退避处理,有益地提供对web服务资源14处应用层消息流量的控制。如图2和图3中所示,远程WSG 30可操作地与网络40以及相关联的web服务客户端应用22耦合,以便经由网络40在客户端22与中央资源数据存储14之间传送应用层消息102、106。第一web服务网关30包括第一消息队列32,其存储来自客户端应用22的针对资源14的外发应用层消息。WSG 30还包括第一消息收发管理器33,其经由SOAP发射/接收组件36和网络40将外发应用层消息从队列32发送至web服务资源14。此外,当外发应用层消息的递送一经接收方WSG 30a确认时,消息收发管理器33便从队列32移除该外发应用层消息。网关30还提供退避中介组件34,其可操作地与第一消息收发管理器33耦合,其根据接收自网络40的退避消息(在这种情况下,是由中央WSG 30a的退避中介34a发送的退避消息),选择性地减缓应用层消息向中央资源14的传输。
中央站点10包括第二WSG 30a,其可操作地与网络40以及中央web服务资源14耦合,并且操作以经由网络40在客户端应用22与web服务资源14之间传送应用层消息102、106(图3)。第二web服务网关30a(图2)包括:第二消息队列32a,用于存储来自客户端应用22的针对资源14的传入应用层消息;第二消息收发管理器33a,其将来自网络40的传入消息存储至队列32a,并且向第一消息收发管理器33确认传入消息的接收;以及第二退避中介组件34a。退避中介34a至少部分地基于在WSG 30a处接收的针对资源14的传入应用层消息的速率,选择性地经由网络40向第一中介34发送退避消息。
WSG 30和30a可被部署以支持聚合式信息存储资源14或者其他形式的中央web服务资源,其中多个数据录入点必须聚合到单个信息存储中并且由数据录入点生成的峰值负载明显大于平均负载。WSG 30和30a协作地提供针对应用层(例如,XML)消息的策略控制的流量整形以及可靠的消息收发技术,以便对信息存储14所经历的负载进行“平缓”,从而获得中央资源14的峰值处理要求的较大降低。因此,WSG 30、30a为诸如数据存储14的中央共享资源提供了一种经济且可靠的方案。在示出的实施方式中,应用层消息是XML消息,当然,本公开的方法和系统可以与针对按照任何适当协议发送的任何类型或形式的应用层消息的控制消息流量结合使用,这些类型或形式包括但不限于:HL7、Modbus、CDP、NNTP、SIP、SSI、DNS、FTP、Gopher、HTTP、NFS、NTP、DHCP、SMPP、SMTP、SNMP、Telnet、ISUP、INAP、MAP、TUP、TCAP、AFP、ZIP、RTMP、NBP、FTAM、X.400、X.500、DAP、RIP、SAP、APPC等,其中本公开不限于示出的实施方式。
在一个可行实现中,中央WSG 30a的退避中介组件34a选择性地向一个或多个远程(例如,客户端)中介组件34发送退避消息,其包括根据在第二web服务网关30a处接收的传入应用层消息的速率而确定的退避时段持续时间。远程站点处的第一退避中介组件34按照该退避时段持续时间选择性地停止外发应用层消息向web服务资源14的传输。在另一实现中,第一退避中介组件34实现退避算法,以便在从第二退避中介组件34a接收到退避消息时,选择性地减缓外发应用层消息向web服务资源14的传输。在一个实施方式中,这种退避算法可以至少部分地基于一个或多个运行时参数或者可配置退避参数。在另一可行实现中,第一消息收发管理器33确定用于将从第二web服务网关30a接收的应用层响应的等待时间,其中第一退避中介组件34至少部分地基于该等待时间来实现退避算法。
在优选实现中,中央和远程WSG 30a和30在功能上等同,并且每个都可以操作以发送和接收退避消息,并且实现针对外发应用层消息的本地退避策略,以便对中央资源的网络层消息流量进行平缓或调节。由此,本公开的另一些方面提供web服务网关30、30a本身,用于在网络40与客户端应用22或者web服务资源14之间传送应用层消息102、106,其中该网关包括:消息队列(32,32a),用于存储来自客户端应用22或者web服务资源14的外发应用层消息;以及消息收发管理器33,其操作以将外发应用层消息从队列32发送至网络40,以及在消息的递送一经确认时移除该消息。而且,按照本公开的此方面,在WSG 30、30a中提供有退避中介组件34,其操作以根据接收自网络40的退避消息选择性地减缓外发应用层消息的传输。而且,退避中介34可以至少部分地基于接收自网络40的传入应用层消息的速率向网络40上的另一WSG发送退避消息,在某些实施方式中,该退避消息可以包括根据在web服务网关30处接收的传入应用层消息的速率而确定的退避时段持续时间。而且,退避组件34可以根据退避时段持续时间(如果其在接收自网络40的退避消息中被提供)选择性地停止外发应用层消息传输,和/或可以实现退避算法以便在接收到退避消息时选择性地减缓外发应用层消息的传输。退避算法实现可以至少部分地基于至少一个运行时参数或者可配置退避参数,并且其他实施方式包括消息收发管理器33,其确定用于将从其他WSG接收的应用层响应的等待时间,并且至少部分地基于该等待时间来实现退避算法。
由此,示例性WSG 30、30a以及上文描述的系统提供了一种可扩展的、可靠的web服务消息递送方案,其可以在通常部署在运行时应用层消息路径中的网关技术组件上容易地实现。而且,该方案提供了一种排队机制,用于对来自分布式或远程端点客户端的消息进行排队,其检测中央服务资源14上的累积负载,其中算法或退避实现可以是具有可配置优先级设置的各种形式,诸如策略驱动的“公平”算法(例如,轮转(round bin)、加权公平排队等),以便确保在任何端点处都不会丢弃消息。该公开的系统还提供了中介组件34、34a中的退避控制机制,用于从“中央队列”向分布式端点进行传送,以减缓消息递送,从而通过对信息存储14处存在的应用层服务流量进行有效的平缓来避免队列过载。而且,此方案提供了远程中介组件,用以基于一个或多个标准来限制远程WSG的web服务消息递送,包括但不限于由中央WSG 30a发送的退避消息,或者远程WSG 30可以基于检测的网络问题(诸如,丢失来自目的地的确认)来发起退避算法。对于这些情况来说,WSG 30可以适于维护消息队列,并且根据规定的策略来调度WS消息递送。在操作中,远程WSG30实际上对去往中央服务资源14的应用层(例如,XML)web服务消息进行代理,并且提供可靠的消息收发层以确保消息递送。这允许端点信息系统在应用层“发后不理”web服务消息,由此消除端点阻塞状况。由于这些web服务请求消息在远程WSG 30处被有效地进行排队,后续应用层自适应拥塞控制继而可以用来选择性地将传输速率调节或者适配至中央资源的能力,从而在无需客户端22的进一步干预或服务的情况下处理通信负载。以此方式,资源请求中的快速峰值或尖峰可以在较长的时间上延展,以便将(应用层处的)资源消息流量限制在可管理的水平。
每个分布式WSG 30处的消息队列32由此维护应用层web服务请求消息,直到其递送已由“下一跳”目的地确认,其中排队组件还可以支持多种类型的服务,诸如基于中央资源14的使用的服务,其中对于每种类型可能具有不同的退避消息和算法。调度器组件31、31a操作以在将传入web服务消息从队列32、32a向其目的地(例如,客户端应用22是去往WSG 30的传入消息的目的地,而中央资源14是去往中央WSG 30a的消息的目的地)转发时进行控制。在此方面,调度器31可以单独实现诸如轮转或者加权公平排队等调度算法,并且可以针对应用层传入消息的消息队列32、32a处的每类服务支持独立的调度算法。
如图2和图3所示,远程客户端22提供XML请求消息,其通过网络40经由相关联的远程WSG 30向中央WSG 30a发送,以请求来自中央资源14的web服务。资源14转而通过WSG 30a向分布式WSG 30和客户端22发回XML响应消息。如图3所示,该过程继续以这样的应用层请求和响应消息102,直到中央WSG 30a处出现阈值量的传入消息流量。此时,中央WSG 30a的退避中介组件34a向一个或多个远程WSG 30发送一个或多个退避消息,并且本地退避中介34实现去往中央资源14的外发应用层消息流量的选择性减缓,由此,退避消息之后的总体消息流量106将及时延展开,以便将资源负载平缓到可管理的水平。
本公开的另一些方面提供控制中央web服务资源14处的应用层消息流量的方法。该方法包括:至少部分地基于在与中央web服务资源14相关联的web服务网关30a处接收的传入应用层消息的速率,从该web服务网关30a向与web服务客户端应用22相关联的另一web服务网关30发送退避消息。该方法还包括:根据接收自web服务网关30a的退避消息,选择性地减缓外发应用层消息从另一web服务网关30向web服务资源14的传输。在某些实施方式中,退避消息可以包括根据在web服务网关30处接收的传入应用层消息的速率而确定的退避时段持续时间,并且选择性地减缓外发应用层消息传输可以包括:根据退避消息中的退避时段持续时间,选择性地停止传输。选择性流量减缓可以包括在接收到退避消息时实现退避算法,并且该方法可以包括:确定将要从web服务网关接收的应用层响应的等待时间,并且至少部分地基于该等待时间来实现退避算法。
尽管已经关于一个或多个示例性实现或实施方式示出和描述了本发明,但是在阅读和理解本说明书和附图之后,对于本领域其他技术人员来说可以进行等效的改变和修改。特别地,在上文描述组件(组装、设备、系统、电路等)所执行的各种功能方面,除非特别说明,用来描述这些组件的术语(包括提及“装置”)意在对应于执行所描述组件的特定功能的任何组件(即,功能性等效),即使其在结构上与示出的在本发明示例性实施方式中执行功能的所公开结构并不等效。而且,尽管本发明的特定特征仅关于多种实现之一而公开,但是只要期望并且对任何给定或特定的应用有益,此类特征可以与其他实现的一个或多个其他特征相结合。而且,对于详细描述和/或权利要求中使用的术语“包含”、“具有”或其变形,这些术语意在包含性,其方式类似于术语“包括”。
Claims (10)
1.一种用于控制web服务资源处的消息流量的系统,包括:
第一web服务网关,其可操作地与网络和web服务客户端应用耦合,以经由所述网络在所述客户端应用与web服务资源之间传送应用层消息,所述第一web服务网关包括:
第一消息队列,用于存储来自所述客户端应用的针对所述资源的外发应用层消息,
第一消息收发管理器,其可操作用以经由所述网络将所述外发应用层消息从所述第一消息队列向所述web服务资源发送,并且在所述外发应用层消息的递送一经确认时将所述外发应用层消息从所述第一消息队列移除,以及
第一退避中介组件,其可操作地与所述第一消息收发管理器耦合,以根据接收自所述网络的退避消息,选择性地减缓外发应用层消息向所述web服务资源的传输;以及
第二web服务网关,其可操作地与所述网络和所述web服务资源耦合,以经由所述网络在所述客户端应用与所述web服务资源之间传送应用层消息,所述第二web服务网关包括:
第二消息队列,用于存储来自所述客户端应用的针对所述资源的传入应用层消息,
第二消息收发管理器,其可操作用以将来自所述网络的所述传入应用层消息存储至所述第二消息队列,以及向所述第一消息收发管理器确认对所述传入应用层消息的接收,以及
第二退避中介组件,其可操作地与所述第二消息收发管理器耦合,以至少部分地基于在所述第二web服务网关处从所述网络接收的传入应用层消息的速率,选择性地经由所述网络向所述第一退避中介组件发送退避消息。
2.如权利要求1所述的系统,其中所述应用层消息是XML消息。
3.如权利要求1所述的系统,其中所述第二退避中介组件选择性地发送包括根据在所述第二web服务网关处接收的传入应用层消息的速率而确定的退避时段持续时间的退避消息,并且其中所述第一退避中介组件根据所述退避时段持续时间,选择性地停止外发应用层消息向所述web服务资源的传输。
4.如权利要求1所述的系统,其中所述第一退避中介组件实现退避算法,以在从所述第二退避中介组件接收到退避消息时,选择性地减缓外发应用层消息向所述web服务资源的传输。
5.如权利要求1所述的系统,其中所述web服务资源是数据存储。
6.一种用于在网络与客户端应用或web服务资源之间传送应用层消息的web服务网关,包括:
消息队列,用于存储来自所述客户端应用或者所述web服务资源的外发应用层消息;
消息收发管理器,可操作用以将所述外发应用层消息从所述消息队列向所述网络发送,以及在所述外发应用层消息的递送一经确认时将所述外发应用层消息从所述消息队列移除;以及
退避中介组件,其可操作地与所述消息收发管理器耦合,以根据接收自所述网络的退避消息,选择性地减缓外发应用层消息的传输。
7.如权利要求6所述的web服务网关,其中所述退避中介组件可操作用以至少部分地基于接收自所述网络的传入应用层消息的速率,选择性地向所述网络上的另一web服务网关发送退避消息。
8.如权利要求6所述的web服务网关,其中所述退避中介组件根据接收自所述网络的退避消息中的退避时段持续时间,选择性地停止外发应用层消息的传输。
9.如权利要求6所述的web服务网关,其中所述退避中介组件实现退避算法,以在接收到退避消息时选择性地减缓外发应用层消息的传输。
10.一种用于控制中央web服务资源处的应用层消息流量的方法,所述方法包括:
至少部分地基于在与所述资源相关联的web服务网关处接收的传入应用层消息的速率,选择性地从与所述web服务资源相关联的web服务网关向与web服务客户端应用相关联的另一web服务网关发送退避消息;以及
根据接收自所述web服务网关的所述退避消息,选择性地减缓外发应用层消息从所述另一web服务网关向所述web服务资源的传输。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/041,157 US7912975B2 (en) | 2008-03-03 | 2008-03-03 | System and method for application layer resource traffic control |
US12/041,157 | 2008-03-03 | ||
PCT/IB2009/052729 WO2009109951A2 (en) | 2008-03-03 | 2009-03-02 | System and method for application layer resource traffic control |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101965717A true CN101965717A (zh) | 2011-02-02 |
CN101965717B CN101965717B (zh) | 2013-08-28 |
Family
ID=41014040
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009801074315A Expired - Fee Related CN101965717B (zh) | 2008-03-03 | 2009-03-02 | 用于应用层资源流量控制的系统和方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US7912975B2 (zh) |
EP (1) | EP2266262B1 (zh) |
JP (1) | JP5441933B2 (zh) |
KR (1) | KR101160481B1 (zh) |
CN (1) | CN101965717B (zh) |
WO (1) | WO2009109951A2 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016035612A (ja) * | 2014-08-01 | 2016-03-17 | 株式会社ジェーエムエーシステムズ | 通信システム、通信方法及び当該通信方法を実施するためのプログラム |
CN113168330A (zh) * | 2018-10-03 | 2021-07-23 | 推特公司 | 客户端软件后退 |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5201415B2 (ja) * | 2009-03-05 | 2013-06-05 | 富士通株式会社 | ログ情報発行装置、ログ情報発行方法およびプログラム |
US8893210B2 (en) * | 2010-08-20 | 2014-11-18 | Sony Corporation | Server load balancing for interactive television |
US8918801B2 (en) | 2010-08-30 | 2014-12-23 | Sony Corporation | Transmission apparatus, transmission method, reception apparatus, reception method, program, and broadcasting system |
US8738704B2 (en) * | 2010-09-07 | 2014-05-27 | Xerox Corporation | Publish/subscribe broker messaging system and method |
US8782211B1 (en) * | 2010-12-21 | 2014-07-15 | Juniper Networks, Inc. | Dynamically scheduling tasks to manage system load |
KR20120138546A (ko) * | 2011-06-15 | 2012-12-26 | 한국전자통신연구원 | 분산 네트워크에서 우선순위에 기반한 디스커버리를 수행하는 장치 및 방법과, 디스커버리 백오프 타임 결정 방법 |
WO2013066350A1 (en) * | 2011-11-04 | 2013-05-10 | Panasonic Corporation | Apparatus and method for delayed response handling in mobile communication congestion control |
TW201513610A (zh) | 2013-09-30 | 2015-04-01 | Ibm | 在一資訊設備叢集中依後端應用系統之資源利用狀態處理輸入異動之協商方法、裝置與電腦程式產品 |
CN106063205B (zh) * | 2013-11-06 | 2018-06-29 | 卡尔加里科技股份有限公司 | 远程访问环境中客户端流量控制的装置和方法 |
US9832138B1 (en) | 2014-04-16 | 2017-11-28 | Google Llc | Method for automatic management capacity and placement for global services |
US9652311B2 (en) * | 2014-10-28 | 2017-05-16 | International Business Machines Corporation | Optimization of non-volatile memory in message queuing |
US9515932B2 (en) * | 2015-02-06 | 2016-12-06 | Oracle International Corporation | Methods, systems, and computer readable media for conducting priority and compliance based message traffic shaping |
US10069673B2 (en) | 2015-08-17 | 2018-09-04 | Oracle International Corporation | Methods, systems, and computer readable media for conducting adaptive event rate monitoring |
JP6623797B2 (ja) * | 2016-01-29 | 2019-12-25 | コニカミノルタ株式会社 | 通信システム、通信中継装置およびプログラム |
US10855616B2 (en) * | 2017-01-11 | 2020-12-01 | Sony Interactive Entertainment LLC | Predicting wait time for new session initiation during increased data traffic latency |
US10439946B2 (en) * | 2017-02-10 | 2019-10-08 | Intel Corporation | Technologies for endpoint congestion avoidance |
US12014053B2 (en) * | 2022-11-05 | 2024-06-18 | Dell Products, L.P. | Proactive traffic shaping with service levels |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004208042A (ja) * | 2002-12-25 | 2004-07-22 | Toshiba Corp | ゲートウェイ装置、通信システム |
US7693952B2 (en) | 2003-03-27 | 2010-04-06 | Microsoft Corporation | Availability and scalability in a messaging system in a manner transparent to the application |
WO2004102396A1 (ja) * | 2003-05-14 | 2004-11-25 | Fujitsu Limited | 遅延ストレージ装置および遅延処理方法 |
JP3917124B2 (ja) * | 2003-10-21 | 2007-05-23 | 株式会社日立国際電気 | 画像蓄積配信システムの帯域制御方式 |
JP4305364B2 (ja) * | 2004-10-25 | 2009-07-29 | 日本電気株式会社 | Webサービス要求中継システム、Webサービス要求中継方法、中継サーバ、及びそのプログラム |
US7730196B2 (en) | 2004-12-03 | 2010-06-01 | Microsoft Corporation | Efficient transfer of messages using reliable messaging protocols for web services |
US8200537B2 (en) | 2006-03-31 | 2012-06-12 | Digital River, Inc. | Integrated retailer process |
-
2008
- 2008-03-03 US US12/041,157 patent/US7912975B2/en not_active Expired - Fee Related
-
2009
- 2009-03-02 CN CN2009801074315A patent/CN101965717B/zh not_active Expired - Fee Related
- 2009-03-02 WO PCT/IB2009/052729 patent/WO2009109951A2/en active Application Filing
- 2009-03-02 EP EP09718048A patent/EP2266262B1/en not_active Not-in-force
- 2009-03-02 JP JP2010549247A patent/JP5441933B2/ja not_active Expired - Fee Related
- 2009-03-02 KR KR1020107021861A patent/KR101160481B1/ko active IP Right Grant
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016035612A (ja) * | 2014-08-01 | 2016-03-17 | 株式会社ジェーエムエーシステムズ | 通信システム、通信方法及び当該通信方法を実施するためのプログラム |
CN113168330A (zh) * | 2018-10-03 | 2021-07-23 | 推特公司 | 客户端软件后退 |
Also Published As
Publication number | Publication date |
---|---|
US7912975B2 (en) | 2011-03-22 |
WO2009109951A3 (en) | 2009-12-30 |
JP2011517356A (ja) | 2011-06-02 |
CN101965717B (zh) | 2013-08-28 |
US20090222573A1 (en) | 2009-09-03 |
KR20100127806A (ko) | 2010-12-06 |
KR101160481B1 (ko) | 2012-06-28 |
EP2266262A2 (en) | 2010-12-29 |
JP5441933B2 (ja) | 2014-03-12 |
EP2266262B1 (en) | 2012-10-31 |
WO2009109951A2 (en) | 2009-09-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101965717B (zh) | 用于应用层资源流量控制的系统和方法 | |
US8489722B2 (en) | System and method for providing quality of service in wide area messaging fabric | |
CN101466109B (zh) | 一种WiMAX网络管理的通信系统和方法 | |
CN104412549B (zh) | 通信网络的网络实体 | |
CA2388712A1 (en) | Distributed network management system and method | |
KR20100034324A (ko) | 무선 센서 네트워크의 노드의 패킷 전송 장치 및 방법 | |
US10805426B2 (en) | Method and system for supporting data upload from a mobile gateway device to a backend entity | |
US9857825B1 (en) | Rate based failure detection | |
WO2012085850A1 (en) | Component, system and method for controlling communication of data of at least one application of a communications network | |
US11683110B2 (en) | Edge synchronization systems and methods | |
CN103220228A (zh) | 一种bgp路由的发送方法和设备 | |
Kim et al. | A combined network control approach for the edge cloud and LPWAN‐based IoT services | |
Iqbal et al. | Minimize the delays in software defined network switch controller communication | |
Li et al. | Congestion control mechanism based on dual threshold DI-RED for WSNs | |
CN114500644A (zh) | 一种市政设施监测系统中的物联数据管理方法 | |
CN101860938A (zh) | 感知网络上下文信息实现自治路由控制的网络节点和方法 | |
US20110191460A1 (en) | System and a Method Relating to Network Management | |
Cakir et al. | Digital Twin Middleware for Smart Farm IoT Networks | |
Al-Share et al. | A collaborative learning-based algorithm for task offloading in UAV-aided wireless sensor networks | |
Dian | Fundamentals of Internet of Things: For Students and Professionals | |
Argibay-Losada et al. | Transport-layer control to increase throughput in bufferless optical packet-switching networks | |
Farhan et al. | Internet of things scalability: Communications and data management | |
CN101471861A (zh) | 提高对等叠加网络服务质量的方法、装置以及对等节点 | |
CN113344354A (zh) | 智能电网应用场景的数据标准化处理系统和处理方法 | |
US20230252323A1 (en) | Dynamic inferencing at an iot edge |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20130828 |