CN1846419A - 自管理媒介信息流 - Google Patents
自管理媒介信息流 Download PDFInfo
- Publication number
- CN1846419A CN1846419A CNA2004800248321A CN200480024832A CN1846419A CN 1846419 A CN1846419 A CN 1846419A CN A2004800248321 A CNA2004800248321 A CN A2004800248321A CN 200480024832 A CN200480024832 A CN 200480024832A CN 1846419 A CN1846419 A CN 1846419A
- Authority
- CN
- China
- Prior art keywords
- module
- message
- new
- media
- node
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0654—Management of faults, events, alarms or notifications using network fault recovery
- H04L41/0663—Performing the actions predefined by failover planning, e.g. switching to standby network elements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0654—Management of faults, events, alarms or notifications using network fault recovery
- H04L41/0668—Management of faults, events, alarms or notifications using network fault recovery by dynamic selection of recovery network elements, e.g. replacement by the most appropriate element after failure
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
- H04L41/0816—Configuration setting characterised by the conditions triggering a change of settings the condition being an adaptation, e.g. in response to network events
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0805—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
- H04L43/0811—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking connectivity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/06—Message adaptation to terminal or network requirements
- H04L51/063—Content adaptation, e.g. replacement of unsuitable content
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1008—Server selection for load balancing based on parameters of servers, e.g. available memory or workload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/101—Server selection for load balancing based on network conditions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1012—Server selection for load balancing based on compliance of requirements or conditions with available server resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1014—Server selection for load balancing based on the content of a request
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1023—Server selection for load balancing based on a hash applied to IP addresses or costs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1034—Reaction to server failures by a load balancer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/288—Distributed intermediate devices, i.e. intermediate devices for interaction with other intermediate devices on the same level
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/55—Push-based network services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/563—Data redirection of data network streams
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
- H04L67/63—Routing a service request depending on the request content or context
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/12—Discovery or management of network topologies
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Preparation Of Compounds By Using Micro-Organisms (AREA)
Abstract
提供一种用于在包括媒介结构的计算机网络内媒介信息流的方法,所述媒介结构包括在逻辑媒介循环内设置的多个逻辑节点。该方法提供算法用于:处理在媒介器节点之间的媒介任务;响应于改变请求,重新配置该媒介结构的逻辑拓扑,同时保存系统不变量;和通过添加替代单个节点的整个子网络,优化该媒介结构的构成。该方法还解决了故障检测和恢复。
Description
技术领域
本发明涉及媒介信息流系统。具体而言,本发明涉及自管理分布式媒介系统,该系统同时要求传播的对等通信和在这些传播消息之和上收集的信息的控制程度。
背景技术
对等(P2P)通信系统允许计算实体(对等体)建立相互之间的软件连接(虚通道)。因此,P2P系统允许对等体传送或共享计算任务和资源,而不明确需要集中式控制。P2P可以在包括一个或更多个服务器的普通网络内操作:对等体可以将信息提供(发布)给在该网络上的至少一个业务和/或登记(预约)在该网络上的业务以接收由另一个对等体发布的信息。
受益于提供集中式控制的消息发送系统也是公知的。在此,所有的消息从发布者通过中心位置直接发送给用户,在所述中心位置上对消息执行一些计算(媒介)。根据进入消息生成新消息(例如摘要),并发送新消息给适当的用户。
在现有技术的集中式媒介系统内,通过中心网络点(位置)发送所有的消息业务,媒介服务驻留在所述中心网络点上。从逻辑单元的形式来看,这些系统构建为包括中央控制点的星形结构化模型,其中在所述中央控制点上执行媒介任务。该模型在图1A中图示:信息的每个信源(发布者)和信宿(用户)具有连接到中央媒介集线器的通信线路。在许多情况下,信源和信宿表示在不同模式中工作的相同实体,可能无法在结构上相互区分。
与这样的结构相关的问题是众所周知的。它们可能面临在媒介点上带宽的限制。即使可以将逻辑星形状叠加在高度连接的物理网络上,但是根据在中央点和网络之间可用的带宽(参见图1B),通过中央点的所有信息的基本流将导致固有的吞吐量瓶颈。尽管在联网技术中的改进意味着将继续提高带宽的可用性,但是增加带宽具有固有的经济成本,在某些情况下,可能导致对整个系统的吞吐量的实际限制。这种限制表现为在用户的最大数量或者每个用户能够发送和接收信息的速率上的限制。
实际上,存在多种系统的例子,其中P2P结构或集中式媒介结构都是无法完全满意的。通常,需要一些逻辑处理以在消息发送系统内广播的消息总量上执行处理。任一种结构都不完全合适的系统种类的例子包括:贸易系统,其中潜在的购买者和销售者相互通告,需要媒介以保证需求的交易匹配;媒介新闻或发布系统,其中中央管理者在传播信息之前执行编辑控制;并未被主动控制但是需要信息流的排序日志以保存在中央数据库内的系统;会话服务,允许向加入正在进行的会话的用户介绍最新背景;分配加密密钥(所谓的密钥分配问题);用于发现在分布式网络上的数据(状态)和服务的位置的系统;和用于定位和与移动用户通信的系统。
上述的所有的例子都需要对等通信,和当将通信视为整体时信息流的集中式媒介的程度。
因此,本发明的目的是避免或至少减轻上述问题。
发明内容
根据本发明的一个方面,提供一种用于在计算机网络内媒介消息流的方法,其中该计算机网络具有媒介网络,该媒介网络包括:
至少一个本地点存在(LPP)模块,用于在媒介网络和客户程序之间的接口连接;
至少一个媒介器(M)模块,用于主持媒介任务;
至少一个媒介器路由器(MR)模块,用于分析进入消息的内容,每个MR模块根据所述内容将进入消息路由发送到预定的M模块;和
至少一个传输代理(TP)模块,用于将消息转发给至少一个所述LPP模块,
其中,在该方法中,沿着媒介循环传播到媒介网络的进入消息,包括步骤:
LPP模块将进入消息寻址到所述至少一个媒介器路由器(MR)模块中的相应一个媒介器路由器(MR)模块;
在所述被寻址的MR模块上,分析进入消息的内容和根据所述被分析的内容将所述消息路由发送到预定的媒介器模块;
在所述预定的媒介器模块上,将媒介任务应用于所述被分析的消息,和将所媒介的消息发送给所述TP模块中的相应一个TP模块;和
在所述TP模块上,接收所述媒介消息,将所述媒介消息转发给至少一个所述LPP模块。
在整个文件中,术语物理节点仅指物理机器。可互换地使用术语“节点”和“逻辑节点”来指包括状态属性的位置。根据媒介网络的逻辑拓扑结构,模块提供相关逻辑节点的功能。
因此,分布式媒介构成在P2P结构和集中式媒介之间的混合。使用媒介器节点的中央但分布式媒介网络替换星形结构的逻辑中央集线器,所述媒介器节点具有到信源和信宿的外部网络的多条连接。该方法解决了星形(中央媒介)结构的带宽限制。根据在其携带的消息集合上施加的一些分类,在分布式媒介网络的节点之间分配该系统的媒介需求。根据消息内容,将所有进入消息的集合划分成多个非重叠的子集。这种分类的概念并不影响系统操作的表面上可观察到的行为,而仅影响其整体吞吐量。
该分布式媒介网络的物理结构完全不同于中央式媒介网络;在前者的情况下,存在许多网络连接以吸收相同量值的信息流,导致在每个物理节点上成比例降低的带宽要求。然而,可以将逻辑图表示为放置在单个网络内的多个媒介器节点,将理解,实际上,物理节点站可以被物理地,甚至在地理上,分散在多个机器之间。当在世界范围内的站点上部署此结构时,当在逻辑和物理结构之间不可能存在任何密切关系时,非常可能如此。
显然,该方法的优点来自于连网机器的物理组织。每个媒介器模块支持自治功能,能够执行其动作,而不参考任何其它模块。换句话说,没有模块全局依赖于任何其它模块,或者需要其直接相邻模块不知道的任何更详细的网络知识。给定高度连接的网络基础设施,将实现给定吞吐量的最大需要带宽降低到任意的较低数值。假设可以将媒介负载均匀地分布在由媒介服务使用的机器之间,这可以通过按比例增加在网络上的媒介器节点的数量来实现。在网络内任一点上的最大需求带宽依然正比于网络负载,但是也反比于配置的媒介器节点数量。自然地,因为组织将整个媒介需求划分到多个平台上导致任何额外的网络负载必须足够低以避免影响此结构的优点。
由媒介网络处理的进入消息可以属于一组消息类型之一,包括:从作为信息源的处理发出的新信息;与媒介网络内的节点状态相关的查询,它需要应答;和兴趣表示,只要由媒介网络接收到相关的新信息,它需要正在进行的应答。
通过作为进入消息沿着媒介循环引导控制消息,该方法可以引起媒介网络的内部操作的改变。
除了承载客户消息之外,该分布式媒介网络便于控制或管理消息的传播。管理消息的不同在于它们仅涉及指令到网络内每个循环中连续节点的传播,具体而言引起内部操作中的改变。它们可能与客户消息交错。
通过在内部操作内的寻址改变,本发明试图允许在固定拓扑网络内执行动态负载平衡和与在逻辑拓扑内的任一改变相关的媒介处理转移,在任一情况下,都不引入不稳定性。
在内部操作内的改变可以是在供体媒介器模块和接收者媒介器模块之间的媒介任务的切换。
其中控制消息是媒介器切换消息,媒介器切换消息的内容描述具有预定内容标签的内容从供体媒介器模块到接收者媒介器模块的重新分配,其中当前将供体媒介器模块登记为处理所述内容,和
其中媒介器切换消息的方向包括:
从预定的LPP模块,将媒介器切换消息发送给相应的相关MR模块;
在相关MR模块上,读取所述内容标签,和将该消息转发给供体媒介器模块;和
一旦接收该媒介器切换消息,供体媒介器模块:改变媒介器节点状态;将MEDIATOR_HANDOVER消息发送给接收者媒介器模块,该MEDIATOR_HANDOVER消息包含媒介器切换消息的内容;将MEDIATOR_CHANGED消息发送给相关的TP模块,和随后改变状态以将包含内容标签的消息转发给接收者媒介器模块。
因为用户的命令根据分类随着时间改变,切换操作提供允许在其上执行媒介任务的节点物理地移动以平衡网络和整个系统的计算负载的功能。
切换优选还包括:
TP模块将MEDIATOR_CHANGED消息转发给至少一个LPP模块;
接收者媒介器模块生成NEW_MEDIATOR_ACTIVE消息,该NEW_MEDIATOR_ACTIVE消息包括与重新分配的内容对应的负载,和将所述NEW_MEDIATOR_ACTIVE消息广播给与之相关的所有的TP模块;和
LPP模块缓冲在MEDIATOR_CHANGED消息的接收和NEW_MEDIATOR_ACTIVE消息的接收之间的所有进入消息。
有利地,该方法还包括:
随后,LPP模块将NEW_MEDIATOR_ACTIVE消息转发给相关的MR模块;和
只要MR模块接收到NEW_MEDIATOR_ACTIVE消息,则更新用于所述MR模块的路由选择表格以使将来的匹配NEW_MEDIATOR_ACTIVE消息负载的内容发送给接收者媒介器模块而非供体媒介器模块;向供体媒介器模块通知已经更新路由选择表格,此后,该供体媒介器模块停止转发消息,一旦所有的MR模块都已经被通知接收者媒介器模块现在是用于重新分配内容的媒介器模块。
切换操作并不考虑在面对逻辑拓扑结构内的任意改变时动态媒介处理的转移。
在内部操作内的改变也可以是媒介网络的逻辑拓扑结构的重新配置,和其中控制消息是一个或多个重新配置消息。
逻辑拓扑结构的重新配置优选包括生成因果障碍以确保在重新配置之后通过媒介网络发送的消息之前,传送在重新配置之前通过的媒介网络的消息。在该情况下,生成因果障碍的步骤可以包括:围绕媒介循环来循环所述一个或多个重新配置消息;和确保已经向该循环内的每个模块充分地通知重新配置。
有利地,媒介结构的逻辑拓扑结构的重新配置是插入附加本地点存在(LPP)节点,和所述一个或多个重新配置消息包括唯一地标识该附加LPP节点的new_LPP消息,该插入包括:
在附加LPP节点上的预定的附加LPP模块内,生成new_LPP消息,和将该new_LPP消息发送给在MR节点上的相应MR模块;在相应MR模块内,接收该new_LPP消息,更新MR节点的参考计数,和将该new_LPP消息传播给在该结构内的所有媒介器模块;在每个媒介器模块内,接收该new_LPP消息,和将该new_LPP消息发送给在TP节点上的各个相应的TP模块,每个TP节点包括相关的信用余额(credit balance);
在每个相应的TP模块内,接收该new_LPP消息,和发送相应的、扩展的new_LPP消息给附加LPP模块,该扩展的new_LPP消息包括相应的相关信用余额;
在附加LPP模块内,接收该扩展的new_LPP消息,从而完成该new_LPP消息的循环;和
在该附加LPP模块内,求和所述信用余额,当信用余额总额达到预定完成值时,保证重新配置的足够通知。
媒介结构的逻辑拓扑结构的重新配置可以包括进一步插入附加媒介器路由器(MR)节点,和其中所述一个或多个重新配置消息还包括唯一地标识附加MR节点的new_MR消息,该进一步插入包括:
附加LPP将new_MR消息发送给在具有相应信用余额的MR节点上的相应MR模块;
该相应MR模块通过发送new_MR_route_table消息响应于该new_MR消息,该new_MR_route_table消息包括:用于附加MR节点的地址信息、附加LPP节点的地址、路由选择信息和相应信用余额的一部分;
随后,该相应的MR模块将该new_MR_route_table消息转发给任意媒介器模块;
该任意媒介器模块将该new_MR_route_table消息传送给附加的LPP模块;
随后,该附加的LPP模块将路由选择映射传送给附加MR模块;和
在附加MR模块内,使用new_MR_route_table消息的内容以初始化新的信用余额和路由选择映射。
重新配置优选还包括,将附加LPP模块寻址的MR模块改变成附加MR模块,其中该附加MR模块一旦接收到new_MR_route_table消息就将MR_initialised()消息发送给附加LPP模块,和其中附加LPP模块分别将inc_ref_count()和dec_ref_count()消息发送给附加和初始化MR模块。
可替换地,媒介结构的逻辑拓扑的重新配置可以是插入附加媒介器(M)节点,和所述一个或多个重新配置消息包括唯一地标识该附加媒介器节点的new_M消息,该插入包括:
预定的附加媒介器模块生成该new_M消息,和将该new_M消息发送给在TP节点上的相应TP模块;
在相应的TP模块内,接收该new_M消息,更新该TP模块的参考计数,和将该new_M消息传播给在此结构内的所有LPP模块;
在每个LPP模块内,接收该new_M消息,将该new_M消息发送给在MR节点上的各个相应的MR模块,每个MR模块包括相关的信用余额;
在每个相应的MR模块内,接收该new_M消息,和发送各个扩展的new_M消息给附加媒介器模块,该扩展的new_M消息包括相应的相关信用余额;和
在附加媒介器模块内,接收该扩展的new_M消息,从而完成该new_M消息的循环;和
在该附加媒介器模块内,求和所述信用余额,当信用余额总额达到预定完成值时,保证重新配置的足够通知。
在后一情况下,媒介结构的逻辑拓扑结构的重新配置可以包括进一步插入附加传输代理(TP)节点,和其中所述一个或多个重新配置消息还包括唯一地标识附加TP节点的new_TP消息,该进一步插入包括:
该附加媒介器模块接收该new_TP消息;
该附加媒介器模块将该附加媒介器节点的地址添加到该new_TP消息,和将该new_TP消息转发给在包括相应信用余额的TP节点上的相应TP模块;
该相应TP模块通过生成扩展的new_TP消息来响应new_TP消息,所述扩展的new_TP消息包括:用于该附加TP节点的地址信息、该附加媒介器节点的地址、LPP列表和相应信用余额的一部分;
随后,相应的TP模块将该new_TP消息转发给任意的LPP模块;
随后,该任意的LPP模块将新的路由选择映射消息发送给该附加TP模块;
该附加TP模块随后将该路由选择映射发送给附加MR模块;和
该附加TP模块使用该新路由选择映射消息的内容初始化新的相应信用余额和LPP模块列表。
优选地,重新配置还包括:将附加媒介器模块寻址的TP模块改变成附加TP模块,其中该附加TP模块一旦接收到新的路由选择映射消息则将TP_initialised()消息发送给附加媒介器模块,和其中该附加媒介器模块将inc_ref_count()和dec_ref_count()消息分别发送给该附加和初始化TP模块。
计算机网络还可以便利地包括故障检测节点,它与在媒介网络内的每个节点通信,该方法还包括:
在故障检测节点上,提供故障检测模块;
在媒介网络的每个节点上,提供故障报告模块;
只要在节点之间的输入或输出通信链路故障,则每个所述的故障报告模块将与故障通信链路相关的信息报告给所述故障检测模块;和
所述故障检测模块确定所述故障链路是否表示故障节点。
在故障检测模块确定所述故障链路表示故障节点的情况下,该方法还可以包括:建立与故障节点相同类型的新节点;使该新节点具有与故障节点的内部状态和直接相邻拓扑结构的相关信息;和重新配置该网络以优先于故障节点使用该新节点。
该方法有利地还包括生成由所述预定的媒介器模块接收的所有进入消息的消息日志。
在所述预定的媒介器模块上应用于所述分析消息的媒介任务可以包括生成消息日志。可选择地,该计算机网络还包括外部应用,该方法还可以包括:
生成在所述外部应用中的消息日志。
便利地,在内部操作中的改变可以采取响应于改变请求而结构优化该媒介结构的逻辑拓扑的形式。在结构优化步骤的过程中,有利地插入子网络以替代单个节点。
在本发明的另一个方面,提供一种用于在计算机网络内媒介消息流的媒介网络,其中该媒介网络包括:
至少一个本地点存在(LPP)模块,用于在媒介网络和客户程序之间的接口连接;
至少一个媒介器(M)模块,用于主持媒介任务;
至少一个媒介器路由器(MR)模块,用于分析进入消息的内容,每个MR模块根据所述内容将进入消息路由发送到相关的预定的M模块;和
至少一个传输代理(TP)模块,用于将消息转发给至少一个所述LPP模块,
其中该媒介网络沿着单向媒介循环耦合消息,其中:LPP模块寻址MR模块;MR模块又寻址M模块;M模块又寻址TP模块;和TP模块又寻址LPP模块。
根据本发明的另一个方面,提供一种计算机程序产品,用于在计算机网络内媒介消息流,该计算机程序产品包括可执行指令,用于提供一种媒介网络,该媒介网络包括:
至少一个本地点存在(LPP)模块,用于在媒介网络和客户程序之间的接口连接;
至少一个媒介器(M)模块,用于主持媒介任务;
至少一个媒介器路由器(MR)模块,用于分析进入消息的内容,每个MR模块根据所述内容将进入消息路由发送到预定的M模块;和
至少一个传输代理(TP)模块,用于将消息转发给至少一个所述LPP模块,
其中,当执行该指令时,沿着媒介循环传播到媒介网络的进入消息,包括步骤:
LPP模块将进入消息寻址到所述至少一个媒介器路由器(MR)模块中的相应一个媒介器路由器(MR)模块;
在所述被寻址的MR模块上,分析进入消息的内容和根据所述被分析的内容将所述消息路由发送到预定的媒介器模块;
在所述预定的媒介器模块上,将媒介任务应用于所述被分析的消息,和将所媒介的消息发送给所述TP模块中的相应一个TP模块;和
在所述TP模块上,接收所述所媒介消息,将所述所媒介消息转发给至少一个所述LPP模块。
附图说明
现在将参考附图详细地描述本发明的例子,在附图中:
图1A是图示具有星形逻辑结构的现有技术的媒介信息流系统的节点图;
图1B是图示在图1A内系统的物理结构的示意节点图;
图2A是图示具有中央网络逻辑结构的现有技术的媒介信息流系统的节点图;
图2B是图示图2A内系统的物理结构的示意节点图;
图3图示最小节点图,该图示出了基本循环(LPP→MR→M→TP→LPP),每个有效的分布式媒介网络节点是其一部分。
图4是图示根据本发明的“立方”分布式媒介模型的节点图;
图5A至图5F图示在该“立方”分布式媒介结构内处理从发送媒介器模块S到接收媒介器模块R的媒介任务的步骤;
图6图示在本发明的分布式媒介网络内的相关性的表格(表1);
图7图示在本发明的一种实施例中在故障处理机制中的相关性的表格(表2);
图8A至图8E图示在将新的本地点存在(LLP)节点添加到现有的媒介结构中的步骤;
图9A至图9D图示在将新的媒介器(M)节点添加到现有的媒介结构中的步骤;
图10图示在将新的媒介器路由器(MR)节点添加到现有的媒介结构和添加新的本地点存在(LPP)节点中的第一步骤;
图11A至图11E图示在将新的媒介器路由器(MR)节点添加到现有的媒介结构中的随后的步骤;
图12图示将新的传输代理(TP)节点添加到现有的媒介结构和添加新的媒介器(M)节点中的第一步骤;
图13A至图13E图示在将新的传输代理(TP)节点添加到现有的媒介结构中的随后的步骤;
图14图示从本发明的媒介结构到故障处理(FH)模块的故障报告;
图15A至图15E图示该故障处理模块如何初始化从故障LPP节点到新的LPP节点的媒介消息的重新路由选择;
图16图示故障处理的方法,包括在多个节点上的消息日志以生成新的“系统不变量”;
图17图示立方网络的结构优化以包含替代LPP节点的其它的立方子网络;
图18图示带有互连MR的网络的体系结构;和
图19图示示意性的TP/MR总线拓扑。
具体实施方式
首先解释P2P和中央媒介消息发送模型以提供本发明的背景。在整个讨论中,术语信源表示生成新消息以发送到网络服务内的客户,和术语信宿表示从网络服务接收消息的客户。网络服务的每个客户可以是信源、信宿或两者。在替换的术语中,将信息的信源称作发布者,将信息的信宿称作用户。
在对等的基于内容的路由选择中,配置网络以允许根据在合适的信源和信宿之间虚拟信道的建立从信源到信宿有效的传输消息。典型通过从完整连接图中检测和删除不必要的边沿(连接节点的通信线路),导致优化的进而适应可用网络基础设施的图,实现了效率。为了建立P2P虚拟信道,要求来自一个对等体的兴趣表示和来自另一个对等体的兴趣接受。
另一方面,在中央媒介模型中,通过中央媒介节点发送所有的消息(参见图1A和图1B)。在媒介网络的说法中,媒介服务是适合于应用于所有进入消息的某种计算的通用术语;媒介结构的任意具体例子的媒介需求是指在其中提供的所有媒介服务的整理;媒介管理者是提供这样一种媒介服务的一个人或多个人;媒介网络是在媒介管理者控制下的物理计算实体(机器)的网络;和媒介服务器,主持一个或多个媒介服务的物理机器。
在普通媒介信息流系统的简化模型中,发送给媒介管理者的消息可以属于下述类型之一:从作为信息源的处理发出的新信息;由请求立即应答的媒介管理者保存的状态相关查询;和兴趣表示,只要由媒介管理者接收到相关新信息就要求进行应答的基本上固有的查询。
值得注意的是即使在完全媒介模型内,兴趣表示可能依然是显著的,尤其在将该网络服务传送给信宿时,其中它们可以降低在每个虚拟信道上的带宽要求。
鉴于上述定义,媒介信息流系统是包括消息的系统,所述消息包含发送给中央管理者和从其发送的信息。由该管理者采取的动作可以包括所接收消息的按时间排序的日志记录、在所接收的消息之和上的计算和可能在根据消息内容执行一些处理之后,在其它客户之间传播进入消息。
本发明表示基于内容的分散式P2P模型和简单的集中式网络模型的混合。并不提供单个中央媒介器,在包括多个独立功能组件的媒介网络中分散各个媒介服务。在该混合模型中,使用目的表示以打开在源节点和媒介器节点之间的虚拟信道,和使用兴趣表示以打开在媒介器节点和信宿节点之间的虚拟信道。因此,由信宿节点接收的消息由使用媒介服务登记的兴趣表示来控制。在信源和信宿节点之间的延迟必然大于在简单的基于内容的路由选择中的延迟,因为存在所涉及的两个或更多的逻辑跳。假设环境允许,随着更多的静态信息变得可用,可以连续地降低在每个逻辑跳内的延迟。与简单媒介模型相关地,媒介任务更复杂,因为它分散在多个节点上(参见图2A)。然而,已经避免了集中式媒介模型的固有中央瓶颈,所获得的结构是可缩放的。
根据消息内容,将所有的进入消息集合划分(分类)成多个非重叠的子集(类别)。将整个媒介需求实施为大量的媒介任务,每个任务单独地在不同的处理内服务,所述不同的处理工作在进入消息的相应类别上。每个消息包括表示该消息是否是特定种类成员的内容,所谓的确定属性。可以将该确定属性视为“一句”消息的“动词”部分。因此,进入消息是根据其内容的确定属性可分类的。随后,可以将种类视为基于相关确定属性的所有可能消息的子集。实际上,给定确定属性的存在表征相应的类别。
在中央管理者负责编辑控制的媒介新闻或发布服务中,在进一步传播信息之前,确定属性的例子包括:
·在文件唯一标识符上的等式
例如doc_id=1246512331400
例如newsML itemid=“238563”
·一些日期/时间表示
例如newsML newsitem.date<2003年7月28日和newsitem.date>2001年1月10日
·在文件国家代码上的等式
例如country_code=UK或
country_code=“UK”或country_code=“US”
{使用newsML国家代码}
·与文章相关内容相关的一些主题代码
例如主题=“人权”{使用newsML主题代码}
·基于newsML文章的属性值的一些属性
例如<国际日期变更线>==“伦敦”
在交易贸易服务中中央管理者负责匹配买方和卖方需求。确定属性的例子包括:
·文章=“钢琴”和位置=“NE苏格兰”和价格<3英镑
·股票=“IBM”
·种类=“家庭>所有种类>运动”和项目=“帆板”
在允许将最新的情况介绍给加入正在进行的会话的用户的会话服务中,确定属性可以是:
·主题=“航行”和种类=“Topper”
·主题=“邮件服务器”和种类=“发送邮件”和操作系统=“Unix”和在新闻组的例子中
·主题=alt.money/currency.us-dollars
在分配加密密钥的情况下(所谓的密钥分配问题),确定属性可以基于密钥值,例如:
密钥值>23352345和密钥值<66676767979079
在发现在分布式网络上的数据(状态)和服务的位置的情况下,确定属性可以基于全局唯一标识符(GUID):
例如GUID=125645654645
或者它可以基于我们在查找的服务的描述符:
例如服务=“打印机(类型=“激光打印机”;价格=“4分/页”;纸张大小=A0)”
最后,在定位和与移动用户通信的情况下,确定属性的例子包括:
·名称=“Bon Monkeyhouse”
·电话号码=“01776 32463274327”
·电子邮件地址=asau@ghsghdsg.net
将所有类别的集合(因此分类之后所有消息的集合)称作分类。因此,分类表示所有消息集合的一部分,单个消息可以不属于多个类别。分类的概念并不影响系统操作的外表可观察到的行为,而仅影响其总的吞吐量。
系统分类与所发送的消息类型(新信息、兴趣表示或查询)无关,因为它取决于在系统内传送的信息的一些特征。重要的是,分类可以通过自动处理出现。这种进入消息可以包括与分类内的类别相关的信息或者与其相关的查询。
由媒介管理者执行信息系统的分类,这可能在系统操作过程中出现。必须生成确定属性以允许测试包含在类别内的任意消息。对于如此识别的每个类别,在媒介网络内建立单独处理以处理其媒介服务。最后,值得注意的是仅使用分类来提高逻辑系统的性能,而不是以任何方式改变其语意,系统的客户将不知道其存在。
每个类别的媒介任务在媒介网络内的特定机器(计算机)上执行。当系统在工作时,由客户将消息发送到媒介网络内。根据通过所有类别属性的集合对其内容的分析,将网络接收的消息转发给适当的媒介服务。该转发处理需要将在整个媒介网络内发送的分类的相关知识和每个媒介任务执行的物理位置。
图3图示最小拓扑结构,说明处于“静态”或“稳态”即不存在逻辑拓扑改变的状态的(混合)分布式媒介模型的功能组件。该图图示数据如何在各个组成节点之间在系统内流动。
在该最小拓扑内图示了无限制规模的分布式媒介模型必需的所有组成节点,包括:信源、信宿、本地点存在、媒介器路由器、媒介器和传输代理。在下文中的整个讨论中,下面列出的这些术语和其它术语采用下述定义:
本地点存在(LPP):本地点存在担任在分布式媒介模型的客户(信源和信宿)和其余部分之间的居间体。本地点存在是为特定地理区域提供媒介服务代理的网络节点。因而,每个信源或信宿将仅与单个本地点存在通信,而不与该媒介结构内的其它节点通信。在系统内可以存在任意数量的LPP,这些LPP分别服务于相应数量的客户。
媒介器(M):媒介器是含有媒介器模块的网络节点,所述媒介器模块服务于媒介需求。每个媒介器具有相关的下行流分配,使用它将相关消息传送给LPP,因而最终到达信宿。每个媒介器模块执行一个或多个媒介任务,每个任务针对单个类别的进入消息执行。媒介器模块可以配置以记录它们接收到的所有进入消息,和将这些消息转发给相关的下行流传输网络。因此,媒介任务可以包括对如此生成的消息日志的服务查询。
媒介器路由器(MR):媒介器路由器是网络节点,包含媒介器路由器模块,它分析进入消息的内容,确定消息属于哪一类别,并将其路由发送到合适的媒介器。每个媒介器路由器位于上行流网络的前端,从多个LPP接收消息。媒介器路由器还可以记录进入消息以允许例如在其提供服务的地理区域内的本地服务。
传输代理(TP):传输代理是网络节点,包含传输代理模块,它分析由一个或多个媒介器节点输出的消息;根据所登记的兴趣表示确定输出消息将要发送到的一个或多个信宿;和在与每个媒介器相关的下行流网络上转发消息。
将上行流网络(从信源到媒介器路由器)视为被媒介,但是并非基于内容的。在所谓的交叉流内,在媒介器路由器和媒介器之间的路由选择是基于内容的。下行流网络也需要基于内容的路由选择:可以将在媒介器路由器和LPP之间的实际消息路由选择视为在其权利范围内的混合的基于内容的传送机制。作为此混合的一部分的消息空间的分割允许将中间流媒介服务引入发布和用户模型,而不引入不可缩放的中央瓶颈。
对于“静态”或“稳态”系统而言,与分布式媒介网络相关的下列陈述总是正确的。可以将这些陈述视为分布式媒介结构的“全局不变量”。
·每个节点是循环LPP→MR→M→TP→LPP的一部分
·每个LPP寻址单个MR
·每个MR可以寻址任意一个M
·每个M寻址单个TP
·每个TP可以寻址任意一个LPP
上面使用的符号“→”表示单向连接(定向边沿)
表1(图6)列出了媒介改变算法的“正确性”的相关性:即将由每个节点保存所需要的全部域外知识。
根据上文“全局不变量”的考察,为何将图3所示的网络视为最小分布式媒介拓扑是显然的:它精确地包括四个节点:每种类型一个(LPP、MR、M和TP),配置在单个循环内,带有在其间设置的单向连接:LPP→MR→M→TP→LPP。
在图4中图示了更现实和复杂的分布式媒介网络。在此,在下文中称作“立方”网络的配置中存在每种类型的两个节点。该立方网络图示了普通分布式媒介网络的其它属性。
如在该循环网络内,在互连节点之间的消息流是单向的。该立方网络内的每个节点是至少一个循环LPP→MR→M→TP→LPP的组成部分。该立方网络展示了“输入/输出”拓扑:虽然每个LPP将每个消息精确地发送给一个MR,但每个MR可以由多个LPP寻址(在图4中为两个)-输入;每个MR能够将消息发送给任一个媒介器-输出;每个媒介器将任一个给定消息精确地发送给一个TP,而每个TP可以由多个媒介器寻址-输入;和最后,每个TP能够将消息发送给任一个LPP-输出。
诸如最小循环和立方网络的分布式媒介网络还显示了另一个重要的属性:定向路径存在于每个节点到网络内的每个其它节点。在图论术语中,每个节点处于每个其它节点的传递闭合状态。该属性对于循环网络而言无足轻重:然而,因为全局不变量属性,在更复杂的分布式媒介网络内并非如此。定向路径可以始终被视为定向循环图。因而,对于普通分布式媒介网络内的任意两个节点A和B而言,存在从A到A的循环,其中包含B。值得注意的是,在立方(单层)网络内,这样一个循环的最大路径长度是8,而不是4。
再次,每个节点没有全局相关性或者比其直接相邻节点获知关于网络的更多详细知识。每个节点仅存储其直接寻址的那些节点的标识。节点还存储与寻址网络内每个节点的节点总数相关的信息;这可以存储为在节点自身内的参考计数,或者在直接寻址它的所有节点内的信用余额数值。在任一情况下,都不需要存储寻址节点的标识。实际上,没有节点实际上存储与全局系统的其余部分相关的任何其它信息。
本发明的分布式媒介网络的另一个重要属性是行为在每个节点内是确定和排序的,也就是,可以保证在消息A之后抵达的消息B也在消息A之后分发。类似地,消息不能超越节点之间的直接链路;因而,对于任意两个节点N1和N2而言,N2由N1直接寻址,随后如果消息A由N1发送给N2,接下来,消息B从N1发送给N2,则N2将在接收到消息B之前接收消息A。
因果障碍
普通分布式媒介网络内的每个节点仅具有它直接向其发送消息的其它节点的存在的相关详细知识。以仅表示这些节点总数的形式存储从其接收消息的节点的相关信息。如先前已经描述的,可以将此信息存储为在节点本身内的参考计数,或者存储为在直接寻址它的所有节点内的信用余额数值。
在某些情况下,需要某种程度的全局控制以在保持顺序的确定行为的同时执行网络内的改变。此时,与寻址网络内的每个节点的节点总数相关的信息变得有用。该分布式媒介网络需要另一个属性,在进行改变的同时,相对于在该系统内发送的任意消息能够自动地透明地执行一组相关改变:称作因果障碍算法的属性。
当将发送者信息存储为参考计数时,因果障碍算法是接收算法的总体。在目标节点上预期给定消息的一个副本来自直接寻址该目标节点的每个节点的情况下,可以假设这实际上已经发生如下:目标节点保存参考计数,它对应于直接寻址该目标节点的节点数量;只要发送消息,则添加信息以包括该发送节点的唯一标识;如果接收者要求检测同一消息的副本是否由所有发送节点发送,则与相应的消息ID相关地本地保存发送节点标识符信息;和当所接收的这种唯一消息的数量等于参考计数时,则获知已经从直接寻址它的所有节点接收到该消息。
对于并不包含参考计数的节点而言,可以使用不同的因果障碍算法。该算法依赖于在直接寻址该接收节点的每个节点内的信用余额字段的存在。只要发送消息,则添加信息以包括发送节点的唯一标识和信用余额字段的数值。如果接收机要求检测相同消息的副本是否由所有的节点发送,则与消息ID相关地本地保存发送节点标识符信息ID。此外,保存信用余额累积器,将其设置以包含在这样的消息内包含的所有信用余额数值的总数。当信用余额累积器变得等于预定的总值,例如1.0时,获知已经从所有的发送节点接收到该消息。
因此,参考计数和信用余额技术确保因果障碍算法可以确认已经由合适的模块接收到所有的消息,从而假定用于在媒介网络的内部拓扑中任意特定改变的因果障碍算法的结束。这种“会计核算技术”的应用允许媒介器模块检测媒介改变何时完成,而不需要静态地获知向其发送信息的MR模块的数量。
将媒介负载平均地划分在物理机器上通常不会响应于负载条件的改变。作为响应,信息空间的分割(根据分类分配媒体负载)必须是负载平衡的。换句话说,在物理网络内在任一单个点上的带宽要求必须保持与网络负载在整体上成比例。因为消息的逻辑位置随着时间改变,这将要求根据预测模型的动态调整,预测模型本身基于信息流的最新历史。对于在任一负载平衡模型内,还必须考虑因为必须在多个平台上组织媒介服务的划分而简单导致的额外网络负载。
根据施加在该系统上的分类,本系统的媒介需求分散在分布式媒介网络的节点之间。然而,已经观察到所有的网络节点(机器)并不需要所有位置和所有属性的全部知识。正确操作的唯一要求是每个消息最终抵达执行适合于该消息所属类别的媒介任务的媒介器。
因此,在系统操作时,在媒介网络内,可以动态地移动媒介服务。这又允许根据在系统客户中兴趣动态偏移模式来调整媒介网络内的系统负载。根据预先定义的关于客户的知识,利用客户进行的兴趣表达或者根据改变系统内的使用模式的分析,可以评估这种兴趣模式。
负载平衡-切换
本发明的分布式媒介结构基于节点:LPP、MR、M和TP的任意拓扑。节点的这种拓扑具有上文结合“稳态”描述的属性。这种相同的拓扑非常适合于在现有功能组件之间负载的动态平衡。
只要当将特定类别视为承担很重负载时,则可以将相关媒介任务的执行移动到具有空闲容量的网络内。媒介任务的切换还要求媒介网络的动态调整以保证将当前在网络内的或者未来将要接收的任一消息,转发给新的媒介器节点。这可以通过在新的逻辑网络拓扑内传播特定消息,即通过适当机器的“因果波动(causal rippling)”来实现。因而,媒介改变可能出现在实况播送系统内,而不以消息输入和输出的方式影响可观察到的系统行为。
利用全局不变量属性,媒介改变最终是可行的,由此将进入消息路由发送到同一媒介器,而与发送它的LPP无关。媒介改变提出了在实况播送系统内和在不会不利地影响系统的正确性或性能的情况下从一个相容状态改变成另一个状态的问题。必须考虑分布式媒介网络的两个主要功能:消息传播和查询,具体而言是启动查询。
为了应答查询,必须获知在任一具体时间上应用哪个分类。这允许发现哪个媒介器在任一给定时间上执行任一给定的消息类别。然而,为此,任一查询分类必然将要求某种程度的全局同步。作为全局同步的替代方式,安排分布式媒介模型以允许在没有准确的全局信息或同步的情况下应答某些分类的查询。
考虑在系统处于第一稳定状态PS1到新的稳定状态PS2的状态变化进展。在时间t0,改变成新的状态PS2的处理开始。此后,在某个未知的时间t1上,该系统获知已经改变成新的稳定状态PS2。当实际改变发生时的时间tb是未知的,但是介于t0和t1之间。
在时间t0和t1之间,我们将系统定义为不稳定的,是指媒介任务的当前操作分配是全局未知的。然而,并不影响每个系统功能,因为在每个点上有足够的本地知识可用于正确地处理信息流。
现在描述用于允许在运行系统内改变的如用媒介任务分配表明的基础划分(分类)的合适算法。应当指出该算法能够处理媒介器节点的添加或删除,随后将更详细讨论的功能。
为了清楚,使用简化模型,其中每个消息承载从符号的有限集合获得的内容。划分(分类)的特征在于从内容标签到分类(类别)的有限集合的映射。根据它们所分配的媒介器命名这些分类。对划分的改变其特征在于规定将内容标签的重新分配给不同的媒介器。
而且,为了简化描述,假设:改变仅涉及两个媒介器;和一个改变在另一个开始之前结束。这些假定的任一个都不是绝对要求,而是使模型简化;但是该简化模型是普通的,并允许对系统的任意改变。
该处理开始于由某个(启动者)LPP发送给其媒介器路由器(参见图5A)的PRED_CHANGE消息。该PRED_CHANGE消息的内容描述将内容标签重新分配给不同的接收者媒介器R。MR读取该内容标签,并将消息转发给当前处理该内容的媒介器S。
一旦接收到PRED_CHANGE消息(如图5B所示),该媒介器:
将其状态从STABLE改变成HANDOVER_SENDER。
向切换接收者媒介器R发送包含该PRED_CHANGE消息的内容的MEDIATOR_HANDOVER消息。
为此改变,改变其内部状态将包含内容标签的消息转发给切换接收者媒介器R。
由此可见,由任一媒介器路由器向前发送给媒介器S的与正在进行的媒介改变的主题相关的任一消息将被转发给媒介器R。通过TP将MEDIATOR_CHANGED消息发送给所有的媒介器LPP的目的是保证在下行流网络上发送的消息的因果传送。
当LPP接收到MEDIATOR_CHANGED消息时,它将其自身放置在BUFFERING状态。当处于该状态时,LPP缓冲所有的DOWNSTREAM_DATA消息,直到它接收到用于相应内容的NEW_MEDIATOR消息。这足以保证转发给媒介器R的消息的因果排序,并防止由LPP无序地处理由媒介器S媒介的更旧的消息。
如图5所示,一旦接收到MEDIATOR_HANDOVER消息,媒介器将其状态从STABLE改变成用媒介器节点上的R标签标记的HANDOVER_RECEIVER。在这一状态下,媒介器期望其内容匹配MEDIATOR_HANDOVER消息的内容的转发消息。从接收到MEDIATOR_HANDOVER消息开始,媒介器媒介该内容,尽管该系统的其余部分可能并不知道该消息。为了通知媒体结构的改变,新的媒介器将NEW_MEDIATOR消息发送给它的所有TP。这是媒介改变的广播,由TP转发给所有的LPP,和由所有的LPP转发给所有的MR,如图5C所示。
如图5D所示,当MR接收到NEW_MEDIATOR消息时,它更新其路由表以使将来匹配该NEW_MEDIATOR消息的内容发送给媒介器R,而非媒介器S。此时,已经实现了在基于内容的路由选择中的改变。然而,必须向媒介器S通知此事件,以便一旦所有的MR知道媒介器R现在是内容媒介器,它可以中断转发消息。类似地,需要向媒介器R通知这些事件,以便它可以返回稳态操作和停止期望转发的消息。因此,在改变其路由表之后,MR将PE_PS_CHANGED消息发送给内容的旧媒介器(S),它在更新路由表之前从其中提取该内容。如图5E所示,处于HANDOVER_SENDER状态的媒介器将所有的PE_PS_CHANGED消息转发给新的接收者媒介器。
切换算法可以使用因果障碍方法来维持使用参考计数技术的因果排序,从而确定消息已经正确地传播到整个媒介网络。处于HANDOVER_SENDER和HANDOVER_RECEIVER状态内的媒介器计数从MR接收到的PE_PS_CHANGED消息,这允许它们确定在该系统内的所有MR何时已经接收到媒介器信息的改变。当它们接收到最后一个PE_PS_CHANGED消息时,它们将其状态分别从HANDOVER_SENDER和HANDOVER_RECEIVER改变成如图5F所示的STABLE(稳态)。
如从上面的描述可以看出的,该媒介器的行为的特征在于可以处于下述三种状态之一的有限状态机。
STABLE-媒介器的常规运行状态;在属性集合内没有正在进行的改变,这将导致它处理在数据空间内更多或更少的等同分类。
HANDOVER_RECEIVER-媒介器处于非稳定状态,由于来自另一个媒介器(HANDOVER_SENDER)的消息空间(Δ)的部分重新分配,其等同分类的大小刚刚增加。虽然在这种状态下,可以接收从先前负责该消息空间的媒介器转发的消息,但是它将其传送给它的传输代理,如同它们已经直接发送给它。还可以直接从已经变得获知其新角色的任意属性鉴别器接收在该消息空间内的数据消息;必须缓冲任一个这样的消息,直到它获知可能不会出现(通过PE_PS_CHANGED消息)的来自同一信源的其它转发消息。
HANDOVER_SENDER-媒介器处于非稳定状态,已经将来自其先前的等同分类的消息空间传送给另一个媒介器。必须将在该消息空间Δ内接收到的任何消息转发给相应的HANDOVER_RECEIVER。
如果媒介网络具有媒介流过它的业务所必需的容量,则该切换算法工作得很好。然而,长期生存的媒介系统在其使用期限内可能会经受显著的改变。例如:在同时预约和发布业务量中;在客户的数量和地理分配中;和/或在请求始发的场所内,可能会出现改变。此外,因为消息内容根据客户命令的改变随着时间改变,所需要的媒介任务的相对比例可能会显著地改变,表现出现有的划分不平衡或者不合适。
为了容纳改变,分布式媒介系统必须是自适应的。可能必须在系统内的合适点上添加或删除任一种类的节点以重新部署物理资源,从而处理在给定地理区域内改变的业务量。因为客户消息内容随着时间改变,施加给消息集合以将媒介任务划分给可用媒介器的划分可能需要调整以平衡媒介负载和确保它们的有效使用。
在某些任务严格的应用中,必须实现这种自适应,而不中断正在发送的服务。
假如保存了上述全局不变量和上述相关性,附加功能将不干扰先前定义的机制。此后,可以根据切换算法在现有的媒介器之间动态地重新分配媒介服务。
在分布式媒介网络的逻辑拓扑内的改变可能导致正在被媒介的一个或多个服务不稳定,并可能结束所执行的服务。
因此,实际的分布式媒介网络必须同时解决负载平衡和稳定性问题。使用某些关键添加,上述混合分布式媒介模型可以在实际的物理系统内更有效地实现。这些关键添加将动态处理转移和合适的路由选择组合在该网络基础设施内,从而允许将要实现的有效实施方式,而不导致不可接受的大量开销和在服务中不希望的中断。该混合分布式媒介模型还必须允许可缩放的结构,而不影响消息等待时间。
类似地,分布式媒介系统可以在经受部分故障的网络基础设施上实现。因此,分布式媒介系统应当在可能的某处具有检测故障和采取补救措施的机制。
只要可能,应当自动地提供上述两个要求,也就是,不需要人类参与。
该混合分布式媒介模型实际上可能扩展得达不到先前所述的负载平衡功能。可以在现有的静态分布式媒介网络上执行附加功能的下述分类:
在第一分类的功能中,称作逻辑重新配置,提供用于各个节点的(i)添加、(ii)切换和(iii)删除和节点组合的机制。这些机制允许现有的分布式媒介网络的任意重新配置,这种重新配置在实况播送系统内执行,而不影响该系统的外部可观察到的行为。重新配置机制是计算机执行的方法,除了在媒介器之间媒介任务的简单切换之外,它允许对网络逻辑拓扑的任意改变。通过在灵活和改变的物理基础设施上的逻辑节点的动态部署和/或重新部署实现上述结果。因此,可以实现在物理计算设备的任意网络上逻辑结构的任意部署,而不需要结束正在执行的服务。
可以在现有分布式媒介网络上实现的第二种功能是故障处理。在由于单个节点故障导致分布式媒介网络的行为临时不能满足其要求的情况下,可以定义允许其余节点重新配置的机制,以便它们可以再次开始作为故障之前的原始网络工作。故障处理机制允许动态地发现在网络结构内的物理节点故障。随后,故障处理机制可以通过在不同组的物理节点,并不包括已知故障的节点上重新部署故障节点的逻辑功能来响应。这可以通过提供进一步的机制来检测故障源,和重复使用上面标识的重新配置机制来重新配置其余网络来实现。在该分类内的功能还可以在实况播送系统内实现,而不影响可观察到的行为,具体而言,避免了结束正在执行的服务的任何要求。
在第三种功能中,称作结构优化,存在允许利用任何其它网络,包括其它分布式媒介网络,替换在分布式媒介网络内的单个或多个节点的机制。该结构优化自身保存在该分布式媒介网络内的节点需要的全局不变量和属性,和再次工作在实况播送系统内。结构优化改善普通分层结构的部署,以便可以用任意大小的节点的整个子网络或其它类型的节点来替换单个逻辑节点。该部署不需要是逐节点的事件。
在所有的情况下,通过添加和解释新的消息类型来实现对实况播送网络的调整,在本质上类似于如在媒介器切换的讨论中示例说明的类型和行为总体。
下文更详细地描述这三种主要分类中每个分类的功能。
重新配置:添加节点
这一部分解决添加新节点的重要功能。在每种情况下,我们考虑将单个新节点或一对新节点添加给网络。新逻辑节点的添加可以与新物理节点(机器)的添加相一致。这并不意味着任何一般性损失,因为相同的原理同样可应用于添加多个节点或者甚至整个分布式媒介网络。在每种情况下,必须考虑两个方面:首先,正确地配置新节点以在其预期环境中工作(部分A),和其次正确地配置引入该新节点的网络(部分B)。
可以添加下列节点中的任一节点:
·单个LPP
·单个M
·LPP→MR对
·M→TP对
将保存系统不变量和相关性。为了添加新的MR,我们必须添加新的LPP,因为LPP唯一地寻址单个MR。类似地,使用TP,因为媒介器唯一地寻址单个TP。与切换相组合,这足以允许构建任意合法的拓扑。当我们添加额外的LPP时,我们在客户接口上提供额外的容量。当我们添加新的媒介器时,我们添加额外的媒介容量。添加MR提高了到消息发送系统的输入容量,添加TP提高了系统的输出容量。
将注意到多种算法需要通过网络传送(新)节点的地址。例如,当将LPP添加给该系统时,发送NEW_LPP消息,它包括称作new_Ipp_addr的字段。可以以多种方式编码新节点的地址-例如可以使用(IP地址,端口地址)对。这取决于实施方式,在本文件中将不进行描述。
任一给定新节点消息的激励可以是下述情况:操作员利用管理接口;监视负载电平的半自动控制网络;或自动媒介网络控制系统。
LPP添加
部分A-新节点配置
LPP仅需要知道其接收者(在标准模型内它的MR)的地址。这是初始化LPP的配置参数。为了更新由MR保存的参考计数,新LPP必须将NEW_LPP消息发送给MR。一旦接收到该消息,更新MR的LPP参考计数。还使用该消息以初始化配置该网络所需要的循环。
部分B-网络配置
为了添加新LPP,必须更新每个下行流网络。这需要分别更新每个下行流网络。这可以通过将消息传播给每个媒介器以传送给下行流网络来实现。
用于添加LPP的消息格式如下:
NEW_LPP(transaction_no:Large int),//传送该操作的标识符
New_Ipp_addr:address,//新LPP的地址
Credit_bal)//由TP返回信用余额
我们使用任意LPP以引入改变和调用选定的LPP和始发LPP。
处理如下:将NEW_LPP(transaction_no:Large int)消息发送给始发LPP。该新LPP可以在已经发送该消息之后的任意时间上开始接收消息。始发LPP将该消息发送给它的MR,由其将该消息转发给每个媒介器。媒介器将该消息转发给它们的接收者(在标准模型中TP)。此时在该处理中,新LPP的知识是全局已知的。为了保证该算法结束,TP将该NEW_LPP消息以及它们的信用余额发送给始发LPP。新LPP求和信用余额,当其达到预定的数值时,例如1.0,获知该处理将由新LPP完成。该处理在图8A至图8E中图示。
媒介器添加
媒介器改变算法是分布式媒介模型的组成部分,用于允许现有的媒介器改变它们的媒介负载。然而,不能简单地扩展该机制以支持新节点或网络的配置。因此,需要单独的媒介器添加算法来支持新媒介器的添加。
部分A-新节点配置
媒介器仅需要知道其接收者(在标准模型内它的TP)的地址。这是初始化媒介器的配置参数。为了更新由TP保存的参考计数,新媒介器将New_Mediator消息(在下文中描述)发送给TP。一旦接收到该消息,更新TP的媒介器参考计数。还使用该消息以初始化新媒介器的存在到MR传播的循环。
部分B-网络配置
为了添加媒介器,必须使用新媒介器的知识更新每个寻址MR。除了在新媒介器上开始的循环之后,该处理类似于LPP添加。
用于添加媒介器的消息格式如下:
NEW_Mediator(transaction_no:Large int),//传送该操作的标识符
New_M_addr:address,//新媒介器的地址
Credit_bal)//由TP返回信用余额
该处理如下:将NEW_媒介器(transaction_no:Large int)消息发送给TP以传播。该新媒介器将不开始接收媒介消息直到媒介改变已经发生。然而,它可以在已经发送此消息之后的任意时间上接收保存消息。TP将该消息转发给每个LPP。LPP将该消息转发给它们的接收者(MR)。一旦接收到该消息,MR获知新的媒介器。为了保证该算法结束,MR将该New_Mediator消息以及它们的信用余额发送给新媒介器。该新媒介器求和信用余额,当其达到预定的数值时,例如1.0,获知该处理将由新媒介器完成。该处理在图9A至图9D中图示。
媒介器路由器添加
如上所述,每个媒介器路由器必须由LPP寻址,从而保存全局不变量。没有LPP寻址MR,MR不能存在。因此,没有相关LPP,不能建立新MR。然而,该限制并不影响由单个物理计算机节点或者甚至单个程序执行的功能。
因此,在新MR添加中的第一步骤是建立和初始化没有客户的新LPP。这导致如图10所示的情况。一旦已经实现这种情况,则使用新LPP建立新MR。
部分A-新节点配置
为了操作,MR需要最新的路由选择映射。在稳态周期中,路由选择映射与该系统内的所有MR是相同的。因此,新MR可以从该系统内任一个已经建立的MR获得路由选择映射。MR还需要信用余额,它仅可以从另一个MR获得。
为了初始化处理,将NEW_MR(new_mr_addr)消息发送给新建立的LPP。该消息的格式如下:
NEW_MR(transaction_no:Large int),//传送该操作的标识符
new_mr_addr:address,//新MR的地址
lpp_addr:address)//LPP的地址
NEW_MR_ROUTE_TABLE(
transaction_no:Large int),//传送该操作的标识符
new_mr_addr:address,//新MR的地址
lpp_addr:address)//LPP的地址
rt:route_table,//新路由选择表
credit_bal)//由TP返回信用余额
LPP添加它自己的地址,和发送出NEW_MR(new_mr_addr,Ipp_addr)。当该消息由MR接收时,它发送NEW_MR_ROUTE_TABLE消息,以及附加新MR的地址、新LPP的地址、路由选择信息和其信用余额的一部分。将该消息转发给任意的媒介器,并在下行流网络上传送给LPP,该LPP的地址在该NEW_MR_ROUTE_TABLE消息内。随后,LPP将路由选择映射传送给新建立的MR。该MR使用该信息以初始化其信用余额和其路由选择映射。
部分B-网络配置
为了使用新MR,新LPP需要将其MR改变成新建立的MR。该处理在新MR接收到NEW_MR_ROUTE_TABLE消息之后立即开始。一旦接收到该消息,新MR将MR_INITIALISED()消息发送给新LPP。这又将INC_REF_COUNT()和DEC_REF_COUNT()消息分别发送给新的和旧的MR。该处理在图11A至图11E中示例。
传输代理添加
为了保存全局不变量,TP必须由媒介器寻址。如果没有媒介器寻址TP,则TP不可能存在。因此,没有相关媒介器,也不能建立TP。应当指出这并不影响由单个物理计算机节点或者甚至单个程序执行的功能。这是与建立TP对称的情况。
因此,在新传输代理添加中的第一步骤是建立和初始化没有媒介任何数据的新媒介器。图12示例了该第一步骤。
部分A-新节点配置
为了操作,新TP需要该系统内所有LPP的知识。这可以从在该系统内的任何其它的配置TP获得。TP还需要仅可以从另一个TP获得的信用余额。
为了初始化处理,将NEW_TP(new_tp_addr)消息发送给新建立的媒介器。该消息的格式如下:
NEW_TP(transaction_no:Large int),//传送该操作的标识符
new_tp_addr:address,//新TP的地址
mediator_addr:address,//媒介器的地址
LPPS:list[LPP]//已知LPPS的列表
credit_bal)//由TP返回信用余额
媒介器添加它自己的地址,和发送出NEW_TP(new_tp_addr,mediator addr)。当该消息由TP接收时,它转发该消息,该消息包含新TP的地址、新媒介器的地址、已知LPPS的列表和其信用余额的一部分。将该消息转发给任意的LPP。随后,LPP将路由选择映射传送给新建立的TP。TP使用该信息以初始化其信用余额和其已知的LPP列表。
部分B-网络配置
为了使用新TP,新媒介器需要将其TP改变成新建立的TP。该处理由新TP将TP_INITIALISED()消息发送给新媒介器来初始化。一旦接收到该消息,新媒介器将INC_REF_COUNT()消息发送给新TP,和将DEC_REF_COUNT()消息发送给旧TP。在该传输代理添加处理的两个部分中涉及的步骤在图13A至图13E中示例。
重新配置:切换节点
通过切换,我们参考在拓扑内的改变,其中将来自一个节点的输出曲线(arc)重定向到另一个节点。因此,切换仅可应用于来自LPP的输出曲线,因为TP和MR都具有接收者的不变量集合。
切换目标是MR或TP。这些节点的行为相对于它们的寻址者的标识是独立的。因此,切换以保持相关系统的唯一要求是在目标机器之间正确地调整参考计数。
相对于寻址者机器(LPP和媒介器),切换将自动地出现,因此,数据可以在切换操作过程中继续流动。在切换操作过程中,参考计数可能临时是不正确的,但是对于该算法而言这是无害的。
被切换的LPP将SWITCH_MR消息以及它自己的地址和新MR的地址作为参数发送给它的当前MR。一旦接收到该消息,MR检查其参考计数。如果参考计数已经达到预定的阈值,例如1,则MR使用SWITCH_MR_FAIL消息应答。反之,它使用已经递减其参考计数的SWITCH_MR_OK消息应答。一旦接收到该消息,LPP将其MR切换到新MR,并向其发送SWITCH_NEW_MR消息。一旦接收到该消息,新MR递增其参考计数。
SWICTH_MEDIATOR算法是相同的:被切换的媒介器将SWITCH_TP消息以及起它自己的地址和新TP的地址作为参数发送给其当前的TP。一旦接收到该消息,TP检查其参考计数。如果参考计数已经达到预定的阈值,例如1,则TP使用SWITCH_TP_FAIL消息应答。反之,它使用已经递减其参考计数的SWITCH_TP_OK消息应答。一旦接收到该消息,媒介器将其TP切换到新TP,并向其发送SWITCH_NEW_TP消息。一旦接收到该消息,新TP递增其参考计数。
重新配置:删除节点
使用两个前提条件,当删除节点时可以保持全局不变量。首先,LPP和媒介器可以作为单独节点予以删除,只要它们在网络内没有功能内涵:在LPP的情况下,应当没有功能客户,在媒介器的情况下,应当没有在该媒介器上的媒介任务。其次,将要删除的节点必须不是它们的接收者的唯一寻址者。
因此,删除的消息仅涉及拓扑不变量,删除任务要求每个前任取消该节点存在的登记。
不能孤立地删除MR和TP,因为它们不能被孤立地建立,因此,必须与单个前任一起成对地予以删除。为了功能上的原因,如果前任机器依赖于它们的存在,则不可以删除它们。因此,如果MR(a)具有寻址它的单个LPP和(b)LPP没有客户,则可以仅删除MR。此时,可以成对地删除LPP和MR。该对LPP和MR的删除与删除单个LPP的要求完全相同。
类似地,如果TP(a)具有寻址它的单个媒介器和(b)媒介器没有与之相关的媒介任务,则可以仅删除TP。此时,可以成对地删除媒介器和TP。该对媒介器和TP的删除与删除单个媒介器的要求完全相同。
在所有的情况下,节点的删除要求调整信用余额或参考计数。
故障恢复
这一部分解决用于处理在媒介路由基础设施内的故障的算法。提供机制用于检测故障,用于重新分配和恢复任一个节点类型和用于重新建立连接。
为了便于描述,进行下列假设:
·故障模型是“不重叠的”-也就是并不出现两个同时出现的故障,在另一个出现之前校正每个故障。
·在不同的物理机器上主持每个节点。
·任意两个机器可以建立连接,故障的起源是可以重新建立的在机器之间的断线连接。
此外,假设提供并非分布式媒介网络一部分的单个故障检测节点。实际上,可以将该故障检测节点实施为另一个分布式媒介网络。每个节点能够连接到该故障检测节点,并报告系统内的故障,如图14所示。
每个节点能够检测在输入或输出通信链路内的故障,并将该故障报告给故障检测节点。
错误检测消息具有下述格式:
ERROR(发送节点类型,始发地址,目标地址)
在输入链路或参考机器故障的情况下,始发地址是未知的。在输出链路或参考机器故障的情况下,可以提供两个地址。如果出现链路故障,仅发送者和接收者将报告故障。而且,发送者的目标地址将匹配接收者的始发地址,这将最终表示链路故障而非节点故障。在这种情况下,故障检测节点可以指示发送者重新建立链路。如果节点故障,到和来自该节点的所有链路将故障,因此将报告给故障处理节点。可以使用发送给故障处理节点的信息来确定如在故障矩阵内图示的故障节点的类型和标识(图7)。因此,故障处理节点能够检测和识别故障种类和它所出现的位置。
我们的简化假设在于节点不是共同主持的,因此,单个物理机器故障可能仅导致单个逻辑故障。我们注意到这一假设可能性很低,并依然允许检测特征故障模式,例如为单个逻辑节点列出的那些模式。具体而言,如果我们假设仅成对的连接节点是共同主持的,则可以检测故障。该故障处理过程如图15A至15E所示例。
恢复策略
对于任一单个节点故障,基本策略是建立该节点类型的新例子(或使用热备件)和重新配置该网络以予以使用。这要求:获知或重新建立节点的内部状态和同等地获知或建立其直接相邻拓扑。通过在故障事件中发送给故障处理节点的故障消息的总数来捕获这些任务中的第二个任务(直接相邻拓扑)。
在发送给故障节点的节点上和从故障节点接收的节点上执行拓扑重新建立。在前一情况下,只要节点发送错误消息,其中指定始发和目的字段,故障检测节点使用替换节点的标识来应答。使用该返回的节点标识符来重写在称作故障节点的该节点的内部状态内的表目,此时,该节点可以继续常规操作。
在来自故障节点的接收机的情况下,故障节点的部分内部状态将始终包括报告一个或多个故障的上行流节点的标识。在LPP和M的情况下,这是单个节点,其标识可以从由故障节点的直接下行流节点发送的错误消息中检测出。可以在建立替换节点时使用该状态。
在原理上,可以根据所接收的错误消息总数均等地很好地重新建立围绕故障MR和相应TP的拓扑;然而,存在优先于如本文所述的简单参考计数而使用信用恢复算法的类似争论,为此,我们指出输出边沿的总数对于网络内的所有MR和各个TP都是相同的;因此,可以从适当类型的实况播送节点获得此状态的副本,如在本文所述的重新配置机制中的,从而避免过多的网络业务。
除了拓扑之外,还必须重新建立语义内容。换句话说,所有的节点类型承载必须以某种方式重新建立的其它内部状态信息。这个其它内部状态信息落入下列字段:参考计数、兴趣列表、信用余额和媒介状态。
参考计数可以根据所接收到的错误消息的总数确定,注意到这是本地信息,因此,不应当出现不可接受的成本。此外,该信息并非系统的实况播送运行所需要的,包括媒介改变,因此,不需要被连续替换,而仅需要在另一个故障或受控重新配置之前。
LPP承载它们的客户兴趣媒介主题的列表;TP承载对其服务的媒介主题兴趣LPP列表。因此,兴趣列表知识的总和与在所有LPP集合和所有TP集合上的相同。在TP故障的情况下,可以通过在由其寻址的LPP内包含的知识原则上重新建立节点的感兴趣列表,在LPP故障的情况下,可以通过寻址它的TP内包含的知识原则上重新建立节点的感兴趣列表。值得注意的是在这两种情况下的实况操作可以立即重新开始已经重新建立的网络拓扑,通过保证将所有的消息从新的TP发送给所有的LPP;在TP上感兴趣列表的存在纯粹用于优化目的,在LPP上感兴趣列表的存在纯粹是允许在故障时予以重新建立。
为了检测媒介结束和拓扑改变算法,由MR和TP保存信用余额;只要可以观察到实况播送系统操作可以重新开始,在不存在这些活动的情况下,立即开始拓扑恢复。为了恢复信用余额,可以保存在该媒介结构自身内的每个这样的节点的信用余额状态。无论何时分配信用余额,将捕获两个受影响节点的新信用余额的信息发送到媒介网络内,并由某个媒介器予以存储。可以使用到该网络内的常规查询消息和新节点的信用余额来恢复此信息。
在前文的讨论中,该分布式媒介模型要求媒介器保存消息日志;这将仅是说明性的,而非系统的文字解释,该记录是将原则上支持任一媒介任务的整体普通模型。实际上,这将不可能是任一媒介任务的最佳表示。因此,媒介器可能将用作到(外部)应用API的网关。在这种情况下,媒介器节点自身将不承载其它状态,因此,网络拓扑的重新建立是足够的。
然而,值得注意的是在大部分普通情况下,其中媒介器记录每个消息,MR记录每个消息同样是可能的,由此强大的系统不变量即由MR记录的消息总数等于由媒介器记录的消息总数。因此,在这种情况下,在任一种类的故障事件中,可以实现类似于用于感兴趣列表的恢复策略。该方法在图16中示例。
结构优化
“参考模型”立方结构仅表示可以组成组件记录的一种方式。结构的强度取决于在组成节点内的两个纯粹的概念。首先,所有的节点到节点信息流是单向的;每个节点从发送者接收消息,并在一组其它节点内中继该信息。在后一情况下,该集合是对系统配置的求模计算改变,固定的。
其次,除了在此所述予以参考的节点总体的知识之外,每个节点并不取决于该系统的全局配置。每个节点需要的其它配置信息仅是它可以向其中继信息的其它节点的集合。媒介器路由器和传输代理分别包含确定它所连接的哪个接收机节点将接收特定消息的功能。因而,没有节点需要距离其一“跳”以上的任何其它节点的知识。
给定这些限制,多种配置都是有可能的,因为每个节点并不依赖于向其发送信息的节点类型。LPP→MR→M→TP→LPP的范例仅是节点类型的一种可能的配置,尽管是有用和实际的配置。给定用于不同需要的不同结构,其它配置也是可行的。
清楚的要求在于每个子网络必须遵守所有的全局不变量,否则模仿在结构定义内单个节点的行为。只要是这种情况,则只要在工程方面是有利的,就可以任意地替换节点或节点组合。
图17图示结构优化的一个实例,其中优化立方网络以包含替代LPP节点的另一个立方子网络。
存在许多例子,其中物理位置在逻辑上不同于信息流系统的要求。
考虑使用电子信息支持商品物理购买的情况,则位置很重要,但不是严格定义的因素。根据商品属性,用户可以准备进入不同的距离以获得合同,例如根据希缺性、成本或物理大小。在所有的情况下,目标距离得越近则越好,然而,不能推理地确定地理上的上限。
还存在例子,其中涉及物理商品,但是信息值随着它距离信源的距离而降低;例如,本地新闻故事和国内市场交易就是这种情况,即大部分信息流将在地理位置内,尽管在一些情况下将再次希望全局流。
根据上述情况,可以标识多个有用的结构例子,其中可以使用整个分布网络的完全本地的例子替代表示本地或“本地市场”的一个或多个节点。根据该系统的工程和逻辑要求,将节点行为与整个系统配置小心地解耦合提供了实现此目的的多种方式。
例子
在下列情况下进一步说明根据本发明的分布式媒介网络的例子和扩展:
情况1:客户可以预约多个网络:也就是两个网络可以并存,本地的和全局的网络,分别具有在客户地理域内的LPP。在此,假设信息系统是逻辑未连接的,即除了复制之外,不能在两个本地和全局系统内处理同一消息。
情况2:LPP可以是两个网络的一部分,将进入消息发送给两个上行流网络,并登记兴趣来自两个下行流网络的下行流消息。这是非常无趣的,但是值得注意的是在LPP内没有防止它执行该操作的设计标准。再次,该情况假设逻辑上未连接的信息系统。
情况3:连接的MR。仅存在单个本地网络,但一些信息可以全局地流动。改变上行流本地网络的属性集合以使某些消息根据内容被转发给全局网络内的其它MR。在路由选择规则中的不同允许在本地网络内的MR将信息推动到全局网络上(或者在本地网络之上体系层的至少一个网络),所述信息的内容被指示为是全局比较感兴趣的。这可以是专用的,或者与本地媒介器转发相结合。类似地,改变在本地网络内的TP以表示对全局网络内的TP中的兴趣。因为兴趣表示基于内容,我们可以模型化导出网络的标识作为内容的一部分,并表示对并非从本地网络得到的所有数据的兴趣;这将防止复制消息出现在来自下行流网络内的LPP。该模型不涉及对基本节点定义的改变,此外,仅将单个逻辑图提供给客户和LPP。兴趣表示可以被独立地定制给全局或本地,而不改变结构,因为这在消息的内容中被模型化。
图18图示网络的体系结构,包括‘全局’(UK)网络和两个本地(市场)网络(Fife和Glasgow)。将在Fife和Glasgow内的MR图示为将某些消息转发给UK网络内的其它MR。
并不保持本地和全局网络的严格体系结构,可以将所连接的MR视为对等体。这产生总线拓扑,其中路由选择规则允许MR将消息推送给它们链接到的任何其它MR,和相反地,从这些其它MR中的任一个MR接收消息。类似地链接为“TP总线”的TP保证网络的各个部分能够将兴趣表示传播给网络的其它部分。网络的各个部分依然保持它们的特征单向性,并且与全局配置无关。图19图示说明性的TP/MR总线拓扑。
情况4:来自全局网络的MR可以用作LPP或本地网络的客户,以普通的方式表示某些主题的数据。这允许全局网络从本地网络接收数据,而不以任何方式与该体系结构相冲突,但是仅当不需要到本地网络的反向流动时才可以使用。这将例如适合于客户准备支付更多以接收全局信息的系统。
在金融市场中,使用媒介路由选择而不是传统的对等结构允许根据在整个广域网上分配的定货单恢复出所存储的数据。该分布式媒介网络结构可以被递归地应用于解决下述问题,例如国内市场的维护,由例如全欧电子交易所,例如virt-x面对的跨国界公平交易。
类似地,可以通过使用媒介路由选择结构,而不考虑这些行为的波动模式是否由日间模式触发,或者通过从一个金融中心到另一个金融中心的交易快速转移及其反向,可以避免诸如在未来市场中观察到的地理上分散的不稳定交易活动带来的影响。
全局限制的避免
在分布式媒介网络内的每个节点在某一点上需要与其相关的全体节点的相关知识。从不需要这些节点的标识;仅需要信息以检测某个结束和配置属性,这影响在媒介过程中的节点行为或配置改变操作。具体而言,存在一种分布式操作,它用于检测何时所有的相关节点已经发送特定类型的消息。
在一些情况下,具体而言MR和TP,预期是较少的节点将参考每个节点,此外,这些节点可能将是相对本地的。在这种情况下,可以保存简单的参考计数,而不产生过多开销。
在其它情况下,具体而言M和LPP,可能存在大量的参考节点,它们也可以是在地理上分散的,因而,保存参考计数的成本可能很高。
重要的是,新节点将必须联系系统内的每个接收节点。
在这些情况下,可以如下使用在信用恢复方案上的变化。对于一组特定的节点而言,它将代表参考另一个特定节点(接收节点)的所有节点,分别承载反映它具有的信用总额的状态,一开始具有在它们之间分配的总信用1.0。当接收节点要求检测该集合内的所有节点是否已经向其发送时,它安排作为消息的一部分发送每个这样的节点的信用值。
接收节点需要在累加器内记录这些接收数值的总值,当累加器的值达到1.0时,则获知所有参考节点已经发送消息。当网络的拓扑改变时,例如通过添加或删除新的参考节点,则必须相应地调整信用余额以保证维持1.0的全局总额。
在添加节点的情况下,通过与现有节点划分信用,或者在删除节点的情况下,通过与另一个节点混合信用,可以实现上述目的,两种调整都可能在本地层上出现,此外,也可以并行地出现许多这样的局部改变。从而避免网络范围内的活动波动的可能性,如使用全局参考计数将出现的情况。
实施
本发明的分布式媒介网络可以实施为计算机实施的软件或硬件。作为软件,该实施可以存储在易失和/或非易失存储装置内。计算机程序产品,例如CD-ROM、DVD-ROM或从互联网服务器提取的数据结构,可以包含根据本发明的网络的软件表示。
在操作中,计算机程序可以存储在分布式媒介网络的部分功能可以操作组件的节点上。可替换地,它们可以存储在中央数据库内,可以从节点访问此数据库,分布式媒介网络的部分功能组件可以在所述节点上操作。在建立分布式媒介网络中的第一步骤是安装软件和配置基本网络。为了安装的验证,可以提供预先定义的立方配置。该配置将在一个物理节点上运行,可以提供脚本以验证该分布式媒介网络的正确操作。一旦已经令人满意地执行初始化验证,则系统的管理员将向媒介器(M)和媒介器路由器(MR)节点部署用于由程序员编写的特定应用程序的媒介程序,例如:聊天或价格馈送。一旦该特定应用程序在分布式媒介网络内运行,用户就可以通过LPP连接到分布式媒介网络。可以将附加的逻辑节点添加到系统中,而不干扰分布式媒介网络的用户。
正如以上所说明,物理节点是实际的硬件处理器,并将包含操作系统。因此,物理节点可以包含一个或多个逻辑节点,例如本地点存在(LPP)、媒介器(M)、媒介器路由器(MR)或传输代理(TP)。
操作员面对的管理界面提供用于根据上述属性和限制执行逻辑拓扑内的这些改变的功能。管理界面还可以提供观看和通知功能,用于监视分布式媒介网络的操作。
Claims (67)
1.一种用于在计算机网络内媒介消息流的方法,其中该计算机网络具有媒介网络,该媒介网络包括:
至少一个本地点存在(LPP)模块,用于在媒介网络和客户程序之间的接口连接;
至少一个媒介器(M)模块,用于主持媒介任务;
至少一个媒介器路由器(MR)模块,用于分析进入消息的内容,每个MR模块根据所述内容将进入消息路由发送到预定的M模块;和
至少一个传输代理(TP)模块,用于将消息转发给至少一个所述LPP模块,
其中,在该方法中,沿着媒介循环传播到媒介网络的进入消息,包括以下步骤:
LPP模块将进入消息寻址到所述至少一个媒介器路由器(MR)模块中的相应一个媒介器路由器(MR)模块;
在所述被寻址的MR模块上,分析进入消息的内容和根据所述被分析的内容将所述消息路由发送到预定的媒介器模块;
在所述预定的媒介器模块上,将媒介任务应用于所述被分析的消息,和将所媒介的消息引导至所述TP模块中的相应一个TP模块;和
在所述TP模块上,接收所述媒介消息,将所述媒介消息转发给至少一个所述LPP模块。
2.如权利要求1要求保护的方法,其中到媒介网络的进入消息属于以下消息类型组之一:
从作为信息源的处理发出的新信息;
与媒介网络内的节点状态相关的查询,它需要应答;和
兴趣表示,只要由媒介网络接收到相关的新信息,这些兴趣表示需要正在进行的应答。
3.如权利要求1要求保护的方法,其中包括通过作为进入消息沿着媒介循环引导控制消息,引起媒介网络的内部操作的改变。
4.如权利要求3要求保护的方法,其中在内部操作内的改变是在供体媒介器模块和接收者媒介器模块之间的媒介任务的切换,
其中控制消息是媒介器切换消息,媒介器切换消息的内容描述具有预定内容标签的内容从供体媒介器模块到接收者媒介器模块的重新分配,其中当前将供体媒介器模块登记为处理所述内容,和
其中媒介器切换消息的方向包括:
从预定的LPP模块,将媒介器切换消息发送给相应的相关MR模块;
在相关MR模块上,读取所述内容标签,和将该消息转发给供体媒介器模块;和
一旦接收该媒介器切换消息,供体媒介器模块:改变媒介器节点状态;将MEDIATOR_HANDOVER消息发送给接收者媒介器模块,该MEDIATOR_HANDOVER消息包含媒介器切换消息的内容;将MEDIATOR_CHANGED消息发送给相关的TP模块,和随后改变状态以将包含内容标签的消息转发给接收者媒介器模块。
5.如权利要求4要求保护的方法,还包括:
TP模块将MEDIATOR_CHANGED消息转发给至少一个LPP模块;
接收者媒介器模块生成NEW_MEDIATOR_ACTIVE消息,该NEW_MEDIATOR_ACTIVE消息包括与重新分配的内容对应的负载,和将所述NEW_MEDIATOR_ACTIVE消息广播给与之相关的所有的TP模块;和
LPP模块缓冲在MEDIATOR_CHANGED消息的接收和NEW_MEDIATOR_ACTIVE消息的接收之间的所有进入消息。
6.如权利要求5要求保护的方法,还包括:
随后LPP模块将NEW_MEDIATOR_ACTIVE消息转发给相关的MR模块;和
只要MR模块接收到NEW_MEDIATOR_ACTIVE消息,则更新用于所述MR模块的路由选择表以使将来的内容匹配将要发送给接收者媒介器模块而非供体媒介器模块的NEW_MEDIATOR_ACTIVE消息的负载;向供体媒介器模块通知已经更新路由选择表,此后,该供体媒介器模块停止转发消息,一旦所有的MR模块都已经被通知接收者媒介器模块现在是用于重新分配内容的媒介器模块。
7.如权利要求3要求保护的方法,其中在内部操作内的改变是媒介网络的逻辑拓扑结构的重新配置,和其中控制消息是一个或多个重新配置消息。
8.如权利要求7要求保护的方法,其中逻辑拓扑结构的重新配置包括生成因果障碍以确保在重新配置之后通过媒介网络发送的消息之前发送在重新配置之前通过媒介网络的消息。
9.如权利要求8要求保护的方法,其中生成因果障碍的步骤包括:围绕媒介循环来循环所述一个或多个重新配置消息;和确保已经向该循环内的每个模块充分地通知重新配置。
10.如权利要求9要求保护的方法,其中媒介结构的逻辑拓扑结构的重新配置是插入附加本地点存在(LPP)节点,和所述一个或多个重新配置消息包括唯一地标识该附加LPP节点的new_LPP消息,该插入包括:
在附加LPP节点上的预定的附加LPP模块内,生成new_LPP消息,和将该new_LPP消息发送给在MR节点上的相应MR模块;
在相应MR模块内,接收该new_LPP消息,更新MR节点的参考计数,和将该new_LPP消息传播给在该结构内的所有媒介器模块;
在每个媒介器模块内,接收该new_LPP消息,和将该new_LPP消息发送给在TP节点上的各个相应的TP模块,每个TP节点包括相关的信用余额;
在每个相应的TP模块内,接收该new_LPP消息,和发送相应的、扩展的new_LPP消息给附加LPP模块,该扩展的new_LPP消息包括相应的相关信用余额;
在附加LPP模块内,接收该扩展的new_LPP消息,从而完成该new_LPP消息的循环;和
在该附加LPP模块内,求和所述信用余额,当信用余额总额达到预定完成值时,保证重新配置的足够通知。
11.如权利要求10要求保护的方法,其中媒介结构的逻辑拓扑结构的重新配置包括进一步插入附加媒介器路由器(MR)节点,和其中所述一个或多个重新配置消息还包括唯一地标识附加MR节点的new_MR消息,该进一步插入包括:
附加LPP将new_MR消息发送给在具有相应信用余额的MR节点上的相应MR模块;
该相应MR模块通过发送new_MR_route_table消息响应于该new_MR消息,该new_MR_route_table消息包括:用于附加MR节点的地址信息、附加LPP节点的地址、路由选择信息和相应信用余额的一部分;
随后,该相应的MR模块将该new_MR_route_table消息转发给任意媒介器模块;
该任意媒介器模块将该new_MR_route_table消息传送给附加的LPP模块;
随后,该附加的LPP模块将路由选择映射传送给附加MR模块;和
在附加MR模块内,使用new_MR_route_table消息的内容以初始化新的信用余额和路由选择映射。
12.如权利要求11要求保护的方法,其中重新配置还包括,将附加LPP模块寻址的MR模块改变成附加MR模块,其中该附加MR模块一旦接收到new_MR_route_table消息就将MR_initialised()消息发送给附加LPP模块,和其中附加LPP模块分别将inc_ref_count()和dec_ref_count()消息发送给附加和初始化MR模块。
13.如权利要求9要求保护的方法,其中媒介结构的逻辑拓扑的重新配置是插入附加媒介器(M)节点,和所述一个或多个重新配置消息包括唯一地标识该附加媒介器节点的new_M消息,该插入包括:
预定的附加媒介器模块生成该new_M消息,和将该new_M消息发送给在TP节点上的相应TP模块;
在相应的TP模块内,接收该new_M消息,更新该TP模块的参考计数,和将该new_M消息传播给在此结构内的所有LPP模块;
在每个LPP模块内,接收该new_M消息,将该new_M消息发送给在MR节点上的各个相应的MR模块,每个MR模块包括相关的信用余额;
在每个相应的MR模块内,接收该new_M消息,和发送相应的、扩展的new_M消息给附加媒介器模块,该扩展的new_M消息包括相应的相关信用余额;和
在附加媒介器模块内,接收该扩展的new_M消息,从而完成该new_M消息的循环;和
在该附加媒介器模块内,求和所述信用余额,当信用余额总额达到预定完成值时,保证重新配置的足够通知。
14.如权利要求13要求保护的方法,其中媒介结构的逻辑拓扑结构的重新配置包括进一步插入附加传输代理(TP)节点,和其中所述一个或多个重新配置消息还包括唯一地标识附加TP节点的new_TP消息,该进一步插入包括:
该附加媒介器模块接收该new_TP消息;
该附加媒介器模块将该附加媒介器节点的地址添加给该new_TP消息,和将该new_TP消息转发给在包括相应信用余额的TP节点上的相应TP模块;
该相应TP模块通过生成扩展的new_TP消息来响应来new_TP消息,所述扩展的new_TP消息包括:用于该附加TP节点的地址信息、该附加媒介器节点的地址、LPP列表和相应信用余额的一部分;
随后,相应的TP模块将该new_TP消息转发给任意的LPP模块;
随后,该任意的LPP模块将新的路由选择映射消息发送给该附加TP模块;
该附加TP模块随后将该路由选择映射发送给附加MR模块;和
该附加TP模块使用该新路由选择映射消息的内容初始化新的相应信用余额和LPP模块列表。
15.如权利要求14要求保护的方法,其中重新配置还包括:将附加媒介器模块寻址的TP模块改变成附加TP模块,其中该附加TP模块一旦接收到新的路由选择映射消息则将TP_initialised()消息发送给附加媒介器模块,和其中该附加媒介器模块将inc_ref_count()和dec_ref_count()消息分别发送给该附加和初始化TP模块。
16.如权利要求3要求保护的方法,其中计算机网络还包括故障检测节点,它与在媒介网络内的每个节点通信,该方法还包括:
在故障检测节点上,提供故障检测模块;
在媒介网络的每个节点上,提供故障报告模块;
只要在节点之间的输入或输出通信链路故障,则每个所述的故障报告模块将与故障通信链路相关的信息报告给所述故障检测模块;和
所述故障检测模块确定所述故障链路是否表示故障节点。
17.如权利要求16要求保护的方法,还包括,在故障检测模块确定所述故障链路表示故障节点的情况下:
建立与故障节点相同类型的新节点;
使该新节点具有与故障节点的内部状态和直接相邻拓扑结构的相关信息;和
重新配置该网络以优先于故障节点使用该新节点。
18.如权利要求1要求保护的方法,还包括生成由所述预定的媒介器模块接收的所有进入消息的消息日志。
19.如权利要求18要求保护的方法,其中在所述预定的媒介器模块上应用于所述分析消息的媒介任务包括生成消息日志。
20.如权利要求18要求保护的方法,其中计算机网络还包括外部应用,该方法还包括:
生成在所述外部应用中的消息日志。
21.如权利要求3要求保护的方法,其中在内部操作中的改变是媒介结构的逻辑拓扑的结构优化,和其中控制消息是一个或多个优化消息。
22.如权利要求21要求保护的方法,其中在结构优化步骤的过程中插入子网络以替代单个节点。
23.一种用于在计算机网络内媒介消息流的媒介网络,其中该媒介网络包括:
至少一个本地点存在(LPP)模块,用于在媒介网络和客户程序之间的接口连接;
至少一个媒介器(M)模块,用于主持媒介任务;
至少一个媒介器路由器(MR)模块,用于分析进入消息的内容,每个MR模块根据所述内容将进入消息路由发送到相关的预定的M模块;和
至少一个传输代理(TP)模块,用于将消息转发给至少一个所述LPP模块,
其中该媒介网络沿着单向媒介循环耦合消息,其中:LPP模块寻址MR模块;MR模块又寻址M模块;M模块又寻址TP模块;和TP模块又寻址LPP模块。
24.如权利要求23要求保护的方法,其中到媒介网络的进入消息属于一组消息类型之一:
从作为信息源的处理发出的新信息;
与媒介网络内的节点状态相关的查询,它需要应答;和
兴趣表示,只要由媒介网络接收到相关的新信息,它需要正在进行的应答。
25.如权利要求23要求保护的媒介网络,还包括控制机制,通过作为进入消息沿着媒介循环引导控制消息,引起媒介网络的内部操作的改变。
26.如权利要求25要求保护的媒介网络,其中用于在内部操作内引入改变的控制机制是切换机制,它在供体媒介器节点和接收者媒介器节点之间重新分配媒介需求,
其中控制消息是媒介器切换消息,媒介器切换消息的内容描述具有预定内容标签的内容从供体媒介器模块到接收者媒介器模块的重新分配,其中当前将供体媒介器模块登记为处理所述内容,和
其中媒介器切换消息通过下述方式定向:
从预定的LPP模块,将媒介器切换消息发送给相应的相关MR模块;
在相关MR模块上,读取所述内容标签,和将该消息转发给供体媒介器模块;和
一旦接收该媒介器切换消息,供体媒介器模块:改变媒介器节点状态;将MEDIATOR_HANDOVER消息发送给接收者媒介器模块,该MEDIATOR_HANDOVER消息包含媒介器切换消息的内容;将MEDIATOR_CHANGED消息发送给相关的TP模块,和随后改变状态以将包含内容标签的消息转发给接收者媒介器模块。
27.如权利要求26要求保护的媒介网络,还包括:
TP节点将MEDIATOR_CHANGED消息转发给至少一个LPP模块;
接收者媒介器模块生成NEW_MEDIATOR_ACTIVE消息,该NEW_MEDIATOR_ACTIVE消息包括与重新分配的内容对应的负载,和将所述NEW_MEDIATOR_ACTIVE消息广播给与之相关的所有的TP模块;和
LPP模块缓冲在MEDIATOR_CHANGED消息的接收和NEW_MEDIATOR_ACTIVE消息的接收之间的所有进入消息。
28.如权利要求27要求保护的媒介网络,还包括:
随后,LPP模块将NEW_MEDIATOR_ACTIVE消息转发给相关的MR模块;和
其中,只要MR模块接收到NEW_MEDIATOR_ACTIVE消息,则所述MR模块更新用于所述MR模块的路由选择表以使匹配NEW_MEDIATOR_ACTIVE消息负载的未来的内容发送给接收者媒介器模块而非供体媒介器模块;向供体媒介器模块通知已经更新路由选择表,此后,该供体媒介器模块停止转发消息,一旦所有的MR模块都已经被通知接收者媒介器模块现在是用于重新分配内容的媒介器模块。
29.如权利要求25要求保护的媒介网络,其中用于在内部操作内引入改变的控制机制是重新配置机制,和其中控制消息是一个或多个重新配置消息。
30.如权利要求29要求保护的媒介网络,其中重新配置机制生成因果障碍以确保在重新配置之后通过媒介网络发送的消息之前发送在重新配置之前通过的媒介网络的消息。
31.如权利要求30要求保护的媒介网络,其中生成因果障碍的步骤包括:围绕媒介循环来循环所述一个或多个重新配置消息;和确保已经向该循环内的每个模块充分地通知重新配置。
32.如权利要求31要求保护的媒介网络,其中重新配置机制在媒介网络的逻辑拓扑中插入附加本地点存在(LPP)节点,和所述一个或多个重新配置消息包括唯一地标识该附加LPP节点的new_LPP消息,该重新配置机制包括:
装置,用于唯一地标识附加LPP节点的new_LPP消息,和用于将该new_LPP消息发送给在MR节点上的相应MR模块,所述生成和发送装置在预定的附加LPP模块内提供;
装置,用于接收该new_LPP消息,用于更新在MR节点内的参考计数,和将该new_LPP消息传播给在该媒介网络内的所有媒介器模块,所述接收、更新和传播装置在相应MR模块内提供;
装置,用于接收该new_LPP消息,用于将该new_LPP消息发送给在TP节点上的各个相应的TP模块,每个TP节点包括相关的信用余额,所述接收和发送装置在每个媒介器模块内提供;
装置,用于接收该new_LPP消息,和发送各个扩展的new_LPP消息给附加LPP模块,该扩展的new_LPP消息包括相应的相关信用余额,所述接收和发送装置在每个相应的TP模块内提供;
装置,用于接收该扩展的new_LPP消息,从而完成该new_LPP消息的循环,所述接收装置在附加LPP模块内提供;和
装置,用于求和所述信用余额,所述求和装置在该附加LPP模块内提供,当信用余额总额达到预定完成值时,保证重新配置的足够通知。
33.如权利要求32要求保护的媒介网络,其中重新配置机制还包括MR插入机制,用于插入附加媒介器路由器(MR)节点,和其中所述一个或多个重新配置消息还包括唯一地标识附加MR节点的new_MR消息,该MR插入机制包括:
装置,用于将new_MR消息发送给在具有相应信用余额的MR节点上的相应MR模块,所述发送装置在该附加LPP模块内提供;
装置,用于接收new_MR消息和用于发送new_MR_route_table消息,所述接收和发送装置在该相应MR模块内提供,其中该new_MR_route_table消息包括:用于附加MR节点的地址信息、附加LPP节点的地址、路由选择信息和相应信用余额的一部分;
装置,用于将该new_MR_route_table消息转发给任意媒介器模块,所述转发装置在该相应的MR模块内提供;
装置,用于将该new_MR_route_table消息传送给附加的LPP模块,所述传送装置在该任意媒介器模块内提供;
进一步的装置,用于将路由选择映射传送给附加MR模块,所述进一步的传送装置在该附加的LPP模块内提供;和
初始化装置,用于使用new_MR_route_table消息的内容以初始化新的信用余额和路由选择映射,所述初始化装置在该附加MR模块内提供。
34.如权利要求33要求保护的媒介网络,其中重新配置机制还包括装置,用于将附加LPP模块寻址的MR模块改变成附加MR模块;其中该附加MR模块一旦接收到new_MR_route_table消息就将MR_initialised()消息发送给附加LPP模块,和其中附加LPP模块分别将inc_ref_count()和dec_ref_count()消息发送给附加和初始化MR模块。
35.如权利要求31要求保护的媒介网络,其中重新配置机制在媒介网络的逻辑拓扑内插入附加媒介器(M)节点,和所述一个或多个重新配置消息包括唯一地标识该附加媒介器节点的new_M消息,该重新配置机制包括:
装置,用于生成new_M消息,和用于将该new_M消息发送给在TP节点上的相应TP模块,所述生成和发送装置在预定的附加媒介器模块内提供;
装置,用于接收该new_M消息,更新该TP节点的参考计数,和将该new_M消息传播给在此结构内的所有LPP模块,所述接收、更新和传播装置在相应的TP模块内提供;
装置,用于接收该new_M消息,和用于该new_M消息发送给在MR节点上的各个相应的MR模块,每个MR节点包括相关的信用余额,所述接收和发送装置在每个LPP模块内提供;
装置,用于接收该new_M消息,和发送各个扩展的new_M消息给附加媒介器模块,该扩展的new_M消息包括相应的相关信用余额,所述接收和发送装置在每个相应的MR模块内提供;
装置,用于接收该扩展的new_M消息,从而完成该new_M消息的循环,所述接收装置在附加媒介器模块内提供;和
装置,用于求和所述信用余额,所述求和装置在该附加媒介器模块内提供,当信用余额总额达到预定完成值时,保证重新配置的足够通知。
36.如权利要求35要求保护的媒介网络,其中重新配置机制还包括TP插入机制,用于插入附加传输代理(TP)节点,和其中所述一个或多个重新配置消息还包括唯一地标识附加TP节点的new_TP消息,该TP插入机制包括:
装置,用于接收包括附加TP地址的new_TP消息,所述接收装置在附加媒介器模块内提供;
装置,用于将该附加媒介器节点的地址添加给该new_TP消息,和将该new_TP消息转发给在包括相应信用余额的TP节点上的相应TP模块,所述添加和转发装置在该附加媒介器模块内提供;
装置,用于接收new_TP消息和生成扩展的new_TP消息,所述扩展的new_TP消息包括:用于该附加TP节点的地址信息、该附加媒介器节点的地址、LPP列表和相应信用余额的一部分,所述接收和生成装置在相应的TP模块内提供;
装置,用于将该new_TP消息转发给任意的LPP模块,所述转发装置在相应的TP模块内提供;
装置,用于将新的路由选择映射消息发送给该附加TP模块,其地址在该新的路由选择映射消息内,所述发送装置在相应的TP模块内提供;
进一步的装置,用于将该路由选择映射发送给附加MR模块,所述进一步的发送装置在该附加TP模块内提供;和
初始化装置,用于使用该新路由选择映射消息的内容初始化信用余额和LPP节点列表,所述初始化装置在该附加TP模块内提供。
37.如权利要求36要求保护的媒介网络,其中重新配置还包括:装置,用于将附加媒介器模块寻址的TP模块改变成附加TP模块;其中该附加TP模块一旦接收到新的路由选择映射消息则将TP_initialised()消息发送给附加媒介器模块,和其中该附加媒介器模块将inc_ref_count()和dec_ref_count()消息分别发送给该附加和初始化TP模块。
38.如权利要求23要求保护的媒介网络,其中计算机网络还包括故障检测节点,它与在媒介网络内的每个节点通信,该故障检测节点安装有故障检测模块,和媒介网络的每个节点安装有故障报告模块;
其中只要在节点之间的输入或输出通信链路故障,则每个所述的故障报告模块将与故障通信链路相关的信息报告给所述故障检测模块;和
所述故障检测模块确定所述故障链路是否表示故障节点。
39.如权利要求38要求保护的媒介网络,还包括故障处理机制,只要故障检测模块确定所述故障链路表示故障节点,该故障处理机制:建立与故障节点相同类型的新节点;使该新节点具有与故障节点的内部状态和直接相邻拓扑结构的相关信息;和重新配置该网络以优先于故障节点使用该新节点。
40.如权利要求23要求保护的媒介网络,还包括装置,用于生成由所述预定的媒介器模块接收的所有进入消息的消息日志。
41.如权利要求40要求保护的媒介网络,其中在所述预定的媒介器模块上应用于所述分析消息的媒介任务包括生成消息日志。
42.如权利要求40要求保护的媒介网络,其中计算机网络还包括生成消息日志的外部应用,该媒介网络还包括:
装置,用于接收在所述外部应用中生成的消息日志。
43.如权利要求23要求保护的媒介网络,其中在内部操作中的改变是媒介结构的逻辑拓扑的结构优化,和其中控制消息是一个或多个优化消息。
44.如权利要求43要求保护的媒介网络,其中在结构优化步骤的过程中插入子网络以替代单个节点。
45.一种计算机程序产品,用于在计算机网络内媒介消息流,该计算机程序产品包括可执行指令,用于提供一种媒介网络,该媒介网络包括:
至少一个本地点存在(LPP)模块,用于在媒介网络和客户程序之间的接口连接;
至少一个媒介器(M)模块,用于主持媒介任务;
至少一个媒介器路由器(MR)模块,用于分析进入消息的内容,每个MR模块根据所述内容将进入消息路由发送到预定的M模块;和
至少一个传输代理(TP)模块,用于将消息转发给至少一个所述LPP模块,
其中,当执行该指令时,沿着媒介循环传播到媒介网络的进入消息,包括步骤:
LPP模块将进入消息寻址到所述至少一个媒介器路由器(MR)模块中的相应一个媒介器路由器(MR)模块;
在所述被寻址的MR模块上,分析进入消息的内容和根据所述被分析的内容将所述消息路由发送到预定的媒介器模块;
在所述预定的媒介器模块上,将媒介任务应用于所述被分析的消息,和将所媒介的消息引导至所述TP模块中的相应一个TP模块;和
在所述TP模块上,接收所述媒介消息,将所述媒介消息转发给至少一个所述LPP模块。
46.如权利要求45要求保护的计算机程序产品,其中到媒介网络的进入消息属于一组消息类型之一:
从作为信息源的处理发出的新信息;
与媒介网络内的节点状态相关的查询,它需要应答;和
兴趣表示,只要由媒介网络接收到相关的新信息,它需要正在进行的应答。
47.如权利要求45要求保护的计算机程序产品,还包括通过作为进入消息沿着媒介循环引导控制消息,引起媒介网络的内部操作的改变。
48.如权利要求47要求保护的计算机程序产品,其中在内部操作内的改变是在供体媒介器模块和接收者媒介器模块之间的媒介任务的切换,
其中控制消息是媒介器切换消息,媒介器切换消息的内容描述具有预定内容标签的内容从供体媒介器模块到接收者媒介器模块的重新分配,其中当前将供体媒介器模块登记为处理所述内容,和
其中媒介器切换消息的方向包括:
从预定的LPP模块,将媒介器切换消息发送给相应的相关MR模块;
在相关MR模块上,读取所述内容标签,和将该消息转发给供体媒介器模块;和
一旦接收该媒介器切换消息,供体媒介器模块:改变媒介器节点状态;将MEDIATOR_HANDOVER消息发送给接收者媒介器模块,该MEDIATOR_HANDOVER消息包含媒介器切换消息的内容;将MEDIATOR_CHANGED消息发送给相关的TP模块,和随后改变状态以将包含内容标签的消息转发给接收者媒介器模块。
49.如权利要求48要求保护的计算机程序产品,还包括:
TP模块将MEDIATOR_CHANGED消息转发给至少一个LPP模块;
接收者媒介器模块生成NEW_MEDIATOR_ACTIVE消息,该NEW_MEDIATOR_ACTIVE消息包括与重新分配的内容对应的负载,和将所述NEW_MEDIATOR_ACTIVE消息广播给与之相关的所有的TP模块;和
LPP模块缓冲在MEDIATOR_CHANGED消息的接收和NEW_MEDIATOR_ACTIVE消息的接收之间的所有进入消息。
50.如权利要求49要求保护的计算机程序产品,还包括:
随后,LPP模块将NEW_MEDIATOR_ACTIVE消息转发给相关的MR模块;和
只要MR模块接收到NEW_MEDIATOR_ACTIVE消息,则更新用于所述MR模块的路由选择表以使匹配NEW_MEDIATOR_ACTIVE消息负载的将来的内容发送给接收者媒介器模块而非供体媒介器模块;向供体媒介器模块通知已经更新路由选择表,此后,该供体媒介器模块停止转发消息,一旦所有的MR模块都已经被通知接收者媒介器模块现在是用于重新分配内容的媒介器模块。
51.如权利要求47要求保护的计算机程序产品,其中在内部操作内的改变是媒介网络的逻辑拓扑结构的重新配置,和其中控制消息是一个或多个重新配置消息。
52.如权利要求51要求保护的计算机程序产品,其中逻辑拓扑结构的重新配置包括生成因果障碍以确保在重新配置之后通过媒介网络发送的消息之前发送在重新配置之前通过的媒介网络的消息。
53.如权利要求52要求保护的计算机程序产品,其中生成因果障碍的步骤包括:围绕媒介循环来循环所述一个或多个重新配置消息;和确保已经向该循环内的每个模块充分地通知重新配置。
54.如权利要求53要求保护的计算机程序产品,其中媒介结构的逻辑拓扑结构的重新配置是插入附加本地点存在(LPP)节点,和所述一个或多个重新配置消息包括唯一地标识该附加LPP节点的new_LPP消息,该插入包括:
在附加LPP节点上的预定的附加LPP模块内,生成new_LPP消息,和将该new_LPP消息发送给在MR节点上的相应MR模块;
在相应MR模块内,接收该new_LPP消息,更新MR节点的参考计数,和将该new_LPP消息传播给在该结构内的所有媒介器模块;
在每个媒介器模块内,接收该new_LPP消息,和将该new_LPP消息发送给在TP节点上的各个相应的TP模块,每个TP节点包括相关的信用余额(credit balance);
在每个相应的TP模块内,接收该new_LPP消息,和发送各个扩展的new_LPP消息给附加LPP模块,该扩展的new_LPP消息包括相应的相关信用余额;
在附加LPP模块内,接收该扩展的new_LPP消息,从而完成该new_LPP消息的循环;和
在该附加LPP模块内,求和所述信用余额,当信用余额总额达到预定完成值时,保证重新配置的足够通知。
55.如权利要求54要求保护的计算机程序产品,其中媒介结构的逻辑拓扑结构的重新配置包括进一步插入附加媒介器路由器(MR)节点,和其中所述一个或多个重新配置消息还包括唯一地标识附加MR节点的new_MR消息,该进一步插入包括:
附加LPP将new_MR消息发送给在具有相应信用余额的MR节点上的相应MR模块;
该相应MR模块通过发送new_MR_route_table消息响应于该new_MR消息,该new_MR_route_table消息包括:用于附加MR节点的地址信息、附加LPP节点的地址、路由选择信息和相应信用余额的一部分;
随后,该相应的MR模块将该new_MR_route_table消息转发给任意媒介器模块;
该任意媒介器模块将该new_MR_route_table消息传送给附加的LPP模块;
随后,该附加的LPP模块将路由选择映射传送给附加MR模块;知
在附加MR模块内,使用new_MR_route_table消息的内容以初始化新的信用余额和路由选择映射。
56.如权利要求55要求保护的计算机程序产品,其中重新配置还包括,将附加LPP模块寻址的MR模块改变成附加MR模块,其中该附加MR模块一旦接收到new_MR_route_table消息就将MR_initialised()消息发送给附加LPP模块,和其中附加LPP模块分别将inc_ref_count()和dec_ref_count()消息发送给附加和初始化MR模块。
57.如权利要求53要求保护的计算机程序产品,其中媒介结构的逻辑拓扑的重新配置是插入附加媒介器(M)节点,和所述一个或多个重新配置消息包括唯一地标识该附加媒介器节点的new_M消息,该插入包括:
预定的附加媒介器模块生成该new_M消息,和将该new_M消息发送给在TP节点上的相应TP模块;
在相应的TP模块内,接收该new_M消息,更新该TP模块的参考计数,和将该new_M消息传播给在此结构内的所有LPP模块;
在每个LPP模块内,接收该new_M消息,将该new_M消息发送给在MR节点上的各个相应的MR模块,每个MR模块包括相关的信用余额;
在每个相应的MR模块内,接收该new_M消息,和发送相应的、扩展的new_M消息给附加媒介器模块,该扩展的new_M消息包括相应的相关信用余额;和
在附加媒介器模块内,接收该扩展的new_M消息,从而完成该new_M消息的循环;和
在该附加媒介器模块内,求和所述信用余额,当信用余额总额达到预定完成值时,保证重新配置的足够通知。
58.如权利要求57要求保护的计算机程序产品,其中媒介结构的逻辑拓扑结构的重新配置包括进一步插入附加传输代理(TP)节点,和其中所述一个或多个重新配置消息还包括唯一地标识附加TP节点的new_TP消息,该进一步插入包括:
该附加媒介器模块接收该new_TP消息;
该附加媒介器模块将该附加媒介器节点的地址添加给该new_TP消息,和将该new_TP消息转发给在包括相应信用余额的TP节点上的相应TP模块;
该相应TP模块通过生成扩展的new_TP消息来响应来new_TP消息,所述扩展的new_TP消息包括:用于该附加TP节点的地址信息、该附加媒介器节点的地址、LPP列表和相应信用余额的一部分;
随后,相应的TP模块将该new_TP消息转发给任意的LPP模块;
随后,该任意的LPP模块将新的路由选择映射消息发送给该附加TP模块;
该附加TP模块随后将该路由选择映射发送给附加MR模块;和
该附加TP模块使用该新路由选择映射消息的内容初始化新的相应信用余额和LPP模块列表。
59.如权利要求58要求保护的计算机程序产品,其中重新配置还包括:将附加媒介器模块寻址的TP模块改变成附加TP模块,其中该附加TP模块一旦接收到新的路由选择映射消息则将TP_initialised()消息发送给附加媒介器模块,和其中该附加媒介器模块将inc_ref_count()和dec_ref_count()消息分别发送给该附加和初始化TP模块。
60.如权利要求47要求保护的计算机程序产品,其中计算机网络还包括故障检测节点,它与在媒介网络内的每个节点通信,该方法还包括:
在故障检测节点上,提供故障检测模块;
在媒介网络的每个节点上,提供故障报告模块;
只要在节点之间的输入或输出通信链路故障,则每个所述的故障报告模块将与故障通信链路相关的信息报告给所述故障检测模块;和
所述故障检测模块确定所述故障链路是否表示故障节点。
61.如权利要求60要求保护的计算机程序产品,还包括,在故障检测模块确定所述故障链路表示故障节点的情况下:
建立与故障节点相同类型的新节点;
使该新节点具有与故障节点的内部状态和直接相邻拓扑结构的相关信息;和
重新配置该网络以优先于故障节点使用该新节点。
62.如权利要求45要求保护的计算机程序产品,还包括生成由所述预定的媒介器模块接收的所有进入消息的消息日志。
63.如权利要求62要求保护的计算机程序产品,其中在所述预定的媒介器模块上应用于所述分析消息的媒介任务包括生成消息日志。
64.如权利要求62要求保护的计算机程序产品,其中计算机网络还包括外部应用,该方法还包括:
生成在所述外部应用中的消息日志。
65.如权利要求47要求保护的计算机程序产品,其中在内部操作中的改变是媒介结构的逻辑拓扑的结构优化,和其中控制消息是一个或多个优化消息。
66.如权利要求65要求保护的计算机程序产品,其中在结构优化步骤的过程中插入子网络以替代单个节点。
67.如权利要求45要求保护的计算机程序产品,该计算机程序产品包括用于提供数据库的指令,所述数据库用于存储与媒介网络的逻辑和物理结构相关的信息。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US49177703P | 2003-07-31 | 2003-07-31 | |
US60/491,777 | 2003-07-31 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1846419A true CN1846419A (zh) | 2006-10-11 |
Family
ID=34115550
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2004800248321A Pending CN1846419A (zh) | 2003-07-31 | 2004-08-02 | 自管理媒介信息流 |
Country Status (13)
Country | Link |
---|---|
US (1) | US9525566B2 (zh) |
EP (1) | EP1649667B1 (zh) |
JP (1) | JP4588704B2 (zh) |
CN (1) | CN1846419A (zh) |
AT (1) | ATE400133T1 (zh) |
AU (1) | AU2004301718B9 (zh) |
DE (1) | DE602004014776D1 (zh) |
ES (1) | ES2319196T3 (zh) |
GB (1) | GB2418331B8 (zh) |
NO (1) | NO20060397L (zh) |
NZ (1) | NZ544986A (zh) |
PT (1) | PT1649667E (zh) |
WO (1) | WO2005013554A2 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104778188A (zh) * | 2014-02-24 | 2015-07-15 | 贵州电网公司信息通信分公司 | 一种分布式设备日志采集方法 |
CN115061718A (zh) * | 2022-03-24 | 2022-09-16 | 上海任意门科技有限公司 | 配置和运行状态机的方法、计算设备和计算机存储介质 |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8307112B2 (en) * | 2003-07-31 | 2012-11-06 | Cloudsoft Corporation Limited | Mediated information flow |
US9525566B2 (en) | 2003-07-31 | 2016-12-20 | Cloudsoft Corporation Limited | Self-managed mediated information flow |
US8082340B2 (en) * | 2006-01-30 | 2011-12-20 | Cisco Technology, Inc. | Technique for distinguishing between link and node failure using bidirectional forwarding detection (BFD) |
GB2439195B8 (en) * | 2006-06-12 | 2011-01-19 | Enigmatec Corp Ltd | Self-managed distributed mediation networks. |
US7930600B2 (en) * | 2008-02-26 | 2011-04-19 | International Business Machines Corporation | Logical to physical connectivity verification in a predefined networking environment |
CN101719836A (zh) * | 2008-10-09 | 2010-06-02 | 联想(北京)有限公司 | 一种故障检测方法及装置 |
KR101010911B1 (ko) * | 2008-12-31 | 2011-01-26 | 엔에이치엔(주) | 메시징 네트워크 시스템의 메시지 송수신 방법 |
US8392555B2 (en) * | 2009-06-01 | 2013-03-05 | International Business Machines Corporation | Push-back mechanism for pub/sub brokers |
US8700756B2 (en) * | 2011-05-03 | 2014-04-15 | Xerox Corporation | Systems, methods and devices for extracting and visualizing user-centric communities from emails |
US9154400B2 (en) | 2011-05-10 | 2015-10-06 | Cray Inc. | Dynamically updating routing information while avoiding deadlocks and preserving packet order after a configuration change |
US8854951B2 (en) * | 2011-05-10 | 2014-10-07 | Cray Inc. | Dynamically updating routing information while avoiding deadlocks and preserving packet order after a link error |
US9258195B1 (en) | 2012-08-08 | 2016-02-09 | Shoretel, Inc. | Logical topology visualization |
US9712402B2 (en) | 2012-10-10 | 2017-07-18 | Alcatel Lucent | Method and apparatus for automated deployment of geographically distributed applications within a cloud |
ES2617196T3 (es) | 2013-04-19 | 2017-06-15 | Entuity Limited | Identificación de rutas en una red de dispositivos de enrutamiento/conmutación mezclados |
JP6193473B2 (ja) | 2013-04-19 | 2017-09-06 | エンチュイティ リミテッドEntuity Limited | コンピュータ実施方法、コンピュータプログラム製品及びコンピュータ |
GB2527273B (en) | 2014-04-11 | 2016-08-03 | Entuity Ltd | Executing a loop computer program to identify a path in a network |
GB2513188B (en) * | 2013-04-19 | 2015-11-25 | Entuity Ltd | Identification of the paths taken through a network of interconnected devices |
WO2014170458A1 (en) | 2013-04-19 | 2014-10-23 | Entuity Limited | Querying a traffic forwarding table |
JP6829072B2 (ja) * | 2013-08-07 | 2021-02-10 | インターデイジタル パテント ホールディングス インコーポレイテッド | デバイスツーデバイス通信のための分散スケジューリング |
US10057337B2 (en) * | 2016-08-19 | 2018-08-21 | AvaSure, LLC | Video load balancing system for a peer-to-peer server network |
EP3628118A4 (en) * | 2017-07-07 | 2020-12-09 | ARRIS Enterprises LLC | AGENT SERVER BETWEEN WIRELESS LOCAL NETWORK INFRASTRUCTURES |
CN110390020A (zh) * | 2018-04-19 | 2019-10-29 | 株式会社日立制作所 | 语义网关的建模方法和语义网关 |
US10993110B2 (en) * | 2018-07-13 | 2021-04-27 | Nvidia Corp. | Connectionless fast method for configuring Wi-Fi on displayless Wi-Fi IoT device |
WO2021137218A2 (en) * | 2020-01-02 | 2021-07-08 | Lavi Gabriel | Methods and systems for supporting communication a plurality of client communication devices in a wireless local area network |
US11606242B1 (en) * | 2022-03-10 | 2023-03-14 | Ricoh Company, Ltd. | Coordinated monitoring of legacy output devices |
US11894973B2 (en) | 2022-03-10 | 2024-02-06 | Ricoh Company, Ltd. | Assigning and prioritizing mediation servers for monitoring legacy devices |
Family Cites Families (120)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5769527A (en) | 1986-07-17 | 1998-06-23 | Vari-Lite, Inc. | Computer controlled lighting system with distributed control resources |
US6185619B1 (en) * | 1996-12-09 | 2001-02-06 | Genuity Inc. | Method and apparatus for balancing the process load on network servers according to network and serve based policies |
JPH09510596A (ja) * | 1994-06-08 | 1997-10-21 | エイチイー・ホールディングス・インコーポレーテッド・ディー ビーエー・ヒューズ・エレクトロニクス | ハイブリッドネットワークアクセスのための装置および方法 |
CA2254944A1 (en) * | 1996-05-23 | 1997-11-27 | Citibank, N.A. | Global financial services integration system and process |
US7903029B2 (en) * | 1996-09-09 | 2011-03-08 | Tracbeam Llc | Wireless location routing applications and architecture therefor |
JPH10124411A (ja) * | 1996-10-24 | 1998-05-15 | Fuji Xerox Co Ltd | エージェントコミュニティシステム |
US6247056B1 (en) | 1997-02-03 | 2001-06-12 | Oracle Corporation | Method and apparatus for handling client request with a distributed web application server |
US6112239A (en) * | 1997-06-18 | 2000-08-29 | Intervu, Inc | System and method for server-side optimization of data delivery on a distributed computer network |
US6968394B1 (en) * | 1997-09-22 | 2005-11-22 | Zaksat General Trading Co., Wll | Asymmetric satellite-based internet service |
JP3274393B2 (ja) * | 1997-09-22 | 2002-04-15 | 株式会社ディジタル・ビジョン・ラボラトリーズ | ネットワークシステム、データ配信方法、および、配信用データが記録されたコンピュータ読み取り可能な記録媒体 |
US6128279A (en) * | 1997-10-06 | 2000-10-03 | Web Balance, Inc. | System for balancing loads among network servers |
US6038594A (en) * | 1998-02-02 | 2000-03-14 | Loral Cyberstar, Inc. | Internet communication system and method with asymmetric terrestrial and satellite links |
US6519243B1 (en) * | 1998-02-26 | 2003-02-11 | Hitachi, Ltd. | Communication system for communications devices utilizing asymmetrical paths and communications method utilizing asymmetrical paths |
US6108703A (en) * | 1998-07-14 | 2000-08-22 | Massachusetts Institute Of Technology | Global hosting system |
US6330592B1 (en) * | 1998-12-05 | 2001-12-11 | Vignette Corporation | Method, memory, product, and code for displaying pre-customized content associated with visitor data |
US6349307B1 (en) * | 1998-12-28 | 2002-02-19 | U.S. Philips Corporation | Cooperative topical servers with automatic prefiltering and routing |
US6760775B1 (en) * | 1999-03-05 | 2004-07-06 | At&T Corp. | System, method and apparatus for network service load and reliability management |
US6594268B1 (en) * | 1999-03-11 | 2003-07-15 | Lucent Technologies Inc. | Adaptive routing system and method for QOS packet networks |
US6646984B1 (en) * | 1999-03-15 | 2003-11-11 | Hewlett-Packard Development Company, L.P. | Network topology with asymmetric fabrics |
US8060926B1 (en) * | 1999-03-16 | 2011-11-15 | Novell, Inc. | Techniques for securely managing and accelerating data delivery |
EP1043671A3 (en) | 1999-03-19 | 2003-07-16 | International Business Machines Corporation | Message broker providing a publish/subscribe service and method of processing messages in a publish/subscribe environment |
US6785704B1 (en) * | 1999-12-20 | 2004-08-31 | Fastforward Networks | Content distribution system for operation over an internetwork including content peering arrangements |
US20020032642A1 (en) * | 1999-10-13 | 2002-03-14 | Graciela Chichilnisky | Internet based secure virtual exchange and distributed relational database for cross border trading of securities |
US7117273B1 (en) * | 2000-01-25 | 2006-10-03 | Cisco Technology, Inc. | Methods and apparatus for maintaining a map of node relationships for a network |
CA2398499C (en) * | 2000-01-28 | 2010-08-24 | Ibeam Broadcasting Corporation | A system and method for rewriting a media resource request and/or response between origin server and client |
US7003571B1 (en) * | 2000-01-31 | 2006-02-21 | Telecommunication Systems Corporation Of Maryland | System and method for re-directing requests from browsers for communication over non-IP based networks |
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 |
US7702744B2 (en) * | 2000-03-07 | 2010-04-20 | Nippon Telegraph And Telephone Corporation | Semantic information network (SION) |
US6601101B1 (en) * | 2000-03-15 | 2003-07-29 | 3Com Corporation | Transparent access to network attached devices |
US7260635B2 (en) * | 2000-03-21 | 2007-08-21 | Centrisoft Corporation | Software, systems and methods for managing a distributed network |
US20010027491A1 (en) * | 2000-03-27 | 2001-10-04 | Terretta Michael S. | Network communication system including metaswitch functionality |
US7120453B2 (en) | 2000-04-18 | 2006-10-10 | Lucent Technologies Inc. | Paging of mobile hosts on an internet protocol network |
US8239445B1 (en) * | 2000-04-25 | 2012-08-07 | International Business Machines Corporation | URL-based sticky routing tokens using a server-side cookie jar |
US7401131B2 (en) * | 2000-05-22 | 2008-07-15 | Verizon Business Global Llc | Method and system for implementing improved containers in a global ecosystem of interrelated services |
US7356500B1 (en) * | 2000-06-01 | 2008-04-08 | Pipeline Financial Group, Inc. | Method for directing and executing certified trading interests |
US7200673B1 (en) * | 2000-06-09 | 2007-04-03 | Steven Augart | Determining the geographic location of a network device |
US6591285B1 (en) * | 2000-06-16 | 2003-07-08 | Shuo-Yen Robert Li | Running-sum adder networks determined by recursive construction of multi-stage networks |
US6983259B1 (en) * | 2000-06-23 | 2006-01-03 | Ebs Group Limited | Anonymous trading system |
US7032031B2 (en) * | 2000-06-23 | 2006-04-18 | Cloudshield Technologies, Inc. | Edge adapter apparatus and method |
US7114008B2 (en) * | 2000-06-23 | 2006-09-26 | Cloudshield Technologies, Inc. | Edge adapter architecture apparatus and method |
JP2002015215A (ja) * | 2000-06-30 | 2002-01-18 | Hitachi Ltd | マルチメデア情報配信システムおよび携帯情報端末装置 |
US7461150B1 (en) * | 2000-07-19 | 2008-12-02 | International Business Machines Corporation | Technique for sending TCP messages through HTTP systems |
US7370364B2 (en) * | 2000-07-31 | 2008-05-06 | Ellacoya Networks, Inc. | Managing content resources |
US7082102B1 (en) * | 2000-10-19 | 2006-07-25 | Bellsouth Intellectual Property Corp. | Systems and methods for policy-enabled communications networks |
US7403980B2 (en) * | 2000-11-08 | 2008-07-22 | Sri International | Methods and apparatus for scalable, distributed management of virtual private networks |
US6954463B1 (en) * | 2000-12-11 | 2005-10-11 | Cisco Technology, Inc. | Distributed packet processing architecture for network access servers |
US6697206B2 (en) * | 2000-12-19 | 2004-02-24 | Imation Corp. | Tape edge monitoring |
US20020116397A1 (en) * | 2000-12-21 | 2002-08-22 | Berg Mitchell T. | Method and system for communicating an information packet through multiple router devices |
US20020120837A1 (en) * | 2001-02-28 | 2002-08-29 | Maxemchuk Nicholas Frank | Distributed internet multicast system for the stock market |
US6816493B2 (en) * | 2001-03-09 | 2004-11-09 | Motorola, Inc. | Method and apparatus employing a mediation device to facilitate communication among devices in an asynchronous communications network |
US7571211B1 (en) * | 2002-04-15 | 2009-08-04 | Lightwaves Systems, Inc. | Method for routing messages over a network based on location |
US7200679B2 (en) * | 2001-04-13 | 2007-04-03 | Telefonaktiebolaget Lm Ericsson (Publ) | Creating distributed proxy configurations |
US20020156918A1 (en) * | 2001-04-23 | 2002-10-24 | Brocade Communications Systems, Inc. | Dynamic path selection with in-order delivery within sequence in a communication network |
TWI220821B (en) * | 2001-04-26 | 2004-09-01 | Accton Technology Corp | Zero-loss web service system and method |
US7380017B2 (en) * | 2001-05-03 | 2008-05-27 | Nortel Networks Limited | Route protection in a communication network |
US7251222B2 (en) * | 2001-05-15 | 2007-07-31 | Motorola, Inc. | Procedures for merging the mediation device protocol with a network layer protocol |
KR20040044182A (ko) * | 2001-06-04 | 2004-05-27 | 엔시티 그룹, 인코포레이티드 | 통신네트워크의 유효 대역폭 증가 시스템 및 방법 |
US7117242B2 (en) * | 2001-06-20 | 2006-10-03 | Hewlett-Packard Development Company, L.P. | System and method for workload-aware request distribution in cluster-based network servers |
US6970947B2 (en) * | 2001-07-18 | 2005-11-29 | International Business Machines Corporation | Method and apparatus for providing a flexible and scalable context service |
US6944785B2 (en) * | 2001-07-23 | 2005-09-13 | Network Appliance, Inc. | High-availability cluster virtual server system |
US7111074B2 (en) * | 2001-07-24 | 2006-09-19 | Pluris, Inc. | Control method for data path load-balancing on a data packet network |
US10469591B2 (en) * | 2001-08-21 | 2019-11-05 | Bookit Oy | Method and system for mediating and provisioning services |
US7613640B2 (en) * | 2001-08-29 | 2009-11-03 | Ebs Group Limited | Electronic trading system |
US20050071443A1 (en) * | 2001-09-10 | 2005-03-31 | Jai Menon | Software platform for the delivery of services and personalized content |
US7512676B2 (en) * | 2001-09-13 | 2009-03-31 | Network Foundation Technologies, Llc | Systems for distributing data over a computer network and methods for arranging nodes for distribution of data over a computer network |
US8042132B2 (en) * | 2002-03-15 | 2011-10-18 | Tvworks, Llc | System and method for construction, delivery and display of iTV content |
EP2403219B1 (en) * | 2001-09-28 | 2014-10-22 | Level 3 CDN International, Inc. | Method for name to address resolution |
US7860964B2 (en) * | 2001-09-28 | 2010-12-28 | Level 3 Communications, Llc | Policy-based content delivery network selection |
CA2408766A1 (en) * | 2001-10-17 | 2003-04-17 | Telecommunications Research Laboratory | Content delivery network bypass system |
US7362709B1 (en) * | 2001-11-02 | 2008-04-22 | Arizona Board Of Regents | Agile digital communication network with rapid rerouting |
US7406537B2 (en) * | 2002-11-26 | 2008-07-29 | Progress Software Corporation | Dynamic subscription and message routing on a topic between publishing nodes and subscribing nodes |
WO2003048905A2 (en) * | 2001-12-05 | 2003-06-12 | E-Xchange Advantage, Inc. | Method and system for managing distributed trading data |
US8122118B2 (en) * | 2001-12-14 | 2012-02-21 | International Business Machines Corporation | Selection of communication protocol for message transfer based on quality of service requirements |
US20030126059A1 (en) * | 2001-12-18 | 2003-07-03 | Hensley Roy Austin | Intelectual property (IP) brokering system and method |
US8126722B2 (en) * | 2001-12-20 | 2012-02-28 | Verizon Business Global Llc | Application infrastructure platform (AIP) |
JP2005513916A (ja) * | 2001-12-21 | 2005-05-12 | ミュアヘッド、チャールズ・エス | 仮想専用ネットワーク・サービスの供給チェーン管理システム |
US7203743B2 (en) | 2001-12-28 | 2007-04-10 | Nortel Networks Limited | Hierarchical tree-based protection scheme for mesh networks |
WO2003060707A1 (en) * | 2002-01-11 | 2003-07-24 | Akamai Technologies, Inc. | Java application framework for use in a content delivery network (cdn) |
US7586909B1 (en) * | 2002-03-06 | 2009-09-08 | Agere Systems Inc. | Striping algorithm for switching fabric |
US20030179775A1 (en) * | 2002-03-20 | 2003-09-25 | Carolan Jason T. | Service delivery network system and method |
US7213246B1 (en) | 2002-03-28 | 2007-05-01 | Veritas Operating Corporation | Failing over a virtual machine |
US8516114B2 (en) * | 2002-03-29 | 2013-08-20 | International Business Machines Corporation | Method and apparatus for content pre-fetching and preparation |
US20030204602A1 (en) * | 2002-04-26 | 2003-10-30 | Hudson Michael D. | Mediated multi-source peer content delivery network architecture |
US20030225873A1 (en) * | 2002-05-30 | 2003-12-04 | Wade Michael A. | Optimization of network performance through uni-directional encapsulation |
US7685287B2 (en) * | 2002-05-30 | 2010-03-23 | Microsoft Corporation | Method and system for layering an infinite request/reply data stream on finite, unidirectional, time-limited transports |
US7376125B1 (en) * | 2002-06-04 | 2008-05-20 | Fortinet, Inc. | Service processing switch |
GB2389431A (en) * | 2002-06-07 | 2003-12-10 | Hewlett Packard Co | An arrangement for delivering resources over a network in which a demand director server is aware of the content of resource servers |
US7676812B2 (en) * | 2002-06-10 | 2010-03-09 | Microsoft Corporation | Large scale event notification system |
US8086750B2 (en) * | 2002-06-17 | 2011-12-27 | Darby & Mohaine, L.L.C. | Method and system for delivering content over a network |
US7360160B2 (en) * | 2002-06-20 | 2008-04-15 | At&T Intellectual Property, Inc. | System and method for providing substitute content in place of blocked content |
US7177859B2 (en) * | 2002-06-26 | 2007-02-13 | Microsoft Corporation | Programming model for subscription services |
JP3923863B2 (ja) * | 2002-07-09 | 2007-06-06 | 株式会社日立製作所 | リクエストルータ装置 |
US7254109B2 (en) * | 2002-07-12 | 2007-08-07 | Baypackets, Inc. | Fault tolerant correlation engine method and system for telecommunications networks |
US7461147B1 (en) * | 2002-08-26 | 2008-12-02 | Netapp. Inc. | Node selection within a network based on policy |
US7185067B1 (en) * | 2002-08-27 | 2007-02-27 | Cisco Technology, Inc. | Load balancing network access requests |
US7822810B2 (en) * | 2002-09-17 | 2010-10-26 | Hewlett-Packard Development Company, L.P. | Method and system for peer to peer common channel collaboration |
AU2003274641A1 (en) * | 2002-10-15 | 2004-05-04 | Active-Base Ltd. | System and method for the optimization of database |
US8233392B2 (en) * | 2003-07-29 | 2012-07-31 | Citrix Systems, Inc. | Transaction boundary detection for reduction in timeout penalties |
US20040103193A1 (en) | 2002-11-08 | 2004-05-27 | Pandya Suketu J. | Response time and resource consumption management in a distributed network environment |
US7395536B2 (en) | 2002-11-14 | 2008-07-01 | Sun Microsystems, Inc. | System and method for submitting and performing computational tasks in a distributed heterogeneous networked environment |
US7640267B2 (en) * | 2002-11-20 | 2009-12-29 | Radar Networks, Inc. | Methods and systems for managing entities in a computing device using semantic objects |
US7089319B2 (en) * | 2002-12-09 | 2006-08-08 | Anton Lysenko | Method and system for instantaneous on-demand delivery of multimedia content over a communication network with aid of content capturing component, delivery-on-demand client and dynamically mapped resource locator server |
US20090118019A1 (en) * | 2002-12-10 | 2009-05-07 | Onlive, Inc. | System for streaming databases serving real-time applications used through streaming interactive video |
GB0228941D0 (en) * | 2002-12-12 | 2003-01-15 | Ibm | Methods, apparatus and computer programs for processing alerts and auditing in a publish/subscribe system |
AU2003300900A1 (en) * | 2002-12-13 | 2004-07-09 | Internap Network Services Corporation | Topology aware route control |
US7792982B2 (en) * | 2003-01-07 | 2010-09-07 | Microsoft Corporation | System and method for distributing streaming content through cooperative networking |
US20030108030A1 (en) * | 2003-01-21 | 2003-06-12 | Henry Gao | System, method, and data structure for multimedia communications |
US7349980B1 (en) * | 2003-01-24 | 2008-03-25 | Blue Titan Software, Inc. | Network publish/subscribe system incorporating Web services network routing architecture |
US7137040B2 (en) * | 2003-02-12 | 2006-11-14 | International Business Machines Corporation | Scalable method of continuous monitoring the remotely accessible resources against the node failures for very large clusters |
US7353276B2 (en) * | 2003-02-13 | 2008-04-01 | Microsoft Corporation | Bi-directional affinity |
WO2004100010A1 (en) * | 2003-04-30 | 2004-11-18 | Iptv Systems, Llc | Secure, continuous, proxy-optimized, device-to-device data download reception system and method of use |
US9258765B1 (en) * | 2003-05-08 | 2016-02-09 | Dynamic Mesh Networks, Inc. | Chirp networks |
US20040260745A1 (en) * | 2003-06-18 | 2004-12-23 | Gage Christopher A. S. | Load balancer performance using affinity modification |
US7567504B2 (en) * | 2003-06-30 | 2009-07-28 | Microsoft Corporation | Network load balancing with traffic routing |
US7533054B2 (en) * | 2003-06-30 | 2009-05-12 | Bloomberg L.P. | Central credit filtering in computerized trading |
US7636917B2 (en) * | 2003-06-30 | 2009-12-22 | Microsoft Corporation | Network load balancing with host status information |
US7590736B2 (en) * | 2003-06-30 | 2009-09-15 | Microsoft Corporation | Flexible network load balancing |
US7167865B1 (en) | 2003-06-30 | 2007-01-23 | Mvalent, Inc. | Collaborative environment for producing software products |
US9525566B2 (en) | 2003-07-31 | 2016-12-20 | Cloudsoft Corporation Limited | Self-managed mediated information flow |
GB2439195B8 (en) | 2006-06-12 | 2011-01-19 | Enigmatec Corp Ltd | Self-managed distributed mediation networks. |
-
2004
- 2004-07-30 US US10/903,156 patent/US9525566B2/en active Active
- 2004-08-02 PT PT04767961T patent/PT1649667E/pt unknown
- 2004-08-02 AU AU2004301718A patent/AU2004301718B9/en not_active Ceased
- 2004-08-02 ES ES04767961T patent/ES2319196T3/es active Active
- 2004-08-02 WO PCT/GB2004/003335 patent/WO2005013554A2/en active IP Right Grant
- 2004-08-02 JP JP2006521674A patent/JP4588704B2/ja not_active Expired - Fee Related
- 2004-08-02 EP EP04767961A patent/EP1649667B1/en not_active Not-in-force
- 2004-08-02 DE DE602004014776T patent/DE602004014776D1/de active Active
- 2004-08-02 NZ NZ544986A patent/NZ544986A/en unknown
- 2004-08-02 CN CNA2004800248321A patent/CN1846419A/zh active Pending
- 2004-08-02 AT AT04767961T patent/ATE400133T1/de not_active IP Right Cessation
- 2004-08-02 GB GB0526606A patent/GB2418331B8/en not_active Expired - Fee Related
-
2006
- 2006-01-25 NO NO20060397A patent/NO20060397L/no not_active Application Discontinuation
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104778188A (zh) * | 2014-02-24 | 2015-07-15 | 贵州电网公司信息通信分公司 | 一种分布式设备日志采集方法 |
CN104778188B (zh) * | 2014-02-24 | 2018-10-19 | 贵州电网公司信息通信分公司 | 一种分布式设备日志采集方法 |
CN115061718A (zh) * | 2022-03-24 | 2022-09-16 | 上海任意门科技有限公司 | 配置和运行状态机的方法、计算设备和计算机存储介质 |
CN115061718B (zh) * | 2022-03-24 | 2023-12-22 | 上海任意门科技有限公司 | 配置和运行状态机的方法、计算设备和计算机存储介质 |
Also Published As
Publication number | Publication date |
---|---|
DE602004014776D1 (de) | 2008-08-14 |
EP1649667B1 (en) | 2008-07-02 |
AU2004301718B2 (en) | 2007-07-12 |
ATE400133T1 (de) | 2008-07-15 |
ES2319196T3 (es) | 2009-05-05 |
JP2007502553A (ja) | 2007-02-08 |
GB0526606D0 (en) | 2006-02-08 |
GB2418331B8 (en) | 2011-01-19 |
EP1649667A2 (en) | 2006-04-26 |
US9525566B2 (en) | 2016-12-20 |
GB2418331B (en) | 2006-12-06 |
WO2005013554A2 (en) | 2005-02-10 |
AU2004301718B9 (en) | 2007-07-12 |
PT1649667E (pt) | 2008-10-14 |
NZ544986A (en) | 2007-09-28 |
WO2005013554A3 (en) | 2005-03-31 |
GB2418331A8 (en) | 2011-01-19 |
JP4588704B2 (ja) | 2010-12-01 |
NO20060397L (no) | 2006-04-28 |
AU2004301718A1 (en) | 2005-02-10 |
GB2418331A (en) | 2006-03-22 |
US20050044268A1 (en) | 2005-02-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1846419A (zh) | 自管理媒介信息流 | |
CN100336352C (zh) | 内容发布系统、描述数据发布设备和内容发布方法 | |
CN1273888C (zh) | 成像装置、信息处理装置、程序执行方法及程序生成方法 | |
CN1172246C (zh) | 动态代理服务器装置 | |
CN1269337C (zh) | 内容自适应服务控制方法 | |
CN1794729A (zh) | 数据配置管理方法及系统和装置以及程序 | |
CN1655145A (zh) | 最优化行级别数据库安全的系统和方法 | |
CN1678990A (zh) | Web服务设备和方法 | |
CN1729442A (zh) | 在网络中使用共享资源的方法和装置 | |
CN1450765A (zh) | 服务器负载平衡系统、装置以及内容管理装置 | |
CN1575466A (zh) | 存在管理的实现 | |
CN1703700A (zh) | 为了经同步的内容显示使网络接入点的关联小型端口协作的方法和装置 | |
CN1222902C (zh) | 通信网中的方法和设备 | |
CN1509022A (zh) | 分层网络节点及通过该节点构成的网络、节点和分层网络 | |
CN1692358A (zh) | 使用商业规则或用户角色而在环球网门户中选择小门户的方法和装置 | |
CN1791871A (zh) | 企业控制台 | |
CN1578265A (zh) | 语义信息网络(sion) | |
CN1799228A (zh) | 数据联网 | |
CN1703699A (zh) | 从门户服务器传递会话信息的方法和装置 | |
CN101044498A (zh) | 工作流服务体系结构 | |
CN1762123A (zh) | 使未采用集中管理的匿名非信任方之间的通信和资源共享安全的方法与装置 | |
CN1111795C (zh) | 利用网络的信息分发系统 | |
CN1826817A (zh) | 信息提供方法及信息提供程序 | |
CN1218223A (zh) | 执行移动对象的方法以及存储移动对象的记录介质 | |
CN1637714A (zh) | 远程复制网络 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 1097131 Country of ref document: HK |
|
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Open date: 20061011 |
|
REG | Reference to a national code |
Ref country code: HK Ref legal event code: WD Ref document number: 1097131 Country of ref document: HK |