ES2319196T3 - Flujo de informacion con mediacion autogestionada. - Google Patents
Flujo de informacion con mediacion autogestionada. Download PDFInfo
- Publication number
- ES2319196T3 ES2319196T3 ES04767961T ES04767961T ES2319196T3 ES 2319196 T3 ES2319196 T3 ES 2319196T3 ES 04767961 T ES04767961 T ES 04767961T ES 04767961 T ES04767961 T ES 04767961T ES 2319196 T3 ES2319196 T3 ES 2319196T3
- Authority
- ES
- Spain
- Prior art keywords
- module
- message
- mediator
- new
- additional
- 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.)
- Expired - Lifetime
Links
- 238000000034 method Methods 0.000 claims abstract description 72
- 238000001514 detection method Methods 0.000 claims abstract description 34
- 208000011738 Lichen planopilaris Diseases 0.000 claims description 80
- 208000011797 pustulosis palmaris et plantaris Diseases 0.000 claims description 80
- 230000008859 change Effects 0.000 claims description 64
- 230000007246 mechanism Effects 0.000 claims description 36
- 238000012546 transfer Methods 0.000 claims description 35
- 230000008569 process Effects 0.000 claims description 33
- 238000004590 computer program Methods 0.000 claims description 30
- 230000005540 biological transmission Effects 0.000 claims description 28
- 238000003780 insertion Methods 0.000 claims description 28
- 230000037431 insertion Effects 0.000 claims description 28
- 239000003795 chemical substances by application Substances 0.000 claims description 21
- 238000004891 communication Methods 0.000 claims description 20
- 230000001364 causal effect Effects 0.000 claims description 18
- 230000014509 gene expression Effects 0.000 claims description 17
- 230000004888 barrier function Effects 0.000 claims description 15
- 238000007670 refining Methods 0.000 claims description 14
- 230000004044 response Effects 0.000 claims description 6
- 230000001939 inductive effect Effects 0.000 claims description 3
- 238000011084 recovery Methods 0.000 abstract description 7
- 238000004422 calculation algorithm Methods 0.000 description 23
- 230000006399 behavior Effects 0.000 description 15
- 230000006870 function Effects 0.000 description 10
- 238000009826 distribution Methods 0.000 description 9
- 238000005192 partition Methods 0.000 description 9
- 230000000694 effects Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 230000009471 action Effects 0.000 description 5
- 230000008901 benefit Effects 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 238000011144 upstream manufacturing Methods 0.000 description 5
- 238000013459 approach Methods 0.000 description 4
- 125000004122 cyclic group Chemical group 0.000 description 4
- 238000007726 management method Methods 0.000 description 4
- 238000013508 migration Methods 0.000 description 4
- 230000005012 migration Effects 0.000 description 4
- 230000001427 coherent effect Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 239000002243 precursor Substances 0.000 description 3
- 230000005477 standard model Effects 0.000 description 3
- 230000002730 additional effect Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 238000002955 isolation Methods 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 230000001404 mediated effect Effects 0.000 description 2
- 230000002829 reductive effect Effects 0.000 description 2
- 230000000717 retained effect Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 208000024891 symptom Diseases 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- VYZAMTAEIAYCRO-UHFFFAOYSA-N Chromium Chemical compound [Cr] VYZAMTAEIAYCRO-UHFFFAOYSA-N 0.000 description 1
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000012508 change request Methods 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000003337 fertilizer Substances 0.000 description 1
- 230000003116 impacting effect Effects 0.000 description 1
- 239000003999 initiator Substances 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000036961 partial effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- JTJMJGYZQZDUJJ-UHFFFAOYSA-N phencyclidine Chemical compound C1CCCCN1C1(C=2C=CC=CC=2)CCCCC1 JTJMJGYZQZDUJJ-UHFFFAOYSA-N 0.000 description 1
- 238000004540 process dynamic Methods 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 238000003756 stirring Methods 0.000 description 1
- 238000003860 storage Methods 0.000 description 1
- 230000001755 vocal effect Effects 0.000 description 1
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
- 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
- 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/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)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Environmental & Geological Engineering (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Preparation Of Compounds By Using Micro-Organisms (AREA)
Abstract
Un procedimiento para mediar en el flujo de mensajes en una red de ordenadores, en el cual la red de ordenadores tiene una red de mediación que incluye: al menos un módulo de punto de presencia local, LPP, para mantener una interfaz entre la red de mediación y los programas clientes; al menos un módulo mediador, M, para albergar una tarea de mediación; al menos un módulo encaminador de mediadores, MR, para analizar el contenido de los mensajes entrantes, encaminando cada módulo MR los mensajes entrantes hacia un módulo M predeterminado, según dicho contenido; y al menos un módulo agente de transmisión, TP, para remitir mensajes a al menos uno de dichos módulos LPP, en el que, en el procedimiento, los mensajes entrantes a la red de mediación se propagan a lo largo de un ciclo de mediación unidireccional que comprende las etapas de: en un módulo LPP, dirigir los mensajes entrantes al respectivo módulo entre al menos uno de dichos módulos encaminadores de mediadores, MR; en dicho módulo MR direccionado, analizar el contenido de los mensajes entrantes y encaminar dichos mensajes a un módulo mediador predeterminado, según dicho contenido analizado; en dicho módulo mediador predeterminado, aplicar la tarea de mediación a dichos mensajes analizados, y dirigir los mensajes sometidos a mediación al módulo respectivo de dichos módulos TP; y en dicho módulo TP que recibe dichos mensajes sometidos a mediación, remitir dichos mensajes sometidos a mediación a al menos uno de dichos módulos LPP, por medio de lo cual el flujo de mensajes entre los módulos conectados es unidireccional.
Description
Flujo de información con mediación
autogestionada.
La presente invención se refiere a un sistema de
flujo de información con mediación. En particular, la presente
invención se refiere a sistemas de mediación distribuida
autogestionada con un requisito tanto de comunicación diseminada
interpares como de un cierto grado de control de la información
recogida en el total de tales mensajes diseminados.
Los sistemas de comunicación interpares (P2P)
permiten que entidades informáticas (pares) establezcan conexiones
de software (canales virtuales) entre sí. Los sistemas P2P, por lo
tanto, permiten a los pares comunicarse o compartir tareas y
recursos informáticos sin la necesidad explícita de un control
centralizado. P2P puede operar en una red generalizada con uno o
más servidores: un par puede proporcionar información (editar) para
al menos un servicio en la red y/o registrarse (abonarse) en
servicios en esa red para recibir información editada por otro
par.
También son conocidos los sistemas de mensajería
que se benefician de la provisión de un control centralizado. Aquí,
todos los mensajes se dirigen desde los editores a los abonados,
mediante un locus central donde se realiza algún procesamiento
(mediación) sobre los mensajes. Los nuevos mensajes (las
recopilaciones, por ejemplo) se generan a partir de los mensajes de
entrada y se envían a los abonados correspondientes.
En sistemas de mediación centralizados de la
técnica anterior, todo el tráfico de mensajes se transmite a través
de un punto central de red (locus), donde reside el servicio de
mediación. Vistos en términos de elementos lógicos, tales sistemas
están construidos como un modelo arquitectónico en forma de estrella
con un punto central de control, donde se ejecutan las tareas de
mediación. Este modelo se muestra en la Figura 1A: cada fuente
(editor) y cada sumidero (abonado) de información tiene una línea de
comunicación que se conecta con el concentrador central de
mediación. En muchos casos, las fuentes y los sumideros representan
las mismas entidades, operando en distintas modalidades, y pueden
no ser arquitectónicamente distinguibles.
Los problemas asociados con tal arquitectura son
bien conocidos. Son propensos a resentirse de falta de ancho de
banda en el punto de mediación. Incluso aunque la forma de estrella
lógica puede solaparse sobre una red física que esté fuertemente
conectada, el flujo esencial de toda la información a través de un
punto central causa un cuello de botella inherente del caudal,
basado en el ancho de banda disponible entre este punto y la red
(véase la Figura 1B). Aunque los avances en las tecnologías de redes
significan que la disponibilidad del ancho de banda continúa
mejorando, aumentar el ancho de banda tiene un coste financiero
inherente y, en ciertos supuestos, puede causar una verdadera
limitación al caudal del sistema general. Esta limitación se
manifiesta como una restricción, bien sobre el máximo número de
usuarios, o bien sobre la velocidad a la cual cada usuario puede
enviar y recibir información.
En verdad, hay muchos ejemplos de sistemas donde
ni las arquitecturas P2P ni las arquitecturas de mediación
centralizada son totalmente satisfactorias. A menudo se requiere que
algún proceso lógico actúe sobre el total de mensajes emitidos
dentro del sistema de mensajería. Los ejemplos de clases de sistemas
donde ninguna arquitectura es completamente adecuada incluyen: un
sistema de comercio donde los compradores y vendedores potenciales
se anuncian entre sí, y se requiere mediación para asegurar una
coincidencia transaccional de los requisitos; un sistema de
noticias o publicidad con mediación, donde una autoridad central
actúa como un control editorial, antes de que la información se
disemine; un sistema que no esté activamente controlado, pero que
requiera que se mantenga una bitácora ordenada del flujo de
información en un repositorio central; un servicio de conversación
que permita que se presente un contexto reciente a un usuario que se
incorpora a una conversación en curso; la distribución de claves
criptográficas (el así llamado problema de distribución de claves);
sistemas para hallar la ubicación de datos (estado) y servicios en
una red distribuida; y sistemas para localizar y comunicarse con
usuarios móviles.
El documento WO 99/23784, publicado el
14/05/1999, revela un sistema y un procedimiento para realizar
operaciones asociadas con peticiones de un explorador de red,
implicando la realización de las operaciones una pluralidad de
despachadores acoplados con una pluralidad de oyentes de red.
Todos los ejemplos anteriores tienen en común,
como requisito, tanto la comunicación interpares como un cierto
grado de mediación centralizada del flujo de información cuando la
comunicación se contempla como un todo.
Por lo tanto, es un objeto de la invención
obviar, o al menos mitigar, los problemas precitados.
De acuerdo a un aspecto de la presente
invención, se proporciona un procedimiento para mediar en el flujo
de mensajes en una red de ordenadores, en el cual la red de
ordenadores tiene una red de mediación que incluye:
\newpage
al menos un módulo de punto de presencia local,
LPP, para ejercer de interfaz entre la red de mediación y los
programas clientes;
al menos un módulo mediador, M, para albergar
una tarea de mediación;
al menos un módulo encaminador de mediadores,
MR, para analizar el contenido de los mensajes entrantes,
encaminando cada módulo MR los mensajes entrantes a un módulo M
predeterminado, según dicho contenido; y
al menos un módulo agente de transmisión, TP,
para remitir mensajes a al menos uno de dichos módulos LPP,
en donde, en el procedimiento, los mensajes
entrantes a la red de mediación se propagan a lo largo de un ciclo
de mediación unidireccional que comprende las etapas de:
en un módulo LPP, dirigir los mensajes entrantes
al respectivo módulo entre dicho(s) módulo(s)
encaminadores de mediadores, MR;
en dicho módulo MR direccionado, analizar el
contenido de los mensajes entrantes y encaminar dichos mensajes a
un módulo mediador predeterminado, según dicho contenido
analizado;
en dicho módulo mediador predeterminado, aplicar
la tarea de mediación a dichos mensajes analizados y dirigir los
mensajes objeto de la mediación al respectivo módulo entre
dicho(s) módulo(s) TP; y
en dicho módulo TP que recibe dichos mensajes
objeto de mediación, remitir dichos mensajes objeto de mediación a
al menos uno de dichos módulos LPP, por lo que el flujo de mensajes
entre módulos conectados es unidireccional.
\vskip1.000000\baselineskip
En todo este documento, el término nodo físico
se refiere sólo a máquinas físicas. Los términos "nodo" y
"nodo lógico" se utilizan indistintamente para referirse al
locus con propiedades de estado. En términos de la topología lógica
de la red de mediación, un módulo proporciona la funcionalidad de un
nodo lógico asociado.
La mediación distribuida, por lo tanto, forma un
híbrido entre la arquitectura P2P y la mediación centralizada. El
concentrador lógico central de la arquitectura en forma de estrella
es reemplazado por una red de mediación central, pero distribuida,
de nodos mediadores, que tiene múltiples conexiones con la red
externa de fuentes y sumideros. Este enfoque aborda las
restricciones de ancho de banda de la arquitectura en forma de
estrella (con mediación central). El requisito de mediación del
sistema se distribuye entre los nodos de la red de mediación
distribuida, según alguna clasificación impuesta sobre el conjunto
de mensajes que transporta. El conjunto de todos los mensajes
entrantes se separa en un cierto número de subconjuntos no
solapados, según el contenido del mensaje. Este concepto de
clasificación no afecta al comportamiento observable externamente
de la operación del sistema, sino sólo a su caudal general.
La disposición física de la red de mediación
distribuida es muy distinta a la red con mediación central: en el
primer caso, hay muchas conexiones de red para absorber la misma
magnitud del flujo de información, lo que da como resultado
requisitos proporcionalmente inferiores sobre el ancho de banda en
cada nodo físico. Mientras que la imagen lógica puede representarse
como un cierto número de nodos mediadores colocados dentro de una
única red, se entiende que, en realidad, las sedes de nodos físicos
pueden estar físicamente, incluso geográficamente, dispersas entre
una pluralidad de máquinas. Es especialmente probable que esto
ocurra cuando la arquitectura se despliega en sedes alrededor del
mundo, cuando es improbable que haya ninguna relación estrecha
entre las arquitecturas lógicas y físicas.
Es claro que las ventajas de este enfoque surgen
de la organización física de las máquinas en red. Cada módulo
mediador es capaz de tener funcionalidad autónoma, siendo capaz de
llevar a cabo su acción sin referencia a ningún otro módulo. En
otras palabras, ningún módulo tiene dependencia global de cualquier
otro módulo, ni requiere ningún conocimiento detallado de la red
más allá de sus vecinos inmediatos. Dada una infraestructura de red
fuertemente conectada, el máximo ancho de banda requerido para
lograr un caudal dado se reduce a un valor arbitrariamente bajo.
Dado que la carga de mediación puede dividirse equitativamente entre
las máquinas empleadas por el servicio de mediación, esto puede
lograrse ajustando al alza el número de nodos mediadores en la red.
El máximo ancho de banda requerido en cualquier punto dentro de la
red aún es proporcional a la carga de la red, pero también es
inversamente proporcional al número de nodos mediadores desplegados.
Naturalmente, cualquier carga extra de red causada por organizar el
reparto del requisito de mediación entero en un cierto número de
plataformas debe ser lo bastante baja como para evitar anular los
beneficios de la arquitectura.
Los mensajes entrantes tratados por la red de
mediación pueden pertenecer a uno de los grupos de tipos de
mensajes, incluyendo: nueva información, que emana de un proceso que
actúa como una fuente de información; consultas acerca del estado
de nodos en la red de mediación, que requieren una respuesta; y
expresiones de interés, que requieren respuestas continuadas toda
vez que nueva información pertinente es recibida por la red de
mediación.
Dirigiendo un mensaje de control como un mensaje
entrante a lo largo del ciclo de mediación, el procedimiento puede
inducir un cambio en la operación interna de la red de
mediación.
Además de llevar mensajes de clientes, la red de
mediación distribuida facilita la diseminación de mensajes de
control o gestión. Los mensajes de gestión difieren en que se ocupan
sólo de la propagación de instrucciones a nodos sucesivos en cada
ciclo dentro de la red, en particular, para efectuar cambios en la
operación interna. Pueden intercalarse con mensajes de
clientes.
Al abordar los cambios en la operación interna,
la presente invención busca permitir que tenga lugar tanto el
equilibrio dinámico de la carga dentro de una red de topología fija,
como la migración del proceso de mediación asociado con cambios
arbitrarios en la topología lógica, sin introducir inestabilidad en
ningún caso.
El cambio en la operación interna puede ser un
traspaso de una tarea de mediación entre un módulo mediador donante
y un módulo mediador destinatario, en el que el mensaje de control
es un mensaje de traspaso de mediador, describiendo el contenido
del mensaje de traspaso de mediador la reasignación del contenido
con una etiqueta de contenido predeterminada, desde el módulo
mediador donante al módulo mediador destinatario, donde el módulo
mediador donante está actualmente registrado como disponible para
tratar dicho contenido, y
en donde la dirección del mensaje de traspaso de
mediador comprende:
- \quad
- desde un módulo LPP predeterminado, enviar el mensaje de traspaso de mediador a un respectivo módulo MR asociado;
- \quad
- en el módulo MR asociado, leer dicha etiqueta de contenido y remitir el mensaje al módulo mediador donante; y,
- \quad
- al recibir el mensaje de traspaso de mediador, en el módulo mediador donante: cambiar el estado del nodo mediador, enviar un mensaje TRASPASO_MEDIADOR al módulo mediador destinatario, conteniendo el mensaje TRASPASO_MEDIADOR el contenido del mensaje de traspaso de mediador; enviar un mensaje MEDIADOR_CAMBIADO a un módulo TP asociado; y luego cambiar el estado a fin de remitir los mensajes que contengan la etiqueta de contenido al módulo mediador destinatario.
\vskip1.000000\baselineskip
Según varían en el tiempo las demandas de los
usuarios sobre la clasificación, la operación de traspaso
proporciona una funcionalidad que permite que los nodos en los
cuales se ejecutan las tareas de mediación sean físicamente movidos
a fin de equilibrar las cargas, tanto de red como de procesamiento,
para el sistema entero.
El traspaso, preferiblemente, comprende
adicionalmente:
- \quad
- que el módulo TP remita el mensaje MEDIADOR_CAMBIADO a al menos un módulo LPP;
- \quad
- que el módulo mediador destinatario genere un mensaje NUEVO_MEDIADOR_ACTIVO, teniendo el mensaje NUEVO_MEDIADOR_ACTIVO una carga útil correspondiente al contenido reasignado, y que emita dicho mensaje NUEVO_MEDIADOR_ACTIVO a todos los módulos TP asociados con el mismo; y
- \quad
- que el módulo LPP almacene temporalmente todos los mensajes entrantes entre la recepción del mensaje MEDIADOR_CAMBIADO y la recepción del mensaje NUEVO_MEDIADOR_ACTIVO.
\vskip1.000000\baselineskip
Ventajosamente, el procedimiento comprende
adicionalmente:
- \quad
- que el módulo LPP remita luego el mensaje NUEVO_MEDIADOR_ACTIVO al módulo MR asociado; y
- \quad
- cada vez que un módulo MR reciba un mensaje NUEVO_MEDIADOR_ACTIVO, actualizar una tabla de encaminamiento para dicho módulo MR, a fin de causar que el contenido futuro que coincida con la carga útil del mensaje NUEVO_MEDIADOR_ACTIVO sea enviado al módulo mediador destinatario, en lugar de al módulo mediador donante; informar al módulo mediador donante de que la tabla de encaminamiento ha sido actualizada, dejando el módulo mediador donante de remitir mensajes de allí en adelante, una vez que todos los módulos MR han sido informados de que el módulo mediador destinatario es ahora el módulo mediador para el contenido reasignado.
\vskip1.000000\baselineskip
La operación de traspaso no contempla la
migración dinámica del proceso de mediación frente a cambios
arbitrarios en la topología lógica.
El cambio en la operación interna también puede
ser una reconfiguración de la topología lógica de la red de
mediación, y en la cual el mensaje de control es uno o más mensajes
de reconfiguración.
La reconfiguración de la topología lógica,
preferiblemente, incluye la generación de una barrera causal, para
garantizar que los mensajes que atraviesan la red de mediación antes
de la reconfiguración se entregan antes de los mensajes que
atraviesan la red de mediación después de la reconfiguración. En
cuyo caso, la etapa de generar la barrera causal puede incluir:
hacer circular dicho(s) mensaje(s) de reconfiguración
por el ciclo de mediación; y garantizar que cada módulo en el ciclo
haya sido suficientemente notificado de la reconfiguración.
Ventajosamente, la reconfiguración de la
topología lógica de la arquitectura de mediación es la inserción de
un nodo adicional de punto de presencia local (LPP), y
dicho(s) mensaje(s) de reconfiguración
incluye(n) un mensaje nuevo_LPP que identifica unívocamente
al nodo LPP adicional, incluyendo la inserción:
- \quad
- en un módulo LPP adicional predeterminado en el nodo LPP adicional, generar el mensaje nuevo_LPP y enviar el mensaje nuevo_LPP al correspondiente módulo MR en un nodo MR;
- \quad
- en el correspondiente módulo MR, recibir el mensaje nuevo_LPP, actualizar un contador de referencia para el nodo MR, y propagar el mensaje nuevo_LPP a todos los módulos mediadores en la arquitectura;
- \quad
- en cada módulo mediador, recibir el mensaje nuevo_LPP y transmitir el mensaje nuevo_LPP a un respectivo módulo TP correspondiente en un nodo TP, teniendo cada nodo TP un saldo acreedor asociado;
- \quad
- en cada uno de los correspondientes módulos TP, recibir el mensaje nuevo_LPP y enviar un respectivo mensaje nuevo_LPP extendido al módulo LPP adicional, incluyendo el mensaje nuevo_LPP extendido el respectivo saldo acreedor asociado;
- \quad
- en el módulo LPP adicional, recibir los mensajes nuevo_LPP extendidos, completando por ello la circulación del mensaje nuevo_LPP; y
- \quad
- en el módulo LPP adicional, sumar los saldos acreedores, garantizándose la suficiente notificación de la reconfiguración cuando la suma de créditos alcanza un valor predeterminado de completitud.
\vskip1.000000\baselineskip
La reconfiguración de la topología lógica de la
arquitectura de mediación puede incluir la inserción adicional de
un nodo encaminador de mediador (MR) adicional, y donde
dicho(s) mensaje(s) de reconfiguración
incluye(n) adicionalmente un mensaje nuevo_MR que identifica
unívocamente el nodo MR adicional, incluyendo la inserción
adicional:
- \quad
- que el LPP adicional envíe un mensaje nuevo_MR a un módulo MR correspondiente en un nodo MR con un correspondiente saldo acreedor;
- \quad
- que el módulo MR correspondiente responda al mensaje nuevo_MR enviando un mensaje nueva_tabla_encamina- dora_MR, que incluye: información de dirección para el nodo MR adicional, la dirección del nodo LPP adicional, información de encaminamiento y una fracción del correspondiente saldo acreedor;
- \quad
- que el correspondiente módulo MR remita luego el mensaje nueva_tabla_encaminadora_MR a un módulo mediador arbitrario;
- \quad
- que el módulo mediador arbitrario pase luego el mensaje nueva_tabla_encaminadora_MR al módulo LPP adicional;
- \quad
- que el módulo LPP adicional pase luego el mapa de encaminamiento al módulo MR adicional; y
- \quad
- en el módulo MR adicional, utilizar el contenido del mensaje nueva_tabla_encaminadora_MR para inicializar un nuevo saldo acreedor y mapas de encaminamiento.
\vskip1.000000\baselineskip
Se prefiere que la reconfiguración incluya
adicionalmente cambiar el módulo MR al que se dirige el módulo LPP
adicional por el módulo MR adicional, en donde el módulo MR
adicional envía un mensaje MR_inicializado() al módulo LPP
adicional al recibir el mensaje nueva_tabla_encaminadora_MR, y donde
el módulo LPP adicional envía mensajes inc_cont_ref() y
dec_cont_ref() a los módulos MR adicional e inicial,
respectivamente.
Como alternativa, la reconfiguración de la
topología lógica de la arquitectura de mediación puede ser la
inserción de un nodo mediador (M) adicional, y dicho(s)
mensaje(s) de reconfiguración incluye(n) un mensaje
nuevo_M que identifica unívocamente el nodo mediador adicional,
incluyendo la inserción:
- \quad
- en un módulo mediador adicional predeterminado, generar el mensaje nuevo_M y enviar el mensaje nuevo_M a un correspondiente módulo TP en un nodo TP;
- \quad
- en el correspondiente módulo TP, recibir el mensaje nuevo_M, actualizar un contador de referencia para el nodo TP, y propagar el mensaje nuevo_M a todos los módulos LPP en la arquitectura;
- \quad
- en cada módulo LPP, recibir el mensaje nuevo_M, transmitir el mensaje nuevo_M a un respectivo módulo MR correspondiente en un nodo MR, teniendo cada nodo MR un saldo acreedor asociado;
- \quad
- en cada uno de los correspondientes módulos MR, recibir el mensaje nuevo-M y enviar un respectivo mensaje nuevo_M extendido al módulo mediador adicional, incluyendo el mensaje nuevo_M extendido el respectivo saldo acreedor asociado; y
- \quad
- en el módulo mediador adicional, recibir el mensaje nuevo_M extendido, completando por ello la circulación del mensaje nuevo_M; y
- \quad
- en el módulo mediador adicional, sumar los saldos acreedores, garantizándose la notificación suficiente de la reconfiguración cuando la suma del crédito alcanza un valor predeterminado de completitud.
\vskip1.000000\baselineskip
En el segundo caso, la reconfiguración de la
topología lógica de la arquitectura de mediación puede incluir la
inserción adicional de un nodo agente de transmisión (TP) adicional,
y donde dicho(s) mensaje(s) de reconfiguración
incluye(n) adicionalmente un mensaje nuevo_TP que identifica
unívocamente el nodo TP adicional, incluyendo la inserción
adicional:
- \quad
- en el módulo mediador adicional, recibir el mensaje nuevo_TP;
- \quad
- en el módulo mediador adicional, añadir la dirección del nodo mediador adicional al mensaje nuevo_TP y remitir el mensaje nuevo_TP a un módulo TP correspondiente en un nodo TP con un correspondiente saldo acreedor;
- \quad
- en el correspondiente módulo TP, responder al mensaje nuevo_TP generando un mensaje nuevo_TP extendido, que incluye: información de dirección para el nodo TP adicional, la dirección del nodo mediador adicional, una lista de los LPP y una fracción del correspondiente saldo acreedor;
- \quad
- en el correspondiente módulo TP, remitir luego el mensaje nuevo_TP a un módulo LPP arbitrario;
- \quad
- en el módulo LPP arbitrario, pasar luego un mensaje de nuevo mapa de encaminamiento al módulo TP adicional;
- \quad
- en el módulo TP adicional, pasar luego el mapa de encaminamiento al módulo MR adicional; y
- \quad
- en el módulo TP adicional, utilizar el contenido del mensaje de nuevo mapa de encaminamiento para inicializar un nuevo saldo acreedor correspondiente y una lista de módulos LPP.
\vskip1.000000\baselineskip
Preferentemente, la reconfiguración incluye
adicionalmente: cambiar el módulo TP al que se dirige el módulo
mediador adicional por el módulo TP adicional, en donde el módulo TP
adicional envía un mensaje TP_inicializado() al módulo mediador
adicional al recibir el mensaje de nuevo mapa de encaminamiento, y
donde el módulo mediador adicional envía mensajes inc_cont_ref() y
dec_cont_ref() a los módulos TP adicional e inicial,
respectivamente.
La red de ordenadores puede, de manera
conveniente, incluir adicionalmente un nodo de detección de fallos
que está en comunicación con cada nodo en la red de mediación,
comprendiendo adicionalmente el procedimiento:
- \quad
- en el nodo de detección de fallos, proporcionar un módulo de detección de fallos;
- \quad
- en cada nodo de la red de mediación, proporcionar un módulo de informe de fallos;
- \quad
- toda vez que falla un enlace de comunicación entrante o saliente entre nodos, en cada uno de dichos módulos de informe de fallos, proveer información con respecto al enlace de comunicación averiado a dicho módulo de detección de fallos; y
- \quad
- en dicho módulo de detección de fallos, determinar si dicho enlace averiado es síntoma de un nodo averiado.
\vskip1.000000\baselineskip
Allí donde el módulo de detección de fallos
determine que dicho enlace averiado es síntoma de un nodo averiado,
el procedimiento puede comprender adicionalmente: crear un nuevo
nodo del mismo tipo que el nodo averiado, infundir el nuevo nodo
con información relacionada con el estado interno del nodo averiado
y la topología del entorno inmediato; y reconfigurar la red para
utilizar el nuevo nodo con preferencia sobre el nodo averiado.
El procedimiento, ventajosamente, comprende
adicionalmente la generación de un registro de todos los mensajes
entrantes recibidos por dicho módulo mediador predeterminado.
La tarea de mediación aplicada a dichos mensajes
analizados en dicho módulo mediador predeterminado puede incluir
generar el registro de mensajes. Como alternativa, la red de
ordenadores incluye adicionalmente una aplicación externa, y el
procedimiento puede comprender adicionalmente: generar el registro
de mensajes en dicha aplicación externa.
De manera conveniente, el cambio en la operación
interna puede adoptar la forma de una refinación estructural de la
topología lógica de la arquitectura de mediación en respuesta a una
solicitud de cambio. Se inserta, de manera ventajosa, una subred en
lugar de un nodo individual durante la etapa de la refinación
estructural.
En un aspecto adicional de la presente
invención, se proporciona una red de mediación para mediar en el
flujo de mensajes en una red de ordenadores, en donde la red de
mediación incluye:
- \quad
- al menos un módulo de punto de presencia local, LPP, para ejercer de interfaz entre la red de mediación y los programas de clientes;
- \quad
- al menos un módulo mediador M para albergar una tarea de mediación;
- \quad
- al menos un módulo encaminador de mediadores, MR, para analizar el contenido de mensajes entrantes, encaminando cada módulo MR los mensajes entrantes a un módulo M asociado predeterminado, según dicho contenido; y
- \quad
- al menos un módulo agente de transmisión, TP, para remitir mensajes a al menos uno de dichos módulos LPP,
en donde la red de mediación
propaga los mensajes a lo largo de un ciclo de mediación
unidireccional en el cual: los módulos LPP se dirigen a módulos MR;
los módulos MR, a su vez, se dirigen a módulos M; los módulos M, a
su vez, se dirigen a módulos TP; y los módulos TP, a su vez, se
dirigen a módulos LPP, siendo unidireccional el flujo de mensajes
entre los módulos
conectados.
\vskip1.000000\baselineskip
Según otro aspecto de la presente invención, se
proporciona un producto de programa de ordenador para mediar en el
flujo de mensajes en una red de ordenadores, incluyendo el producto
de programa de ordenador instrucciones ejecutables para
proporcionar una red de mediación que tiene:
- \quad
- al menos un módulo de punto de presencia local, LPP, para ejercer de interfaz entre la red de mediación y los programas de clientes;
- \quad
- al menos un módulo mediador M para albergar una tarea de mediación;
- \quad
- al menos un módulo encaminador de mediadores, MR, para analizar el contenido de los mensajes entrantes, encaminando cada módulo MR los mensajes entrantes a un módulo M predeterminado, según dicho contenido; y
- \quad
- cuando las instrucciones se están ejecutando en dichos módulos,
donde, cuando las instrucciones se
ejecutan en los respectivos módulos, los mensajes entrantes a la red
de mediación se propagan a lo largo de un ciclo de mediación
unidireccional que comprende las etapas de: en un módulo LPP,
dirigir los mensajes entrantes al correspondiente miembro entre
dicho(s) módulo(s) encaminador(es) de
mediador(es)
MR;
en dicho módulo MR direccionado, analizar el
contenido de los mensajes entrantes y encaminar dichos mensajes a
un módulo mediador predeterminado según dicho contenido
analizado;
en dicho módulo mediador predeterminado, aplicar
la tarea de mediación a dichos mensajes analizados, y dirigir los
mensajes objeto de mediación al respectivo miembro entre dichos
módulos TP; y
en dicho módulo TP que recibe dichos mensajes
objeto de mediación, remitir dichos mensajes objeto de mediación a
al menos uno de dichos módulos LPP, por lo cual el flujo de mensajes
entre módulos conectados es unidireccional.
Realizaciones adicionales, según la presente
invención, se definen en las reivindicaciones secundarias.
Se describirán ahora ejemplos de la presente
invención en detalle, con referencia a los dibujos adjuntos, en los
cuales:
La Figura 1A es un diagrama de nodos que muestra
un sistema de flujo de información con mediación de tecnología
anterior, con una arquitectura lógica en forma de estrella;
La Figura 1B es un diagrama esquemático de nodos
que muestra la arquitectura física del sistema en la Figura 1A;
La Figura 2A es un diagrama de nodos que muestra
un sistema de flujo de información con mediación de tecnología
anterior, con una arquitectura lógica de red central;
La Figura 2B es un diagrama esquemático de nodos
que muestra la arquitectura física del sistema en la Figura 2A;
La Figura 3 muestra un diagrama mínimo de nodos
que muestra el ciclo fundamental (LPP -> MR -> M -> TP
-> LPP), del cual es parte todo nodo efectivo de red de mediación
distribuida;
La Figura 4 es un diagrama de nodos que muestra
un modelo de mediación distribuida "cúbico", según la presente
invención;
Las Figuras 5A a 5F muestran las etapas de
traspasar una tarea de mediación desde un módulo S mediador
transmisor a un módulo R mediador destinatario en la arquitectura
de mediación distribuida "cúbica";
La Figura 6 muestra una tabla (Tabla 1) de
dependencias en la red de mediación distribuida de la presente
invención;
La Figura 7 muestra una tabla (Tabla 2) de las
dependencias en un mecanismo de tratamiento de fallos en una
realización de la presente invención;
Las Figuras 8A a 8E ilustran las etapas de
añadir un nuevo nodo de Punto de Presencia Local (LPP) a una
arquitectura de mediación existente;
Las Figuras 9A a 9D ilustran las etapas de
añadir un nuevo nodo Mediador (M) a una arquitectura de mediación
existente;
La Figura 10 ilustra la primera etapa al añadir
un nuevo nodo Encaminador de Mediadores (MR) a una arquitectura de
mediación existente, la adición de un nuevo nodo de Punto de
Presencia Local (LPP);
Las Figuras 11A a 11E ilustran las siguientes
etapas al añadir un nuevo nodo Encaminador de Mediadores (MR) a una
arquitectura de mediación existente;
La Figura 12 ilustra la primera etapa al añadir
un nuevo nodo Agente de Transmisión (TP) a una arquitectura de
mediación existente, la adición de un nuevo nodo Mediador (M);
Las Figuras 13A a 13E ilustran las siguientes
etapas al añadir un nuevo nodo Agente de Transmisión (TP) a una
arquitectura de mediación existente;
La Figura 14 muestra el anuncio de fallo desde
la arquitectura de mediación de la presente invención al módulo de
Tratamiento de Fallos (FH);
Las Figuras 15A a 15E muestran cómo inicia el
módulo de Tratamiento de Fallos el reencaminamiento de mensajes
objeto de mediación desde un nodo LPP averiado a un nuevo nodo
LPP;
La Figura 16 ilustra un enfoque del tratamiento
de fallos que involucra el registro de mensajes en más de un nodo,
para generar nuevas "invariantes de sistema";
La Figura 17 ilustra una refinación estructural
de la red cúbica para incorporar una subred cúbica adicional en
lugar de un nodo LPP;
La Figura 18 ilustra una jerarquía de redes con
los MR conectados; y
La Figura 19 muestra una topología ilustrativa
de bus TP/MR.
Se explican primero los modelos de mensajería
P2P y con mediación centralizada que proporcionan los antecedentes
de la presente invención. A lo largo de esta exposición, el término
origen designa a un cliente que genera nuevos mensajes para enviar
a un servicio de red, y el término sumidero designa un cliente que
recibe mensajes desde un servicio de red. Cada cliente de un
servicio de red puede ser un origen, un sumidero, o ambos. En una
terminología alternativa, los orígenes de información se denominan
editores, y los sumideros de la información se denominan
abonados.
En el encaminamiento internares basado en
contenidos, una red se configura para permitir la transmisión
eficiente de mensajes de origen a sumidero, basándose en el
establecimiento de canales virtuales entre los orígenes y sumideros
adecuados. La eficiencia, típicamente, se logra por la detección y
eliminación de arcos (líneas de comunicación que conectan nodos)
innecesarios de un grafo totalmente conectado, con el gráfico
optimizado resultante adaptado luego a la infraestructura de red
disponible. Establecer un canal virtual P2P requiere una expresión
de interés desde uno de los pares y una aceptación de ese interés
por parte del otro.
Por otra parte, en modelos con mediación
centralizada, todos los mensajes se transmiten mediante un nodo de
mediación central (véanse las Figuras 1A y 1B). En la jerga de las
redes de mediación, un servicio de mediación es el término general
aplicado a algún procesamiento que se aplica a todos los mensajes
entrantes; el requisito de mediación para cualquier instancia
particular de una arquitectura con mediación se refiere al cotejo de
todos los servicios de mediación proporcionados en la misma; una
autoridad de mediación es una persona o personas que
brinda(n) tal servicio de mediación; una red de mediación es
la red de entidades informáticas físicas (máquinas) bajo el control
de la autoridad de mediación; y un servidor de mediación, la máquina
física que alberga uno o más servicios de mediación.
En un modelo simplificado de un sistema
generalizado de flujo de información con mediación, los mensajes
enviados a la autoridad de mediación pueden pertenecer a uno de los
siguientes tipos: nueva información, que emana de un proceso que
actúa como una fuente de información; consultas acerca del estado
adoptado por la autoridad de mediación, que requieren una respuesta
inmediata; y expresiones de interés, consultas esencialmente
persistentes que requieren respuestas toda vez que nueva
información pertinente es recibida por la autoridad de
mediación.
Merece la pena subrayar que incluso en un modelo
totalmente sometido a mediación, las expresiones de interés aún
pueden ser significativas, especialmente en la entrega de este
servicio de red a los sumideros, donde pueden reducir el requisito
del ancho de banda en cada canal virtual.
A la luz de las anteriores definiciones, un
sistema de flujo de información sujeto a mediación es uno que
consiste en mensajes, que contienen información, que son enviados a
y desde una autoridad central. Las acciones adoptadas por esta
autoridad pueden incluir el registro cronológicamente ordenado de
los mensajes recibidos, el procesamiento sobre el total de mensajes
recibidos hasta cierto punto, y la diseminación de mensajes
entrantes entre otros clientes, posiblemente después de llevar a
cabo algún procesamiento basado en el contenido del mensaje.
La presente invención representa un híbrido del
modelo P2P descentralizado, basado en contenidos, y el modelo
sencillo de red con mediación centralizada. En lugar de proporcionar
un mediador central único, los diversos servicios de mediación se
dispersan por una red de mediación que comprende un cierto número de
componentes funcionales distintos. En el modelo híbrido, las
expresiones de intención se emplean para abrir canales virtuales
entre nodos origen y nodos mediadores, y las expresiones de interés
se utilizan para abrir canales virtuales entre los nodos mediadores
y los nodos sumidero. Los mensajes recibidos por nodos sumidero, por
lo tanto, están gobernados por las expresiones de interés
registradas en el servicio objeto de mediación. La latencia entre
nodos origen y sumidero es necesariamente mayor que en el
encaminamiento sencillo, basado en el contenido, ya que hay dos o
más saltos lógicos involucrados. Siempre que el contexto lo permita,
la latencia en cada salto lógico puede reducirse sucesivamente,
según se dispone de más información estática. Con respecto al
modelo sencillo con mediación, la tarea de mediación es más
compleja, porque se extiende sobre múltiples nodos (véase la Figura
2A). Sin embargo, el cuello de botella central inherente del modelo
con mediación centralizada ha sido eliminado, y la arquitectura
resultante es escalable.
El conjunto de todos los mensajes entrantes se
separa (clasifica) en un cierto número de subconjuntos (categorías)
no solapados, según el contenido del mensaje. El requisito de
mediación total se implementa como un cierto número de tareas de
mediación, cada tarea servida por separado en un proceso distinto
que opera sobre una categoría respectiva de mensaje entrante. Cada
mensaje incluye un contenido que indica si ese mensaje es un
miembro de una categoría particular o no, el así llamado predicado
determinístico. Este predicado determinístico puede considerarse
como la parte "verbal" de una "oración" del mensaje. Los
mensajes entrantes, por lo tanto, son clasificables según
predicados determinísticos en su contenido. Una categoría puede
verse entonces como un subconjunto de todos los mensajes posibles
basados en un predicado determinístico asociado. De hecho, la
presencia de un predicado determinístico dado caracteriza la
correspondiente categoría.
En un servicio de noticias o de edición sometido
a mediación, donde una autoridad central actúa como un control
editorial, antes que la información sea diseminada adicionalmente,
los ejemplos de un predicado determinístico incluyen:
- *
- IGUALDAD en un identificador único del documento
- \quad
- p. ej., id_doc = 1246512331400
- \quad
- p. ej., idelem MLnoticias = 238563''
- *
- alguna expresión de fecha/hora
- \quad
- p. ej., elemnoticias MLnoticias.fecha < 28 de julio de 2003 y
- \quad
- elemnoticias.fecha > 10 de enero de 2001
- *
- IGUALDAD en código de País del documento
- \quad
- p. ej., código_país = UK o
- \quad
- código_país = "UK" o código_país = "US"
{utilizando código país
MLnoticias}
- *
- algún código de tema asociado con el objeto del artículo
- \quad
- p. ej., Tema ="derechos humanos" {utilizando un código de tema MLnoticias}
- *
- algún predicado basado en los valores de atributos de un artículo MLnoticias:
- \quad
- p. ej., <cabecera> == "LONDRES".
\vskip1.000000\baselineskip
En un servicio de comercio transaccional, donde
una autoridad central actúa para hacer coincidir los requisitos de
compradores y vendedores, los ejemplos de predicados determinísticos
incluyen:
- *
- Artículo="piano" y ubicación = "NE de Escocia" y precio < \pounds3
- *
- Acción = "IBM"
- *
- Categoría = "Hogar > Todas las categorías > Deportes" y elemento= "surfista".
\vskip1.000000\baselineskip
En un servicio de conversación que permite que
un contexto reciente sea presentado a un usuario que se incorpora a
una conversación continuada, el predicado determinístico podría
ser:
- *
- Tema="navegación" y categoría = "<Chistera>"
- *
- Tema="Servidores de correo" y categoría "enviarCorreo" y sistema operativo="Unix" y en un ejemplo tomado de los grupos de noticias
- *
- Tema = alt.dinero.divisa.dólares-estadounidenses.
\vskip1.000000\baselineskip
En el caso de la Distribución de claves
criptográficas (el así llamado problema de distribución de claves),
el predicado determinístico podría basarse en el valor de la clave,
por ejemplo:
Valor de clave > 23352345 y valor de clave
< 66676767979079
En el caso de hallar la ubicación de datos
(estado) y servicios en una red distribuida, el predicado
determinístico puede basarse en un identificador globalmente único
(GUID):
p. ej., GUID = 125645654645
o podría basarse en un descriptor del servicio
que estamos buscando:
p. ej., Servicio ="impresora
(tipo=``chorroláser''; precio=``4p/página''; tamaño=A0)".
Finalmente, en el caso de localización y
comunicación con usuarios móviles, los ejemplos de predicados
determinísticos incluyen:
- *
- Nombre="Bon Monkeyhouse"
- *
- número de teléfono="01776 32463274327"
- \quad
- dirección de correo electrónico=asau@ghsghdsg.net.
\vskip1.000000\baselineskip
El conjunto de todas las categorías (y, por lo
tanto, el conjunto de todos los mensajes, una vez clasificados) se
denomina una clasificación. La clasificación, por lo tanto,
representa una partición del conjunto de todos los mensajes, y un
mensaje individual no puede pertenecer a más de una categoría. Este
concepto de clasificación no afecta al comportamiento externamente
observable de la operación del sistema, sino sólo a su caudal
general.
La clasificación del sistema es independiente
del tipo de mensaje que está siendo enviado (nueva información,
expresión de interés, o consulta), ya que se basa en alguna
caracterización de la información que circula dentro del sistema.
En el caso crucial, la clasificación puede ocurrir por medio de un
proceso automatizado. Tales mensajes entrantes pueden consistir en
información acerca de, o consultas con respecto a, esa categoría
dentro de la clasificación.
La clasificación del sistema de información es
efectuada por la autoridad de mediación, y esto puede ocurrir
durante la operación del sistema. Debe generarse un predicado
determinístico para permitir comprobar la inclusión de mensajes
arbitrarios en la categoría. Para cada categoría así identificada,
se crea un proceso distinto dentro de la red de mediación, a fin de
tratar su servicio de mediación. Finalmente, merece la pena observar
que la clasificación se emplea sólo para realzar las prestaciones
del sistema lógico, en lugar de cambiar su semántica en modo
alguno, y los clientes del sistema no serán conscientes de que
existe.
La tarea de mediación para cada categoría se
alberga en una máquina (ordenador) específico dentro de la red de
mediación. Cuando el sistema está operativo, los mensajes son
enviados por los clientes a la red de mediación. Los mensajes
recibidos en la red son remitidos al servicio de mediación adecuado,
según un análisis de su contenido mediante el conjunto de todos los
predicados de categoría. Este proceso de remisión requiere que el
conocimiento de la clasificación, y de la ubicación física donde se
alberga cada tarea de mediación, circule por la red de
mediación.
La Figura 3 muestra una topología mínima que
ilustra los componentes funcionales de un modelo (híbrido) de
mediación distribuida que está en un "estado estable" o "en
reposo", es decir, un estado en el cual no hay previstos cambios
en la topología lógica. La Figura muestra cómo fluyen los datos por
el sistema entre los diversos nodos componentes.
Todos los nodos componentes necesarios para un
modelo de mediación distribuida de escala ilimitada están presentes
en esta topología mínima, incluyendo: orígenes, sumideros, puntos de
presencia local, encaminadores de mediadores, mediadores y agentes
de transmisión. A lo largo de la siguiente exposición, estos
términos, y otros enumerados a continuación, adoptan una definición
según lo estipulado a continuación:
Punto de Presencia Local (LPP): un punto de
presencia local actúa como un intermediario entre los clientes
(orígenes y sumideros) y el resto del modelo de mediación
distribuida. Los puntos de presencia local son nodos de red que
proporcionan agentes para un servicio sujeto a mediación para una
región geográfica específica. Cada origen o sumidero se comunicará
así con sólo un único punto de presencia local, y con ningún otro
nodo dentro de la arquitectura de mediación. Puede haber un número
arbitrario de nodos LPP en un sistema, sirviendo cada uno al
respectivo número de clientes.
Mediador (M): un mediador es un nodo de red que
incorpora un módulo mediador, que atiende la solicitud de
mediación. Cada mediador tiene una distribución asociada corriente
abajo, que se utiliza para pasar mensajes relevantes a los LPP y,
por lo tanto, en última instancia, a los sumideros. Cada módulo
mediador implementa una o más tareas de mediación, con cada tarea
actuando sobre una única categoría de mensaje entrante. Los módulos
mediadores pueden configurarse para registrar todos los mensajes
entrantes que reciben y para remitir estos mensajes a la red
asociada de transmisión flujo abajo. Las tareas de mediación pueden
entonces incluir consultas de servicios en los registros de
mensajes generados de esta manera.
Encaminador de Mediadores (MR): un encaminador
de mediador es un nodo de red, que incorpora un módulo encaminador
de mediadores, que analiza el contenido de los mensajes entrantes,
determina a qué categoría pertenecen los mensajes y los encamina a
un mediador adecuado. Cada encaminador de mediadores se coloca a la
cabeza de una red flujo arriba y recibe mensajes desde un cierto
número de nodos LPP. Un encaminador de mediadores también
puede
registrar los mensajes entrantes para permitir, por ejemplo, un servicio local dentro del área geográfica a la que sirve.
registrar los mensajes entrantes para permitir, por ejemplo, un servicio local dentro del área geográfica a la que sirve.
Apoderado de Transmisión (TP): un agente de
transmisión es un nodo de red, que incorpora un módulo agente de
transmisión, que analiza los mensajes emitidos por uno o más nodos
mediadores; determina, a partir de las expresiones de interés
registradas, a qué sumidero(s) se dirige el mensaje saliente;
y remite mensajes por la red flujo abajo asociada con cada
mediador.
La red corriente arriba (desde el origen al
encaminador de mediadores) se ve como sometida a mediación, pero no
basada en contenidos. El encaminamiento entre encaminadores de
mediadores y mediadores, en la así llamada corriente cruzada, se
basa en contenidos. La red corriente abajo requiere, también,
encaminamiento basado en contenidos: en efecto, el encaminamiento
de mensajes entre encaminadores de mediadores y nodos LPP puede
considerarse como un mecanismo híbrido de entrega basado en
contenidos por sí mismo. La partición del espacio de mensajes como
parte de este híbrido permite la introducción de un servicio de
mediación a medio flujo en el modelo de edición y abono, sin
introducir un cuello de botella central no escalable.
Para un sistema en "estado estable" o "en
reposo", las siguientes afirmaciones, vinculadas con la red de
mediación distribuida, son siempre verdaderas. Estas afirmaciones
pueden considerarse "invariantes globales" de la arquitectura
de mediación distribuida.
- *
- Todo nodo es parte de un ciclo LPP->MR->M->TP->LPP
- *
- Todo LPP se dirige a un único MR
- *
- Todo MR puede dirigirse a cualquier M arbitrario
- *
- Todo M se dirige a un único TP
- *
- Todo TP puede dirigirse a cualquier LPP arbitrario
\vskip1.000000\baselineskip
El símbolo "\rightarrow" anteriormente
utilizado representa una conexión unidireccional (un arco
dirigido).
La Tabla 1 (Figura 6) enumera las dependencias
para la "corrección" del algoritmo de cambio de mediación: es
decir, el conocimiento extramuros total que se requiere mantener a
cada nodo.
A partir de la inspección de las anteriores
"invariantes globales", queda claro por qué la red ilustrada en
la Figura 3 se considera la mínima topología de mediación
distribuida: consiste en cuatro nodos exactamente: uno de cada tipo
(LPP, MR, M y TP), configurados en un ciclo sencillo, con conexiones
unidireccionales dispuestas entre los mismos:
LPP->MR->M->TP->LPP.
Una red de mediación distribuida más realista, y
más compleja, se ilustra en la Figura 4. Aquí, están presentes dos
nodos de cada tipo en una configuración conocida en lo sucesivo como
una red "cúbica". La red cúbica ilustra propiedades
adicionales de las redes generales de mediación distribuida.
Como en la red cíclica, el flujo de mensajes
entre nodos conectados es unidireccional. Cada nodo en la red
cúbica es un componente de al menos un ciclo,
LPP->MR->M->TP->LPP. La red cúbica exhibe una topología
de "convergencia/divergencia": mientras que cada LPP envía cada
mensaje a exactamente un MR, cada MR puede ser direccionado por una
pluralidad de nodos LPP (dos en la Figura 4) - convergencia: todo MR
es capaz de enviar un mensaje a cualquier mediador - divergencia;
cada mediador envía cualquier mensaje dado a exactamente un TP,
mientras que cada TP puede ser direccionado por una pluralidad de
mediadores - convergencia; y, finalmente, cada TP es capaz de
enviar un mensaje a cualquier LPP - divergencia.
Las redes de mediación distribuida, tales como
las redes cíclicas mínimas y cúbicas, también exhiben otra
propiedad importante: existe un camino dirigido desde cada nodo a
cualquier otro nodo en la red. En términos de la teoría de grafos,
todo nodo está en la clausura transitiva de cualquier otro nodo.
Esta propiedad vale trivialmente para redes cíclicas: sin embargo,
vale en redes más complejas de mediación distribuida, como
consecuencia de las propiedades invariantes globales. El camino
dirigido siempre puede considerarse como un grafo cíclico dirigido.
De esta manera, para dos nodos A y B cualesquiera dentro de una red
generalizada de mediación distribuida, existe un ciclo desde, A a
A, que contiene a B. Merece la pena observar que en una red cúbica
(de nivel único), la máxima longitud de camino de tal ciclo es 8, en
lugar de 4.
Nuevamente, ningún nodo tiene dependencia global
ni ningún conocimiento detallado de la red más allá de sus vecinos
inmediatos. Cada nodo almacena identidades sólo de aquellos nodos a
los que se dirige directamente. Los nodos también almacenan
información acerca de la totalidad de los nodos que se dirigen a
cada nodo dentro de la red; esto puede almacenarse bien como un
contador de referencia en el mismo nodo, o bien como un valor de
saldo acreedor en todos los nodos que se dirigen directamente a él.
En cualquier caso, no es necesario almacenar las identidades de los
nodos que se dirigen a otro. De hecho, ningún nodo necesita
almacenar ninguna información adicional acerca del resto del
sistema global.
Una importante propiedad adicional de la red de
mediación distribuida de la presente invención es que el
comportamiento es determinístico y ordenado dentro de cada nodo; es
decir, es posible garantizar que un mensaje B que llega después de
un mensaje A también es despachado después del mensaje A.
Igualmente, los mensajes no pueden tomar atajos por enlaces
directos entre los nodos; así, para dos nodos N1 y N2 cualesquiera,
tales que N1 se dirige directamente a N2, si un mensaje A es
enviado a N2 por N1, y posteriormente un mensaje B es enviado a N2
desde N1, entonces N2 recibirá el mensaje A antes de recibir el
mensaje B.
Cada nodo en la red generalizada de mediación
distribuida sólo tiene conocimiento detallado de la existencia de
otros nodos a los cuales envía mensajes directamente. La información
acerca de nodos desde los cuales recibe mensajes se almacena en una
forma que representa sólo la totalidad de tales nodos. Como se ha
mencionado anteriormente, esta información puede almacenarse, bien
como un contador de referencia en el mismo nodo, o bien como un
valor de saldo acreedor en todos los nodos que se dirigen
directamente a él.
En ciertos casos, se requiere cierto grado de
control global para efectuar un cambio dentro de la red, manteniendo
a la vez el comportamiento ordenado y determinístico. Es aquí donde
la información acerca de la totalidad de nodos que se dirigen a
cada nodo dentro de la red resulta útil. La red de mediación
distribuida requiere una propiedad adicional, por la cual un
conjunto de cambios coherentes puede hacerse de manera aparentemente
atómica con respecto a cualquier mensaje que pasa dentro del
sistema en el momento en que se hace el cambio: una propiedad
denominada el algoritmo de barrera causal.
Allí donde la información de nodos que se
dirigen a otro se almacena como un contador de referencia, el
algoritmo de barrera causal es un algoritmo del total recibido. En
los casos donde se espera una copia de un mensaje dado en un nodo
destinatario desde cada nodo que se dirige directamente al nodo
destinatario, es posible establecer que esto ha ocurrido
efectivamente, según lo siguiente: el nodo destinatario mantiene un
contador de referencia, que corresponde al número de nodos que se
dirigen directamente a él; toda vez que se envía un mensaje, se
añade información que incluye la identidad única del nodo
transmisor; si el receptor requiere detectar si copias del mismo
mensaje son enviadas por todos los nodos transmisores, entonces la
información del identificador del nodo transmisor se retiene
localmente, asociada con un correspondiente identificador de
mensaje; y cuando el número de tales mensajes únicos recibidos es
igual al contador de referencia, entonces se sabe que el mensaje ha
sido recibido desde todos los nodos que se dirigen directamente a
él.
Para nodos que no contienen un contador de
referencia, puede utilizarse un algoritmo distinto de barrera
causal. Este algoritmo se basa en la presencia de un campo de saldo
acreedor en cada nodo que se dirige directamente al nodo receptor.
Toda vez que se envía un mensaje, se añade información para incluir
la identidad unívoca del nodo transmisor y el valor del campo de
saldo acreedor. Si el receptor requiere detectar si copias del
mismo mensaje son enviadas por todos los nodos, entonces la
información del identificador del nodo transmisor se retiene
localmente, asociada con el identificador del mensaje. Además, se
mantiene un acumulador del saldo acreedor, que se configura para
contener el total de todos los valores de saldo acreedor contenidos
en tales mensajes. Se sabe que el mensaje ha sido recibido desde
todos los nodos transmisores cuando el acumulador del saldo
acreedor se hace igual a un valor total predeterminado, digamos,
1,0.
Ambas técnicas, la del cálculo de referencia y
la del saldo acreedor, por lo tanto, garantizan que el algoritmo de
barrera causal puede confirmar que todos los mensajes han sido
recibidos por los módulos adecuados, estableciendo por ello la
terminación del algoritmo de barrera causal para cualquier cambio
específico en la topología interna de la red de mediación. La
aplicación de tales "técnicas contables" permite a los módulos
mediadores detectar cuándo está completo un cambio de mediación,
sin requerir el conocimiento estático del número de módulos MR que
les envían información.
La división equitativa de la carga de mediación
sobre las máquinas físicas no es generalmente sensible a los
cambios en las condiciones de la carga. Para ser sensible, la
partición del espacio de información (distribución de la carga de
mediación según la clasificación) debe estar equilibrada en la
carga. En otras palabras, los requisitos de ancho de banda en
cualquier punto específico en una red física deben mantenerse
proporcionales a la carga de red como un todo. Según el foco lógico
de los mensajes cambia a lo largo del tiempo, esto requerirá el
ajuste dinámico basado en un modelo predictivo, a su vez basado en
la historia reciente del flujo de información. La carga de red
adicional, en la que se incurre sencillamente por tener que
organizar la partición del servicio de mediación sobre más de una
plataforma, también debe ser tenida en cuenta para cualquier modelo
de equilibrio de la carga.
El requisito de mediación del sistema se
dispersa entre los nodos de la red de mediación distribuida, según
la clasificación impuesta sobre ese sistema. Sin embargo, se ha
observado que no se requiere el conocimiento total de todas las
ubicaciones y todos los predicados por parte de todos los nodos
(máquinas) de la red. El único requisito para la operación correcta
es que todo mensaje llegue eventualmente a un mediador que albergue
una tarea de mediación adecuada para la categoría a la cual
pertenece el mensaje.
Los servicios de mediación, por lo tanto, pueden
ser trasladados dinámicamente, dentro de la red de mediación,
mientras el sistema está operativo. Esto, a su vez, permite el
ajuste de la carga del sistema dentro de la red de mediación, según
los patrones, dinámicamente cambiantes, del interés entre los
clientes del sistema. Tales patrones de interés pueden evaluarse
según el conocimiento predefinido acerca de los clientes, mediante
las expresiones de interés realizadas por ellos, o según el análisis
de los patrones cambiantes del empleo dentro del sistema.
La arquitectura de mediación distribuida de la
presente invención se basa en una topología arbitraria de nodos:
LPP, MR, M y TP. Esta topología de nodos tiene las propiedades
descritas anteriormente, con relación al "estado estable".
Esta misma topología es eminentemente adecuada para el equilibrio
dinámico de las cargas entre los componentes funcionales
existentes.
Toda vez que se estima que una categoría
específica está sometida a una fuerte carga, el alojamiento de la
tarea de mediación asociada puede ser trasladado a una máquina
dentro de la red que tenga capacidad sobrante. El traspaso de la
tarea de mediación también requiere ajuste dinámico de la red de
mediación, para asegurar que todo mensaje, ya sea actualmente
dentro de la red, o bien a recibir en el futuro, sea desviado al
nuevo nodo mediador. Esto puede lograrse por medio de la
propagación de mensajes especiales por la nueva topología lógica de
la red, es decir, una "ondulación causal" a través de las
máquinas adecuadas. El cambio de medición puede ocurrir, por ello,
dentro de un sistema vivo sin afectar el comportamiento observable
de ese sistema en términos de entrada y salida de mensajes.
El cambio de mediación, en última instancia, es
posible en virtud de la propiedad invariante global, por la cual un
mensaje entrante será encaminado al mismo mediador,
independientemente del LPP del cual emana. El cambio de mediación
plantea el problema de cambiar desde un estado coherente a otro,
dentro de un sistema vivo, y sin afectar adversamente la corrección
o las prestaciones del sistema. Deben considerarse dos funciones
principales de la red de mediación distribuida: la propagación de
mensajes y la consulta y, en particular, las consultas de
arranque.
Para contestar las consultas, es necesario saber
qué clasificación se está aplicando en cualquier momento
específico. Esto permite el descubrimiento de qué mediador alberga a
cualquier categoría dada de mensaje en cualquier momento dado. Sin
embargo, hacer esto determinísticamente para cualquier clase de
consulta requeriría algún grado de sincronización global. Como
alternativa a la sincronización global, se dispone el modelo de
mediación distribuida a fin de permitir que ciertas clases de
consulta sean contestadas sin información global perfecta ni
sincronización.
Considérese la progresión de estados desde un
momento en el cual el sistema está en un primer estado coherente
PS1 a un nuevo estado coherente PS2. En el instante t_{0},
comienza el proceso de mudar al nuevo estado PS2. En algún momento
desconocido después de esto, t_{1}, se sabe que el sistema ha
mudado al nuevo estado consistente PS2. El momento t_{b}, cuando
tiene lugar el cambio efectivo, es desconocido, pero está acotado
por t_{0} y t_{1}.
Entre los momentos t_{0} y t_{1}, definimos
que el sistema está inestable, queriendo decir que el prorrateo
actualmente operativo de tareas de mediación no se conoce
globalmente. Sin embargo, ninguna de las funciones de sistema se ve
afectada, ya que en cada punto se dispone de suficiente conocimiento
local como para poder tratar correctamente el flujo de
información.
Se describe ahora un algoritmo adecuado para
permitir que la partición (clasificación) subyacente, según lo
manifestado por el prorrateo de tareas de mediación, sea cambiada en
un sistema en funcionamiento. Debería observarse que el algoritmo
es capaz de tratar la adición o la retirada de nodos mediadores, una
funcionalidad expuesta en más detalle más adelante.
Utilizando, por razones de claridad, un modelo
simplificado, en el cual cada mensaje lleva un contenido extraído
de un conjunto finito de símbolos. La partición (clasificación) se
caracteriza por un mapeo entre etiquetas de contenido y un conjunto
finito de clases (categorías). Las clases se nombran según su
mediador asignado. Los cambios en la partición se caracterizan por
especificar la reasignación de una etiqueta de contenido a un
mediador distinto.
También por razones de simplicidad descriptiva,
se supone que: los cambios sólo involucran a dos mediadores; y que
un cambio se completa antes de que otro empiece. Ninguna de estas
suposiciones es un requisito absoluto, pero se han hecho para
simplificar el modelo; no obstante, el modelo simplificado es
general y permite que se haga un cambio arbitrario al sistema.
El proceso comienza con un mensaje CAMBIO_PRED
que es enviado por algún LPP (iniciador) a su encaminador de
mediadores (véase la Figura 5A). El contenido de un mensaje
CAMBIO_PRED describe la reasignación de una etiqueta de contenido a
un mediador destinatario, R. distinto. El MR lee esta etiqueta de
contenido y remite el mensaje al mediador, S, que trata actualmente
ese contenido.
Al recibir un mensaje CAMBIO_PRED (según se
muestra en la Figura 5B), el mediador:
Cambia su estado de ESTABLE a
REMITENTE_TRASPASO.
Envía al mediador, R, destinatario del traspaso
un mensaje TRASPASO_MEDIADOR que contiene el contenido del mensaje
CAMBIO_PRED.
Cambia su estado interno para remitir mensajes
que contienen la etiqueta de contenido al mediador R destinatario
del traspaso para este cambio.
Desde este punto en adelante, todo mensaje
enviado por cualquier encaminador de mediadores al mediador S
referido al tema sujeto al cambio de mediación será remitido al
mediador R. El fin del mensaje MEDIADOR_CAMBIADO, enviado a todos
los LPP del mediador mediante los TP, es garantizar la entrega
causal de mensajes enviados por la red flujo abajo.
Cuando un LPP recibe un mensaje
MEDIADOR_CAMBIADO, se pone a sí mismo en el estado ALMACENANDO.
Cuando está en este estado, el LPP almacena temporalmente todos los
mensajes DATOS_CORRIENTEABAJO hasta que recibe un mensaje
NUEVO_MEDIADOR para el correspondiente contenido. Esto es suficiente
para garantizar el ordenamiento causal de los mensajes remitidos al
mediador R y para impedir que los mensajes más antiguos, sujetos a
mediación por parte del mediador S, sean procesados por el LPP
fuera de orden.
Como se muestra en la Figura 5, al recibir un
mensaje TRASPASO_MEDIADOR, un mediador cambia su estado desde
ESTABLE a RECEPTOR_TRASPASO, denotado por la etiqueta R en el nodo
mediador. En este estado, un mediador espera mensajes remitidos
cuyo contenido coincide con el del mensaje TRASPASO_MEDIADOR. Desde
el momento en que se recibe el mensaje TRASPASO_MEDIADOR, el
mediador está sometiendo a mediación ese contenido, aunque el resto
del sistema puede no ser consciente de esto. A fin de notificar a la
arquitectura de un cambio de mediación, el nuevo mediador envía un
mensaje NUEVO_MEDIADOR a todos sus TP. Esto es una transmisión del
cambio de mediación, y es remitido por los TP a todos los LPP, y
por todos los LPP a todos los MR, según se muestra en la Figura
5C.
Según se muestra en la Figura 5D, cuando un MR
recibe un mensaje NUEVO_MEDIADOR, actualiza su tabla de
encaminamiento a fin de causar que el futuro contenido que coincida
con la carga útil del mensaje NUEVO_MEDIADOR sea enviado al
mediador R, en lugar de al mediador S. En este punto se ha logrado
un cambio en el encaminamiento basado en contenido. Sin embargo, el
mediador S debe ser informado de este suceso, para que pueda cesar
de remitir mensajes una vez que todos los MR estén al tanto de que
el mediador R es ahora el mediador del contenido. De manera
similar, el mediador R necesita ser informado de estos sucesos, para
que pueda volver a la operación estable y dejar de esperar mensajes
remitidos. En consecuencia, después de cambiar su tabla de
encaminamiento, un MR envía un mensaje PE_PS_CAMBIADO al viejo
mediador del contenido (S), que extrae de la tabla de encaminamiento
antes de actualizarlo. Como se muestra en la Figura 5E, los
mediadores en el estado REMITENTE_TRASPASO remiten todos los
mensajes PE_PS_CAMBIADO al nuevo mediador destinatario.
El algoritmo de traspaso puede emplear el
procedimiento de barrera causal para mantener el ordenamiento causal
con una técnica de contador de referencia, a fin de establecer que
los mensajes se han propagado correctamente por la red de
mediación. Los mediadores en los estados REMITENTE_TRASPASO y
RECEPTOR_TRASPASO cuentan los mensajes PE_PS_CAMBIADO recibidos
desde los MR, lo que les permite determinar cuándo todos los MR en
el sistema han recibido la información del cambio de mediador.
Cuando reciben el último mensaje PE_PS_CAMBIADO, cambian su estado
de REMITENTE_TRASPASO y RECEPTOR_TRASPASO, respectivamente, al
estado ESTABLE, según se muestra en la Figura 5F.
Como puede verse en la descripción anterior, el
comportamiento de un mediador se caracteriza por una máquina de
estados finitos que puede estar en uno de los siguientes tres
estados:
ESTABLE - El estado normal, en funcionamiento,
del mediador; no está transcurriendo actualmente ningún cambio
dentro del conjunto de predicados que resulte en el tratamiento por
su parte de una clase de equivalencia mayor o menor, dentro del
espacio de datos.
RECEPTOR_TRASPASO - El mediador está en un
estado inestable, y el tamaño de su clase de equivalencia acaba de
aumentar, debido a la reasignación de parte del espacio de mensajes
(el delta) desde otro mediador (el REMITENTE_TRASPASO). Mientras
está en este estado, puede recibir mensajes remitidos desde el
mediador previamente responsable del delta, los cuales pasa a su
agente de transmisión como si hubiesen sido enviados directamente a
él. También puede recibir mensajes de datos dentro del delta,
directamente desde cualquier evaluador de predicados que esté al
tanto de su nuevo papel; cualquier tal mensaje debe ser almacenado
temporalmente hasta que se sepa que no pueden estar llegando más
mensajes remitidos desde el mismo origen (mediante un mensaje
PE_PS_CAMBIADO).
REMITENTE_TRASPASO - El mediador está en un
estado inestable, habiendo pasado un delta desde su anterior clase
de equivalencia a otro mediador. Todo mensaje recibido dentro del
delta debe remitirse al correspondiente RECEPTOR_TRASPASO.
\vskip1.000000\baselineskip
El algoritmo de traspaso funciona muy bien,
siempre que la red de mediación tenga la capacidad necesaria para
mediar en el tráfico que fluye a través de ella. Un sistema de
mediación de larga vida, sin embargo, puede estar sujeto a un
cambio significativo durante su vida útil. El cambio puede ocurrir,
por ejemplo: en el volumen del tráfico, tanto de abonos como de
ediciones; en el número y en la distribución geográfica de los
clientes; y/o en la localidad desde la cual se originan las
solicitudes. Además, según el contenido de los mensajes cambia a lo
largo del tiempo según el cambio en la demanda de los clientes, las
proporciones relativas de las tareas de mediación requeridas pueden
alterarse significativamente, dejando a la partición existente
desequilibrada o inadecuada de alguna otra manera.
A fin de asimilar el cambio, es necesario que el
sistema de mediación distribuida sea adaptable. Puede ser necesario
redesplegar recursos físicos, mediante la adición o eliminación de
nodos de cualquier clase, en puntos adecuados dentro del sistema,
para abordar los volúmenes cambiantes de tráfico dentro de un
dominio geográfico dado. Según el contenido de los mensajes de
clientes cambia a lo largo del tiempo, la partición aplicada al
conjunto de mensajes para dividir la tarea de mediación entre los
mediadores disponibles puede requerir ajustes, para equilibrar la
carga de mediación y para asegurar su empleo eficiente.
En ciertas aplicaciones críticas, tal adaptación
debe lograrse sin interrumpir el servicio que se está
suministrando.
Siempre que los invariantes globales anteriores
y las dependencias esbozadas se preserven, la funcionalidad
adicional no interferirá con el mecanismo previamente definido. De
allí en más, el servicio de mediación puede ser dinámicamente
reasignado entre los mediadores existentes según el algoritmo de
traspaso.
Los cambios en la topología lógica de la red de
mediación distribuida pueden desestabilizar el servicio, o
servicios, sujeto(s) a mediación, y pueden finalizar el
servicio albergado.
Una red práctica de mediación distribuida, por
lo tanto, debe abordar simultáneamente cuestiones tanto de
equilibrio de carga como de estabilidad. Con ciertos agregados
clave, el modelo híbrido de mediación distribuida anteriormente
descrito puede ser implementado más efectivamente en sistemas
físicos prácticos. Estos agregados clave combinan la migración
dinámica de procesos y el encaminamiento adecuado en la
infraestructura de la red, permitiendo por ello que se logre la
implementación efectiva sin incurrir en sobregastos inaceptablemente
altos y en la finalización involuntaria de los servicios. El modelo
híbrido de mediación distribuida también debe permitir el ajuste a
escala de la arquitectura sin afectar la latencia del mensaje.
De manera similar, es probable que un sistema de
mediación distribuida sea implementado sobre una infraestructura de
red que está sujeta a fallo parcial. En consecuencia, un sistema de
mediación distribuida, toda vez que sea posible, debería tener
mecanismos para detectar fallos y tomar acciones correctivas.
Toda vez que sea posible, ambos requisitos
anteriores deberían proporcionarse autónomamente, es decir, sin la
necesidad de la intervención humana.
El modelo híbrido de mediación distribuida, en
efecto, puede extenderse más allá de la funcionalidad de equilibrio
de cargas previamente descrita. Las siguientes clases de
funcionalidad añadida pueden implementarse sobre una red existente,
en reposo, de mediación distribuida:
En una primera clase de funcionalidad,
denominada reconfiguración lógica, se proporcionan mecanismos para
la (i) adición, (ii) conmutación y (iii) retirada de nodos
individuales y combinaciones de nodos. Estos mecanismos permiten
una reconfiguración arbitraria de una red existente de mediación
distribuida, teniendo lugar tal reconfiguración dentro de un
sistema vivo, sin afectar el comportamiento exteriormente observable
de ese sistema. Un mecanismo de reconfiguración es un procedimiento
implementado por ordenador que permite cambios arbitrarios en la
topología lógica de la red, más allá del sencillo traspaso de tareas
de mediación entre los mediadores. El resultado se logra con el
despliegue y/o redespliegue dinámico de los nodos lógicos sobre una
infraestructura física flexible y cambiante. El despliegue
arbitrario de la arquitectura lógica sobre una red arbitraria de
dispositivos informáticos físicos, por lo tanto, es posible sin
ningún requisito en cuanto a que el servicio que se alberga deba
finalizar.
Una segunda clase de funcionalidad que puede
implementarse sobre una red existente de mediación distribuida es
la del tratamiento de fallos. Allí donde el comportamiento de una
red de mediación distribuida deje temporalmente de satisfacer sus
requisitos, debido al fallo de un nodo individual, pueden definirse
mecanismos que permiten la reconfiguración de los nodos restantes,
para que comiencen una vez más a comportarse como lo hacía la red
original antes del fallo. Un mecanismo de tratamiento de fallos
tiene en cuenta el descubrimiento dinámico de fallos de nodos
físicos dentro de la arquitectura de la red. Los mecanismos de
tratamiento de fallos pueden responder entonces redesplegando la
funcionalidad lógica del nodo averiado sobre un conjunto distinto de
nodos físicos, que no incluye al que se sabe averiado. Esto puede
lograrse proporcionando mecanismos adicionales para detectar el
origen del fallo, y reutilizando los mecanismos de reconfiguración
anteriormente identificados para reconfigurar la red restante. La
funcionalidad en esta clase también puede implementarse dentro de un
sistema vivo sin afectar al comportamiento observable; en
particular, evitando todo requisito para finalizar el servicio
albergado.
En una tercera clase de funcionalidad,
denominada refinamiento estructural, hay mecanismos para permitir el
reemplazo de un nodo, o nodos, individual(es) dentro de una
red de mediación distribuida, por cualquier otra red, incluyendo
una red adicional de mediación distribuida. Esta refinación
estructural preserva en sí misma las invariantes globales y las
propiedades requeridas para ese nodo dentro de la red de mediación
distribuida, y opera nuevamente dentro de un sistema vivo. La
refinación estructural mejora el despliegue de estructuras
arquitectónicas genéricas, de manera tal que los nodos lógicos
individuales puedan ser reemplazados por subredes completas de
nodos u otros tipos de nodos de tamaño arbitrario. El despliegue no
debe ser necesariamente un proceso nodo por nodo.
En todos los casos, el ajuste en la red viva
está afectado por la adición e interpretación de nuevos tipos de
mensajes, similares en su naturaleza a la totalidad de tipos y
comportamientos, según lo ejemplificado en la exposición del
traspaso de mediador.
La funcionalidad en cada una de las tres clases
principales se describe en más detalle a continuación.
Esta sección aborda la importante utilidad para
la adición de nuevos nodos. En cada caso, consideramos la adición,
bien de un nuevo nodo individual, o bien de un par de nuevos nodos,
a una red. La adición de nuevos nodos lógicos puede coincidir con
la adición de nuevos nodos físicos (máquinas). Esto no implica
ninguna pérdida de generalidad, dado que los mismos principios son
igualmente aplicables a la adición de una pluralidad de nodos, o
incluso de redes completas de mediación distribuida. En cada caso,
deben considerarse dos aspectos: primero, que el nuevo nodo esté
correctamente configurado para operar en su entorno venidero (Parte
A) y, segundo, que la red en la cual se introduce el nuevo nodo
esté debidamente configurada (Parte B).
Puede añadirse cualquiera de los siguientes
nodos:
- *
- un solo LPP
- *
- un solo M
- *
- un par LPP -> MR
- *
- un par M -> TP
y se mantendrán los invariantes y
dependencias del sistema. Para añadir un nuevo MR, debemos añadir un
nuevo LPP, dado que los LPP se dirigen únicamente a un MR
individual. De manera similar con los TP, dado que los mediadores
se dirigen únicamente a un TP individual. En combinación con la
conmutación, esto es suficiente para permitir que se construyan
topologías legales arbitrarias. Cuando añadimos un LPP extra,
estamos proporcionando capacidad extra en la interfaz del cliente.
Cuando añadimos nuevos mediadores, estamos añadiendo capacidad de
mediación extra. Añadir los MR aumenta la capacidad de entrada al
sistema de mensajería, y añadir los TP aumenta la capacidad de
salida del
sistema.
Se observará que muchos de los algoritmos
requieren la transmisión de (nuevas) direcciones de nodo a través
de la red. Por ejemplo, cuando se añade un LPP al sistema, se envía
un mensaje NUEVO_LPP que tiene un campo llamado nueva_dir_lpp. Las
nuevas direcciones de nodo pueden codificarse en diversas formas -
por ejemplo, podría utilizarse un par (dirección IP, dirección de
puerto). Esto depende de la implementación, y no se abordará
adicionalmente en este documento.
La instigación de cualquier nuevo mensaje de
nodo dado puede ser, entre otras cosas: un operador humano, por
medio de una interfaz de administración; una red de control
semi-automática que monitoriza los niveles de
carga; o bien un sistema autónomo de control de red de
mediación.
Parte
A
Un LPP sólo necesita saber la dirección de sus
interlocutores (sus MR en el modelo estándar). Esto es un parámetro
de configuración para la inicialización del LPP. Para actualizar el
contador de referencia mantenido por el MR, el nuevo LPP debe
enviar un mensaje NUEVO_LPP al MR. Al recibir este mensaje, se
actualiza el contador de referencia del MR. Este mensaje también se
utiliza para iniciar el ciclo requerido para configurar la red.
Parte
B
Para añadir un nuevo LPP, debe actualizarse cada
red flujo abajo. Esto requiere que cada red flujo abajo sea
actualizada individualmente. Esto puede lograrse propagando un
mensaje a cada mediador, para su transmisión a la red flujo
abajo.
El formato del mensaje para la adición de los
LPP es el siguiente:
Utilizamos un LPP arbitrario para introducir los
cambios y llamamos al LPP escogido el LPP originador.
El proceso es el siguiente: se envía un mensaje
Nuevo_LPP (nº_transacción, nueva_dir_lpp) al LPP originador. El
nuevo LPP puede empezar a recibir mensajes en cualquier momento
arbitrario después de que se haya enviado este mensaje. El LPP
originador envía este mensaje a su MR, que remite el mensaje a cada
mediador. Los mediadores remiten el mensaje a sus interlocutores
(los TP en el modelo estándar). En este punto en el proceso, el
conocimiento del nuevo LPP se conoce globalmente. Para garantizar
la terminación del algoritmo, los TP envían el mensaje NUEVO_LPP al
LPP originador con sus saldos acreedores. El nuevo LPP suma el saldo
acreedor y, cuando éste alcanza un valor predeterminado, digamos,
1,0, el nuevo LPP sabe que el proceso está completo. Este proceso
se muestra en las Figuras 8A a 8E.
El algoritmo de cambio de mediador es un
componente del modelo de mediación distribuida, y sirve para
permitir que los mediadores existentes cambien su carga de
mediación. Sin embargo, este mecanismo no puede ser simplemente
extendido para brindar soporte a la configuración de un nuevo nodo o
red. En consecuencia, se requiere un algoritmo distinto de adición
de mediador para brindar soporte a la adición de nuevos
mediadores.
Parte
A
Un mediador sólo necesita saber la dirección de
sus interlocutores (sus TP en el modelo estándar). Esto es un
parámetro de configuración para la inicialización del mediador. Para
actualizar el contador de referencia mantenido por el TP, el nuevo
mediador envía un mensaje Nuevo_Mediador (descrito más adelante) al
TP. Al recibir este mensaje, se actualiza el contador de referencia
del mediador en el TP. Este mensaje también se emplea para iniciar
el ciclo de diseminación de la existencia del nuevo mediador a los
MR.
Parte
B
Para añadir un mediador, cada MR direccionador
debe ser actualizado con el conocimiento del nuevo mediador. El
proceso es similar a la adición de LPP, excepto en que el ciclo se
origina en el nuevo mediador.
\newpage
El formato del mensaje para la adición del
mediador es el siguiente:
El proceso es el siguiente: se envía un mensaje
Nuevo_Mediador (nº_transacción, nueva_dir_M) al TP para su
propagación. El nuevo mediador no empezará a recibir mensajes de
mediación hasta que haya tenido lugar el cambio de mediación. Sin
embargo, puede recibir mensajes de mantenimiento en cualquier
momento arbitrario después de que este mensaje haya sido enviado.
El TP remite el mensaje a todos los LPP. Los LPP remiten el mensaje
a sus interlocutores (los MR). Al recibir este mensaje, los MR
tienen conocimiento del nuevo mediador. Para garantizar la
terminación del algoritmo, los MR envían el mensaje Nuevo_Mediador
al nuevo mediador con sus saldos acreedores. El nuevo mediador suma
el saldo acreedor y, cuando éste alcanza un valor predeterminado,
digamos, 1,0, el nuevo mediador sabe que el proceso está completo.
Este proceso se muestra en las Figuras 9A a 9D.
Como se ha mencionado anteriormente, cada
encaminador de mediadores debe ser direccionado por un LPP a fin de
mantener los invariantes globales. Un MR no puede existir sin un LPP
que se dirija a él. Por lo tanto, un nuevo MR no puede crearse sin
un LPP asociado. Esta restricción, sin embargo, no impide que ambas
funciones sean albergadas en un nodo de ordenador físico
individual, o incluso en un programa individual.
La primera etapa en la adición del nuevo MR, por
lo tanto, es crear e inicializar un nuevo LPP sin ningún cliente.
Esto da como resultado la situación ilustrada en la Figura 10. Una
vez que se ha alcanzado esta situación, se utiliza el nuevo LPP
para crear un nuevo MR.
Parte
A
Operar un MR requiere un mapa de encaminamiento
actualizado. Durante los periodos estables, los mapas de
encaminamiento son los mismos para todos los MR en el sistema. Por
lo tanto, un nuevo MR puede obtener un mapa de encaminamiento de
cualquier MR establecido en el sistema. Los MR también requieren un
saldo acreedor, que sólo puede obtenerse de otro MR.
Para iniciar el proceso se envía un mensaje
NUEVO_MR (nueva_dir_mr) al LPP recién creado. El formato de los
mensajes es el siguiente:
\newpage
El LPP añade su propia dirección y envía un
NUEVO_MR(nueva_dir_mr, dir_lpp). Cuando este mensaje es
recibido por un MR, envía un mensaje NUEVA_TABLA_ENCAMINAMIENTO_MR
y adosa la dirección del nuevo MR, la dirección del nuevo LPP, la
información de encaminamiento y una fracción de su saldo acreedor.
Este mensaje se remite a un mediador arbitrario y se pasa por la
red flujo abajo al LPP cuya dirección está en el mensaje
NUEVA_TABLA_ENCAMINAMIENTO_MR. El LPP pasa entonces el mapa de
encaminamiento al MR recién creado. El MR utiliza esta información
para inicializar su saldo acreedor y sus mapas de
encaminamiento.
Parte
B
A fin de hacer uso del nuevo MR, el nuevo LPP
necesita cambiar su MR por el recién creado. Este proceso se inicia
inmediatamente después de que el mensaje
NUEVA_TABLA_ENCAMINAMIENTO_MR haya sido recibido por el nuevo MR.
Al recibir este mensaje, el nuevo MR envía un mensaje
MR_INICIALIZADO() al nuevo LPP. Éste, a su vez, envía mensajes
INC_CONT_REF() y DEC_CONT_REF() a los MR nuevo y viejo,
respectivamente. Este proceso se ilustra en las Figuras 11A a
11E.
A fin de mantener los invariantes globales, un
TP debe ser direccionado por un mediador. Un TP no puede existir
sin un mediador que se dirija a él. Por lo tanto, no puede crearse
un TP sin un mediador asociado. Observe que esto no impide que
ambas funciones sean albergadas por un nodo informático físico
individual, o incluso un programa individual. Este es el caso
simétrico a la creación de los TP.
La primera etapa en la adición del nuevo agente
de transmisión, por lo tanto, es crear e inicializar un nuevo
mediador, que no está mediando en ningún dato. La Figura 12 ilustra
esta primera etapa.
Parte
A
Para funcionar, un nuevo TP requiere
conocimiento de todos los LPP en el sistema. Esto puede obtenerse de
cualquier otro TP configurado en el sistema. Los TP también
requieren un saldo acreedor, que sólo puede obtenerse de otro
TP.
Para iniciar un proceso, se envía un mensaje
NUEVO_TP(nueva_dir_tp) al mediador recién creado. El formato
de este mensaje es el siguiente:
El mediador añade su propia dirección y envía un
NUEVO_TP(dir_nuevo_tp, dir_mediador). Cuando este mensaje es
recibido por un TP, remite el mensaje que contiene la dirección del
nuevo TP, la dirección del nuevo mediador, la lista de los LPP
conocidos y una fracción de su saldo acreedor. Este mensaje se
remite a un LPP arbitrario. El LPP entonces pasa el mapa de
encaminamiento al TP recién creado. El TP utiliza esta información
para inicializar su saldo acreedor y su lista de los LPP
conocidos.
Parte
B
A fin de hacer uso del nuevo TP, el nuevo
mediador necesita cambiar su TP por el recién creado. Este proceso
es iniciado por el envío, desde el nuevo TP, de un mensaje
TP_INICIALIZADO() al nuevo mediador. Al recibir este mensaje, el
nuevo mediador envía un mensaje INC_CONT_REF() al nuevo TP y un
mensaje DEC_CONT_REF() al viejo TP. Las etapas involucradas en
ambas partes del proceso de adición del agente de transmisión se
ilustran en las Figuras 13A a 13E.
Por conmutación nos referimos a los cambios en
la topología, en donde un arco saliente desde un nodo es redirigido
a otro nodo. La conmutación, por lo tanto, es sólo aplicable a los
arcos salientes desde los LPP y los mediadores, dado que tanto los
TP como los MR tienen un conjunto invariable de interlocutores.
Los destinatarios de la conmutación son bien los
MR o bien los TP. El comportamiento de estos nodos es independiente
con respecto a la identidad de sus direccionadores. Por lo tanto, el
único requisito para conmutar, a fin de mantener un sistema
coherente, es que los contadores de referencia estén correctamente
ajustados entre las máquinas de referencia.
La conmutación tendrá lugar atómicamente con
respecto a las máquinas direccionadoras (los LPP y los mediadores);
por lo tanto, los datos pueden continuar fluyendo durante la
operación de conmutación. Durante la operación de conmutación, los
contadores de referencia pueden ser temporalmente incorrectos, pero
esto es inofensivo con respecto a los algoritmos.
El LPP objeto de conmutación envía un mensaje
CONMUTAR_MR a su MR actual, con su propia dirección y la dirección
del nuevo MR como parámetros. Al recibir este mensaje, el MR
comprueba su contador de referencia. Si el contador de referencia
ha alcanzado un nivel de umbral predeterminado, digamos 1, el MR
responde con un mensaje CONMUTAR_MR_FALLO. En caso contrario,
responde con un mensaje CONMUTAR_MR_BIEN, habiendo decrementado su
contador de referencia. Al recibir este mensaje, el LPP conmuta su
MR al nuevo MR y le envía un mensaje CONMUTAR_NUEVO_MR. Al recibir
este mensaje, el nuevo MR incrementa su contador de referencia.
El algoritmo CONMUTAR_MEDIADOR es el mismo: el
mediador que está siendo conmutado envía un mensaje CONMUTAR_TP a
su TP actual, con su propia dirección y la dirección del nuevo TP
como parámetros. Al recibir este mensaje, el TP comprueba su
contador de referencia; si el contador de referencia ha alcanzado un
valor de umbral predeterminado, digamos 1, el TP responde con un
mensaje CONMUTAR_TP_FALLO. En caso contrario, responde con un
mensaje CONMUTAR_TP_BIEN, habiendo decrementado su contador de
referencia. Al recibir este mensaje, el mediador conmuta su TP al
nuevo TP y le envía un mensaje CONMUTAR_NUEVO_TP. Al recibir este
mensaje, el nuevo TP incrementa su contador de referencia.
Con dos precondiciones, pueden conservarse los
invariantes globales según se retiran los nodos. En primer lugar,
los LPP y los mediadores pueden retirarse como nodos individuales,
mientras no tengan ninguna implicación funcional dentro de la red:
en el caso de los LPP, no debería haber ningún cliente funcional y,
en el caso de los mediadores, no debería haber ninguna tarea de
mediación en ese mediador. En segundo lugar, los nodos a retirar no
deben ser los únicos direccionadores de sus interlocutores.
Los requisitos para la retirada, entonces, se
refieren únicamente a los invariantes topológicos, y la tarea de la
retirada requiere la actualización de cada precursor, para eliminar
el registro de la presencia del nodo.
Los MR y los TP no pueden retirarse
aisladamente, por las mismas razones por las cuales no pueden
crearse aisladamente y, por lo tanto, deben retirarse en pareja
junto con un único precursor. Por razones funcionales, no pueden
retirarse si las máquinas precursoras están contando con su
presencia. En consecuencia, un MR puede retirarse sólo si (a) tiene
un único LPP que se dirige a él y (b) ese LPP no tiene ningún
cliente. En ese punto, el LPP y el MR pueden retirarse como una
pareja. La retirada de esta pareja tiene precisamente el mismo
requisito que la retirada del LPP único.
De manera similar, un TP puede retirarse sólo si
(a) tiene un único mediador que se dirige a él y (b) ese mediador
no tiene ninguna tarea de mediación asociada a él. En ese punto, el
mediador y el TP pueden retirarse como una pareja. La retirada de
esta pareja tiene precisamente el mismo requisito que la retirada
del mediador único.
En todos los casos, la retirada de un nodo
requiere el ajuste de saldos acreedores o de contadores de
referencia.
Esta sección aborda algoritmos para tratar los
fallos dentro de una infraestructura de encaminamiento sujeta a
mediación. Se proporcionan mecanismos para detectar el fallo, para
reubicar y recuperar cualquiera de los tipos de nodos, y para
restablecer las conexiones.
Para facilitar la descripción, se hacen las
siguientes suposiciones:
- *
- el modelo de fallos es "no solapado" - es decir, no ocurren dos fallos concurrentes y cada fallo es corregido antes de que ocurra otro.
- *
- cada nodo está albergado en una máquina física distinta.
- *
- dos máquinas cualesquiera pueden establecer una conexión, siendo una fuente de fallos las conexiones caídas entre máquinas que pueden restablecerse.
\vskip1.000000\baselineskip
Además, se supone que se proporciona un nodo de
detección de fallos individual que no es parte de la red de
mediación distribuida. En la práctica, este nodo de detección de
fallos podría implementarse como otra red de mediación distribuida.
Cada nodo es capaz de conectarse con el nodo de detección de fallos
e informar de fallos en el sistema, según se muestra en la Figura
14.
Cada nodo es capaz de detectar el fallo de los
enlaces de comunicaciones entrantes o salientes, e informar del
fallo al nodo de detección de fallos.
Los mensajes de detección de errores tienen la
siguiente forma:
ERROR (tipo de nodo transmisor, dirección_desde,
dirección_a)
En el caso de un fallo de un enlace entrante o
una máquina direccionadora, se desconoce la dirección desde. En el
caso de un fallo de un enlace saliente o una máquina direccionada,
pueden proporcionarse ambas direcciones. Si ocurre un fallo de
enlace, sólo el transmisor y el receptor informarán de un fallo.
Además, la dirección_a del transmisor coincidirá con la
dirección_desde del receptor, lo cual indicará de forma concluyente
un fallo de enlace, en lugar de un fallo de nodo. En este caso, el
nodo de detección de fallos puede instruir al transmisor para
restablecer el enlace. Si un nodo falla, todos los enlaces a y desde
ese nodo fallarán y, en consecuencia, se informará de ellos al nodo
de tratamiento de fallos. La información enviada al nodo de
tratamiento de fallos puede emplearse para determinar el tipo e
identidad del nodo averiado, según se muestra en la matriz de fallos
(Figura 7). En consecuencia, el nodo de tratamiento de fallos es
capaz de detectar e identificar la clase de error y dónde ha
ocurrido.
Nuestra hipótesis simplificadora es que los
nodos no están albergados conjuntamente y, por lo tanto, un fallo
individual de máquina física sólo puede causar un fallo lógico
individual. Observamos que esta hipótesis puede debilitarse
significativamente y aún permitir la detección de patrones de fallo
característicos, tales como aquellos enumerados para los nodos
lógicos individuales. En particular, si suponemos que sólo pares de
nodos conectados están albergados conjuntamente, el fallo puede ser
detectado. El proceso de tratamiento de fallos se ilustra en las
Figuras 15A a 15E.
Para cualquier fallo de nodo individual, la
estrategia básica es crear una nueva instancia (o utilizar un
recambio disponible) de ese tipo de nodo, y reconfigurar la red para
utilizarlo. Esto requiere: bien conocer o bien recrear el estado
interno del nodo e, igualmente, bien conocer o bien crear su
topología de entorno inmediato. La segunda de estas tareas (la
topología del entorno inmediato) está capturada por la totalidad de
los mensajes de error enviados al nodo de tratamiento de fallos en
caso de fallo.
La recreación de la topología es llevada a cabo
tanto en nodos que transmiten a nodos averiados como en nodos que
reciben desde nodos averiados. En el primer caso, toda vez que un
nodo envía un mensaje de error, en el cual se especifican ambos
campos desde y a, el nodo de detección de fallos responde con la
identidad del nodo de reemplazo. Este identificador de nodo
devuelto se utiliza para sobregrabar la entrada en el estado interno
del nodo que se refiere al nodo averiado y, en ese punto, este nodo
puede continuar con su operación normal.
En el caso de receptores desde nodos averiados,
parte del estado interno del nodo averiado incluirá siempre la
identidad del nodo flujo arriba que informa del fallo, o fallos. En
el caso de los LPP y los M, este es un único nodo, cuya identidad
puede detectarse a partir del mensaje de error enviado por el nodo
inmediatamente flujo abajo del nodo averiado. Este estado puede
utilizarse en la creación del nodo de reemplazo.
En principio, la topología alrededor de los MR
averiados y, respectivamente, de los TP averiados, puede recrearse
igualmente bien a partir de la totalidad de los mensajes de error
recibidos; sin embargo, existe un argumento similar para el empleo
del algoritmo de recuperación del crédito, con preferencia sobre el
simple recuento de referencias, según lo descrito en otra parte y,
con este fin, observamos que la totalidad de los arcos salientes es
idéntica para todos los MR y, respectivamente, los TP en la red; por
lo tanto, puede adquirirse una copia de este estado desde un nodo
vivo del tipo apropiado, como en los mecanismos de reconfiguración
descritos en otra parte, para evitar el tráfico de red excesivo.
El contenido semántico también debe recrearse,
además de la topología. En otras palabras, todos los tipos de nodos
llevan información adicional de estado interno, que debe recrearse
de alguna manera. Esta información adicional de estado interno
abarca los siguientes campos: contadores de referencia, listas de
interés, saldos acreedores y estado de mediación.
Los contadores de referencia son averiguables a
partir de la suma de los mensajes de error recibidos, observando
que esta es información local y, por lo tanto, no deberían presentar
un coste inaceptable. Además, esta información no se requiere para
el funcionamiento en vivo del sistema, incluyendo el cambio de
mediación y, por lo tanto, no se requiere que esté disponible para
la continuación, sino sólo antes de otro fallo, o una
reconfiguración controlada.
Los LPP llevan listas de los temas de mediación
en los cuales están interesados sus clientes; los TP llevan listas
de cuáles LPP tienen interés en los temas de mediación que atienden.
Por lo tanto, la suma del conocimiento de las listas de interés es
la misma para el conjunto de todos los LPP y el conjunto de todos
los TP. En caso de que un TP esté averiado, la lista de interés del
nodo puede ser recreada, en principio, por el conocimiento
contenido en los LPP direccionados por él. En el caso de que un LPP
haya fallado, la lista de interés del nodo puede ser recreada, en
principio, por el conocimiento contenido en los TP que se dirigen a
él. Es digno de observación que la operación en vivo, en ambos
casos, puede recomenzar inmediatamente después de que haya sido
recreada la topología de la red, garantizando que todos los mensajes
sean transmitidos desde un nuevo TP a todos los LPP; la presencia
de listas de interés en los TP es meramente para fines de
optimización, y la presencia de listas de interés en los LPP es
meramente para permitir que éstas sean recreadas en caso de
fallo.
Los saldos acreedores son mantenidos por los MR
y los TP con el fin de detectar la terminación para los algoritmos
de cambio de mediación y de topología; puede observarse
inmediatamente que la operación del sistema en vivo puede
recomenzar, en ausencia de estas actividades, inmediatamente después
de la recuperación de la topología. Para recuperar los saldos
acreedores, es posible mantener el estado del saldo acreedor de cada
nodo dentro de la misma arquitectura de mediación. Toda vez que se
asigna un saldo acreedor, la información que captura los nuevos
saldos acreedores de los dos nodos afectados se envía a la red de
mediación y es almacenada por algún mediador. Esta información
puede recuperarse utilizando un mensaje de consulta normal a la red,
y el saldo acreedor del nuevo
nodo.
nodo.
En la exposición precedente, el modelo de
mediación distribuida requiere que los mediadores mantengan un
registro de mensajes; se pretende que esto sea sólo a título
ilustrativo, en vez de una interpretación literal del sistema,
siendo el registro un modelo totalmente general que dará soporte, en
principio, a cualquier tarea de medición. En la práctica, es
improbable que esto fuese la representación óptima para cualquier
tarea de mediación. Por lo tanto, es probable que los mediadores
actuaran como pasarelas a las API (Interfaces de Programación de
Aplicaciones) de una aplicación (externa). En este caso, los mismos
nodos mediadores no llevarían ningún estado adicional y, por lo
tanto, la recreación de la topología de red es suficiente.
Es digno de observación, sin embargo, que, en el
caso más general, donde un mediador registra cada mensaje, es
igualmente posible para los MR registrar también cada mensaje, de
donde proviene el potente invariante de sistema de que la suma de
los mensajes registrados por los MR es igual a la suma de los
mensajes registrados por los mediadores. Por lo tanto, el caso es
que es posible perseguir una estrategia de recuperación similar a
aquella utilizada para las listas de interés en el caso de un fallo
en cualquiera de ambas categorías. Este enfoque se ilustra en la
Figura 16.
La arquitectura cúbica del "modelo de
referencia" representa sólo una manera en la cual los nodos
componentes pueden componerse. La fuerza en la arquitectura
descansa sobre dos conceptos puros dentro de los nodos componentes.
En primer lugar, todo flujo de información de nodo a nodo es
unidireccional; y cada nodo recibe mensajes de los transmisores y
retransmite esa información dentro de un conjunto de nodos
adicionales. En el segundo caso, el conjunto es fijo, descartando
los cambios a la configuración del sistema.
En segundo lugar, ningún nodo tiene dependencia
sobre la configuración global del sistema, excepto el conocimiento
de la totalidad de nodos que se refieren a él, según lo descrito en
otra parte. La única información de configuración adicional
requerida por cada nodo es el conjunto de otros nodos a los cuales
puede retransmitir información. Cada uno de los encaminadores de
mediadores y los agentes de transmisión contiene una función que
determina cuáles de sus nodos receptores conectados recibirán un
mensaje específico. Así, ningún nodo requiere el conocimiento de
ningún otro nodo que esté a más de un "salto" de distancia de
él.
Dadas estas restricciones, son posibles muchas
configuraciones, porque cada nodo es independiente del tipo de nodo
que le envía información. El paradigma de LPP -> MR -> M ->
TP -> LPP es sólo una posible configuración de los tipos de
nodos, si bien uno útil y práctico. Son posibles otras
configuraciones, que producen distintas arquitecturas para
distintas necesidades.
El requisito claro es que cada subred debe
cumplir todos los invariantes globales y, análogamente, simular el
comportamiento, de un nodo individual dentro de las definiciones de
la arquitectura. Toda vez que es éste el caso, los nodos, o las
combinaciones de nodos, pueden ser arbitrariamente reemplazados toda
vez que esto sea ventajoso en términos de ingeniería.
La Figura 17 ilustra una instancia de una
refinación estructural, donde una red cúbica es refinada para
incorporar una subred cúbica adicional en lugar de un nodo LPP.
Existen muchos ejemplos donde la localidad
física marca una diferencia lógica para los requisitos de un sistema
de flujo de información.
Considérese una situación donde se emplea
información electrónica para dar sostén a una adquisición física de
bienes; entonces, la localidad es importante, sin ser un factor
rígidamente definitorio. Según la naturaleza de los bienes, un
usuario puede estar preparado para llegar a distintos límites a fin
de obtener un contrato, basándose, por ejemplo en: la rareza, el
coste o el tamaño físico. En todos los casos, cuanto más próximo el
objeto, mejor; sin embargo, la cota superior sobre la geografía no
puede decidirse a priori.
También hay ejemplos donde no están involucrados
bienes físicos, pero el valor de la información se degrada con la
distancia desde su origen: por ejemplo, las crónicas locales y el
comercio de mercados domésticos son casos donde la mayoría del
flujo de información estará dentro de una ubicación geográfica,
aunque, nuevamente, se deseará el flujo global en algunos
casos.
Basándose en los supuestos anteriores, pueden
identificarse un cierto número de ejemplos útiles de arquitectura
inductiva, donde un nodo, o nodos, que representa(n) una
localidad o "mercado local", son reemplazados por una
instancia local completa de la red de distribución entera. El
desacoplamiento cuidadoso del comportamiento del nodo de la
configuración general del sistema brinda un cierto número de maneras
para lograrlo, según los requisitos, tanto de ingeniería como de
lógica, del sistema.
Los ejemplos y extensiones de la red de
mediación distribuida según la presente invención se ilustran
adicionalmente en los siguientes supuestos:
Supuesto 1: Un cliente puede abonarse a más de
una red: es decir, dos redes pueden coexistir, una local y una
global, cada una con un LPP en el dominio geográfico del Cliente.
Aquí, se supone que los sistemas de información están lógicamente
desconectados, es decir, el mismo mensaje no puede ser procesado
dentro de sistemas tanto locales como globales, excepto mediante la
copia.
Supuesto 2: Un LPP puede ser parte de dos redes,
enviando mensajes entrantes a redes flujo arriba de ambas, y
registrando el interés en mensajes flujo abajo desde dos redes flujo
abajo. Esto también es de bastante poco interés, pero es digno de
observación que no hay ningún criterio de diseño dentro del LPP que
le impida hacerlo. Nuevamente, este supuesto presupone sistemas de
información lógicamente desconectados.
Supuesto 3: MR conectados. Sólo existe una única
red lógica, alguna información puede fluir globalmente. El conjunto
de predicados de la red local flujo arriba está alterado para causar
que ciertos mensajes, basándose en el contenido, sean remitidos a
un MR adicional en la red global. Las diferencias en las reglas de
encaminamiento permiten a los MR en las redes locales despachar
información, para la cual se indica que el contenido es de interés
más global, a una red global (o al menos una red que está un nivel
de jerarquía por encima de la red local). Esto puede ser de manera
exclusiva, o bien conjuntamente con un mediador local remitente.
Asimismo, los TP en la red local están alterados para expresar
interés en los TP dentro de la red global. Dado que las expresiones
de interés se basan en el contenido, podríamos modelar la identidad
de la red derivadora como parte del contenido, y expresar interés
en todos los datos que no derivaron de la red local; eso impediría
que mensajes duplicados aparezcan en los LPP desde la red flujo
abajo. Este modelo no involucra ningún cambio en las definiciones
básicas de nodo y, además, sólo se da una única visión lógica tanto
a los Clientes como a los LPP. Las expresiones de interés pueden
personalizarse independientemente como globales o locales, sin
cambiar la arquitectura, ya que esto se modela dentro del contenido
de los mensajes.
La Figura 18 ilustra una jerarquía de redes, con
una red 'global' (UK) y dos redes (de mercados) locales (Fife y
Glasgow). Los MR en las redes de Fife y Glasgow se muestran
remitiendo ciertos mensajes a un MR adicional en la red de UK.
En lugar de mantener una estricta jerarquía de
redes locales y globales, los MR conectados pueden ser tratados
como pares. Esto lleva a una topología de bus, donde las reglas de
encaminamiento permiten a los MR despachar mensajes a cualesquiera
otros MR con los que estén enlazados y, viceversa, recibir mensajes
desde cualquiera de estos otros MR. Los TP similarmente enlazados
como un "bus TP" garantizan que las porciones individuales de
la red pueden promulgar expresiones de interés a las otras porciones
de la red. Las porciones individuales de la red aún retienen sus
características unidireccionalidad e independencia de la
configuración global. La Figura 19 muestra una topología
ilustrativa de bus TP/MR.
Supuesto 4: los MR de la red global pueden
actuar como los LPP o Clientes de la red local, expresando interés
en datos de ciertos temas de la manera usual. Esto permite que la
red global reciba datos de redes locales sin impactar en esa
arquitectura en modo alguno, pero sólo puede utilizarse allí donde
no se requiera ningún retroflujo a la red local. Esto, por ejemplo,
valdría para un sistema donde los clientes estuvieran preparados a
pagar más para recibir información global.
En los mercados financieros, el empleo de
encaminamiento sujeto a mediación, en lugar de una clásica
arquitectura interpares, permite que los datos almacenados sean
recuperados a partir de carteras de pedidos distribuidos por una
red de área amplia. La arquitectura de red de mediación distribuida
puede aplicarse recursivamente para abordar problemas tales como el
mantenimiento de los mercados domésticos y la negociación
transfronteriza de acciones, afrontados, por ejemplo, por una
centralita electrónica paneuropea tal como
virt-x.
Asimismo, el impacto de la actividad de
negociación volátil, geográficamente dispersa, tal como la que se
observa en el mercado de futuros, puede ser absorbido por la
aplicación de una arquitectura de encaminamiento sujeto a
mediación, independientemente de si estos patrones fluctuantes de
comportamiento son activados por patrones diurnos, o mediante la
rápida migración de la negociación desde un centro financiero a
otro, y viceversa.
Cada nodo en una red de mediación distribuida
requiere, en algún punto, algún conocimiento sobre la totalidad de
nodos que se refieren a él. Las identidades de estos nodos nunca se
requieren; la información sólo se requiere para detectar ciertas
propiedades de terminación y configuración, que afectan al
comportamiento del nodo durante las operaciones de mediación o de
cambio de configuración. En particular, hay una clase de operación
distribuida, que actúa para detectar cuándo todos los nodos
referentes han enviado un mensaje de un tipo específico.
En algunos casos, en particular los MR y los TP,
la expectativa es que relativamente pocos nodos se referirán a cada
uno y, además, es probable que estos nodos sean relativamente
locales. En este caso, puede mantenerse un sencillo contador de
referencia sin incurrir en un sobregasto excesivo.
En otros casos, en particular los M y los LPP,
puede haber un gran número de nodos referentes, que, además, pueden
ser geográficamente diversos y, por ello, el coste de mantener un
contador de referencia puede ser alto.
En un caso crucial, el nuevo nodo tendría que
ponerse en contacto con todos los nodos receptores en el
sistema.
En tales casos, puede emplearse una variación de
un esquema de recuperación de crédito, según lo siguiente. Para un
conjunto específico de nodos, que representarán todos los nodos que
se refieren a un nodo adicional específico (el nodo receptor), cada
uno lleva un estado que refleja la cantidad de crédito que tiene,
inicialmente con un crédito total de 1,0 distribuido entre ellos.
Cuando el nodo receptor requiere detectar si todos los nodos dentro
de ese conjunto le han transmitido, se dispone que el valor del
crédito de cada uno de tales nodos se transmita como parte del
mensaje.
El nodo receptor requiere registrar el total de
tales valores recibidos en un acumulador y, cuando el valor del
acumulador alcanza 1,0, entonces se sabe que todos los nodos
referentes han enviado un mensaje. Cuando la topología de la red
cambia, por ejemplo, mediante la adición o retirada de un nuevo nodo
referente, entonces el saldo del crédito debe ajustarse en
consecuencia, para garantizar que se mantiene el total global de
1,0.
Esto puede lograrse repartiendo el crédito con
un nodo existente en el caso de la adición, o bien amalgamando el
crédito con otro nodo en el caso de la retirada. Ambos ajustes
pueden ocurrir a un nivel local y, además, muchos de tales cambios
localizados pueden ocurrir en paralelo, evitando así el potencial
para un revuelo de actividad en toda la red, como sería el caso con
el contador de referencia global.
La red de mediación distribuida de la presente
invención puede implementarse bien como software implementado en
ordenador, o bien como hardware. Como software, la implementación
puede almacenarse en medios de memoria volátil y/o no volátil. Los
productos de programas de ordenador, por ejemplo, los
CD-ROM, los DVD-ROM o las
estructuras de datos extraídas de servidores de Internet, pueden
incorporar representaciones en software de la red según la presente
invención.
En funcionamiento, los programas de ordenador
pueden almacenarse en nodos donde puedan operar los componentes
para una función específica de la red de mediación distribuida. Como
alternativa, pueden almacenarse en un repositorio central al que se
pueda hacer referencia desde los nodos en los cuales puede(n)
operar el componente, o componentes, para una función específica de
la red de mediación distribuida. La primera etapa para configurar
una red de mediación distribuida es instalar el software y
configurar una red básica. Para la verificación de la instalación,
puede proporcionarse una configuración cúbica predefinida. Esta
configuración se ejecutaría en un nodo físico, y se proporcionarían
directivas para verificar la correcta operación de la red de
mediación distribuida. Una vez que la verificación inicial se ha
realizado satisfactoriamente, el administrador del sistema
desplegaría los programas de mediación para aplicaciones específicas
escritas por un programador, por ejemplo: alimentadores de Chat o
Price, en los nodos Mediadores (M) y Encaminadores de Mediadores
(MR). Una vez que la lógica específica de la aplicación está
ejecutándose en la red de mediación distribuida, los usuarios
pueden conectarse con la red de mediación distribuida mediante un
LPP. Los nodos lógicos adicionales pueden añadirse al sistema sin
ninguna perturbación a los usuarios de la red de mediación
distribuida.
Como se ha observado anteriormente, un nodo
físico es un procesador efectivo de hardware, y contendrá un sistema
operativo. En consecuencia, un nodo físico puede contener uno o más
nodos lógicos, por ejemplo, un Punto de Presencia Local (LPP), un
Mediador (M), un Encaminador de Mediadores (MR) o un Agente de
Transmisión (TP).
La interfaz de gestión con la cual interactúa el
operador humano proporciona funciones para efectuar estos cambios
en la topología lógica, según los predicados y restricciones
descritos anteriormente. La interfaz de gestión también puede
proporcionar funciones de visualización y de notificación para
monitorizar la operación de la red de mediación distribuida.
Claims (67)
1. Un procedimiento para mediar en el flujo de
mensajes en una red de ordenadores, en el cual la red de ordenadores
tiene una red de mediación que incluye:
al menos un módulo de punto de presencia local,
LPP, para mantener una interfaz entre la red de mediación y los
programas clientes;
al menos un módulo mediador, M, para albergar
una tarea de mediación;
al menos un módulo encaminador de mediadores,
MR, para analizar el contenido de los mensajes entrantes,
encaminando cada módulo MR los mensajes entrantes hacia un módulo M
predeterminado, según dicho contenido; y
al menos un módulo agente de transmisión, TP,
para remitir mensajes a al menos uno de dichos módulos LPP,
en el que, en el procedimiento, los mensajes
entrantes a la red de mediación se propagan a lo largo de un ciclo
de mediación unidireccional que comprende las etapas de:
en un módulo LPP, dirigir los mensajes entrantes
al respectivo módulo entre al menos uno de dichos módulos
encaminadores de mediadores, MR;
en dicho módulo MR direccionado, analizar el
contenido de los mensajes entrantes y encaminar dichos mensajes a
un módulo mediador predeterminado, según dicho contenido
analizado;
en dicho módulo mediador predeterminado, aplicar
la tarea de mediación a dichos mensajes analizados, y dirigir los
mensajes sometidos a mediación al módulo respectivo de dichos
módulos TP; y
en dicho módulo TP que recibe dichos mensajes
sometidos a mediación, remitir dichos mensajes sometidos a mediación
a al menos uno de dichos módulos LPP,
por medio de lo cual el flujo de
mensajes entre los módulos conectados es
unidireccional.
2. Un procedimiento según la reivindicación 1,
en el cual los mensajes entrantes a la red de mediación pertenecen
a uno de los grupos de tipos de mensajes, que incluyen:
nueva información, que emana de un proceso que
actúa como una fuente de información;
consultas acerca del estado de nodos en la red
de mediación, que requieren una respuesta; y
expresiones de interés, que requieren respuestas
continuadas cada vez que una nueva información es recibida por la
red de mediación.
3. Un procedimiento según la reivindicación 1,
que comprende adicionalmente inducir un cambio en la operación
interna de la red de mediación, dirigiendo un mensaje de control
como un mensaje entrante a lo largo del ciclo de mediación.
4. Un procedimiento según la reivindicación 3,
en el cual el cambio en la operación interna es un traspaso de una
tarea de mediación entre un módulo mediador donante y un módulo
mediador destinatario,
en el cual el mensaje de control es un mensaje
de traspaso de mediador, describiendo el contenido del mensaje de
traspaso de mediador la reasignación de contenido con una etiqueta
de contenido predeterminada, desde el módulo mediador donante al
módulo mediador destinatario, donde el módulo mediador donante está
actualmente registrado como dispuesto a tratar dicho contenido, y
en el cual la dirección del mensaje de traspaso de mediador
comprende:
desde un módulo LPP predeterminado, enviar el
mensaje de traspaso de mediador a un respectivo módulo MR
asociado;
en el módulo MR asociado, leer dicha etiqueta de
contenido y remitir el mensaje al módulo mediador donante; y
al recibir el mensaje de traspaso de mediador,
en el módulo mediador donante: cambiar el estado del nodo mediador;
enviar un mensaje TRASPASO_MEDIADOR al módulo mediador destinatario,
conteniendo el mensaje TRASPASO_MEDIADOR el contenido del mensaje
de traspaso de mediador; enviar un mensaje MEDIADOR_CAMBIADO a un
módulo TP asociado; y luego cambiar el estado a fin de remitir los
mensajes que contengan la etiqueta de contenido al módulo mediador
destinatario.
5. Un procedimiento según la reivindicación 4,
que comprende adicionalmente:
en el módulo TP, remitir el mensaje
MEDIADOR_CAMBIADO a al menos un módulo LPP;
en el módulo mediador destinatario, generar un
mensaje NUEVO_MEDIADOR_ACTIVO, teniendo el mensaje
NUEVO_MEDIADOR_ACTIVO una carga útil correspondiente al contenido
reasignado, y emitir dicho mensaje NUEVO_MEDIADOR_ACTIVO a todos
los módulos TP asociados con el mismo; y
en el módulo LPP, almacenar en buffer
temporalmente todos los mensajes entrantes entre la recepción del
mensaje MEDIADOR_CAMBIADO y la recepción del mensaje
NUEVO_MEDIADOR_ACTIVO.
6. Un procedimiento según la reivindicación 5,
que comprende adicionalmente:
en el módulo LPP, remitir luego el mensaje
NUEVO_MEDIADOR_ACTIVO al módulo MR asociado; y cada vez que un
módulo MR recibe un mensaje NUEVO_MEDIADOR_ACTIVO, actualizar una
tabla de encaminamiento para dicho módulo MR, a fin de hacer que el
contenido futuro que coincida con la carga útil del mensaje
NUEVO_MEDIADOR_ACTIVO que va ser enviado al módulo mediador
destinatario en lugar de al módulo mediador donante; informar al
módulo mediador donante de que la tabla de encaminamiento ha sido
actualizada, cesando después de ello el módulo mediador donante de
remitir mensajes, una vez que todos los módulos MR han sido
informados de que el módulo mediador destinatario es ahora el
módulo mediador para el contenido reasignado.
7. Un procedimiento según la reivindicación 3,
en el cual el cambio en la operación interna es una reconfiguración
de la topología lógica de la red de mediación, y en el cual el
mensaje de control es uno o más mensajes de reconfiguración.
8. Un procedimiento según la reivindicación 7,
en el cual la reconfiguración de la topología lógica incluye la
generación de una barrera causal para garantizar que los mensajes
que atraviesan la red de mediación antes de la reconfiguración se
entregan antes que los mensajes que atraviesan la red de mediación
después de la reconfiguración.
9. Un procedimiento según la reivindicación 8,
en el cual la etapa de generar la barrera causal incluye: hacer
circular dicho mensaje, o mensajes, de reconfiguración por el ciclo
de mediación; y garantizar que cada módulo en el ciclo ha sido
suficientemente notificado acerca de la reconfiguración.
10. Un procedimiento según la reivindicación 9,
en el cual la reconfiguración de la topología lógica de la
arquitectura de mediación es la inserción de un nodo adicional de
punto de presencia local (LPP), y dicho(s) mensaje(s)
de reconfiguración incluye(n) un mensaje nuevo_LPP que
identifica unívocamente el nodo LPP adicional, incluyendo la
inserción:
en un módulo LPP adicional predeterminado en el
nodo LPP adicional, generar el mensaje nuevo_LPP y enviar el
mensaje nuevo_LPP al módulo MR correspondiente en un nodo MR;
en el correspondiente módulo MR, recibir el
mensaje nuevo_LPP, actualizar un contador de referencia para el
nodo MR, y propagar el mensaje nuevo_LPP a todos los módulos
mediadores en la arquitectura;
en cada módulo mediador, recibir el mensaje
nuevo_LPP y transmitir el mensaje nuevo_LPP a un respectivo módulo
TP correspondiente en un nodo TP; teniendo cada nodo TP un saldo
acreedor asociado;
en cada uno de los correspondientes módulos TP,
recibir el mensaje nuevo_LPP y enviar un respectivo mensaje
nuevo_LPP extendido al módulo LPP adicional, incluyendo el mensaje
nuevo_LPP extendido el respectivo saldo acreedor asociado;
en el módulo LPP adicional, recibir los mensajes
nuevo_LPP extendidos, completando con ello la circulación del
mensaje nuevo_LPP; y
en el módulo LPP adicional, sumar los saldos
acreedores, garantizándose la notificación suficiente de la
reconfiguración cuando la suma del crédito alcanza un valor de
completitud predeterminado.
11. Un procedimiento según la reivindicación 10,
en el cual la reconfiguración de la topología lógica de la
arquitectura de mediación incluye la inserción adicional de un nodo
encaminador de mediadores (MR) adicional, y en el cual
dicho(s) mensaje(s) de reconfiguración
incluye(n) adicionalmente un mensaje nuevo_MR que identifica
unívocamente el nodo MR adicional, incluyendo la inserción
adicional:
en el LPP adicional, enviar un mensaje nuevo_MR
a un correspondiente módulo MR en un nodo MR con un saldo acreedor
correspondiente;
en el correspondiente módulo MR, responder al
mensaje nuevo_MR enviando un mensaje nueva_tabla_encami-
namiento_MR, que incluye: información de dirección para el nuevo MR adicional, la dirección del nodo LPP adicional, información de encaminamiento y una fracción del correspondiente saldo acreedor;
namiento_MR, que incluye: información de dirección para el nuevo MR adicional, la dirección del nodo LPP adicional, información de encaminamiento y una fracción del correspondiente saldo acreedor;
\newpage
en el correspondiente módulo MR, remitir luego
el mensaje nueva_tabla_encaminamiento_MR a un módulo mediador
arbitrario;
en el módulo mediador arbitrario, pasar el
mensaje nueva_tabla_encaminamiento_MR al módulo LPP adicional;
en el módulo LPP adicional, pasar luego el mapa
de encaminamiento al módulo MR adicional; y
en el módulo MR adicional, utilizar el contenido
del mensaje nueva_tabla_encaminamiento_MR para inicializar un nuevo
saldo acreedor y mapas de encaminamiento.
12. Un procedimiento según la reivindicación 11,
en el cual la reconfiguración incluye adicionalmente cambiar el
módulo MR al que se dirige el módulo LPP adicional, por el módulo MR
adicional, en donde el módulo MR adicional envía un mensaje
MR_inicializado() al módulo LPP adicional al recibir el mensaje
nueva_tabla_encaminamiento_MR, y en donde el módulo LPP adicional
envía los mensajes inc_cont_ref() y dec_cont_ref() a los módulos MR
adicional e inicial, respectivamente.
13. Un procedimiento según la reivindicación 9,
en el cual la reconfiguración de la topología lógica de la
arquitectura de mediación es la inserción de un nodo mediador (M)
adicional, y dicho(s) mensaje(s) de reconfiguración
incluye(n) un mensaje nuevo_M que identifica unívocamente el
nodo mediador adicional, incluyendo la inserción:
en un módulo mediador adicional predeterminado,
generar el mensaje nuevo_M y enviar el mensaje nuevo_M a un módulo
TP correspondiente en un nodo TP;
en el módulo TP correspondiente, recibir el
mensaje nuevo_M, actualizar un contador de referencia para el nodo
TP y propagar el mensaje nuevo_M a todos los módulos LPP en la
arquitectura;
en cada módulo LPP, recibir el mensaje nuevo_M,
transmitir el mensaje nuevo_M a un respectivo módulo MR
correspondiente en un nodo MR, teniendo cada nodo MR un saldo
acreedor asociado;
en cada uno de los módulos MR correspondientes,
recibir el mensaje nuevo_M y enviar un respectivo mensaje nuevo_M
extendido al módulo mediador adicional, incluyendo el mensaje
nuevo_M extendido el respectivo saldo acreedor asociado; y
en el módulo mediador adicional, recibir los
mensajes nuevo_M extendidos, completando por ello la circulación
del mensaje nuevo_M; y
en el módulo mediador adicional, sumar los
saldos acreedores, garantizándose la notificación suficiente de la
reconfiguración cuando la suma del crédito alcanza un valor de
completitud predeterminado.
14. Un procedimiento según la reivindicación 13,
en el cual la reconfiguración de la topología lógica de la
arquitectura de mediación incluye la inserción adicional de un nodo
agente de transmisión (TP) adicional, y en el cual dicho(s)
mensaje(s) de reconfiguración incluye(n)
adicionalmente un mensaje nuevo_TP que identifica unívocamente el
nodo TP adicional, incluyendo la inserción adicional:
en el módulo mediador adicional, recibir el
mensaje nuevo_TP;
en el módulo mediador adicional, añadir la
dirección del nodo mediador adicional al mensaje nuevo_TP y remitir
el mensaje nuevo_TP a un módulo TP correspondiente en un nodo TP con
un saldo acreedor correspondiente;
en el módulo TP correspondiente, responder al
mensaje nuevo_TP generando un mensaje nuevo_TP extendido, que
incluye: información de dirección para el nodo TP adicional, la
dirección del nodo mediador adicional, una lista de los LPP y una
fracción del correspondiente saldo acreedor;
en el módulo TP correspondiente, remitir luego
el mensaje nuevo_TP a un módulo LPP arbitrario;
en el módulo LPP arbitrario, pasar luego un
mensaje de nuevo mapa de encaminamiento al módulo TP adicional;
en el módulo TP adicional, pasar luego el mapa
de encaminamiento al módulo MR adicional; y
en el módulo TP adicional, utilizar el contenido
del mensaje del nuevo mapa de encaminamiento para inicializar un
nuevo saldo acreedor correspondiente y una lista de módulos LPP.
15. Un procedimiento según la reivindicación 14,
en el cual la reconfiguración incluye adicionalmente: cambiar el
módulo TP al que se dirige el módulo mediador adicional por el
módulo TP adicional, en donde el módulo TP adicional envía un
mensaje TP_inicializado() al módulo mediador adicional al recibir el
mensaje del nuevo mapa de encaminamiento, y en donde el módulo
mediador adicional envía mensajes inc_cont_ref() y dec_cont_ref() a
los módulos TP adicional e inicial, respectivamente.
16. Un procedimiento según la reivindicación 3,
en el cual la red de ordenadores incluye adicionalmente un nodo de
detección de fallos que está en comunicación con cada nodo en la red
de mediación, comprendiendo el procedimiento adicionalmente:
en el nodo de detección de fallos, proporcionar
un módulo de detección de fallos;
en cada nodo de la red de mediación,
proporcionar un módulo de informe de fallos;
toda vez que falla un enlace de comunicación
entrante o saliente entre nodos, en cada uno de dichos módulos de
informe de fallos, despachar información relacionada con el enlace
de comunicación averiado a dicho módulo de detección de fallos;
y
en dicho módulo de detección de fallos,
determinar si dicho enlace averiado es indicación de un nodo
averiado.
17. Un procedimiento según la reivindicación 16,
que comprende adicionalmente, allí donde el módulo de detección de
fallos determine que dicho enlace averiado es indicación de un nodo
averiado:
crear un nuevo nodo del mismo tipo que el nodo
averiado;
alimentar el nuevo nodo con información
relacionada con el estado interno y la topología del entorno
inmediato del nodo averiado; y
reconfigurar la red para utilizar el nuevo nodo,
con preferencia sobre el nodo averiado.
18. Un procedimiento según la reivindicación 1,
que comprende adicionalmente generar un registro de todos los
mensajes entrantes recibidos por dicho módulo mediador
predeterminado.
19. Un procedimiento según la reivindicación 18,
en el cual la tarea de mediación aplicada a dichos mensajes
analizados en dicho módulo mediador predeterminado incluye generar
el registro de mensajes.
20. Un procedimiento según la reivindicación 18,
en el cual la red de ordenadores incluye adicionalmente una
aplicación externa, comprendiendo el procedimiento
adicionalmente:
generar el registro de mensajes en dicha
aplicación externa.
21. Un procedimiento según la reivindicación 3,
en el cual el cambio en la operación interna es una refinación
estructural de la topología lógica de la arquitectura de mediación,
y en el cual el mensaje de control es uno o más mensajes de
refinación.
22. Un procedimiento según la reivindicación 21,
en el cual se inserta una subred en lugar de un nodo individual
durante la etapa de la refinación estructural.
23. Una red de mediación para mediar en el flujo
de mensajes en una red de ordenadores, en donde la red de mediación
incluye:
al menos un módulo de punto de presencia local,
LPP, para mantener una interfaz entre la red de mediación y los
programas clientes;
al menos un módulo mediador, M, para albergar
una tarea de mediación;
al menos un módulo encaminador de mediadores,
MR, para analizar el contenido de los mensajes entrantes,
encaminando cada módulo MR los mensajes entrantes hacia un módulo M
predeterminado asociado, según dicho contenido; y
al menos un módulo agente de transmisión, TP,
para remitir mensajes a al menos uno de dichos módulos LPP,
en donde la red de mediación
propaga los mensajes a lo largo de un ciclo de mediación
unidireccional, en el cual; los módulos LPP se dirigen a módulos
MR; los módulos MR, a su vez, se dirigen a módulos M; los módulos
M, a su vez, se dirigen a módulos TP; y los módulos TP, a su vez, se
dirigen a módulos LPP, siendo unidireccional el flujo de mensajes
entre los módulos
conectados.
24. Una red de mediación según la reivindicación
23, en la cual los mensajes entrantes a la red de mediación
pertenecen a uno de los grupos de tipos de mensajes, que
incluyen:
nueva información; que emana de un proceso que
actúa como una fuente de información;
consultas acerca del estado de nodos en la red
de mediación, que requieren una respuesta; y
expresiones de interés, que requieren respuestas
continuadas toda vez que nueva información pertinente es recibida
por la red de mediación.
\global\parskip0.900000\baselineskip
25. Una red de mediación según la reivindicación
23, que comprende adicionalmente un mecanismo de control que induce
un cambio en la operación interna de la red de mediación, dirigiendo
un mensaje de control como un mensaje entrante a lo largo del ciclo
de mediación.
26. Una red de mediación según la reivindicación
25, en la cual el mecanismo de control para inducir el cambio en la
operación interna es un mecanismo de traspaso, que redistribuye un
requisito de mediación entre un nodo mediador donante y un nodo
mediador destinatario,
en la cual el mensaje de control es un mensaje
de traspaso de mediador, describiendo el contenido del mensaje de
traspaso de mediador la reasignación de contenido con una etiqueta
de contenido predeterminada, desde el nodo mediador donante al nodo
mediador destinatario, donde el nodo mediador donante está
actualmente registrado como disponible para tratar dicho contenido,
y en la cual el mensaje de traspaso de mediador está dirigido:
enviando el mensaje de traspaso de mediador
desde un módulo LPP predeterminado a un respectivo módulo MR
asociado;
leyendo dicha etiqueta de contenido en el módulo
MR asociado y remitiendo el mensaje al módulo mediador donante;
y
al recibir el mensaje de traspaso de mediador,
en el nodo mediador donante: cambiando el estado del nodo mediador;
enviando un mensaje TRASPASO_MEDIADOR al módulo mediador
destinatario, conteniendo el mensaje TRASPASO_MEDIADOR el contenido
del mensaje de traspaso de mediador; enviando un mensaje
MEDIADOR_CAMBIADO a un módulo TP asociado; y luego cambiando el
estado a fin de remitir mensajes que contengan la etiqueta de
contenido al módulo mediador destinatario.
27. Una red de mediación según la reivindicación
26, que comprende adicionalmente:
en el nodo TP, remitir el mensaje
MEDIADOR_CAMBIADO a al menos un módulo LPP;
en el módulo mediador destinatario, generar un
mensaje NUEVO_MEDIADOR_ACTIVO, teniendo el mensaje
NUEVO_MEDIADOR_ACTIVO una carga útil correspondiente al contenido
reasignado, y emitir dicho mensaje NUEVO_MEDIADOR_ACTIVO a todos
los módulos TP asociados con el mismo; y
en el módulo LPP, almacenar temporalmente todos
los mensajes entrantes entre la recepción del mensaje
MEDIADOR_CAMBIADO y la recepción del mensaje
NUEVO_MEDIADOR_ACTIVO.
28. Una red de mediación según la reivindicación
27, en la cual
el módulo LPP remite luego el mensaje
NUEVO_MEDIADOR_ACTIVO al módulo MR asociado; y en la cual, toda vez
que un módulo MR recibe un mensaje NUEVO_MEDIADOR_ACTIVO, dicho
módulo MR actualiza una tabla de encaminamiento para dicho módulo
MR, a fin de causar que el contenido futuro que coincida con la
carga útil del mensaje NUEVO_MEDIADOR_ACTIVO sea enviado al módulo
mediador destinatario, en vez de al módulo mediador donante;
informar al módulo mediador donante que la tabla de encaminamiento
ha sido actualizada, cesando el módulo mediador de remitir mensajes
en adelante, una vez que todos los módulos MR han sido informados de
que el módulo mediador destinatario es ahora el módulo mediador
para el contenido reasignado.
29. Una red de mediación según la reivindicación
25, en la cual el mecanismo de control para inducir el cambio en la
operación interna es un mecanismo de reconfiguración, y en la cual
el mensaje de control es uno o más mensajes de reconfiguración.
30. Una red de mediación según la reivindicación
29, en la cual el mecanismo de reconfiguración genera una barrera
causal para garantizar que los mensajes que atraviesan la red de
mediación antes de la reconfiguración se entregan antes de los
mensajes que atraviesan la red de mediación después de la
reconfiguración.
31. Una red de mediación según la reivindicación
30, en la cual la generación de la barrera causal incluye hacer
circular dicho(s) mensaje(s) de reconfiguración por el
ciclo de mediación, y garantizar que cada módulo en el ciclo ha
sido suficientemente notificado de la reconfiguración.
32. Una red de mediación según la reivindicación
31, en la cual el mecanismo de reconfiguración inserta un nodo de
punto de presencia local (LPP) adicional en la topología lógica de
la red de mediación, y dicho(s) mensaje(s) de
reconfiguración incluye(n) un mensaje nuevo_LPP que
identifica unívocamente el nodo LPP adicional, incluyendo el
mecanismo de reconfiguración:
medios para generar un mensaje nuevo_LPP que
identifica unívocamente el nodo LPP adicional, y para enviar el
mensaje nuevo_LPP a un módulo MR correspondiente en un nodo MR,
estando dichos medios de generación y envío proporcionados en un
módulo LPP adicional predeterminado;
\global\parskip1.000000\baselineskip
medios para recibir el mensaje nuevo_LPP, para
actualizar un contador de referencia en el nodo MR, y propagar el
mensaje nuevo_LPP a todos los módulos mediadores en la red de
mediación, estando dichos medios de recepción, actualización y
propagación proporcionados en el módulo MR correspondiente;
medios para recibir el mensaje nuevo_LPP y para
transmitir el mensaje nuevo_LPP a un respectivo módulo TP
correspondiente en un nodo TP, teniendo cada nodo TP un saldo
acreedor asociado, estando dichos medios de recepción y transmisión
proporcionados en cada módulo mediador;
medios para recibir el mensaje nuevo_LPP y
enviar un respectivo mensaje nuevo_LPP extendido al módulo LPP
adicional, incluyendo el mensaje nuevo_LPP extendido el respectivo
saldo acreedor asociado, estando dichos medios de recepción y envío
proporcionados en cada uno de los módulos TP correspondientes;
medios para recibir los mensajes nuevo_LPP
extendidos y completar por ello la circulación del mensaje
nuevo_LPP, estando dichos medios de recepción proporcionados en el
módulo LPP adicional; y
medios para sumar los saldos acreedores, estando
dichos medios de suma proporcionados en el módulo LPP adicional,
garantizándose la suficiente notificación de la reconfiguración
cuando la suma de crédito alcanza un valor de completitud
predeterminado.
33. Una red de mediación según la reivindicación
32, en la cual el mecanismo de reconfiguración incluye
adicionalmente un mecanismo de inserción de MR, para insertar un
nodo encaminador de mediadores (MR) adicional, y en la cual
dicho(s) mensaje(s) de reconfiguración
incluye(n) adicionalmente un mensaje nuevo_MR que identifica
unívocamente el nodo MR adicional, incluyendo el mecanismo de
inserción de MR:
un medio para enviar un mensaje nuevo_MR a un
correspondiente módulo MR en un nodo MR con un correspondiente
saldo acreedor, estando dichos medios de envío proporcionados en el
módulo LPP adicional;
un medio para recibir el mensaje nuevo_MR y para
enviar un mensaje nueva_tabla_encaminamiento_MR, estando dichos
medios de recepción y envío proporcionados en el correspondiente
módulo MR, en donde el mensaje nueva_tabla_encaminamiento_MR
incluye: información de dirección para el nodo MR adicional, la
dirección del nodo LPP adicional, información de encaminamiento y
una fracción del correspondiente saldo acreedor
un medio para remitir el mensaje
nueva_tabla_encaminamiento_MR a un módulo mediador arbitrario,
estando dichos medios de remisión proporcionados en el
correspondiente módulo MR;
un medio para pasar el mensaje
nueva_tabla_encaminamiento_MR al módulo LPP adicional, estando
dichos medios de pasaje proporcionados en el módulo mediador
arbitrario;
medios adicionales para pasar el mapa de
encaminamiento al módulo MR adicional, estando dichos medios de
pasaje adicionales proporcionados en el módulo LPP adicional; y
un medio de inicialización para utilizar el
contenido del mensaje nueva_tabla_encaminamiento_MR a fin de
inicializar un nuevo saldo acreedor y mapas de encaminamiento,
estando dichos medios de inicialización proporcionados en el módulo
MR adicional.
34. Una red de mediación según la reivindicación
33, en la cual el mecanismo de reconfiguración incluye
adicionalmente medios para cambiar el módulo MR al que se dirige el
LPP adicional por el módulo MR adicional; en la cual el módulo MR
adicional envía un mensaje MR_inicializado() al módulo LPP adicional
al recibir el mensaje nueva_tabla_encaminamiento_MR, y en la cual
el módulo LPP adicional envía mensajes inc_cont_ref() y
dec_cont_ref() a los módulos MR adicional e inicial,
respectivamente.
35. Una red de mediación según la reivindicación
31, en la cual el mecanismo de reconfiguración inserta un nodo
mediador (M) adicional en la topología lógica de la red de
mediación, y dicho(s) mensaje(s) de reconfiguración
incluye(n) un mensaje nuevo_M que identifica unívocamente el
nodo M adicional, incluyendo el mecanismo de reconfiguración:
un medio para generar el mensaje nuevo_M y para
enviar el mensaje nuevo_M a un correspondiente módulo TP en un nodo
TP, estando dichos un medio de generación y envío proporcionados en
un módulo mediador adicional predeterminado;
un medio para recibir el mensaje nuevo_M,
actualizar un contador de referencia para el nodo TP, y propagar el
mensaje nuevo_M a todos los LPP en la arquitectura, estando dichos
medios de recepción, actualización y propagación proporcionados en
el correspondiente módulo TP;
un medio para recibir el mensaje nuevo_M, y para
transmitir el mensaje nuevo_M a un respectivo módulo MR
correspondiente en un nodo MR, teniendo cada nodo MR un saldo
acreedor asociado, y estando dichos medios de recepción y
transmisión proporcionados en cada módulo LPP;
un medio para recibir el mensaje nuevo_M y
enviar un respectivo mensaje nuevo_M extendido al módulo mediador
adicional, incluyendo el mensaje nuevo_M extendido el respectivo
saldo acreedor asociado, y estando dichos medios de recepción y
envío proporcionados en cada uno de los correspondientes módulos
MR;
un medio para recibir los mensajes nuevo_M
extendidos y completar, por ello, la circulación del mensaje
nuevo_M, estando dichos medios de recepción proporcionados en el
módulo M adicional; y
un medio para sumar los saldos acreedores,
estando dichos medios de suma proporcionados en el módulo M
adicional, garantizándose la suficiente notificación de la
reconfiguración cuando la suma de crédito alcanza un valor de
completitud predeterminado.
36. Una red de mediación según la reivindicación
35, en la cual el mecanismo de reconfiguración incluye
adicionalmente un mecanismo de inserción de TP, para insertar un
nodo agente de transmisión (TP) adicional, y en la cual
dicho(s) mensaje(s) de reconfiguración
incluye(n) adicionalmente un mensaje nuevo_TP que identifica
unívocamente el nodo TP adicional, incluyendo el mecanismo de
inserción de TP:
medios para recibir un mensaje nuevo_TP que
incluye la dirección del TP adicional, estando dichos medios de
recepción proporcionados en el módulo mediador adicional;
un medio para añadir la dirección del nodo
mediador adicional al mensaje nuevo_TP y remitir el mensaje nuevo_TP
a un módulo TP correspondiente, en un nodo TP con un
correspondiente saldo acreedor, estando dichos medios de adición y
remisión proporcionados en el módulo mediador adicional;
un medio para recibir el mensaje nuevo_TP y
generar el mensaje nuevo_TP extendido, que incluye:
información de dirección para el nodo TP
adicional, la dirección del nodo mediador adicional, una lista de
nodos LPP y una fracción del correspondiente saldo acreedor, estando
dichos medios de recepción y generación proporcionados en el
correspondiente módulo TP;
un medio para remitir el mensaje nuevo_TP a un
módulo LPP arbitrario, estando dichos medios de remisión
proporcionados en el correspondiente módulo TP;
un medio para pasar un mensaje de nuevo mapa de
encaminamiento al módulo TP adicional, cuya dirección está en el
mensaje de nuevo mapa de encaminamiento, estando dichos medios de
pasaje proporcionados en el correspondiente módulo TP;
medios adicionales para pasar el mapa de
encaminamiento al módulo MR adicional, estando dicho medio adicional
de paso proporcionados en el módulo TP adicional; y
un medio de inicialización para utilizar el
contenido del mensaje de nuevo mapa de encaminamiento, a fin de
inicializar un saldo acreedor y una lista de nodos LPP, estando
dicho medio de inicialización proporcionados en el módulo TP
adicional.
37. Una red de mediación según la reivindicación
36, en la cual el mecanismo de reconfiguración incluye
adicionalmente un medio para cambiar el módulo TP al que se dirige
el mediador adicional por el módulo TP adicional; en la cual el
módulo TP adicional envía un mensaje TP_inicializado() al módulo
mediador adicional al recibir el mensaje de nuevo mapa de
encaminamiento, y en la cual el módulo mediador adicional envía
mensajes inc_cont_ref() y dec_cont_ref() a los módulos TP adicional
e inicial, respectivamente.
38. Una red de mediación según la reivindicación
23, en la cual la red de ordenadores incluye adicionalmente un nodo
de detección de fallos que está en comunicación con cada nodo en la
red de mediación, estando el nodo de detección de fallos dotado de
un módulo de detección de fallos, y estando cada nodo de la red de
mediación dotado de un módulo de informe de fallos; en la cual,
toda vez que falla un enlace de comunicación entrante o saliente
entre nodos, cada uno de dichos módulos de informe de fallos
despacha información relacionada con el enlace de comunicación
averiado a dicho módulo de detección de fallos; y en la cual dicho
módulo de detección de fallos determina si dicho enlace averiado es
indicación de un nodo averiado.
39. Una red de mediación según la reivindicación
38, que comprende adicionalmente un mecanismo de tratamiento de
fallos, cada vez que el módulo de detección de fallos determina que
dicho enlace averiado es indicación de un nodo averiado; el
mecanismo de tratamiento de fallos: crea un nuevo nodo del mismo
tipo que el nodo averiado; infunde al nuevo nodo con información
relacionado con el estado interno y la topología del entorno
inmediato del nodo averiado; y reconfigura la red para utilizar el
nuevo nodo, con preferencia sobre el nodo averiado.
40. Una red de mediación según la reivindicación
23, que comprende adicionalmente un medio para generar un registro
de todos los mensajes entrantes recibidos por dicho módulo mediador
predeterminado.
41. Una red de mediación según la reivindicación
40, en la cual la tarea de mediación aplicada a dichos mensajes
analizados en dicho módulo mediador predeterminado incluye generar
el registro de mensajes.
42. Una red de mediación según la reivindicación
40, en la cual la red de ordenadores comprende adicionalmente una
aplicación externa que genera el registro de mensajes, comprendiendo
la red de mediación adicionalmente:
un medio para recibir el registro de mensajes
generado en dicha aplicación externa.
43. Una red de mediación según la reivindicación
23, en la cual el cambio en la operación interna es una refinación
estructural de la topología lógica de la red de mediación, y en la
cual el mensaje de control es uno o más mensajes de refinación.
44. Una red de mediación según la reivindicación
43, en la cual una subred se inserta en lugar de un nodo individual
durante la etapa de refinación estructural.
45. Un producto de programa de ordenador para
mediar en el flujo de mensajes en una red de ordenadores, incluyendo
el producto de programa de ordenador instrucciones ejecutables para
proporcionar una red de mediación con:
al menos un módulo de punto de presencia local,
LPP, para mantener una interfaz entre la red de mediación y los
programas clientes;
al menos un módulo mediador, M, para albergar
una tarea de mediación;
al menos un módulo encaminador de mediadores,
MR, para analizar el contenido de los mensajes entrantes,
encaminando cada módulo MR los mensajes entrantes hacia un módulo M
predeterminado, según dicho contenido; y
al menos un módulo agente de transmisión, TP,
para remitir mensajes a al menos uno de dichos módulos LPP, cuando
las instrucciones se ejecutan sobre dichos módulos,
en el cual, cuando las instrucciones se ejecutan
sobre los respectivos módulos, los mensajes entrantes a la red de
mediación se propagan a lo largo de un ciclo de mediación
unidireccional que comprende las etapas de:
en un módulo LPP, dirigir los mensajes entrantes
al respectivo módulo entre el módulo, o módulos,
encaminador(es) de mediadores, MR;
en dicho módulo MR direccionado, analizar el
contenido de los mensajes entrantes y encaminar dichos mensajes a
un módulo mediador predeterminado, según dicho contenido
analizado;
en dicho módulo mediador predeterminado, aplicar
la tarea de mediación a dichos mensajes analizados y dirigir los
mensajes sometidos a mediación al respectivo módulo entre dichos
módulos TP; y
en dicho módulo TP que recibe dichos mensajes
sometidos a mediación, remitir dichos mensajes sometidos a mediación
a al menos uno de dichos módulos LPP,
por lo cual el flujo de mensajes
entre los módulos conectados es
unidireccional.
46. Un producto de programa de ordenador según
la reivindicación 45, en el cual los mensajes entrantes a la red de
mediación pertenecen a uno de los grupos de tipos de mensajes, que
incluyen:
nueva información, que emana de un proceso que
actúa como una fuente de información;
consultas acerca del estado de nodos en la red
de mediación, que requieren una respuesta; y
expresiones de interés, que requieren respuestas
continuadas toda vez que nueva información pertinente es recibida
por la red de mediación.
47. Un producto de programa de ordenador según
la reivindicación 45, que comprende adicionalmente inducir un
cambio en la operación interna de la red de mediación, dirigiendo un
mensaje de control como un mensaje entrante a lo largo del ciclo de
mediación.
48. Un producto de programa de ordenador según
la reivindicación 47, en el cual el cambio en la operación interna
es un traspaso de una tarea de mediación entre un módulo mediador
donante y un módulo mediador destinatario,
en el cual el mensaje de control es un mensaje
de traspaso de mediador, describiendo el contenido del mensaje de
traspaso de mediador la reasignación de contenido con una etiqueta
de contenido predeterminada, desde el módulo mediador donante al
módulo mediador destinatario, donde el módulo mediador donante está
actualmente registrado como disponible para tratar dicho contenido,
y en el cual la dirección del mensaje de traspaso de mediador
comprende:
desde un módulo LPP predeterminado, enviar el
mensaje de traspaso de mediador a un respectivo módulo MR
asociado;
en el módulo MR asociado, leer dicha etiqueta de
contenido y remitir el mensaje al módulo mediador donante; y
al recibir el mensaje de traspaso de mediador,
en el módulo mediador donante: cambiar el estado del nodo mediador;
enviar un mensaje TRASPASO_MEDIADOR al módulo mediador destinatario,
conteniendo el mensaje TRASPASO_MEDIADOR el contenido del mensaje
de traspaso de mediador; enviar un mensaje MEDIADOR_CAMBIADO a un
módulo TP asociado; y cambiar luego el estado a fin de remitir los
mensajes que contengan la etiqueta de contenido al módulo mediador
destinatario.
49. Un producto de programa de ordenador según
la reivindicación 48, que comprende adicionalmente:
en el módulo TP, remitir el mensaje
MEDIADOR_CAMBIADO a al menos un módulo LPP;
en el módulo mediador destinatario, generar un
mensaje NUEVO_MEDIADOR_ACTIVO, teniendo el mensaje
NUEVO_MEDIADOR_ACTIVO una carga útil correspondiente al contenido
reasignado, y emitir dicho mensaje NUEVO_MEDIADOR_ACTIVO a todos
los módulos TP asociados con el mismo; y
en el módulo LPP, almacenar temporalmente todos
los mensajes entrantes entre la recepción del mensaje
MEDIADOR_CAMBIADO y la recepción del mensaje
NUEVO_MEDIADOR_ACTIVO.
50. Un producto de programa de ordenador según
la reivindicación 49, que comprende adicionalmente:
en el módulo LPP, remitir entonces el mensaje
NUEVO_MEDIADOR_ACTIVO al módulo MR asociado; y, toda vez que un
módulo MR recibe un mensaje NUEVO_MEDIADOR_ACTIVO, actualizar una
tabla de encaminamiento para dicho módulo MR, a fin de causar que
el contenido futuro que coincida con la carga útil del mensaje
NUEVO_MEDIADOR_ACTIVO sea enviado al módulo mediador destinatario,
en lugar de al módulo mediador donante; informar al módulo mediador
donante de que la tabla de encaminamiento ha sido actualizada,
cesando a continuación el módulo mediador donante de remitir
mensajes una vez que todos los módulos MR han sido informados de que
el módulo mediador destinatario es ahora el módulo mediador para el
contenido reasignado.
51. Un producto de programa de ordenador según
la reivindicación 47, en el cual el cambio en la operación interna
es una reconfiguración de la topología lógica de la red de
mediación, y en el cual el mensaje de control es uno o más mensajes
de reconfiguración.
52. Un producto de programa de ordenador según
la reivindicación 51, en el cual la reconfiguración de la topología
lógica incluye la generación de una barrera causal para garantizar
que los mensajes que atraviesan la red de mediación antes de la
reconfiguración se entregan antes de los mensajes que atraviesan la
red de mediación después de la reconfiguración.
53. Un producto de programa de ordenador según
la reivindicación 52, en el cual la etapa de generar la barrera
causal incluye: hacer circular dicho(s) mensaje(s) de
reconfiguración por el ciclo de mediación; y garantizar que cada
módulo en el ciclo ha sido suficientemente notificado de la
reconfiguración.
54. Un producto de programa de ordenador según
la reivindicación 53, en el cual la reconfiguración de la topología
lógica de la arquitectura de mediación es la inserción de un nodo de
punto de presencia local (LPP) adicional, y dicho(s)
mensaje(s) de reconfiguración incluye(n) un mensaje
nuevo_LPP que identifica unívocamente el nodo LPP adicional,
incluyendo la inserción:
en un módulo LPP adicional predeterminado,
generar el mensaje nuevo_LPP y enviar el mensaje nuevo_LPP al
correspondiente módulo MR en un nodo MR;
en el correspondiente módulo MR, recibir el
mensaje nuevo_LPP, actualizar un contador de referencia para el
nodo MR y propagar el mensaje nuevo_LPP a todos los módulos
mediadores en la arquitectura;
en cada módulo mediador, recibir el mensaje
nuevo_LPP, y transmitir el mensaje nuevo_LPP a un respectivo módulo
TP correspondiente en un nodo TP, teniendo cada nodo TP un saldo
acreedor asociado;
en cada uno de los correspondientes módulos TP,
recibir el mensaje nuevo_LPP y enviar un respectivo mensaje
nuevo_LPP extendido al módulo LPP adicional, incluyendo el mensaje
nuevo_LPP extendido el respectivo saldo acreedor asociado;
en el módulo LPP adicional, recibir los mensajes
nuevo_LPP extendidos, completando por ello la circulación del
mensaje nuevo_LPP; y
en el módulo LPP adicional, sumar los saldos
acreedores, garantizándose la notificación suficiente de la
reconfiguración cuando la suma del crédito alcanza un valor de
completitud predeterminado.
55. Un producto de programa de ordenador según
la reivindicación 54, en el cual la reconfiguración de la topología
lógica de la arquitectura de mediación incluye la inserción
adicional de un nodo encaminador de mediadores (MR) adicional, y en
el cual dicho(s) mensaje(s) de reconfiguración
incluye(n) adicionalmente un mensaje nuevo_MR que identifica
unívocamente el nodo MR adicional, incluyendo la inserción
adicional:
en el LPP adicional, enviar un mensaje nuevo_MR
a un correspondiente módulo MR en un nodo MR con un correspondiente
saldo acreedor;
en el correspondiente módulo MR, responder al
mensaje nuevo_MR enviando un mensaje nueva_tabla_encamina-
miento_MR, que incluye: información de dirección para el nodo MR adicional, la dirección del nodo LPP adicional, información de encaminamiento y una fracción del correspondiente saldo acreedor;
miento_MR, que incluye: información de dirección para el nodo MR adicional, la dirección del nodo LPP adicional, información de encaminamiento y una fracción del correspondiente saldo acreedor;
en el correspondiente módulo MR, remitir luego
el mensaje nueva_tabla_encaminamiento_MR a un módulo mediador
arbitrario;
en el módulo mediador arbitrario, pasar el
mensaje nueva_tabla_encaminamiento_MR al módulo LPP adicional;
en el módulo LPP adicional, pasar entonces el
mapa de encaminamiento al módulo MR adicional; y
en el módulo MR adicional, utilizar el contenido
del mensaje nueva_tabla_encaminamiento_MR para inicializar un nuevo
saldo de balance y los mapas de encaminamiento.
56. Un producto de programa de ordenador según
la reivindicación 55, en el cual la reconfiguración incluye
adicionalmente cambiar el módulo MR al que se dirige el módulo LPP
adicional por el módulo MR adicional, en el cual el módulo MR
adicional envía un mensaje MR_inicializado() al módulo LPP adicional
al recibir el mensaje nueva_tabla_encaminamiento_MR, y en el cual
el módulo LPP adicional envía mensajes inc_cont_ref() y
dec_cont_ref() a los módulos MR adicional e inicial,
respectivamente.
57. Un producto de programa de ordenador según
la reivindicación 53, en el cual la reconfiguración de la topología
lógica de la arquitectura de mediación es la inserción de un nodo
mediador (M) adicional, y dicho(s) mensaje(s) de
reconfiguración incluye(n) un mensaje nuevo_M que identifica
unívocamente al nodo mediador adicional, incluyendo la
inserción:
en un módulo mediador adicional predeterminado,
generar el mensaje nuevo_M y enviar el mensaje nuevo_M al
correspondiente módulo TP en un nodo TP;
en el correspondiente módulo TP, recibir el
mensaje nuevo_M, actualizar un contador de referencia para el nodo
TP, y propagar el mensaje nuevo_M a todos los módulos LPP en la
arquitectura;
en cada módulo LPP, recibir el mensaje nuevo_M,
transmitir el mensaje nuevo_M a un respectivo módulo MR
correspondiente en un nodo MR, teniendo cada nodo MR un saldo
acreedor asociado;
en cada uno de los correspondientes módulos MR,
recibir el mensaje nuevo_M y enviar un respectivo mensaje nuevo_M
extendido al módulo mediador adicional, incluyendo el mensaje
nuevo_M extendido el respectivo saldo acreedor asociado; y
en el módulo mediador adicional, recibir los
mensajes nuevo_M extendidos, completando por ello la circulación
del mensaje nuevo_M; y
en el módulo mediador adicional, sumar los
saldos acreedores, garantizándose la suficiente notificación de la
reconfiguración cuando la suma de créditos alcanza un valor de
completitud predeterminado.
58. Un producto de programa de ordenador según
la reivindicación 57, en el cual la reconfiguración de la topología
lógica de la arquitectura de mediación incluye la inserción
adicional de un nodo agente de transmisión (TP) adicional, y en el
cual dicho(s) mensaje(s) de reconfiguración
incluye(n) adicionalmente un mensaje nuevo_TP que identifica
unívocamente el nodo TP adicional, incluyendo la inserción
adicional:
en el módulo mediador adicional, recibir el
mensaje nuevo_TP;
en el módulo mediador adicional, añadir la
dirección del nodo mediador adicional al mensaje nuevo_TP y remitir
el mensaje nuevo_TP a un correspondiente módulo TP en un nodo TP con
un correspondiente saldo acreedor;
en el correspondiente módulo TP, responder al
mensaje nuevo_TP generando un mensaje nuevo_TP extendido, que
incluye: información de dirección para el nodo TP adicional, la
dirección del nodo mediador adicional, una lista de los LPP y una
fracción del correspondiente saldo acreedor;
en el correspondiente módulo TP, remitir
entonces el mensaje nuevo_TP a un módulo LPP arbitrario;
en el módulo LPP arbitrario, pasar luego un
mensaje de nuevo mapa de encaminamiento al módulo TP adicional;
en el módulo TP adicional, pasar luego el mapa
de encaminamiento al módulo MR adicional; y
en el módulo TP adicional, utilizar el contenido
del mensaje de nuevo mapa de encaminamiento para inicializar un
nuevo saldo acreedor correspondiente y una lista de módulos LPP.
59. Un producto de programa de ordenador según
la reivindicación 58, en el cual la reconfiguración incluye
adicionalmente; cambiar el módulo TP al que se dirige el módulo
mediador adicional por el módulo TP adicional, en el cual el módulo
TP adicional envía un mensaje TP_inicializado() al módulo mediador
adicional al recibir el mensaje de nuevo mapa de encaminamiento, y
en el cual el módulo mediador adicional envía mensajes
inc_cont_ref() y dec_cont_ref() a los módulos TP adicional e
inicial, respectivamente.
60. Un producto de programa de ordenador según
la reivindicación 47, en el cual la red de ordenadores incluye
adicionalmente un nodo de detección de fallos que está en
comunicación con cada nodo en la red de mediación, comprendiendo el
producto de programa de ordenador adicionalmente:
en el nodo de detección de fallos, proporcionar
un módulo de detección de fallos;
en cada nodo de la red de mediación,
proporcionar un módulo de informe de fallos;
toda vez que falla un enlace de comunicación
entrante o saliente entre nodos, despachar cada uno de dichos
módulos de informe de fallos información relacionada con el enlace
de comunicación averiado a dicho módulo de detección de fallos;
y
en dicho módulo de detección de fallos,
determinar si dicho enlace averiado es indicación de un nodo
averiado.
61. Un producto de programa de ordenador según
la reivindicación 60, que comprende adicionalmente, allí donde el
módulo de detección de fallos determina que dicho enlace averiado es
indicación de un nodo averiado;
crear un nuevo nodo del mismo tipo que el nodo
averiado;
infundir al nuevo nodo con información
relacionada con el estado interno y la topología del entorno
inmediato del nodo averiado; y
reconfigurar la red para utilizar el nuevo nodo
con preferencia sobre el nodo averiado.
62. Un producto de programa de ordenador según
la reivindicación 45, que comprende adicionalmente generar un
registro de todos los mensajes entrantes recibidos por dicho módulo
mediador predeterminado.
63. Un producto de programa de ordenador según
la reivindicación 62, en el cual la tarea de mediación aplicada a
dichos mensajes analizados en dicho módulo mediador predeterminado
incluye generar el registro de mensajes.
64. Un producto de programa de ordenador según
la reivindicación 62, en el cual la red de ordenadores incluye
adicionalmente una aplicación externa, comprendiendo adicionalmente
el producto de programa de ordenador:
generar el registro de mensajes en dicha
aplicación externa.
65. Un producto de programa de ordenador según
la reivindicación 47, en el cual el cambio en la operación interna
es una refinación estructural de la topología lógica de la
arquitectura de mediación, y en el cual el mensaje de control es
uno o más mensajes de refinación.
66. Un producto de programa de ordenador según
la reivindicación 65, en el cual se inserta una subred en lugar de
un nodo individual durante la etapa de refinación estructural.
67. Un producto de programa de ordenador según
la reivindicación 45, incluyendo el producto de programa de
ordenador instrucciones para proporcionar un almacén de datos, a fin
de almacenar información acerca de la estructura lógica y física de
la red sometida a mediación.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US49177703P | 2003-07-31 | 2003-07-31 | |
US491777P | 2003-07-31 |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2319196T3 true ES2319196T3 (es) | 2009-05-05 |
Family
ID=34115550
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES04767961T Expired - Lifetime ES2319196T3 (es) | 2003-07-31 | 2004-08-02 | Flujo de informacion con mediacion autogestionada. |
Country Status (13)
Country | Link |
---|---|
US (1) | US9525566B2 (es) |
EP (1) | EP1649667B1 (es) |
JP (1) | JP4588704B2 (es) |
CN (1) | CN1846419A (es) |
AT (1) | ATE400133T1 (es) |
AU (1) | AU2004301718B9 (es) |
DE (1) | DE602004014776D1 (es) |
ES (1) | ES2319196T3 (es) |
GB (1) | GB2418331B8 (es) |
NO (1) | NO20060397L (es) |
NZ (1) | NZ544986A (es) |
PT (1) | PT1649667E (es) |
WO (1) | WO2005013554A2 (es) |
Families Citing this family (28)
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) |
US8266321B2 (en) * | 2006-06-12 | 2012-09-11 | Cloudsoft Corporation Limited | 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 |
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 |
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 |
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 |
US9544217B2 (en) | 2013-04-19 | 2017-01-10 | Entuity Limited | Identification of paths in a network of mixed routing/switching devices |
EP2984797B1 (en) | 2013-04-19 | 2017-03-01 | Entuity Limited | Querying a traffic forwarding table |
GB2513188B (en) * | 2013-04-19 | 2015-11-25 | Entuity Ltd | Identification of the paths taken through a network of interconnected devices |
EP2984800B1 (en) | 2013-04-19 | 2017-05-03 | Entuity Limited | Identifying an egress port of a device |
GB2527273B (en) | 2014-04-11 | 2016-08-03 | Entuity Ltd | Executing a loop computer program to identify a path in a network |
CA2920501C (en) | 2013-08-07 | 2021-05-04 | Interdigital Patent Holdings, Inc. | Distributed scheduling for device-to-device communication |
CN104778188B (zh) * | 2014-02-24 | 2018-10-19 | 贵州电网公司信息通信分公司 | 一种分布式设备日志采集方法 |
US10057337B2 (en) * | 2016-08-19 | 2018-08-21 | AvaSure, LLC | Video load balancing system for a peer-to-peer server network |
US11075881B2 (en) * | 2017-07-07 | 2021-07-27 | Arris Enterprises Llc | Proxy between wireless local area 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 |
KR20220123670A (ko) * | 2020-01-02 | 2022-09-08 | 가브리엘 라비 | 무선 근거리 통신망에서 복수의 클라이언트 통신 디바이스의 통신을 지원하기 위한 방법 및 시스템 |
US11894973B2 (en) | 2022-03-10 | 2024-02-06 | Ricoh Company, Ltd. | Assigning and prioritizing mediation servers for monitoring legacy devices |
US11606242B1 (en) * | 2022-03-10 | 2023-03-14 | Ricoh Company, Ltd. | Coordinated monitoring of legacy output devices |
CN115061718B (zh) * | 2022-03-24 | 2023-12-22 | 上海任意门科技有限公司 | 配置和运行状态机的方法、计算设备和计算机存储介质 |
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 |
WO1995034153A1 (en) * | 1994-06-08 | 1995-12-14 | Hughes Aircraft Company | Apparatus and method for hybrid network access |
WO1997043893A1 (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 |
JP3274393B2 (ja) * | 1997-09-22 | 2002-04-15 | 株式会社ディジタル・ビジョン・ラボラトリーズ | ネットワークシステム、データ配信方法、および、配信用データが記録されたコンピュータ読み取り可能な記録媒体 |
US6968394B1 (en) * | 1997-09-22 | 2005-11-22 | Zaksat General Trading Co., Wll | Asymmetric satellite-based internet service |
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 |
IL135156A0 (en) | 1999-03-19 | 2001-05-20 | Ibm | 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 |
US7013322B2 (en) * | 2000-01-28 | 2006-03-14 | Wiltel Communications Group, Llc | 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 |
WO2001067690A1 (fr) * | 2000-03-07 | 2001-09-13 | Nippon Telegraph And Telephone Corporation | Reseau d'information semantique |
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 |
US7114008B2 (en) * | 2000-06-23 | 2006-09-26 | Cloudshield Technologies, Inc. | Edge adapter architecture apparatus and method |
US7032031B2 (en) * | 2000-06-23 | 2006-04-18 | Cloudshield Technologies, Inc. | Edge adapter apparatus and method |
US6983259B1 (en) * | 2000-06-23 | 2006-01-03 | Ebs Group Limited | Anonymous trading system |
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 |
KR20070055582A (ko) * | 2001-06-04 | 2007-05-30 | 엔시티 그룹, 인코포레이티드 | 통신네트워크의 유효 대역폭 증가 방법 |
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 |
JP4160506B2 (ja) * | 2001-09-28 | 2008-10-01 | レヴェル 3 シーディーエヌ インターナショナル インコーポレーテッド. | 構成可能な適応型広域トラフィック制御および管理 |
US7860964B2 (en) * | 2001-09-28 | 2010-12-28 | Level 3 Communications, Llc | Policy-based content delivery network selection |
US20030174648A1 (en) * | 2001-10-17 | 2003-09-18 | Mea Wang | Content delivery network by-pass 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) |
WO2003055153A2 (en) * | 2001-12-21 | 2003-07-03 | Muirhead Charles S | System for supply chain management of virtual private network services |
US7203743B2 (en) * | 2001-12-28 | 2007-04-10 | Nortel Networks Limited | Hierarchical tree-based protection scheme for mesh networks |
US20030135509A1 (en) * | 2002-01-11 | 2003-07-17 | Davis Andrew Thomas | Edge server java application framework having application server instance resource monitoring and management |
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 |
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 |
US20030225873A1 (en) * | 2002-05-30 | 2003-12-04 | Wade Michael A. | Optimization of network performance through uni-directional encapsulation |
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 |
US7676516B2 (en) * | 2002-10-15 | 2010-03-09 | Active-Base Ltd. | System and method for the optimization of database access in data base networks |
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 |
US7584298B2 (en) * | 2002-12-13 | 2009-09-01 | 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 |
US7167865B1 (en) * | 2003-06-30 | 2007-01-23 | Mvalent, Inc. | Collaborative environment for producing software products |
US7533054B2 (en) * | 2003-06-30 | 2009-05-12 | Bloomberg L.P. | Central credit filtering in computerized trading |
US7590736B2 (en) * | 2003-06-30 | 2009-09-15 | Microsoft Corporation | Flexible network load balancing |
US7636917B2 (en) * | 2003-06-30 | 2009-12-22 | Microsoft Corporation | Network load balancing with host status information |
US7567504B2 (en) * | 2003-06-30 | 2009-07-28 | Microsoft Corporation | Network load balancing with traffic routing |
US9525566B2 (en) | 2003-07-31 | 2016-12-20 | Cloudsoft Corporation Limited | Self-managed mediated information flow |
US8266321B2 (en) | 2006-06-12 | 2012-09-11 | Cloudsoft Corporation Limited | Self-managed distributed mediation networks |
-
2004
- 2004-07-30 US US10/903,156 patent/US9525566B2/en active Active
- 2004-08-02 GB GB0526606A patent/GB2418331B8/en not_active Expired - Fee Related
- 2004-08-02 DE DE602004014776T patent/DE602004014776D1/de not_active Expired - Lifetime
- 2004-08-02 ES ES04767961T patent/ES2319196T3/es not_active Expired - Lifetime
- 2004-08-02 JP JP2006521674A patent/JP4588704B2/ja not_active Expired - Fee Related
- 2004-08-02 AT AT04767961T patent/ATE400133T1/de not_active IP Right Cessation
- 2004-08-02 WO PCT/GB2004/003335 patent/WO2005013554A2/en active IP Right Grant
- 2004-08-02 EP EP04767961A patent/EP1649667B1/en not_active Expired - Lifetime
- 2004-08-02 CN CNA2004800248321A patent/CN1846419A/zh active Pending
- 2004-08-02 NZ NZ544986A patent/NZ544986A/en unknown
- 2004-08-02 AU AU2004301718A patent/AU2004301718B9/en not_active Ceased
- 2004-08-02 PT PT04767961T patent/PT1649667E/pt unknown
-
2006
- 2006-01-25 NO NO20060397A patent/NO20060397L/no not_active Application Discontinuation
Also Published As
Publication number | Publication date |
---|---|
GB2418331B (en) | 2006-12-06 |
NZ544986A (en) | 2007-09-28 |
EP1649667B1 (en) | 2008-07-02 |
GB2418331A8 (en) | 2011-01-19 |
PT1649667E (pt) | 2008-10-14 |
EP1649667A2 (en) | 2006-04-26 |
AU2004301718A1 (en) | 2005-02-10 |
WO2005013554A2 (en) | 2005-02-10 |
CN1846419A (zh) | 2006-10-11 |
GB2418331A (en) | 2006-03-22 |
GB0526606D0 (en) | 2006-02-08 |
NO20060397L (no) | 2006-04-28 |
GB2418331B8 (en) | 2011-01-19 |
DE602004014776D1 (de) | 2008-08-14 |
WO2005013554A3 (en) | 2005-03-31 |
US9525566B2 (en) | 2016-12-20 |
AU2004301718B2 (en) | 2007-07-12 |
JP4588704B2 (ja) | 2010-12-01 |
JP2007502553A (ja) | 2007-02-08 |
ATE400133T1 (de) | 2008-07-15 |
AU2004301718B9 (en) | 2007-07-12 |
US20050044268A1 (en) | 2005-02-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2319196T3 (es) | Flujo de informacion con mediacion autogestionada. | |
CN108234307B (zh) | 网络方法、网络装置和非暂时性计算机可读存储介质 | |
CN108234306B (zh) | 网络装置、网络方法和计算机可读存储介质 | |
Pietzuch | Hermes: A scalable event-based middleware | |
US8812729B2 (en) | Self-managed distributed mediation networks | |
US8856800B2 (en) | Service-level enterprise service bus load balancing | |
US8166097B2 (en) | Using distributed queues in an overlay network | |
US9565092B2 (en) | Enterprise service bus deployment at the level of individual services | |
Lynch et al. | Atomic data access in distributed hash tables | |
US7774639B2 (en) | Subscription-based management and distribution of member-specific state data in a distributed computing system | |
CN111711526B (zh) | 一种区块链节点的共识方法及系统 | |
WO2010034608A1 (en) | System and method for configuration of processing clusters | |
US8307112B2 (en) | Mediated information flow | |
Lin et al. | Robust network function virtualization | |
WO2024078025A1 (zh) | 流量隔离方法、装置、系统及计算机可读存储介质 | |
Birman et al. | Exploiting gossip for self-management in scalable event notification systems | |
Cugola et al. | An algorithm for dynamic reconfiguration of publish-subscribe systems | |
Mühl et al. | Distributed Notification Routing |