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
Application number
ES01202199T
Other languages
English (en)
Inventor
Andrew Reeve
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Roke Manor Research Ltd
Original Assignee
Roke Manor Research Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Priority claimed from GBGB0016474.9A external-priority patent/GB0016474D0/en
Application filed by Roke Manor Research Ltd filed Critical Roke Manor Research Ltd
Application granted granted Critical
Publication of ES2220661T3 publication Critical patent/ES2220661T3/es
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/9084Reactions to storage capacity overflow
    • H04L49/9089Reactions to storage capacity overflow replacing packets in a storage arrangement, e.g. pushout
    • H04L49/9094Arrangements for simultaneous transmit and receive, e.g. simultaneous reading/writing from/to the storage element
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/9047Buffering arrangements including multiple buffers, e.g. buffer pools
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q11/00Selecting arrangements for multiplex systems
    • H04Q11/04Selecting arrangements for multiplex systems for time-division multiplexing
    • H04Q11/0428Integrated services digital network, i.e. systems for transmission of different types of digitised signals, e.g. speech, data, telecentral, television signals
    • H04Q11/0478Provisions for broadband connections
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5638Services, e.g. multimedia, GOS, QOS
    • H04L2012/5646Cell characteristics, e.g. loss, delay, jitter, sequence integrity
    • H04L2012/5652Cell construction, e.g. including header, packetisation, depacketisation, assembly, reassembly
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5638Services, e.g. multimedia, GOS, QOS
    • H04L2012/5665Interaction of ATM with other protocols
    • H04L2012/5667IP over ATM
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5678Traffic aspects, e.g. arbitration, load balancing, smoothing, buffer management
    • H04L2012/5681Buffer 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.
ES01202199T 2000-07-05 2001-06-08 Metodo de operacion de una memoria temporal de reensamblado de paquetes. Expired - Lifetime ES2220661T3 (es)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

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