ES2198267T3 - Metodo de seleccion de conexion. - Google Patents
Metodo de seleccion de conexion.Info
- Publication number
- ES2198267T3 ES2198267T3 ES00660120T ES00660120T ES2198267T3 ES 2198267 T3 ES2198267 T3 ES 2198267T3 ES 00660120 T ES00660120 T ES 00660120T ES 00660120 T ES00660120 T ES 00660120T ES 2198267 T3 ES2198267 T3 ES 2198267T3
- Authority
- ES
- Spain
- Prior art keywords
- route
- datagram
- node
- protocol
- routes
- 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
- 238000010187 selection method Methods 0.000 title description 2
- 238000000034 method Methods 0.000 claims abstract description 57
- 230000005540 biological transmission Effects 0.000 claims abstract description 35
- 230000011664 signaling Effects 0.000 claims description 12
- 230000004044 response Effects 0.000 claims description 11
- 238000013519 translation Methods 0.000 description 15
- 230000014616 translation Effects 0.000 description 15
- 238000012790 confirmation Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 7
- 238000012546 transfer Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 230000037361 pathway Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000008450 motivation Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 230000009870 specific binding Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/12—Shortest path evaluation
- H04L45/121—Shortest path evaluation by minimising delays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/24—Multipath
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/24—Multipath
- H04L45/243—Multipath using M+N parallel active paths
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/80—Ingress point selection by the source endpoint, e.g. selection of ISP or POP
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Steering Control In Accordance With Driving Conditions (AREA)
- Use Of Switch Circuits For Exchanges And Methods Of Control Of Multiplex Exchanges (AREA)
- Medicines Containing Antibodies Or Antigens For Use As Internal Diagnostic Agents (AREA)
Abstract
Método para la distribución de conexiones entre una pluralidad de rutas posibles para la transmisión de tráfico de paquetes IP entre un nodo fuente y nodos extremos, estando asociada cada una de las rutas a una pluralidad de direcciones IP, utilizando las conexiones el protocolo IP y por lo menos un segundo protocolo, comprendiendo el método - la selección de una ruta para una conexión nueva a establecer entre el nodo fuente y un nodo extremo para la transmisión de tráfico de paquetes, - la utilización de la ruta seleccionada traduciendo direcciones IP fuente de paquetes transmitidos desde el nodo fuente hacia dicho nodo extremo en una dirección IP asociada a la ruta seleccionada, y - realización de dicha selección de una ruta sobre la base de criterios predefinidos, caracterizado porque el método comprende por lo menos las siguientes etapas, en las cuales - se crea un primer datagrama IP que comprende un mensaje de establecimiento de un segundo protocolo para iniciar una conexión nuevacon un nodo extremo utilizando dicho segundo protocolo, - se envía dicho primer datagrama IP a través de una primera ruta de entre las rutas entre el nodo fuente y dicho nodo extremo, - se copia dicho primer datagrama IP para crear un segundo datagrama IP de cara a enviarlo a través de una segunda ruta de entre las rutas entre el nodo fuente y dicho nodo extremo, - se traduce la dirección IP fuente de dicho segundo datagrama IP en una dirección IP seleccionada de entre la pluralidad de direcciones IP asociadas a dicha segunda ruta, - se transmite dicho segundo datagrama IP a través de dicha segunda ruta hacia dicho nodo extremo, - se recibe, desde dicho nodo extremo a través de una de las rutas, un primer datagrama que comprende información de un tipo predefinido, y - se selecciona, como ruta a utilizar, la ruta desde la que se recibe dicho primer datagrama que comprende información de un tipo predefinido.
Description
Método de selección de conexión.
La presente invención se refiere al equilibrado
de la carga de tráfico IP entre más de una ruta entre un nodo y una
red IP. Más particularmente, la invención se refiere a un método
del tipo mencionado según se describe en el preámbulo de la
reivindicación independiente del método.
En la actualidad se está utilizando ampliamente
la tecnología de redes IP, siendo Internet un ejemplo claro de una
red realizada utilizando el Protocolo de Internet (IP). El
protocolo IP proporciona un mecanismo básico de transferencia de
datos en paquetes sin comprobación de errores, confirmaciones de
recepción o control de flujo. Otros protocolos utilizados en
combinación con el protocolo IP tal como el protocolo TCP se
utilizan para proporcionar un mecanismo fiable de transmisión de
datos con corrección de errores de transmisión, control del flujo y
muchas otras funciones. El protocolo IP se define en la
especificación RFC 791, y el protocolo TCP se define en la
especificación RFC 793. En la RFC 1180 se presenta una introducción
a estos protocolos. A continuación se proporciona una visión
general breve de estos protocolos.
La versión 4 del protocolo IP (IPv4) definida por
la RFC 791 tiene un espacio de direcciones limitado debido a que
las direcciones fuente y de destino tienen una longitud de
únicamente 32 bits. Con la expansión actual de Internet y el
desarrollo de la tecnología, el espacio de direcciones se está
llenando rápidamente. Por esta razón se ha diseñado la versión 6
del protocolo IP (IPv6). Las direcciones en el IPv6 tienen una
longitud de 128 bits, permitiendo un espacio de direcciones
considerablemente mayor. Además existen motivaciones adicionales
detrás del IPv6 y otras diferencias entre el IPv4 y el IPv6. El
protocolo IPv6 se describe en la especificación RFC 1883. A
continuación, haciendo referencia a las figuras 1, 2 y 3, se
describen algunos detalles de los protocolos TCP e IP que son
pertinentes para la presente invención.
En el protocolo IP, los datos se transmiten en
los denominados datagramas, que contienen una parte de
encabezamiento y una parte de datos de carga útil. La figura 1
muestra la estructura de un encabezamiento IPv4. A continuación, se
describen únicamente algunos de los campos de encabezamiento. En la
anteriormente mencionada RFC 791 se puede encontrar una descripción
detallada. El primer campo, el campo de versión de cuatro bits de
longitud, contiene el número de versión que para el IPv4 es 4. El
campo de longitud total proporciona la longitud del datagrama, el
encabezamiento y la parte de datos combinados, en forma de número
de octetos, es decir, grupos de 8 bits. Las direcciones fuente y de
destino especifican la dirección IP del remitente y del receptor
deseado. Se pueden especificar varias opciones en el campo de
opciones, cuya longitud puede variar de un datagrama a otro. El
número de opciones diferentes especificadas en el campo de opciones
también puede variar. El campo de opciones no es obligatorio, es
decir, en algunos datagramas puede que no se disponga en absoluto de
campo de opciones. El campo de relleno se utiliza para garantizar
que el encabezamiento finaliza en un límite de 32 bits. El campo de
relleno se llena con ceros. Después del campo de relleno viene la
parte de datos de carga útil, cuya longitud puede ser averiguada
por el receptor del datagrama restando la longitud del
encabezamiento con respecto al valor del campo de longitud
total.
La figura 2 ilustra la estructura de un
encabezamiento IPv6. El encabezamiento IPv6 es más sencillo que el
encabezamiento IPv4, permitiendo un procesado más rápido de los
datagramas en los nodos de transmisión. Los primeros cuatro bits
del encabezamiento comprenden el campo de versión, que para el IPv6
contiene el valor 6. El campo de longitud de carga útil especifica
la longitud de la parte de datos en octetos. El siguiente campo de
encabezamiento especifica el tipo de cualquier encabezamiento que
viene a continuación de este encabezamiento. El siguiente
encabezamiento puede ser, por ejemplo, un encabezamiento TCP en el
caso de que el datagrama IP transporte un paquete TCP, o un
encabezamiento de extensión. Los campos de dirección fuente y de
destino, que constan cada uno de ellos de cuatro palabras de 32
bits lo cual da como resultado 128 bits para cada dirección,
especifican el remitente y el receptor deseado del datagrama. En
lugar de un campo de opciones, en el IPv6 se proporciona la
inclusión de datos opcionales en el encabezamiento por medio de los
denominados encabezamientos de extensión. En la RFC 1883 se
describen varios tipos de encabezamiento de extensión. En un
datagrama IPv6 puede haber cero, uno o más de un encabezamiento de
extensión.
La figura 3 ilustra la estructura de un
encabezamiento TCP. A continuación se describen los campos más
pertinentes. Los otros campos de un encabezamiento TCP se describen
en la anteriormente mencionada RFC 793.
El encabezamiento TCP indica un número de puerto
de destino en el anfitrión receptor, al cual va dirigido el
paquete. El protocolo TCP posibilita que en una única dirección IP
existan muchos servicios diferentes, introduciendo el concepto de
puerto. Un programa puede escuchar un puerto específico, y recibir
cualquier dato enviado a ese puerto. A la inversa, un programa puede
enviar un paquete a un puerto específico en un anfitrión distante.
De este modo, el número de puerto de destino define qué servicio o
programa recibirá el paquete en el anfitrión especificado por la
dirección IP. De forma similar, el número de puerto fuente indica
qué servicio o programa envió el paquete TCP.
Los octetos de datos TCP enviados por un
anfitrión se numeran secuencialmente. El número del primer octeto
de datos en la parte de datos se incluye en el encabezamiento TCP
en el campo de número de secuencia. Basándose en este número, el
segundo anfitrión receptor puede comprobar si han llegado paquetes
TCP a través de la red de transmisión en el orden correcto, y si
falta algún paquete. Convencionalmente el segundo anfitrión envía
una confirmación de recepción hacia el primer anfitrión por cada
paquete recibido. El mensaje de confirmación de recepción se
incluye en un paquete TCP normal enviado por el segundo anfitrión
hacia el primer anfitrión. La confirmación de recepción se indica
por medio de la bandera ACK y el número de confirmación de
recepción. El número de confirmación de recepción es el número de
secuencia del siguiente octeto que está esperando recibir el
remitente del paquete desde el otro extremo. Si no hay otros datos
a enviar desde el segundo anfitrión hacia el primer anfitrión, en un
paquete de confirmación de recepción de este tipo la parte de datos
de carga útil puede estar vacía. Si el segundo anfitrión está
transmitiendo datos hacia el primer anfitrión, la confirmación de
recepción se puede indicar en el encabezamiento de un paquete que
contenga algunos datos de carga útil. De este modo, los mensajes
ACK no siempre añaden carga de transmisión. Si un anfitrión no
recibe una confirmación de recepción para algunos datos dentro de un
periodo de espera, los datos se vuelven a transmitir.
Después del encabezamiento TCP viene la parte de
datos. La longitud de la parte de datos es transportada por el
protocolo IP, por esta razón no hay un campo correspondiente en el
encabezamiento TCP.
Debido al número reducido de direcciones IP
disponibles en el protocolo IPv4, se utiliza una técnica conocida
como traducción de direcciones de red (NAT). Con la NAT, una red
privada tal como la red de área local de una empresa puede estar
conectada a la red pública de Internet utilizando únicamente un
número reducido de direcciones IP de la red pública de Internet, al
mismo tiempo que permite un uso casi libre de direcciones IP para
el tráfico dentro de la red privada. Las sesiones con nodos en la
red pública de Internet se inician desde la red privada. El elemento
de red que conecta las dos redes y realiza la función NAT almacena
la dirección fuente del nodo de inicio dentro de la red privada, y
la sustituye por una de entre el número reducido de direcciones IP
de la red pública de Internet. El elemento de red almacena el par
compuesto por una dirección interna y una red pública, y realiza la
traducción de la dirección fuente para paquetes que atraviesan
desde el nodo interno hacia la red pública de Internet y la
traducción de la dirección de destino para paquetes que atraviesan
desde la red pública de Internet hacia el nodo interno. El elemento
de red conserva el par de direcciones, es decir, la vinculación
hasta que el nodo interno finaliza todas sus conexiones con la red
pública de Internet, después de lo cual el elemento de red puede
asignar la dirección pública para ser utilizada por otro nodo de la
red interna. La función NAT puede utilizar también la dirección del
puerto TCP en la traducción, con lo cual una vinculación especifica
el emparejamiento de una dirección IP interna y un puerto TCP y una
dirección IP externa y un puerto TCP. La utilización de puertos TCP
en la traducción se utiliza especialmente en la situación típica en
la que el tráfico privado utiliza únicamente una dirección IP de la
red pública de Internet. En una situación de este tipo, los
paquetes que pertenecen a conexiones diferentes desde/hacia
anfitriones diferentes en la red privada se mantienen separados
utilizando diferentes puertos TCP para las conexiones.
La funcionalidad NAT se puede utilizar también
para aumentar la seguridad de la red interna, ya que la función NAT
oculta las direcciones internas, con lo cual la estructura de la
red interna es más difícil de deducir desde el exterior.
Se conoce también la utilización de más de una
ruta entre una red interna y una red externa. La figura 4 muestra
un ejemplo de una configuración de este tipo. La figura 4 muestra
una red IP interna 10, una red externa 40, un elemento 20 de red,
tres rutas diferentes 30 entre el elemento 20 de red y una red
externa 40, y un nodo 50 en la red externa. Típicamente cada una de
las rutas 30 se corresponde con un Proveedor de Servicios de
Internet (ISP). El elemento 20 de red puede tener una conexión de
módem o incluso una conexión fija de alta velocidad con cada uno de
los proveedores ISP 30. Las principales ventajas de la utilización
de más de una ruta con Internet son la mayor capacidad de
transmisión de más de una ruta y la fiabilidad: si una de las rutas
30 falla, el tráfico se puede dirigir para que prosiga a través de
otras dos rutas. Típicamente, el elemento 20 de red realiza también
la traducción de direcciones de red.
Una manera conocida de dividir el tráfico entre
la red interna 10 y la red externa 40 es la configuración
denominada AS (Sistema Autónomo) Multihomed. En la
configuración AS Multihomed, se selecciona una ruta hacia un
destino específico en Internet sobre la base de la información de
las vías recibida por encaminadores a través del protocolo
denominado Protocolo de Pasarela de Frontera
(BGP-4). El protocolo BGP-4 se
describe detalladamente en la RFC 1771. No obstante, en este enfoque
existen limitaciones. No existe ninguna forma de garantizar que la
ruta seleccionada presenta el mejor rendimiento ya que la ruta se
selecciona basándose únicamente en la dirección IP de destino.
Adicionalmente, el protocolo BGP4 no responde rápidamente a los
cambios en la topología de la red, lo cual puede provocar cortes en
conexiones con partes de Internet.
La traducción de direcciones de red se puede
utilizar también para el compartimiento de la carga. Un método de
este tipo se describe en la RFC 2391 ``Load Sharing using IP
Network Address Translation (LSNAT)''. En el método, una sesión
nueva se dirige a un servidor determinado en un depósito de
servidores que utilizan la técnica NAT. La RFC 2391 da a conocer
también algunos algoritmos comunes para tomar decisiones de
compartimiento de la carga, es decir, a qué servidor se va a
dirigir una conexión determinada. Algunos ejemplos de dichos
algoritmos son:
- Algoritmo Secuencial
(Round-Robin), es decir, las conexiones nuevas se
dirigen a los servidores en una secuencia repetitiva. Este algoritmo
tiene el inconveniente de que no se tienen en cuenta las
diferencias en la carga de los servidores.
- Primer algoritmo de Carga Mínima, es decir,
para prestar servicio a una sesión nueva se selecciona el servidor
con el menor número de sesiones vinculadas al mismo. Este algoritmo
tiene el inconveniente de que no se tienen en cuenta las
diferencias en los requisitos de recursos de las sesiones nuevas, y
que tampoco se tienen en cuenta las capacidades de los
servidores.
- Primer algoritmo de tráfico mínimo, en el que
el volumen de tráfico de cada servidor se mide supervisando el
recuento de paquetes o bytes transferido por el servidor durante un
periodo de tiempo.
- Primer algoritmo de Carga Ponderada Mínima, en
el que a diferentes tipos de sesión se les asignan pesos
diferentes, y a servidores que tienen capacidades diferenciadas se
les asignan pesos diferentes. Se calcula el peso total de la sesión
actual en cada servidor, y el resultado se divide por el valor del
peso de la capacidad. Se dirige una sesión nueva a aquel servidor
que presente el valor de menor resultado.
- Algoritmo de supervisión del tiempo de
respuesta, en el que a cada servidor se le envía periódicamente un
paquete, y el tiempo transcurrido hasta la recepción del paquete de
respuesta se utiliza como medida de la carga. Este algoritmo tiene
el inconveniente de que la carga puede variar entre tiempos de
supervisión consecutivos, con lo cual podría ser que el tiempo de
respuesta medido no represente siempre la situación actual.
Naturalmente la precisión se puede aumentar reduciendo el intervalo
de prueba, aunque esto hace que aumente la carga de tráfico.
Algunos otros algoritmos de compartimiento de la
carga dados a conocer en la RFC 2391 tienen en cuenta el coste del
acceso a un servidor en combinación con los algoritmos
anteriores.
La patente US 5371852 muestra un ejemplo de una
aplicación de técnicas descritas en la RFC 2391. Esta patente da a
conocer un sistema que traduce direcciones en paquetes entrantes y
salientes entre un agrupamiento de nodos de ordenador y una red
externa, haciendo que el agrupamiento de nodos de ordenador
aparezca como un único nodo para la red externa.
El documento de AKKIRAJU P Y OTROS: ``Enabling
Enterprise Multihoming with Cisco IOS Network Address Translation''
CISCO SYSTEMS INC, 1997 (recuperado de Internet:
ttp://www.cisco.com/warp/public/cc/pd/iosw/ioft/
ionetn/tech/emios\_wp.pdf) da a conocer un método y un sistema
para el compartimiento de carga de tráfico IP entre una serie de
rutas.
La técnica anterior no da a conocer un método
para el compartimiento de la carga de tráfico IP entre una serie de
rutas, de manera que dicho método sea transparente para las partes
comunicantes, se ajuste rápidamente a los cambios en las
propiedades de las rutas, y no requiera un poder de procesado y una
capacidad de transferencia de datos elevados. Es evidente que se
requiere una solución nueva.
Un objeto de la invención es realizar un método
para compartir la carga de tráfico IP entre una serie de rutas
entre un nodo de ordenador y una red IP, y realizar un método para
encontrar la ruta más rápida de entre una serie de rutas desde un
nodo de ordenador hacia un destino en una red IP.
Los objetos se alcanzan duplicando paquetes de
establecimiento de conexión a través de cada ruta que se va a
someter a prueba, garantizando que a través de la misma ruta
vuelven paquetes de respuesta, y seleccionando la ruta más
rápida.
El método según la invención está caracterizado
por los aspectos especificados en la parte caracterizadora de la
reivindicación independiente del método. El sistema según la
invención está caracterizado por los aspectos especificados en la
parte caracterizadora de la reivindicación independiente referida a
un sistema. El elemento de red según la invención está
caracterizado por los aspectos especificados en la parte
caracterizadora de la reivindicación independiente referida a un
elemento de red. Las reivindicaciones dependientes describen otras
realizaciones ventajosas de la invención.
La invención se refiere a un método nuevo para la
distribución de conexiones entre una pluralidad de rutas posibles
para la transmisión de tráfico de paquetes IP entre un nodo fuente
y nodos extremos, estando asociada cada una de las rutas a una
pluralidad de direcciones IP. Según la invención, se selecciona una
ruta para una conexión nueva a establecer entre el nodo fuente y un
nodo extremo de cara a la transmisión de tráfico de paquetes, la
ruta seleccionada se utiliza traduciendo direcciones IP fuente de
paquetes transmitidos desde el nodo fuente hacia dicho nodo extremo
en una dirección IP asociada a la ruta seleccionada, y dicha
selección de una ruta se realiza sobre la base de criterios
predefinidos.
La selección de la ruta se realiza sobre la base
de tiempos de transcurso de los turnos medidos por un método nuevo
que hace uso de la duplicación de paquetes. Se duplican uno o más
paquetes IP que transportan mensajes de establecimiento de conexión
de un segundo protocolo utilizado además del protocolo IP de manera
que atraviesan el mismo nodo extremo en la red externa a través de
las rutas disponibles. Las direcciones fuente de los paquetes
duplicados se traducen en direcciones correspondientes a la ruta
específica utilizada para la transmisión del paquete duplicado
específico de manera que se garantiza que los paquetes de retorno
vuelven por la misma ruta. La ruta que proporciona los tiempos de
respuesta más rápidos desde el nodo extremo se selecciona para ser
utilizada para la conexión nueva. Los tiempos de respuesta se pueden
determinar desde la transmisión del paquete inicial hasta la
recepción del paquete de respuesta al paquete inicial, o hasta la
recepción de un determinado paquete posterior, tal como el primer
paquete después de la señalización de establecimiento que contiene
datos de carga útil.
A continuación se describe la invención más
detalladamente haciendo referencia a los dibujos adjuntos, en los
cuales
la figura 1 ilustra la estructura de un
encabezamiento IPv4,
la figura 2 ilustra la estructura de un
encabezamiento IPv6,
la figura 3 ilustra la estructura de un
encabezamiento TCP,
la figura 4 ilustra una configuración en la que
una red privada o un nodo de ordenador está conectado con una red
externa a través de múltiples rutas,
la figura 5 ilustra un diagrama de flujo de un
método según una realización ventajosa de la invención,
la figura 6 ilustra un diagrama de flujo de un
método según otra realización ventajosa de la invención,
la figura 7 ilustra la señalización según una
realización ventajosa de la invención,
la figura 8 ilustra un diagrama de flujo de una
realización ventajosa de la invención, y
la figura 9 ilustra un sistema y un elemento de
red según una realización ventajosa de la invención.
En las figuras los mismos números de referencia
se utilizan para entidades similares.
La figura 5 muestra un ejemplo de un método según
una realización ventajosa de la invención. La figura 5 muestra un
diagrama de flujo ilustrativo según un método destinado a
equilibrar la carga de conexiones entre por lo menos dos rutas entre
una fuente y una red IP, utilizando dichas conexiones el protocolo
IP y por lo menos un segundo protocolo. Cada una de las por lo
menos dos rutas está asociada a una pluralidad de direcciones IP.
Cada ruta puede ser por ejemplo una ruta a través de un ISP
determinado, que tiene su propio espacio de direcciones IP
registrado para el ISP para ser utilizado por las partes que
acceden a la red IP tal como Internet a través del ISP.
Según la figura 5 el método comprende por lo
menos las siguientes etapas en las cuales
- se crea 100 un primer datagrama IP que
comprende un mensaje de establecimiento de un segundo protocolo
para iniciar una conexión nueva con un nodo extremo utilizando
dicho segundo protocolo,
- dicho primer datagrama IP se envía 105 a través
de una primera ruta de entre las rutas entre el nodo fuente y dicho
nodo extremo,
- dicho primer datagrama IP se copia 110 para
crear un segundo datagrama IP de cara a enviarlo a través de una
segunda ruta de entre las rutas entre el nodo fuente y dicho nodo
extremo,
- la dirección IP fuente de dicho segundo
datagrama IP se traduce 115 en una dirección IP seleccionada de
entre la pluralidad de direcciones IP asociadas a dicha segunda
ruta,
- dicho segundo datagrama IP se transmite 120 a
través de dicha segunda ruta hacia dicho nodo extremo,
- desde dicho nodo extremo a través de una de las
rutas se recibe 125 un primer datagrama que comprende información de
un tipo predefinido, y
- la ruta desde la cual se recibe dicho primer
datagrama que comprende información de un tipo predefinido se
selecciona 130 como la ruta a utilizar.
El método puede comprender además una etapa en la
cual la dirección IP fuente de dicho primer datagrama IP se traduce
en una dirección IP seleccionada de entre la pluralidad de
direcciones IP asociadas a dicha primera ruta. No obstante, podría
ser que dicha etapa no fuera siempre necesaria, como, por ejemplo,
en una configuración tal en la que la primera ruta es la conexión
principal desde una red fuente con la red IP, y las direcciones IP
internas de la red fuente se pueden utilizar también en la red IP
sin necesidad de traducción de direcciones de red.
El orden de las etapas del procedimiento
mostradas en la figura 5 es únicamente un ejemplo, y bajo ningún
aspecto pretende limitar la invención. Por ejemplo, el segundo
datagrama IP se puede crear antes de que se envíe el primer
datagrama IP. Además, el método puede comprender etapas en las que
se crean copias adicionales del datagrama IP, sus direcciones IP
fuente se traducen, y se envían a través de rutas adicionales hacia
dicho nodo extremo. En aras de una mayor claridad, en la figura 5 se
muestran únicamente dos rutas. La invención no se limita a ningún
número específico de rutas. Naturalmente, es necesario que haya por
lo menos dos rutas para poder seleccionar una ruta.
En una realización ventajosa de la invención,
dicho primer datagrama que comprende información de un tipo
predefinido es un primer datagrama de respuesta enviado por dicho
nodo extremo como respuesta a uno de entre dichos primer y segundo
datagramas IP.
De forma ventajosa, la señalización de
establecimiento de la conexión según dicho segundo protocolo
prosigue a través de la ruta seleccionada. La señalización del
establecimiento de la conexión a través de la otra ruta u otras
rutas se aborta preferentemente enviando una señal de puesta en
condiciones iniciales de la conexión o una señal
correspondiente.
La figura 6 ilustra un diagrama de flujo de un
método según otra realización ventajosa de la invención. Según la
figura 6 el método comprende por lo menos las siguientes etapas en
las cuales
- se crea 100 un primer datagrama IP que
comprende un mensaje de establecimiento de un segundo protocolo
para iniciar una conexión nueva con un nodo extremo utilizando
dicho segundo protocolo,
- dicho primer datagrama IP se envía 105 a través
de una primera ruta de entre las rutas entre el nodo fuente y dicho
nodo extremo,
- dicho primer datagrama IP se copia 110 para
crear un segundo datagrama IP de cara a enviarlo a través de una
segunda ruta de entre las rutas entre el nodo fuente y dicho nodo
extremo,
- la dirección IP fuente de dicho segundo
datagrama IP se traduce 115 en una dirección IP seleccionada de
entre la pluralidad de direcciones IP asociadas a dicha segunda
ruta,
- dicho segundo datagrama IP se transmite 120 a
través de dicha segunda ruta hacia dicho nodo extremo,
- después de enviar dichos primer y segundo
datagramas IP, el procedimiento de señalización del establecimiento
de la conexión prosigue 122 a través de dicha primera y dicha
segunda rutas,
- desde dicho nodo extremo a través de una de
entre dicha primera y dicha segunda rutas se recibe 125 un primer
datagrama IP que contiene datos de carga útil de acuerdo con el
segundo protocolo, y
- la ruta desde la cual se recibe dicho primer
datagrama IP que contiene datos de carga útil de acuerdo con el
segundo protocolo se selecciona 130 para ser utilizada para la
conexión nueva.
En la etapa de continuación 122 de la
señalización del establecimiento de la conexión, los datagramas IP
que comprenden señalización de establecimiento se duplican tal como
en las etapas 110 y 115 para su transmisión a través de la segunda
ruta.
La realización según la figura 6 tiene una
ventaja en el caso de que el segundo protocolo sea el protocolo TCP.
Algunos servidores proxy transparentes pueden participar
activamente en el establecimiento de la conexión TCP, es decir,
pueden enviar por sí mismos un paquete SYN+ACK hacia la fuente de
origen, antes que se reciba dicho paquete desde el nodo extremo. Si
dicho servidor proxy u otro elemento de red que participa
activamente en el establecimiento de conexiones TCP está dentro de
una ruta hacia el nodo extremo, la medición del tiempo de
transcurso de los turnos desde la recepción del paquete SYN+ACK en
la fuente puede dar resultados erróneos. Por esta razón, en algunos
casos la espera por el primer paquete de datos de carga útil puede
resultar ventajosa, ya que los datos de carga útil se originan
únicamente desde el nodo extremo.
En una realización preferida de la invención,
dicho segundo protocolo es el protocolo TCP. En el momento de
escribir esta solicitud de patente dicha situación es ventajosa, ya
que la mayor parte del tráfico de datos en Internet es tráfico HTTP
(Protocolo de Transferencia de HiperTexto), y además del protocolo
TCP se utiliza el protocolo HTTP. Por esta razón, la conexión nueva
cuya ruta se selecciona según la invención puede ser una conexión
TCP para transmitir tráfico HTTP.
La figura 7 muestra la señalización entre una
fuente 10, un nodo 20, y dos rutas RUTA 1 30a y RUTA 2 30b. El nodo
puede ser, por ejemplo, un nodo de ordenador de pasarela que
conecte una intranet 10 de empresa con redes externas a través de
varias rutas 30a, 30b. Cada una de las por lo menos dos rutas está
asociada a una pluralidad de direcciones IP. Cada ruta puede ser
por ejemplo una ruta a través de un ISP determinado, que tiene su
propio espacio de direcciones IP para ser utilizado por las partes
que acceden a una red IP tal como Internet a través del ISP. No
obstante, las entidades de fuente 10 y nodo 20 también pueden
existir en el mismo dispositivo físico tal como un ordenador, en
cuyo caso el tráfico de datagramas IP se origina en el mismo
ordenador que realiza las funciones de un nodo 20 tal como se
describe a continuación.
En la primera etapa 100, la fuente 10 crea y
envía un paquete SYN TCP para iniciar una conexión TCP con el nodo
extremo. Después de recibir el paquete, el nodo 20 puede traducir
la dirección IP fuente, es decir, puede realizar la traducción de
direcciones de red, si fuera necesario para la transmisión del
paquete a través de la primera ruta. En cualquier caso, el nodo 20
envía 105 el primer paquete SYN, es decir, un paquete TCP en el que
el bit SYN se fija a 1 y el bit ACK se fija a 0, hacia el nodo
extremo a través de la primera ruta 30a. A continuación, el nodo 20
copia 110 el primer paquete, traduce 115 la dirección IP fuente, y
transmite 120 el paquete hacia el nodo extremo a través de la
segunda ruta 30b. Seguidamente el nodo 20 espera que llegue el
primer paquete SYN+ACK de respuesta desde cualquiera de las rutas.
Cuando en este ejemplo llega 125 el paquete SYN+ACK desde la segunda
ruta, el nodo selecciona 130 la ruta 2 a utilizar para la
continuación. El nodo 20 realiza todas las traducciones necesarias
de direcciones de red y reenvía 135 el paquete SYN+ACK hacia la
fuente 10. Consecuentemente, la fuente 10 finaliza el intercambio de
señales TCP de tres vías enviando 140 un paquete ACK de vuelta,
siendo reenviado 145 dicho paquete hacia el nodo extremo a través
de la segunda ruta 30b después de las traducciones correspondientes
de direcciones de red. Cuando el nodo 20 recibe 150 un paquete
SYN+ACK desde la primera ruta 30a, el nodo 20 envía 155 un paquete
RST hacia la ruta 1 para cancelar la conexión a través de la ruta
1.
En un paquete SYN+ACK, los bits SYN y ACK se
fijan a 1, y en un paquete RST, el bit RST se fija a 1.
El orden de las etapas de la figura 7 es
únicamente un ejemplo, y en otras realizaciones de la invención
puede ser diferente. Además, la etapa de copia de un paquete se
puede efectuar en la etapa de envío de un paquete. Por ejemplo, en
una realización ventajosa de la invención el nodo 20 comprende una
memoria intermedia, en la cual el nodo 20 escribe el paquete
recibido desde la fuente. A continuación, el nodo 20 puede traducir
la dirección IP fuente en la memoria intermedia de manera que se
corresponda con la ruta hacia la que se enviará seguidamente el
paquete, y enviar una copia del paquete hacia la ruta.
La invención no se limita únicamente a conexiones
TCP para transmitir tráfico HTTP ya que la invención se puede
utilizar con muchos otros protocolos utilizados además de los
protocolos IP. Por ejemplo, como segundo protocolo se pueden
utilizar varios protocolos destinados a transportar datos de voz,
con lo cual el método de la invención permite el compartimiento de
la carga de conexiones de voz. La invención se puede utilizar con
muchos protocolos diferentes, tales como protocolos para la
transferencia de datos, voz, y la transmisión de vídeo. Una
implementación fiable de la invención requiere únicamente que el
inicio y el final de una conexión de acuerdo con el segundo
protocolo puedan ser reconocidos por la entidad, tal como un
elemento de red, que ejecute el método según la invención. Por
ejemplo, el inicio de una conexión TCP se puede observar observando
los bits de estado de un encabezamiento TCP: una conexión TCP se
inicia con un paquete que tiene el bit SYN fijado a 1 y el bit ACK
fijado a 0, y el final de una conexión se marca mediante un paquete
TCP que tiene el bit FIN fijado a 1. Para conexiones de voz según,
por ejemplo, algunos de los protocolos de la serie H.300, es
necesario leer e interpretar el contenido de los paquetes IP que
transportan los mensajes para reconocer los mensajes que indican el
inicio y el final de una conexión. Por ejemplo, el segundo
protocolo puede ser también el protocolo RTSP (protocolo de tren de
bits en tiempo real). El inicio y el final de una conexión se
detectan fácilmente a partir de la señalización según el protocolo
RTSP.
El método de la invención se puede utilizar con
los protocolos tanto IP versión 4 como IP versión 6.
En otra realización ventajosa de la invención,
para cada ruta se mide el tiempo transcurrido entre el envío del
primer datagrama a través de una ruta y la recepción de un primer
datagrama que comprende información de un tipo predefinido de las
rutas, y la ruta que presenta el tiempo medido más corto se
selecciona para ser utilizada para la conexión nueva. Además, el
tiempo medido para las rutas hacia un nodo extremo se puede
almacenar en unos medios de memoria. Posteriormente, si se va a
establecer una conexión nueva con el mismo nodo extremo, los
tiempos almacenados se pueden utilizar como base para la selección
de una ruta sin duplicación de paquetes con varias rutas, si los
resultados de tiempos almacenados son suficientemente recientes
como para ofrecer alguna formalidad. Dicha disposición puede
reducir la señalización provocada por el método de la invención.
Además, las etapas de fijación o traducción de la
dirección IP fuente de un datagrama pueden comprender también la
etapa de fijación o traducción de la dirección TCP fuente del
datagrama.
En una realización ventajosa de la invención, el
elemento de red que ejecuta el método de la invención realiza el
compartimiento de la carga de las conexiones únicamente para un
protocolo determinado o un grupo determinado de protocolos
utilizados además de los protocolos IP. Por ejemplo, el elemento de
red puede realizar, por ejemplo, únicamente el compartimiento de la
carga de conexiones TCP, o el compartimiento de la carga de
conexiones TCP y conexiones de voz. Para el resto del tráfico IP, el
elemento de red puede funcionar como un proxy transparente que
utiliza una ruta predefinida para el resto del tráfico IP. Si fuera
necesario en una configuración específica, el elemento de red puede
actuar también como una función convencional de traducción de
direcciones de red para el resto del tráfico IP.
Las realizaciones anteriores representan
realizaciones particularmente ventajosas de la invención. A
continuación, haciendo referencia a la figura 8 se presenta una
visión más general de la invención. Según el método,
- se selecciona 170 una ruta para una conexión
nueva a establecer entre el nodo fuente y un nodo extremo para la
transmisión de tráfico de paquetes,
- la ruta seleccionada se utiliza traduciendo 175
direcciones IP fuente de paquetes transmitidos desde el nodo fuente
hacia dicho nodo extremo en una dirección IP asociada a la ruta
seleccionada, y
- dicha selección de una ruta se realiza sobre la
base de criterios predefinidos.
Preferentemente, dicha selección de una ruta se
realiza para equilibrar la carga de conexiones nuevas entre la
pluralidad de rutas posibles.
Preferentemente, el nodo fuente se conecta con
una primera red IP, dicho nodo extremo se conecta con una segunda
red IP, dichas primera y segunda redes se conectan a través de una
pluralidad de vías, y cada vía de entre dicha pluralidad de vías se
corresponde con una ruta de entre la pluralidad de rutas
posibles.
En varias realizaciones de la invención, se
pueden utilizar varias formas para realizar la selección. Por
ejemplo, tal como se ha descrito anteriormente, la selección se
puede realizar sobre la base de tiempos de transcurso de los turnos
medidos mediante un método de duplicación de paquetes. No obstante,
también se pueden utilizar otras formas. Por ejemplo, el
rendimiento de las rutas se puede supervisar continuamente o durante
un periodo determinado para obtener datos estadísticos del
rendimiento de las rutas, y la ruta óptima se puede seleccionar
sobre la base de las estadísticas medidas. Además, para tomar la
decisión sobre la selección de una ruta también se pueden utilizar
otros tipos de algoritmos de equilibrado de la carga como los
correspondientes descritos en la RFC 2391. De forma
correspondiente, los criterios predefinidos según se menciona en las
reivindicaciones pueden ser de muchos tipos diferentes.
La figura 9 ilustra un sistema según una
realización ventajosa de la invención. La figura 9 muestra una red
IP interna 10, una red externa 40, un elemento 20 de red, tres
rutas diferentes 30 entre el elemento 20 de red y una red externa
40, y un nodo extremo 50 en la red externa. El sistema de la figura
9 se puede utilizar para la distribución de conexiones entre una
pluralidad de rutas entre un nodo fuente y nodos extremos, estando
asociada cada una de las rutas a una pluralidad de direcciones IP.
Las rutas se pueden corresponder, por ejemplo, con diferentes
proveedores de servicio de Internet. En la figura 9 el sistema se
realiza en un elemento 20 de red que conecta la red interna o fuente
10 con redes externas 30, 40.
No obstante, el sistema se puede realizar también
en más de un dispositivo separado físicamente, con lo cual la
invención no se limita a la realización del sistema en un único
dispositivo informático. El sistema comprende
- medios 250 para seleccionar una ruta para una
conexión nueva a establecer entre el nodo fuente y un nodo extremo
para la transmisión de tráfico de paquetes,
- medios 230 para traducir direcciones IP fuente
de paquetes de cara a la transmisión desde el nodo fuente hacia
dicho nodo extremo en una dirección IP asociada a la ruta
seleccionada, estando dispuestos dichos medios destinados a
seleccionar una ruta de manera que seleccionan una ruta sobre la
base de criterios predefinidos.
Preferentemente, dichos medios destinados a
seleccionar una ruta están dispuestos de manera que realizan la
selección para equilibrar la carga de conexiones nuevas entre la
pluralidad de rutas posibles.
La figura 9 ilustra también otra realización de
la invención. Según la realización, el sistema comprende
- medios 200 para detectar un datagrama IP
destinado a un nodo extremo que comprende un mensaje de
establecimiento de acuerdo con un segundo protocolo,
- medios 210 para enviar dicho datagrama IP hacia
una primera ruta de entre la pluralidad de rutas de cara a la
transmisión hacia dicho nodo extremo,
- medios 220 para copiar dicho datagrama IP de
manera que se crea un segundo datagrama IP de cara a su transmisión
hacia dicho nodo extremo a través de una segunda ruta de entre la
pluralidad de rutas,
- medios 230 para traducir la dirección IP fuente
de dicho segundo datagrama IP en una dirección IP que pertenece a
la pluralidad de direcciones IP asociadas a dicha segunda ruta,
y
- medios 240 para enviar dicho segundo datagrama
IP hacia dicha segunda ruta de cara a la transmisión hacia dicho
nodo extremo.
De forma ventajosa los medios 200, 210, 220, 230,
240 se realizan utilizando instrucciones de software almacenadas en
unos medios de memoria del dispositivo de ordenador o dispositivos
de ordenador utilizados para realizar el sistema, siendo ejecutadas
dichas instrucciones por las unidades de procesado del dispositivo
de ordenador o los dispositivos de ordenador.
La invención presenta varias ventajas. Por
ejemplo, la invención ofrece una solución que no requiere cambios
en los clientes o servidores dentro de la red fuente. Además, el
método de la invención se puede personalizar para proporcionar un
compartimiento de la carga para determinados servicios individuales
o para todos los servicios utilizados por un emplazamiento. La
funcionalidad de la invención se puede integrar en cortafuegos,
servidores proxy HTTP transparentes, o se puede realizar, por
ejemplo, utilizando un dispositivo de pasarela dedicado. El método
de la invención es especialmente adecuado para el equilibrado de la
carga del protocolo HTTP que constituye más del 90% del volumen de
tráfico de Internet.
La invención se puede utilizar también para
aumentar la fiabilidad de las conexiones entre una red privada y
una red IP externa tal como Internet. Si una de las rutas entre las
dos redes falla, el método de la invención puede distribuir
automáticamente todas las conexiones nuevas con el resto de las
rutas. En tal caso, los criterios predefinidos utilizados en la
selección de la ruta tienen en cuenta ventajosamente el estado de
las rutas.
Si las decisiones de la selección de la ruta se
basan al menos parcialmente en el rendimiento de las rutas, el
método de la invención también puede tener en cuenta las
diferencias en el rendimiento de las partes de las rutas que están
dentro de la red externa tal como Internet. Por esta razón, no
solamente se tiene en cuenta el rendimiento de los enlaces a través
de los proveedores de servicio de Internet, sino también el
rendimiento de aquella parte de las conexiones que se extiende
desde el punto de conexión entre el equipo ISP e Internet hasta el
nodo extremo dentro de Internet.
En esta solicitud la expresión nodo extremo se
utiliza para significar un nodo a través del cual pasan todas las
rutas después de atravesar por lo menos nodos parcialmente
separados dentro de una red. No es necesario que el nodo extremo sea
el punto extremo final de una conexión. Por ejemplo, el nodo
extremo puede ser un servidor de telefonía IP, que a continuación
reenvía el tren de datos recibidos hacia un teléfono IP. En este
ejemplo, las rutas entre las que se realiza la selección se
encuentran entre el nodo fuente y el servidor de telefonía IP, y el
servidor de telefonía IP es el nodo extremo según la terminología de
esta solicitud.
Los proveedores de servicios de Internet tienen
diferencias notables en las conexiones internacionales e Internet
está cambiando todo el tiempo. La invención permite la selección
dinámica del ISP más rápido para cada conexión TCP/IP saliente, es
decir, el usuario tiene siempre la mejor conexión posible con el
destino. La invención elimina la necesidad de configuraciones
complicadas de enrutamiento BGP-4
multi-home. Además, la invención facilita el
despliegue de conexiones ISP nuevas.
La invención se puede utilizar en aquellas
configuraciones que tienen más de una ruta entre un nodo de
ordenador y una red IP. Por ejemplo, una empresa puede tener una
conexión con Internet a través de más de un proveedor de servicios
de Internet para obtener el ancho de banda y la fiabilidad
suficientes. La invención puede ser utilizada también por
proveedores de servicios de Internet que tienen más de un enlace de
comunicación con Internet.
Claims (14)
1. Método para la distribución de conexiones
entre una pluralidad de rutas posibles para la transmisión de
tráfico de paquetes IP entre un nodo fuente y nodos extremos,
estando asociada cada una de las rutas a una pluralidad de
direcciones IP, utilizando las conexiones el protocolo IP y por lo
menos un segundo protocolo, comprendiendo el método
- la selección de una ruta para una conexión
nueva a establecer entre el nodo fuente y un nodo extremo para la
transmisión de tráfico de paquetes,
- la utilización de la ruta seleccionada
traduciendo direcciones IP fuente de paquetes transmitidos desde el
nodo fuente hacia dicho nodo extremo en una dirección IP asociada a
la ruta seleccionada, y
- realización de dicha selección de una ruta
sobre la base de criterios predefinidos, caracterizado
porque el método comprende por lo menos las siguientes etapas, en
las cuales
- se crea un primer datagrama IP que comprende
un mensaje de establecimiento de un segundo protocolo para iniciar
una conexión nueva con un nodo extremo utilizando dicho segundo
protocolo,
- se envía dicho primer datagrama IP a través de
una primera ruta de entre las rutas entre el nodo fuente y dicho
nodo extremo,
- se copia dicho primer datagrama IP para crear
un segundo datagrama IP de cara a enviarlo a través de una segunda
ruta de entre las rutas entre el nodo fuente y dicho nodo
extremo,
- se traduce la dirección IP fuente de dicho
segundo datagrama IP en una dirección IP seleccionada de entre la
pluralidad de direcciones IP asociadas a dicha segunda ruta,
- se transmite dicho segundo datagrama IP a
través de dicha segunda ruta hacia dicho nodo extremo,
- se recibe, desde dicho nodo extremo a través
de una de las rutas, un primer datagrama que comprende información
de un tipo predefinido, y
- se selecciona, como ruta a utilizar, la ruta
desde la que se recibe dicho primer datagrama que comprende
información de un tipo predefinido.
2. Método según la reivindicación 1,
caracterizado porque dicha selección de una ruta se realiza
para equilibrar la carga de conexiones nuevas entre la pluralidad de
rutas posibles.
3. Método según la reivindicación 1,
caracterizado porque el nodo fuente se conecta a una
primera red IP, dicho nodo extremo se conecta a una segunda red
IP, dichas primera y segunda redes se conectan a través de una
pluralidad de vías, y cada vía de entre dicha pluralidad de vías
se corresponde con una ruta de entre la pluralidad de rutas
posibles.
4. Método según la reivindicación 1,
caracterizado porque el método comprende una etapa en la
cual la dirección IP fuente de dicho primer datagrama IP se traduce
en una dirección IP seleccionada de entre la pluralidad de
direcciones IP asociadas a dicha primera ruta.
5. Método según la reivindicación 1,
caracterizado porque dicho primer datagrama que comprende
información de un tipo predefinido es un primer datagrama de
respuesta enviado por dicho nodo extremo como respuesta a uno de
entre dichos primer y segundo datagramas IP.
6. Método según la reivindicación 1,
caracterizado porque la señalización de establecimiento de
la conexión según dicho segundo protocolo prosigue a través de la
ruta seleccionada.
7. Método según la reivindicación 1,
caracterizado porque el método después de enviar dichos
primer y segundo datagramas IP, el procedimiento de señalización del
establecimiento de la conexión prosigue a través de dicha primera y
dicha segunda rutas, y dicho primer datagrama que comprende
información de un tipo predefinido es un primer datagrama IP que
comprende datos de carga útil de acuerdo con el segundo protocolo
enviado por dicho nodo extremo.
8. Método según la reivindicación 1,
caracterizado porque dicho segundo protocolo es el
protocolo TCP.
9. Método según la reivindicación 1
caracterizado porque el protocolo IP es el protocolo IP
versión 4.
10. Método según la reivindicación 1,
caracterizado porque el protocolo IP es el protocolo IP
versión 6.
11. Método según la reivindicación 1,
caracterizado porque dicho segundo protocolo es un protocolo
para transportar datos de voz.
12. Sistema para la distribución de conexiones
entre una pluralidad de rutas posibles para la transmisión de
tráfico de paquetes IP entre un nodo fuente y nodos extremos,
estando asociada cada una de las rutas a una pluralidad de
direcciones IP, en donde el sistema comprende
- medios para seleccionar una ruta para una
conexión nueva a establecer entre el nodo fuente y un nodo extremo
para la transmisión de tráfico de paquetes,
- medios para traducir direcciones IP fuente de
paquetes de cara a su transmisión desde el nodo fuente hacia dicho
nodo extremo en una dirección IP asociada a la ruta seleccionada,
estando dispuestos dichos medios destinados a seleccionar una ruta
de manera que seleccionan una ruta sobre la base de criterios
predefinidos, caracterizado porque el sistema comprende
- medios para detectar un datagrama IP destinado
a un nodo extremo que comprende un mensaje de establecimiento de
acuerdo con un segundo protocolo,
- medios para enviar dicho datagrama IP hacia
una primera ruta de entre la pluralidad de rutas de cara a la
transmisión hacia dicho nodo extremo,
- medios para copiar dicho datagrama IP de
manera que se crea un segundo datagrama IP de cara a su transmisión
hacia dicho nodo extremo a través de una segunda ruta de entre la
pluralidad de rutas,
- medios para traducir la dirección IP fuente de
dicho segundo datagrama IP en una dirección IP que pertenece a la
pluralidad de direcciones IP asociadas a dicha segunda ruta, y
- medios para enviar dicho segundo datagrama IP
hacia dicha segunda ruta de cara a la transmisión hacia dicho nodo
extremo.
13. Sistema según la reivindicación 12,
caracterizado porque dichos medios destinados a seleccionar
una ruta están dispuestos de manera que realizan la selección para
equilibrar la carga de conexiones nuevas entre la pluralidad de
rutas posibles.
14. Elemento de red para la distribución de
conexiones entre una pluralidad de rutas posibles para la
transmisión de tráfico de paquetes IP entre un nodo fuente y nodos
extremos, estando asociada cada una de las rutas a una pluralidad
de direcciones IP, en donde el elemento de red comprende
- medios para seleccionar una ruta para una
conexión nueva a establecer entre el nodo fuente y un nodo extremo
para la transmisión de tráfico de paquetes,
- medios para traducir direcciones IP fuente de
paquetes de cara a su transmisión desde el nodo fuente hacia dicho
nodo extremo en una dirección IP asociada a la ruta seleccionada,
estando dispuestos dichos medios destinados a seleccionar una ruta
de manera que seleccionan una ruta sobre la base de criterios
predefinidos, caracterizado porque el elemento de red
comprende
- medios para detectar un datagrama IP destinado
a un nodo extremo que comprende un mensaje de establecimiento de
acuerdo con un segundo protocolo,
- medios para enviar dicho datagrama IP hacia
una primera ruta de entre la pluralidad de rutas de cara a la
transmisión hacia dicho nodo extremo,
- medios para copiar dicho datagrama IP de
manera que se crea un segundo datagrama IP de cara a su transmisión
hacia dicho nodo extremo a través de una segunda ruta de entre la
pluralidad de rutas,
- medios para traducir la dirección IP fuente de
dicho segundo datagrama IP en una dirección IP que pertenece a la
pluralidad de direcciones IP asociadas a dicha segunda ruta, y
- medios para enviar dicho segundo datagrama IP
hacia dicha segunda ruta de cara a la transmisión hacia dicho nodo
extremo.
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| FI991470A FI107421B (fi) | 1999-06-28 | 1999-06-28 | Yhteyksien valintamenetelmä |
| FI991470 | 1999-06-28 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| ES2198267T3 true ES2198267T3 (es) | 2004-02-01 |
Family
ID=8554975
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| ES00660120T Expired - Lifetime ES2198267T3 (es) | 1999-06-28 | 2000-06-28 | Metodo de seleccion de conexion. |
Country Status (6)
| Country | Link |
|---|---|
| US (1) | US6650621B1 (es) |
| EP (1) | EP1065844B1 (es) |
| AT (1) | ATE239333T1 (es) |
| DE (1) | DE60002396T2 (es) |
| ES (1) | ES2198267T3 (es) |
| FI (1) | FI107421B (es) |
Families Citing this family (72)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6665702B1 (en) | 1998-07-15 | 2003-12-16 | Radware Ltd. | Load balancing |
| US6957254B1 (en) * | 1999-10-21 | 2005-10-18 | Sun Microsystems, Inc | Method and apparatus for reaching agreement between nodes in a distributed system |
| US7523181B2 (en) * | 1999-11-22 | 2009-04-21 | Akamai Technologies, Inc. | Method for determining metrics of a content delivery and global traffic management network |
| 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 |
| US7058706B1 (en) * | 2000-03-31 | 2006-06-06 | Akamai Technologies, Inc. | Method and apparatus for determining latency between multiple servers and a client |
| US7346676B1 (en) * | 2000-07-19 | 2008-03-18 | Akamai Technologies, Inc. | Load balancing service |
| US7725602B2 (en) * | 2000-07-19 | 2010-05-25 | Akamai Technologies, Inc. | Domain name resolution using a distributed DNS network |
| US8060581B2 (en) * | 2000-07-19 | 2011-11-15 | Akamai Technologies, Inc. | Dynamic image delivery system |
| US7653706B2 (en) * | 2000-07-19 | 2010-01-26 | Akamai Technologies, Inc. | Dynamic image delivery system |
| FI112148B (fi) * | 2000-07-24 | 2003-10-31 | Stonesoft Oyj | Tietoliikenteen ohjausmenetelmä |
| US7089301B1 (en) * | 2000-08-11 | 2006-08-08 | Napster, Inc. | System and method for searching peer-to-peer computer networks by selecting a computer based on at least a number of files shared by the computer |
| US7043633B1 (en) * | 2000-08-28 | 2006-05-09 | Verizon Corporation Services Group Inc. | Method and apparatus for providing adaptive self-synchronized dynamic address translation |
| US8037530B1 (en) | 2000-08-28 | 2011-10-11 | Verizon Corporate Services Group Inc. | Method and apparatus for providing adaptive self-synchronized dynamic address translation as an intrusion detection sensor |
| US6826684B1 (en) * | 2000-08-28 | 2004-11-30 | Verizon Corporate Services Group Inc. | Sliding scale adaptive self-synchronized dynamic address translation |
| US6816464B1 (en) * | 2000-09-13 | 2004-11-09 | Array Telecom Corporation | Method, system, and computer program product for route quality checking and management |
| US7562147B1 (en) * | 2000-10-02 | 2009-07-14 | Microsoft Corporation | Bi-directional HTTP-based reliable messaging protocol and system utilizing same |
| US6980521B1 (en) * | 2000-11-29 | 2005-12-27 | Cisco Technology, Inc. | Method and apparatus for per session load balancing with improved load sharing in a packet switched network |
| JP2002176441A (ja) * | 2000-12-08 | 2002-06-21 | Fujitsu Ltd | 通信装置 |
| US7739497B1 (en) * | 2001-03-21 | 2010-06-15 | Verizon Corporate Services Group Inc. | Method and apparatus for anonymous IP datagram exchange using dynamic network address translation |
| US20020188647A1 (en) * | 2001-06-12 | 2002-12-12 | Dovi Mark A. | Method and apparatus for optimizing data transfers between processes |
| DE60101798T2 (de) * | 2001-08-31 | 2004-06-17 | Stonesoft Corp. | Datenübertragungs-Methode und -netzknoten zur Leitwegeauswahl mittels Umlaufzeit und Paket-Übertragungsrate |
| US20030079018A1 (en) * | 2001-09-28 | 2003-04-24 | Lolayekar Santosh C. | Load balancing in a storage network |
| US7409706B1 (en) * | 2001-10-02 | 2008-08-05 | Cisco Technology, Inc. | System and method for providing path protection of computer network traffic |
| EP1331771B1 (en) * | 2002-01-24 | 2007-01-17 | Alcatel Canada Inc. | Method and apparatus for synchronizing redundant communication tasks |
| US8005980B2 (en) | 2002-01-24 | 2011-08-23 | Alcatel Lucent | Method and apparatus for synchronizing redundant communication tasks |
| US7406035B2 (en) | 2002-01-24 | 2008-07-29 | Alcatel-Lucent Canada Inc. | Method and apparatus for providing redundant protocol processes in a network element |
| US8769154B2 (en) | 2002-01-24 | 2014-07-01 | Alcatel Lucent | Method and apparatus for facilitating routing protocol redundancy in a network element |
| US9332037B2 (en) * | 2002-03-27 | 2016-05-03 | Alcatel Lucent | Method and apparatus for redundant signaling links |
| JP3665622B2 (ja) | 2002-03-29 | 2005-06-29 | 株式会社東芝 | ソースアドレス選択システム、ルータ装置、通信ノード及びソースアドレス選択方法 |
| EP1546911A4 (en) * | 2002-09-17 | 2007-03-21 | Mobitv Inc | SYSTEM AND METHOD FOR PACKAGING AND DISTRIBUTION OF DATA |
| US20040111529A1 (en) * | 2002-12-10 | 2004-06-10 | Intel Corporation (A Delaware Corporation) | Dynamic host based load balancing of a multihomed network |
| CN100349408C (zh) | 2004-02-12 | 2007-11-14 | 华为技术有限公司 | 实现网管系统和网元设备配置数据实时同步的方法 |
| GB0416272D0 (en) * | 2004-07-20 | 2004-08-25 | British Telecomm | Method of operating a network |
| JP4313266B2 (ja) * | 2004-07-29 | 2009-08-12 | 株式会社エヌ・ティ・ティ・ドコモ | サーバ装置、その制御方法およびコネクション確立方法 |
| US8155125B1 (en) * | 2004-09-17 | 2012-04-10 | Cisco Technology, Inc. | Apparatus and method for utilizing aggregate network links for multicast switching |
| JP4257857B2 (ja) * | 2004-09-22 | 2009-04-22 | インターナショナル・ビジネス・マシーンズ・コーポレーション | データ処理システムおよびデータ処理方法 |
| GB0421664D0 (en) * | 2004-09-29 | 2004-10-27 | Nokia Corp | Method for commuication over a lossy interface |
| US8145908B1 (en) | 2004-10-29 | 2012-03-27 | Akamai Technologies, Inc. | Web content defacement protection system |
| US8346956B2 (en) | 2004-10-29 | 2013-01-01 | Akamai Technologies, Inc. | Dynamic image delivery system |
| US8825804B2 (en) * | 2005-01-26 | 2014-09-02 | International Business Machines Corporation | Method and system for avoiding an unintentional time-out for communications in a client-proxy-server environment |
| US7480264B1 (en) | 2005-02-10 | 2009-01-20 | Sonicwall, Inc. | Centralized wireless LAN load balancing |
| CN100505684C (zh) * | 2005-03-29 | 2009-06-24 | 国际商业机器公司 | 网络系统,流量均衡方法,网络监视设备和主机 |
| US7869353B2 (en) * | 2005-06-23 | 2011-01-11 | International Business Machines Corporation | Method and system for transmitting a message between two isolated locations based on limited range communication means |
| US7719995B2 (en) * | 2005-09-09 | 2010-05-18 | Zeugma Systems Inc. | Application driven fast unicast flow replication |
| US20070058530A1 (en) * | 2005-09-14 | 2007-03-15 | Sbc Knowledge Ventures, L.P. | Apparatus, computer readable medium and method for redundant data stream control |
| US8831011B1 (en) * | 2006-04-13 | 2014-09-09 | Xceedium, Inc. | Point to multi-point connections |
| US7804830B2 (en) * | 2007-06-19 | 2010-09-28 | International Secure Virtual Offices (Asia) Pte. Ltd | IP connectivity with NAT traversal |
| WO2009002075A2 (en) * | 2007-06-27 | 2008-12-31 | Electronics And Telecommunications Research Institute | Method and system for optimizing routing between nodes in proxy mobile ipv6 network |
| KR100969152B1 (ko) | 2007-06-27 | 2010-07-08 | 한국전자통신연구원 | 프록시 모바일 아이피버전6 망에서 노드 간의 경로 최적화방법 및 시스템 |
| US7953808B2 (en) * | 2008-03-04 | 2011-05-31 | Apple Inc. | Automatic notification system and process |
| JP5470720B2 (ja) * | 2008-03-07 | 2014-04-16 | 日本電気株式会社 | イベント処理システムおよびイベント処理方法 |
| US8135392B2 (en) | 2008-06-06 | 2012-03-13 | Apple Inc. | Managing notification service connections and displaying icon badges |
| US9516116B2 (en) * | 2008-06-06 | 2016-12-06 | Apple Inc. | Managing notification service connections |
| US20100223364A1 (en) * | 2009-02-27 | 2010-09-02 | Yottaa Inc | System and method for network traffic management and load balancing |
| WO2010099513A2 (en) * | 2009-02-27 | 2010-09-02 | Coach Wei | Adaptive network with automatic scaling |
| WO2010102084A2 (en) * | 2009-03-05 | 2010-09-10 | Coach Wei | System and method for performance acceleration, data protection, disaster recovery and on-demand scaling of computer applications |
| EP2415207B1 (en) * | 2009-03-31 | 2014-12-03 | Coach Wei | System and method for access management and security protection for network accessible computer services |
| US8243960B2 (en) * | 2010-03-04 | 2012-08-14 | Bose Corporation | Planar audio amplifier output inductor with current sense |
| CN103119903B (zh) * | 2010-09-30 | 2016-09-21 | 瑞典爱立信有限公司 | 用于网络服务器之间的负载平衡的设备和方法 |
| US9397883B2 (en) * | 2013-12-23 | 2016-07-19 | Red Hat Israel, Ltd. | Modifying network settings of an unreachable host |
| US9876724B2 (en) * | 2014-12-23 | 2018-01-23 | Jordan University Of Science And Technology | Method for seamless multi-link network connectivity |
| US10320691B1 (en) * | 2016-01-30 | 2019-06-11 | Innovium, Inc. | Visibility packets |
| US10355981B1 (en) | 2016-03-02 | 2019-07-16 | Innovium, Inc. | Sliding windows |
| US11075847B1 (en) | 2017-01-16 | 2021-07-27 | Innovium, Inc. | Visibility sampling |
| US10735339B1 (en) | 2017-01-16 | 2020-08-04 | Innovium, Inc. | Intelligent packet queues with efficient delay tracking |
| US12537776B1 (en) | 2017-01-16 | 2026-01-27 | Innovium, Inc. | Enhanced visibility sampling |
| US10499306B2 (en) * | 2017-05-24 | 2019-12-03 | Cisco Technology, Inc. | Methods and apparatus for selecting a network route for data communications for IoT devices |
| US10805178B2 (en) | 2017-11-27 | 2020-10-13 | Cisco Technology, Inc. | Subscription-based event notification techniques for reducing data buffering in mobile networks |
| CN116155797A (zh) * | 2020-05-13 | 2023-05-23 | 华为技术有限公司 | 一种协议报文的处理方法、网络设备及计算机存储介质 |
| US11621904B1 (en) | 2020-11-06 | 2023-04-04 | Innovium, Inc. | Path telemetry data collection |
| US11784932B2 (en) | 2020-11-06 | 2023-10-10 | Innovium, Inc. | Delay-based automatic queue management and tail drop |
| US11570707B2 (en) * | 2021-01-11 | 2023-01-31 | Dell Products L.P. | Systems and methods for comparison and scoring of network access points |
Family Cites Families (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE3788577T2 (de) | 1986-01-09 | 1994-07-07 | Nippon Electric Co | Paketvermitteltes Fernmeldenetz mit parallelen virtuellen Verbindungen zur Umweglenkung von Nachrichtenpaketen. |
| US4953162A (en) | 1987-08-26 | 1990-08-28 | Lyons Paul J | Multipath local area network |
| US5511168A (en) * | 1993-07-01 | 1996-04-23 | Digital Equipment Corporation | Virtual circuit manager for multicast messaging |
| US6457054B1 (en) * | 1997-05-15 | 2002-09-24 | Intel Corporation | System for reducing user-visibility latency in network transactions |
| US6446121B1 (en) * | 1998-05-26 | 2002-09-03 | Cisco Technology, Inc. | System and method for measuring round trip times in a network using a TCP packet |
-
1999
- 1999-06-28 FI FI991470A patent/FI107421B/fi not_active IP Right Cessation
- 1999-10-05 US US09/412,867 patent/US6650621B1/en not_active Expired - Lifetime
-
2000
- 2000-06-28 ES ES00660120T patent/ES2198267T3/es not_active Expired - Lifetime
- 2000-06-28 AT AT00660120T patent/ATE239333T1/de active
- 2000-06-28 DE DE60002396T patent/DE60002396T2/de not_active Expired - Lifetime
- 2000-06-28 EP EP00660120A patent/EP1065844B1/en not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| FI991470A0 (fi) | 1999-06-28 |
| US6650621B1 (en) | 2003-11-18 |
| EP1065844B1 (en) | 2003-05-02 |
| ATE239333T1 (de) | 2003-05-15 |
| FI107421B (fi) | 2001-07-31 |
| DE60002396D1 (de) | 2003-06-05 |
| DE60002396T2 (de) | 2004-02-05 |
| EP1065844A2 (en) | 2001-01-03 |
| FI991470L (fi) | 2000-12-29 |
| EP1065844A3 (en) | 2002-08-07 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP1065844B1 (en) | Connection selection method | |
| JP6549996B2 (ja) | ネットワーク装置、通信方法、及び、ネットワークシステム | |
| Postel et al. | Standard for the transmission of IP datagrams over IEEE 802 networks | |
| Simpson | IP in IP tunneling | |
| US6697354B1 (en) | Method and system for distributed network address translation for mobile network devices | |
| Davidson | An introduction to TCP/IP | |
| KR100380554B1 (ko) | QoS 세션 설정 방법 및 이동 IP 환경 | |
| US20010017862A1 (en) | IP router device having a TCP termination function and a medium thereof | |
| JP4277189B2 (ja) | ルータ装置及びパケット転送制御方法 | |
| EP0823165B1 (en) | Asynchronous packet switching | |
| BR112017006261B1 (pt) | Método para endereçamento múltiplo sensível a aplicativo para aceleração de tráfego de dados em redes de comunicação de dados | |
| JPH09130407A (ja) | 通信ネットワークのatmセルの伝送に使用されるデータフォーマット | |
| US9445384B2 (en) | Mobile device to generate multiple maximum transfer units and data transfer method | |
| WO2008040203A1 (en) | Method, system, and router for calculating the maximum transmission unit of the router output interface | |
| CN1333568C (zh) | 基于过渡机制的IPv6网和IPv4网间互通的方法 | |
| ES2256432T3 (es) | Metodo para distinguir clientes en un sistema de comunicacion y dispositivo de comunicacion. | |
| CN102868613A (zh) | 一种通用路由封装隧道报文发送方法和装置 | |
| CN109361614A (zh) | 一种基于vxlan的负载均衡方法及系统 | |
| US20070160050A1 (en) | Diagnostic mechanism for Layer 2 and Layer 3 networks | |
| RU2272363C2 (ru) | Устройство, способ и система для усовершенствованной маршрутизации в сети мобильного ip | |
| US10637825B2 (en) | Router and method for connecting an IPv4 network and an IPv6 network | |
| JP2004274702A (ja) | ルータ装置及びパケット転送制御方法 | |
| CN107104911B (zh) | Udp数据包的分割方法和发送方法 | |
| JP2008301517A (ja) | ルータ装置及びパケット転送制御方法 | |
| CN107547376B (zh) | 路由探测方法和装置 |