ES2220661T3 - Metodo de operacion de una memoria temporal de reensamblado de paquetes. - Google Patents
Metodo de operacion de una memoria temporal de reensamblado de paquetes.Info
- Publication number
- ES2220661T3 ES2220661T3 ES01202199T ES01202199T ES2220661T3 ES 2220661 T3 ES2220661 T3 ES 2220661T3 ES 01202199 T ES01202199 T ES 01202199T ES 01202199 T ES01202199 T ES 01202199T ES 2220661 T3 ES2220661 T3 ES 2220661T3
- Authority
- ES
- Spain
- Prior art keywords
- temporary
- packet
- temporary memory
- fragments
- package
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
- H04L49/9084—Reactions to storage capacity overflow
- H04L49/9089—Reactions to storage capacity overflow replacing packets in a storage arrangement, e.g. pushout
- H04L49/9094—Arrangements for simultaneous transmit and receive, e.g. simultaneous reading/writing from/to the storage element
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
- H04L49/9047—Buffering arrangements including multiple buffers, e.g. buffer pools
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q11/00—Selecting arrangements for multiplex systems
- H04Q11/04—Selecting arrangements for multiplex systems for time-division multiplexing
- H04Q11/0428—Integrated services digital network, i.e. systems for transmission of different types of digitised signals, e.g. speech, data, telecentral, television signals
- H04Q11/0478—Provisions for broadband connections
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5638—Services, e.g. multimedia, GOS, QOS
- H04L2012/5646—Cell characteristics, e.g. loss, delay, jitter, sequence integrity
- H04L2012/5652—Cell construction, e.g. including header, packetisation, depacketisation, assembly, reassembly
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5638—Services, e.g. multimedia, GOS, QOS
- H04L2012/5665—Interaction of ATM with other protocols
- H04L2012/5667—IP over ATM
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5678—Traffic aspects, e.g. arbitration, load balancing, smoothing, buffer management
- H04L2012/5681—Buffer or queue management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
Un método de operación de una memoria temporal (300) de reensamblado para reensamblar paquetes de datos a partir de fragmentos de los paquetes de datos, en el que cada fragmento del paquete de datos ha sido transmitido por separado a partir de otros fragmentos del paquete de datos a través de la red de datos, comprendiendo el método las etapas de: a) recepción de un primer fragmento de un nuevo paquete; b) asignar una posición en la memoria temporal para el nuevo paquete; caracterizado porque c) se desplaza la posición de la memoria temporal asignada al fina de una lista enlazada de memorias temporales; d) recepción de los subsiguientes fragmentos y haciéndoles pasar a la posición de la memoria temporal asignada y repetir la etapa c); e) transmitir el paquete reensamblado a partir de la posición de la memoria temporal asignada cuando se haya recibido el último fragmento; f) permitir que la posición de la memoria temporal asignada alcance la parte superior de la lista enlazada de memorias temporales si no se reciben fragmentos adicionales; y g) reutilizar la posición de la memoria temporal asignada cuando alcance la parte superior de la lista enlazada de memorias temporales.
Description
Método de operación de una memoria temporal de
reensamblado de paquetes.
La presente invención está relacionada con una
mejora en la gestión de las memorias temporales o en relación con
las mismas, y más particularmente con la gestión de las memorias
temporales de reensamblado.
En la red de Internet, los datos son transferidos
a través de una red global de ordenadores homogéneos por los medios
de una pluralidad de dispositivos de enrutamiento de acuerdo con un
protocolo estándar conocido como Protocolo de Internet (IP). El
protocolo IP es un protocolo basado en la transferencia de datos en
partes de dimensiones variables conocidas como paquetes. Todo el
tráfico de la red incluye el transporte de paquetes de datos.
En las redes de Modo de Transferencia Asíncrona
(ATM), los datos son transferidos en pequeñas células de una
longitud fija, transportando típicamente 48 bytes de datos. Las
redes ATM permiten unas altas velocidades de transmisión,
manteniendo las cabeceras debido a los protocolos de comunicación en
un mínimo, y mediante la implementación de la mayoría de los
protocolos de comunicación en el hardware. En particular, el
enrutamiento de las redes ATM se consigue en su totalidad mediante
el hardware. En las redes ATM, se establecen circuitos virtuales
entre los remitentes y los destinatarios denominado como canales
virtuales, en las que la configuración y el mantenimiento de los
canales virtuales se encuentran implementados en el hardware para
minimizar los retardos de conmutación.
Los enrutadores son dispositivos para aceptar los
paquetes entrantes; el almacenamiento temporal de todos los
paquetes; y después el envío de los paquetes a otra parte de la red.
Para todos los propósitos de la descripción siguiente, el término
"dispositivo de enrutamiento" se refiere a cualquier
dispositivo que ejecute la función de un enrutador o una central de
conmutación de circuitos. Un ejemplo relevante de un dispositivo de
enrutamiento es una central de conmutación de ATM a IP.
Existe un requisito urgente para los dispositivos
de enrutamiento que puede enrutar el trafico IP en anchos de banda
agregados extremadamente grandes, del orden de varios terabits por
segundo. Tales dispositivos de enrutamiento se denominan como
"enrutadores de terabits".
Cuando un paquete IP se transmite entre los
enrutadores a través de un enlace ATM, el paquete tiene que ser
segmentado en células ATM de longitud fija. El enrutador receptor
tiene que reensamblar el paquete original a partir de las células
conforme llegan las mismas.
En primer lugar, se mantiene un fondo común libre
de memorias temporales de paquetes (o memorias temporales de
reensamblado). En segundo lugar, a la llegada de la primera célula
para un paquete dado, se asigna una memoria temporal de paquetes a
partir del fondo común libre. Los datos del paquete se copian a
partir de la célula en la memoria temporal y se inicializa un
temporizador. El temporizador es conocido como el temporizador de
reensamblado, cuya función es proteger el sistema contra las células
perdidas.
A la llegada de cada subsiguiente célula para el
paquete dado, excepto la última, los datos del paquete se copian a
partir de la célula en la memoria temporal. Después de cada evento
de la copia nueva, se reinicializa el temporizador de reensamblado.
A la llegada de la última célula para el paquete dado, los datos del
paquete se copian de nuevo a partir de la célula en la memoria
temporal y se detiene el temporizador de reensamblado. El nuevo
paquete completo es procesado y transmitido a su destino o destinos
proyectados. La memoria temporal es retornada después al fondo común
libre.
Si se termina el temporizador de reensamblado, se
supone entonces que una o más células se han perdido o se han
degenerado. En este caso, se abandona el reensamblado y la memoria
temporal es retornada al fondo común libre.
Es importante observar, no obstante, que el
enrutador tiene que ejecutar múltiples reensamblados en forma
concurrente. Típicamente, el enrutador tendrá varios circuitos
abiertos virtuales ATM, transportando cada uno los datos de los
paquetes IP. Dentro de cualquier circuito virtual, las células de un
paquete dado llegarán en forma contigua. No obstante, las células
del paquete dado que estén llegando en distintos circuitos virtuales
serán intercaladas en forma relativa entre sí, lo cual significa
también que las células de distintos paquetes serán intercaladas. Es
posible que los reensamblados concurrentes sean necesarios para cada
circuito virtual, requiriendo cada uno su propio temporizador. Para
enrutadores de alta capacidad con grandes números de circuitos
virtuales, se precisarán grandes cantidades de temporizadores.
Es por tanto un objeto de la invención el obviar
o al menos el poder mitigar los problemas antes mencionados.
En el documento de Fonseca DANLS y otros sobre
"la efectividad del sistema de descarte de la selección de
paquetes largos", de IEEE Globecom 1998, el puente a la
integración global. Sidney, 8-12 Noviembre, 1998,
IEEE Conferencia de Telecomunicaciones Globales, Nueva York, NY:
IEEE, US, volumen 3, 1998, páginas 1747 a 1753, se expone un nuevo
método de descarte de paquetes para su utilización en el transporte
de paquetes TCP/IP a través de redes ATM.
En el documento WO 98/36358 se expone un método y
aparato para mantener un orden en el tiempo mediante el ordenamiento
físico en una memoria que puede ser utilizada en un sistema de
paquetes conmutados.
De acuerdo con un aspecto de la presente
invención, se proporciona un método de operación de una memoria
temporal de reensamblado para reensamblar paquetes de datos a partir
de fragmentos de los paquetes de datos, en el que cada fragmento del
paquete de datos ha sido transmitido por separado a partir de otros
fragmentos del paquete de datos a través de la red de datos,
comprendiendo el método las etapas de:
- a)
- recepción de un primer fragmento de un nuevo paquete;
- b)
- asignar una posición en la memoria temporal para el nuevo paquete; caracterizado porque
- c)
- se desplaza la posición de la memoria temporal asignada al final de una lista enlazada de memorias temporales;
- d)
- recepción de los subsiguientes
fragmentos y haciéndoles pasar a la posición de la memoria temporal
asignada y repetir la
\hbox{etapa c);}
- e)
- transmitir el paquete reensamblado a partir de la posición de la memoria temporal asignada cuando se haya recibido el último fragmento;
- f)
- permitir que la posición de la memoria temporal asignada alcance la parte superior de la lista enlazada de memorias temporales si no se reciben fragmentos adicionales; y
- g)
- reutilizar la posición de la memoria temporal asignada cuando alcance la parte superior de la lista enlazada de memorias temporales.
De acuerdo con la invención se proporciona
también un enrutador de redes, que comprende una memoria temporal de
reensamblado para reensamblar los paquetes de datos a partir de los
fragmentos de los paquetes de datos, en que cada fragmento de un
paquete de datos ha sido transmitido por separado de otros
fragmentos del paquete de datos a través de una red de datos,
comprendiendo el enrutador:
- a)
- medios para recibir un primer fragmento de un nuevo paquete;
- b)
- medios para asignar una posición de la memoria temporal al nuevo paquete; caracterizado porque tiene
- c)
- medios para desplazar la posición de la memoria temporal asignada hasta el final de una lista enlazada de memorias temporales;
- d)
- medios para recibir fragmentos subsiguientes y hacerles pasar a la posición de la memoria temporal asignada y repetir la etapa c);
- e)
- medios para transmitir el paquete reensamblado a partir de la posición de la memoria temporal asignada cuando se haya recibido el último fragmento;
- f)
- medios para permitir que la posición de la memoria temporal asignada alcance la parte superior de la lista enlazada de memorias temporales si no se reciben fragmentos adicionales; y
- g)
- se reutiliza la posición de la memoria temporal asignada cuando alcanza la parte superior de la lista enlazada de memorias temporales.
El fragmento se define como una parte de un
paquete de datos que se transmite por separado debido a las
restricciones de una red. Un fragmento puede ser una célula o un
fragmento IP.
Una ventaja de la presente invención es que
permite el reensamblado de paquetes de longitud variable a partir de
células de longitud fija en ausencia de temporizadores de
reensamblado.
En una realización de la presente invención, se
proporciona un método para reensamblar paquetes de Protocolo de
Internet (IP) de longitud variable a partir de células del Modo de
Transferencia Asíncrona (ATM) de longitud fija en la ausencia de
temporizadores de reensamblado.
Para una mejor comprensión de la presente
invención se hará referencia solo a modo de ejemplo a los dibujos
adjuntos, en los cuales:
la figura 1 muestra una red ATM;
la figura 2 muestra un dispositivo para
reensamblar paquetes de datos de acuerdo con la presente invención;
y
la figura 3 muestra una memoria temporal que
comprende una parte del dispositivo de la figura 2.
La figura 1 muestra una red ATM 100, a la cual
están conectados una pluralidad de centrales de conmutación de
paquetes o enrutadores 102, 104, 106, 108, 110, 112. Aunque se
muestran solamente seis centrales de conmutación o enrutadores, se
observará que pueden conectarse cualquier número de centrales de
conmutación o enrutadores a la red 100, según se precisen para una
aplicación en particular.
Cada central de conmutación de paquetes 102, 104,
106, 108, 110, 112 están conectadas a cada una de las centrales de
conmutación de paquetes a través de la red 100. Aunque la red 100
se describe como una red ATM, puede ser también una red de protocolo
de Internet (IP).
Cada central de conmutación de paquetes 102, 104,
106, 108, 110, 112 puede ser considerada como una unidad de interfaz
para un enrutador de terabit (no mostrado). Dicho enrutador, por
ejemplo, un RipCore (Marca Comercial Registrada) comprende una
pluralidad de unidades de interfaz, teniendo cada unidad de interfaz
que soportar velocidades de interfaz de 2,5, 10 y 40 Gigabits por
segundo. En consecuencia, la gestión de paquetes tiene que ser lo
más simple posible para permitir los niveles más altos requeridos de
integración del hardware para reducir el riesgo de desarrollo.
La presente invención será descrita a
continuación con referencia a un enrutador de terabit, pero se
comprenderá fácilmente que es igualmente aplicable a las centrales
de conmutación de paquetes o a cualquier dispositivo en donde se
precise que tenga lugar el reensamblado de los datos de los
paquetes. Un caso en particular en donde se precisa el reensamblado
de los datos de los paquetes es en el acceso a una central de
conmutación de paquetes o a un enrutador de terabit.
La figura 2 muestra un enrutador de terabit 200
que comprende una entrada 202 para recibir los paquetes de datos, en
la forma de células, desde una red (no mostrada). El enrutador 200
incluye una función de recepción de células 204 para recibir células
individuales desde la red, y enviar las células a una memoria
temporal de reensamblado 206, en donde las células se recogen y se
reensamblan en sus paquetes originales de datos. Las células
reensambladas tienen salida desde el enrutador 200 en la salida 208.
La memoria temporal 206 se describe con más detalle con referencia a
la figura 3.
En la figura 3, la memoria temporal 300 comprende
una pluralidad de elementos de memoria temporal 302, 304, 306, 308,
310, 312, 314, 316, 318, 320, 322, 324, 326, 328, 330, 332, 334,
336, 338, 340 dispuestos en una lista. Se observará que, aunque se
muestran veinte elementos de la memoria temporal, puede utilizarse
cualquier número adecuado de acuerdo con una aplicación en
particular.
Tal como se muestra en la figura 3, el elemento
302 se encuentra en la parte superior de la lista y por tanto está
libre para su utilización, el elemento 340 contiene al menos una
célula de un paquete, y el elemento 318 puede contener un paquete
substancialmente reensamblado. Esto se expone a modo de ejemplo. Se
observará que elemento 318 puede estar también libre como en la
mitad de la lista. Adicionalmente el elemento 340 puede estar libre
también en caso de que haya justamente comenzado el reensamblado del
paquete.
En una realización de la presente invención, se
encuentran implementados las siguientes etapas en un enrutador de
terabit:
Primeramente, el fondo común libre de memorias
temporales de paquetes, la memoria temporal 300, se mantiene como
una lista enlazada. La lista enlazada es conocida como una "lista
libre".
Cuando llega la primera célula para un paquete
dado, se toma un elemento de la memoria temporal de la cabecera de
la lista libre, el elemento de la memoria temporal 302, y los datos
del paquete de la primera célula son copiados en dicho elemento de
la memoria temporal. El elemento de la memoria temporal se desplaza
entonces hasta el final de la lista libre, tal como se muestra
mediante una flecha 342. El elemento de la memoria temporal 340 se
desplaza entonces fuera de la lista en la dirección indicada por la
flecha 344.
A la llegada de las células subsiguientes para el
paquete dado, excluyendo la última, los datos del paquete son
copiados en el elemento correspondiente de la memoria temporal, y el
elemento de la memoria temporal es desplazado hasta el final de la
lista libre.
A la llegada de la última célula para el paquete
dado, los datos del paquete de la última célula son copiados en el
elemento de la memoria temporal y siendo procesado el paquete
completo, y pasándolo a la salida 208 tal como se muestra en la
figura 2. Una vez que haya tenido lugar el reensamblado, el elemento
de la memoria temporal se desplaza en forma ascendente en la lista
en la dirección indicada por la flecha 344 hasta que se encuentre en
la parte superior de la lista, y reiniciando el proceso para un
nuevo paquete.
Si las células de un paquete se pierden, de forma
que nunca se reciba el paquete completo, el elemento de la memoria
temporal, como resultado de las asignaciones de la memoria temporal
para otros paquetes, reaparecerá en la cabecera de la lista libre,
según se indica por una flecha 344, y se reutilizará para un nuevo
paquete. El reensamblado que haya fallado se abandonará
automáticamente.
Esto se repite para cada paquete individual de
datos, de forma que solo un elemento de la memoria temporal recoja
las células relativas a un paquete en particular de datos, y
existiendo un tiempo real cuando el elemento de la memoria temporal
alcance la parte superior de la lista.
Se observará fácilmente que esta técnica podría
ser utilizada para la protección contra ciertos ataques denominados
como "denegación de servicio" en las redes de ordenadores.
El protocolo IP soporta la fragmentación de
paquetes para permitir que se transmitan grandes paquetes a través
de las redes que contienen enlaces con límites físicos en sus
dimensiones de los paquetes. En consecuencia, un paquete grande
puede ser descompuesto en varios pequeños paquetes a reensamblar en
su último destino. Esto hace que la red sea vulnerable para el
ataque. Un agente hostil puede enviar a su objetivo un gran número
de fragmentos individuales identificados cada uno como
pertenecientes a paquetes más grandes, pero para los cuales no se
envíen fragmentos subsiguientes. El objetivo (utilizando un esquema
de reensamblado convencional según lo descrito anteriormente)
reservará recursos para cada reensamblado, dando por resultado el
agotamiento de la memoria temporal. Es difícil combatir este tipo de
ataque a través del uso de temporizadores de reensamblado, puesto
que si los temporizadores fueran de duración suficientemente corta
para ser efectivos, no serían suficientemente largos para acomodar
la llegada de paquetes fragmentados reales.
Un objetivo que utilice un esquema de
reensamblado de acuerdo con la presente invención tiene mucha menos
probabilidad de sufrir el agotamiento de la memoria temporal bajo
dicha denegación de los ataques del servicio. Los fragmentos
fraudulentos gastan ancho de banda pero no tienen efecto final en el
fondo común libre.
Claims (4)
1. Un método de operación de una memoria temporal
(300) de reensamblado para reensamblar paquetes de datos a partir de
fragmentos de los paquetes de datos, en el que cada fragmento del
paquete de datos ha sido transmitido por separado a partir de otros
fragmentos del paquete de datos a través de la red de datos,
comprendiendo el método las etapas de:
- a)
- recepción de un primer fragmento de un nuevo paquete;
- b)
- asignar una posición en la memoria temporal para el nuevo paquete; caracterizado porque
- c)
- se desplaza la posición de la memoria temporal asignada al fina de una lista enlazada de memorias temporales;
- d)
- recepción de los subsiguientes fragmentos y haciéndoles pasar a la posición de la memoria temporal asignada y repetir la etapa c);
- e)
- transmitir el paquete reensamblado a partir de la posición de la memoria temporal asignada cuando se haya recibido el último fragmento;
- f)
- permitir que la posición de la memoria temporal asignada alcance la parte superior de la lista enlazada de memorias temporales si no se reciben fragmentos adicionales; y
- g)
- reutilizar la posición de la memoria temporal asignada cuando alcance la parte superior de la lista enlazada de memorias temporales.
2. Un método de acuerdo con la reivindicación 1,
en el que los paquetes de datos son paquetes de datos del Protocolo
de Internet.
3. Un método de acuerdo con la reivindicación 1 ó
2, en el que los fragmentos son células ATM.
4. Un enrutador de redes, que comprende una
memoria temporal (300) de reensamblado para reensamblar los paquetes
de datos a partir de los fragmentos de los paquetes de datos, en que
cada fragmento de un paquete de datos ha sido transmitido por
separado de otros fragmentos del paquete de datos a través de una
red de datos, comprendiendo el enrutador:
- a)
- medios para recibir un primer fragmento de un nuevo paquete;
- b)
- medios para asignar una posición de la memoria temporal al nuevo paquete; caracterizado porque tiene
- c)
- medios para desplazar la posición de la memoria temporal asignada hasta el final de una lista enlazada de memorias temporales;
- d)
- medios para recibir fragmentos subsiguientes y hacerles pasar a la posición de la memoria temporal asignada y repetir la etapa c);
- e)
- medios para transmitir el paquete reensamblado a partir de la posición de la memoria temporal asignada cuando se haya recibido el último fragmento;
- f)
- medios para permitir que la posición de la memoria temporal asignada alcance la parte superior de la lista enlazada de memorias temporales si no se reciben fragmentos adicionales; y
- g)
- se reutiliza la posición de la memoria temporal asignada cuando alcanza la parte superior de la lista enlazada de memorias temporales.
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GBGB0016474.9A GB0016474D0 (en) | 2000-07-05 | 2000-07-05 | Reassembly buffer management |
GB0016474 | 2000-07-05 | ||
GB0024735A GB2364468A (en) | 2000-07-05 | 2000-10-10 | Buffer management |
GB0024735 | 2000-10-10 |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2220661T3 true ES2220661T3 (es) | 2004-12-16 |
Family
ID=26244595
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES01202199T Expired - Lifetime ES2220661T3 (es) | 2000-07-05 | 2001-06-08 | Metodo de operacion de una memoria temporal de reensamblado de paquetes. |
Country Status (7)
Country | Link |
---|---|
US (1) | US6888835B2 (es) |
EP (1) | EP1170975B1 (es) |
JP (1) | JP4606657B2 (es) |
AT (1) | ATE267502T1 (es) |
CA (1) | CA2350778C (es) |
DE (1) | DE60103331T2 (es) |
ES (1) | ES2220661T3 (es) |
Families Citing this family (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20010075331A (ko) * | 1998-09-23 | 2001-08-09 | 추후제출 | 프로그램 제어장치 |
US6804692B2 (en) | 2001-12-21 | 2004-10-12 | Agere Systems, Inc. | Method and apparatus for reassembly of data blocks within a network processor |
US7110422B1 (en) * | 2002-01-29 | 2006-09-19 | At&T Corporation | Method and apparatus for managing voice call quality over packet networks |
CA2484722C (en) | 2002-05-03 | 2012-07-10 | Cedar Point Communications, Inc. | Communications switching architecture |
US7558873B1 (en) | 2002-05-08 | 2009-07-07 | Nvidia Corporation | Method for compressed large send |
US20030212735A1 (en) * | 2002-05-13 | 2003-11-13 | Nvidia Corporation | Method and apparatus for providing an integrated network of processors |
US7437548B1 (en) | 2002-07-11 | 2008-10-14 | Nvidia Corporation | Network level protocol negotiation and operation |
US7397797B2 (en) * | 2002-12-13 | 2008-07-08 | Nvidia Corporation | Method and apparatus for performing network processing functions |
US7420983B2 (en) * | 2003-03-13 | 2008-09-02 | Alcatel Lucent | Dynamic assignment of re-assembly queues |
JP4283589B2 (ja) * | 2003-03-25 | 2009-06-24 | 株式会社エヌ・ティ・ティ・ドコモ | 通信装置、通信制御方法及びプログラム |
US7359983B1 (en) * | 2003-06-24 | 2008-04-15 | Nvidia Corporation | Fragment processing utilizing cross-linked tables |
US7620070B1 (en) | 2003-06-24 | 2009-11-17 | Nvidia Corporation | Packet processing with re-insertion into network interface circuitry |
US7359380B1 (en) | 2003-06-24 | 2008-04-15 | Nvidia Corporation | Network protocol processing for routing and bridging |
US7913294B1 (en) | 2003-06-24 | 2011-03-22 | Nvidia Corporation | Network protocol processing for filtering packets |
US7444360B2 (en) * | 2004-11-17 | 2008-10-28 | International Business Machines Corporation | Method, system, and program for storing and using metadata in multiple storage locations |
US8316129B2 (en) | 2005-05-25 | 2012-11-20 | Microsoft Corporation | Data communication coordination with sequence numbers |
US9037745B2 (en) * | 2006-01-18 | 2015-05-19 | International Business Machines Corporation | Methods and devices for processing incomplete data packets |
TWI312248B (en) * | 2006-01-25 | 2009-07-11 | Hon Hai Prec Ind Co Ltd | System adn method for managing buffer resources in a modem |
US8074275B2 (en) * | 2006-02-01 | 2011-12-06 | Cisco Technology, Inc. | Preventing network denial of service attacks by early discard of out-of-order segments |
US8665892B2 (en) * | 2006-05-30 | 2014-03-04 | Broadcom Corporation | Method and system for adaptive queue and buffer control based on monitoring in a packet network switch |
EP1912402B1 (en) * | 2006-10-10 | 2019-08-28 | Mitsubishi Electric R&D Centre Europe B.V. | Protection of the data transmission network systems against buffer oversizing attacks |
US20080205423A1 (en) * | 2007-02-28 | 2008-08-28 | Gainer James J | Method and Apparatus for Communicating Variable-Sized Packets in a Communications Network |
US8743907B1 (en) | 2008-01-28 | 2014-06-03 | Marvell Israel (M.I.S.L.) Ltd. | Apparatus for reassembling a fragmented data unit and transmitting the reassembled data unit |
JP5473406B2 (ja) * | 2008-07-18 | 2014-04-16 | キヤノン株式会社 | ネットワーク処理装置及びその処理方法 |
US9331955B2 (en) * | 2011-06-29 | 2016-05-03 | Microsoft Technology Licensing, Llc | Transporting operations of arbitrary size over remote direct memory access |
US8856582B2 (en) | 2011-06-30 | 2014-10-07 | Microsoft Corporation | Transparent failover |
US20130067095A1 (en) | 2011-09-09 | 2013-03-14 | Microsoft Corporation | Smb2 scaleout |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3085391B2 (ja) | 1989-06-19 | 2000-09-04 | 株式会社日立製作所 | 通信装置 |
US5809024A (en) * | 1995-07-12 | 1998-09-15 | Bay Networks, Inc. | Memory architecture for a local area network module in an ATM switch |
US5920561A (en) * | 1996-03-07 | 1999-07-06 | Lsi Logic Corporation | ATM communication system interconnect/termination unit |
US5898688A (en) * | 1996-05-24 | 1999-04-27 | Cisco Technology, Inc. | ATM switch with integrated system bus |
US5870394A (en) * | 1996-07-23 | 1999-02-09 | Northern Telecom Limited | Method and apparatus for reassembly of data packets into messages in an asynchronous transfer mode communications system |
US5999980A (en) * | 1996-09-12 | 1999-12-07 | Cabletron Systems, Inc. | Apparatus and method for setting a congestion indicate bit in an backwards RM cell on an ATM network |
JP4452781B2 (ja) * | 1997-02-14 | 2010-04-21 | アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド | メモリ内の物理的順序によって時間順を維持するための方法および装置 |
US5905889A (en) * | 1997-03-20 | 1999-05-18 | International Business Machines Corporation | Resource management system using next available integer from an integer pool and returning the integer thereto as the next available integer upon completion of use |
US6148001A (en) * | 1997-06-12 | 2000-11-14 | Nokia Telecommunications, Oy | Multipoint-to-point system which multiplexes complete packets comprised of ATM cells on to a single virtual channel connection |
US6026090A (en) * | 1997-11-14 | 2000-02-15 | Fore System, Inc. | Method and system for receiving ATM cells from an ATM network by a host |
CN1258140A (zh) * | 1998-07-24 | 2000-06-28 | 休斯电子公司 | 多传送模式无线电通信 |
GB2344974B (en) * | 1998-12-15 | 2003-07-23 | Roke Manor Research | Improvements in or relating to networks |
US7120155B2 (en) * | 2000-10-03 | 2006-10-10 | Broadcom Corporation | Switch having virtual shared memory |
US7020166B2 (en) * | 2000-10-03 | 2006-03-28 | Broadcom Corporation | Switch transferring data using data encapsulation and decapsulation |
US6889288B2 (en) * | 2002-12-02 | 2005-05-03 | Emc Corporation | Reducing data copy operations for writing data from a network to storage of a cached data storage system by organizing cache blocks as linked lists of data fragments |
-
2001
- 2001-06-08 DE DE60103331T patent/DE60103331T2/de not_active Expired - Lifetime
- 2001-06-08 EP EP01202199A patent/EP1170975B1/en not_active Expired - Lifetime
- 2001-06-08 ES ES01202199T patent/ES2220661T3/es not_active Expired - Lifetime
- 2001-06-08 AT AT01202199T patent/ATE267502T1/de not_active IP Right Cessation
- 2001-06-14 CA CA002350778A patent/CA2350778C/en not_active Expired - Fee Related
- 2001-07-05 US US09/898,485 patent/US6888835B2/en not_active Expired - Fee Related
- 2001-07-05 JP JP2001204460A patent/JP4606657B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
EP1170975A1 (en) | 2002-01-09 |
ATE267502T1 (de) | 2004-06-15 |
CA2350778A1 (en) | 2002-01-05 |
JP4606657B2 (ja) | 2011-01-05 |
US6888835B2 (en) | 2005-05-03 |
CA2350778C (en) | 2008-08-05 |
US20020024963A1 (en) | 2002-02-28 |
DE60103331T2 (de) | 2004-09-23 |
JP2002094569A (ja) | 2002-03-29 |
DE60103331D1 (de) | 2004-06-24 |
EP1170975B1 (en) | 2004-05-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2220661T3 (es) | Metodo de operacion de una memoria temporal de reensamblado de paquetes. | |
Verma et al. | Optical burst switching: a viable solution for terabit IP backbone | |
CN104205942B (zh) | 多跳错误恢复 | |
US8619769B2 (en) | Packet-layer transparent packet-switching network | |
US6553030B2 (en) | Technique for forwarding multi-cast data packets | |
CN101258719B (zh) | 延长InfiniBand网络的实时到达的方法 | |
ES2709354T3 (es) | Procedimiento y aparato de implementación de gestión de tráfico y dispositivo de red | |
US20020085567A1 (en) | Metro switch and method for transporting data configured according to multiple different formats | |
Pitkanen et al. | Message fragmentation in opportunistic DTNs | |
US20020085548A1 (en) | Quality of service technique for a data communication network | |
CN112019433B (zh) | 一种报文转发方法和装置 | |
JP2007201965A (ja) | 送信制御機能を備えるパケット中継装置 | |
US20020085507A1 (en) | Address learning technique in a data communication network | |
ES2306830T3 (es) | Procedimiento de transmision de paquetes de datos a traves de una red. | |
ES2289034T3 (es) | Aparato de transmision multiplex y procedimiento de transmision multiplex. | |
US20020085545A1 (en) | Non-blocking virtual switch architecture | |
US20080219157A1 (en) | System and method for data reconfiguration in an optical communication network | |
CN107547388B (zh) | 一种报文发送方法及装置 | |
ES2319418T3 (es) | Svs/spvc con envio ip de capa 3. | |
ES2530592B1 (es) | Sistema de comunicaciones, elementos de red y procedimiento para facilitar el encaminamiento de paquetes de datos | |
JP2005064922A (ja) | パケット交換装置 | |
ES2392409A1 (es) | Procedimiento de reparacion de caminos de tramas de datos y puente de red | |
GB2364468A (en) | Buffer management | |
Zheng et al. | Delayed burst segmentation for multi-hop optical burst switching networks | |
Tutorial | Architectural Principles of the Internet |