ES2264443T3 - Disposicion de tratamiento multiprotocolo. - Google Patents
Disposicion de tratamiento multiprotocolo.Info
- Publication number
- ES2264443T3 ES2264443T3 ES01921542T ES01921542T ES2264443T3 ES 2264443 T3 ES2264443 T3 ES 2264443T3 ES 01921542 T ES01921542 T ES 01921542T ES 01921542 T ES01921542 T ES 01921542T ES 2264443 T3 ES2264443 T3 ES 2264443T3
- Authority
- ES
- Spain
- Prior art keywords
- frame
- gpp
- data
- type
- address
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0806—Configuration setting for initial configuration or provisioning, e.g. plug-and-play
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Multi Processors (AREA)
- Mobile Radio Communication Systems (AREA)
- Communication Control (AREA)
- Computer And Data Communications (AREA)
- Exchange Systems With Centralized Control (AREA)
- Small-Scale Networks (AREA)
- Stored Programmes (AREA)
- Acyclic And Carbocyclic Compounds In Medicinal Compositions (AREA)
- Medicines Containing Plant Substances (AREA)
Abstract
Un sistema para distribuir el tratamiento de tramas de datos recibidas por un dispositivo (25a, 25b, 25c, ..., 25n) procesador de red (designado en adelante NP) en un entorno de red distribuido que comprende uno o más procesadores de control para fines generales (designados en adelante GPP) (15a, 15b, ..., 15n) que controlan, al menos, un dispositivo NP, en el que dicho procesador de red NP incluye un mecanismo para clasificar tramas de datos recibidas y medios para enviar tramas de datos recibidas a un GPP objetivo a través de una dirección de puerto objetivo, cuyo sistema se caracteriza porque comprende: una tabla (100) configurable incorporada en la práctica en dicho al menos un dispositivo NP para especificar tipos de tramas de datos y para establecer una relación de correspondencia de tramas de datos de un tipo especificado recibidas en dicho dispositivo NP con una dirección (115) objetivo y una dirección (120) de puerto objetivo asociadas con un GPP objetivo capaz de manejar tramas dedatos del tipo de trama especificado; y una interfaz de programación de aplicaciones para personalizar dicha tabla configurable en dicho dispositivo NP con dichas entradas de dirección objetivo y dirección de puerto objetivo a través de un GPP, en el que dicho procesador de red NP incluye, además, medios para comparar cada trama recibida con entradas en dicha tabla configurable, y en el que los medios para enviar tramas de datos responden a dicho tipo de trama clasificada que tiene una entrada correspondiente en dicha tabla, pudiendo ser hechos funcionar los medios para enviar una trama recibida a un GPP objetivo correspondiente a través de una dirección de puerto objetivo correspondiente, en el que dicho GPP objetivo está previsto para manejar el envío de tramas de datos del tipo especificado.
Description
Disposición de tratamiento multiprotocolo.
Esta invención se refiere de manera general a
dispositivos procesadores de red, y, más específicamente, a un
mecanismo para distribuir el tratamiento a través de varios
procesadores para fines generales (por ejemplo, procesadores de
punto de control).
La figura 1 representa una configuración 10 de
red típica que incluye un único dispositivo 15 de control de
procesador para fines generales (GPP) que controla muchos
dispositivos 25a, ..., 25n, procesadores de red. A menudo se crea
un cuello de botella de tratamiento en el sistema 10, en el GPP, ya
que el GPP maneja todos los tipos de paquetes (tramas) de datos
especiales (por ejemplo, tramas de control
Punto-a-Punto (PPP) o tramas
desconocidas).
La figura 2 ilustra una configuración de red más
distribuida que incorpora en la práctica múltiples
dispositivos
15a, ..., 15n, de control de procesador con fines generales. En esta configuración, para que un procesador de red envíe un tipo de trama especial a un GPP para su tratamiento, cada GPP requiere pilas de protocolo para cada protocolo que debe manejar, ya que los procesadores de red no son capaces de descifrar cómo enviar una trama especial a un GPP específico. El requisito de que cada GPP tenga una pila de protocolo completa para cada protocolo manejado por el Procesador de Red aumenta los requisitos de memoria y reduce el rendimiento.
15a, ..., 15n, de control de procesador con fines generales. En esta configuración, para que un procesador de red envíe un tipo de trama especial a un GPP para su tratamiento, cada GPP requiere pilas de protocolo para cada protocolo que debe manejar, ya que los procesadores de red no son capaces de descifrar cómo enviar una trama especial a un GPP específico. El requisito de que cada GPP tenga una pila de protocolo completa para cada protocolo manejado por el Procesador de Red aumenta los requisitos de memoria y reduce el rendimiento.
La patente estadounidense 5734830, expedida el
31 de marzo de 1998, describe un método de encaminamiento para
múltiples equipos y una estación maestra que incluye puertos
virtuales personalizados que son seleccionados por una unidad de
elección de acuerdo con una cabecera de dirección de enlace que
identifica una estación secundaria casada a la cual se va a
entregar el mensaje de datos en condiciones tales que un tipo de
equipo de red (NET) es, también, identificado automáticamente. El
método de encaminamiento y la estación maestra preveían funciones
de personalización encontradas típicamente en las capas
1-3 del modelo OSI de interconexiones de sistemas
abiertos, de manera que pueda producirse una comunicación entre
redes de diferentes tipos de equipos, tales como de tipo de
arquitectura de sistemas en red (tipo SNA) y equipos de tipo no
SNA.
En consecuencia, la invención proporciona un
sistema para distribuir el tratamiento de tramas de datos especiales
recibidas por un dispositivo procesador de red (NP) en un entorno
de red distribuida que comprende uno o más procesadores de control
con fines generales (GPP) que controlan, al menos, un dispositivo
NP, comprendiendo dicho sistema: una tabla configurable incorporada
en dicho al menos un dispositivo NP para establecer relación de
correspondencia de tipos de tramas de datos especiales recibidas en
dicho dispositivo NP con una dirección objetivo y una dirección de
puerto objetivo asociada con un GPP objetivo capaz de manejar dicho
tipo de trama especial; y una interfaz de programación de
aplicaciones para personalizar dicha tabla configurable en dicho
dispositivo NP con dicha dirección objetivo y entradas de dirección
de puerto objetivo a través de un GPP, en el que dicho procesador
de red NP incluye un mecanismo para clasificar las tramas de datos
recibidas y comparar cada trama con entradas en dicha tabla
configurable, y dicho dispositivo de tratamiento de red incluye
medios que responden a dicho tipo de trama clasificada que tiene una
entrada correspondiente en dicha tabla, para enviar dicha trama a
dicho GPP objetivo a través de una dirección de puerto objetivo
correspondiente, en el que dicho GPP objetivo está previsto para
manejar el envío de dicho tipo de trama de datos especiales.
Según una realización preferida, se proporciona
una configuración de GPP en un entorno de red distribuida que obvia
la necesidad de prever un conjunto completo de pilas de protocolo
para cada dispositivo de GPP.
Preferiblemente, se proporciona un mecanismo
para configurar equipos de GPP en un entorno de red distribuido
para manejar tipos de tramas especiales específicos y para ofrecer
la posibilidad de distribuir tipos de tramas especiales a un GPP
específico configurado mediante un procesador de red.
Además, se proporciona una Interfaz de Programa
de Aplicación (API) y un método para distribuir el tratamiento a
través de diversos procesadores para fines generales (por ejemplo,
procesadores de punto de control) y permitir que un procesador de
red configure qué procesador maneja operaciones específicas.
En un aspecto adicional, la invención
proporciona un método para distribuir el tratamiento de tramas de
datos especiales recibidas por un dispositivo procesador de red
(NP) en un entorno de red distribuido que comprende uno o más
procesadores de control para fines generales (GPP) que controlan uno
o más dispositivos NP, comprendiendo dicho método:
\newpage
a) proporcionar una tabla incorporada en dicho
dispositivo de NP para establecer una relación de correspondencia
de tipos de tramas de datos especiales recibidas en dicho
dispositivo de NP con una dirección objetivo y una dirección de
puerto objetivo asociada con un GPP objetivo capaz de tratar dicho
tipo de tramas especiales;
b) recibir en dicho procesador de red NP una
trama de datos de un tipo de trama de datos;
c) clasificar las tramas de datos recibidas y
comparar cada una de dichas tramas con entradas en dicha tabla;
y
d) si dicho tipo de trama clasificado tiene una
entrada correspondiente en dicha tabla, enviar dicha trama de datos
especiales a dicho GPP objetivo a través de una dirección de puerto
objetivo correspondiente, estando provisto dicho GPP objetivo para
manejar el envío de dicho tipo de trama de datos especiales, en el
que la operación a) incluye las etapas de: ejecutar prácticamente
una interfaz de programación de aplicaciones para configurar dicha
tabla con dicha dirección objetivo y una dirección de puerto
objetivo asociada con un GPP objetivo para cada entrada de tipo de
trama especial.
Ventajosamente, un método de esta clase permite,
preferiblemente, que un procesador de red distribuya el tratamiento
entre varios procesadores para fines generales (por ejemplo,
procesadores de punto de control) y ofrece la posibilidad de
configurar qué procesador maneja operaciones específicas en un gran
entorno de red, reduciendo así el número de pilas de protocolo que
necesitan ser mantenidas en cada procesador de control para fines
generales.
En otro aspecto más, la invención proporciona
una interfaz de programación de aplicaciones para configurar un
dispositivo procesador de red (NP) que opera en un entorno de red
distribuida que incluye uno o más procesadores para fines generales
(GPP) que controlan uno o más dispositivos NP, comprendiendo dicha
interfaz: un mecanismo para generar una estructura de datos para
introducir en dicho dispositivo NP, teniendo dicha estructura de
datos una o más entradas que especifican un tipo de trama especial y
direcciones objetivo asociadas y direcciones de puerto objetivo
asociadas con un GPP en dicho entorno de red capaz de manejar dicho
tipo de trama especial; y, un dispositivo para generar una tabla
personalizada a partir de dicha estructura de datos generada, e
introducir dicha tabla personalizada en una memoria de dispositivo
NP, por lo que las búsquedas de tabla subsiguientes en dicha tabla
son realizadas para enviar tipos de tramas especiales a un GPP
asociado a través de una dirección de puerto objetivo.
En todavía otro aspecto, la invención
proporciona un dispositivo de almacenamiento de programas legible
por una máquina, realizando concretamente un programa de
instrucciones ejecutable por la máquina para realizar operaciones
de método para configurar un dispositivo procesador de red (NP) que
opera en un entorno de red distribuida que incluye uno o más
procesadores de control para fines generales (GPP) que controlan uno
o más dispositivos NP, comprendiendo dicho método las operaciones
de:
(a) generar una estructura de datos para
introducirla en dicho dispositivo NP, teniendo dicha estructura de
datos una o más entradas que especifican un tipo de trama especial y
dirección objetivo asociada y dirección de puerto objetivo asociada
con un GPP asociado con dicho entorno de red capaz de manejar dicho
tipo de trama especial; y,
(b) generar una tabla personalizada a partir de
dicha estructura de datos generada, e introducir dicha tabla
personalizada en la memoria de dispositivo NP, por lo que se
realizan búsquedas de tabla subsiguientes en dicha tabla para
enviar tipos de tramas especiales a un GPP asociado a través de una
dirección de puerto objetivo.
Preferiblemente, la estructura de datos incluye
una cadena de valores de lista etiquetados, incluyendo cada valor
de lista etiquetado un campo atributo que representa un tipo de
trama especial a ser incluido en dicha tabla, un campo de longitud
que representa una longitud de dicho valor de lista etiquetado, y un
campo de valor para especificar una dirección objetivo asociada al
objetivo y una dirección de puerto objetivo para el tipo de trama
especial.
Ahora se describirá una realización preferida de
la presente invención, por medio de un único ejemplo, y haciendo
referencia a los dibujos siguientes:
la figura 1 es un diagrama de bloques general de
un entorno de tratamiento de red distribuida que incluye una
pluralidad de dispositivos de tratamiento de red controlados
mediante un único dispositivo procesador para fines generales
(GPP).
La figura 2 es un diagrama de bloques general de
un entorno de tratamiento de red distribuida que incluye una
pluralidad de dispositivos de tratamiento de red controlados
mediante múltiples dispositivos procesadores para fines generales
(GPP).
La figura 3 ilustra un ejemplo de tabla 100, que
puede ser personalizada, para enviar los tipos de tramas especiales
según una realización preferida de la presente invención.
La figura 4 es un diagrama de flujo que muestra
cómo está distribuido el tratamiento entre varios procesadores para
fines generales según una realización preferida de la presente
invención.
Según una realización preferida, se proporciona
una interfaz de programa de aplicaciones (API), la cual está
incorporada en la práctica mediante un dispositivo de control
procesador para fines generales (GPP) que opera en un entorno de
red distribuida (por ejemplo, GPP externo, GPP integrado en
procesador de red, etc.) para permitir la personalización y la
configuración de dispositivos procesadores de red (NP) de manera que
pueden manejar el envío de tipos de paquetes (tramas) de datos
especiales. Para propósitos ilustrativos, se hace referencia a un
dispositivo y a un sistema basados en procesadores de red, tales
como los descritos en la solicitud de patente estadounidense
también en tramitación, perteneciente a este mismo solicitante,
número de serie 09/384.691, solicitada el 27 de agosto de 1999 y
titulada "Complejo y métodos de tratamiento de procesador de
red", una copia de la cual se encuentra en el expediente. Sin
embargo, la invención puede emplearse en otros dispositivos basados
en procesadores de red con diferentes diseños de
hardware/software.
Generalmente, como se describe en la solicitud
de patente estadounidense mencionada anteriormente, también en
tramitación, el flujo general de una trama de datos recibida en un
dispositivo NP es como sigue. Las tramas recibidas de una conexión
de red, por ejemplo, MAC de Ethernet, son identificadas como tramas
de datos normales o como tramas de control de sistema (Tramas
Guiadas). En el contexto de la realización preferida, las tramas
identificadas como tramas de datos normales son puestas en cola
hacia un Complejo de Procesadores Integrados (EPC) que comprende
una pluralidad de picoprocesadores, por ejemplo, procesadores de
protocolo, que ejecutan lógica (picocódigo) capaz de mirar en la
cabecera de la trama recibida y decidir qué hacer con la trama
(enviar, modificar, filtrar, etc.). El EPC tiene acceso a varias
tablas de búsqueda, y el hardware de clasificación ayuda
para permitir que los picoprocesadores se mantengan dentro de los
requisitos de ancho de banda elevado del Procesador de Red. Un
dispositivo de ayuda de hardware de clasificación en
particular está previsto para clasificar tramas de formatos de
trama bien conocidos. El Complejo de Tratamiento Integrado (EPC)
prevé y controla particularmente la cualidad de programación del
chip del dispositivo NP e incluye, entre otros componentes (tales
como memoria, expedidor, interfaces), una o más unidades de
tratamiento que ejecutan, simultáneamente, un picocódigo que está
almacenado en una memoria de instrucciones común. Cada unidad de
tratamiento incluye, preferiblemente, un núcleo de Unidad de
Tratamiento, por ejemplo, que comprende un encauzamiento de 3
etapas, registros para fines generales y una ALU. Durante el
funcionamiento, los resultados de clasificación del dispositivo de
ayuda del hardware de clasificación se entregan a una o más
unidades de tratamiento durante la expedición de trama. Una unidad
de tratamiento en particular, denominada Manejador de Datos
Generales (GDH), comprende una unidad de tratamiento completo y uno
o más dispositivos de tratamiento común usados principalmente para
enviar tramas según una realización preferida de la invención.
La API de la realización preferida, en
particular, es usada por un GPP para configurar parámetros que
afectan cuando un picocódigo que se está ejecutando en un
procesador de red particular envía ciertos tipos de paquetes. Esta
API permite que un usuario final configure una tabla que puede ser
personalizada que remite a tipos de tramas especiales con un GPP
objetivo previsto para manejar las tramas especiales
correspondientes. De esta manera, se evita el requisito de prever
una pila de protocolo en cada GPP.
La figura 3 ilustra, a modo de ejemplo, una
tabla 100 que puede ser personalizada, para enviar los tipos de
tramas especiales a un GPP especificado previamente a través de la
API. En la realización preferida, la tabla 100 que puede ser
personalizada es una tabla plana configurada en la memoria de
dispositivo NP e incluye entradas que corresponden a tipos de
tramas especiales clasificados que incluyen, pero no están limitados
a: un tipo 102 de control
punto-a-punto (PPP), tipos 105 de
tramas de datos desconocidos (es decir, tramas de un protocolo no
entendido por el dispositivo NP), tipos 107 de tramas de IP, y
tramas de tipo 110 de adaptación (es decir, tramas recibidas desde
una malla de conmutadores en un lado de salida del NP). Se entiende
que sobre tipos de tramas especiales adicionales, por ejemplo,
protocolos de capa 3, se puede establecer relación de
correspondencia para destinos de GPP particulares en la tabla
personalizada representada en la figura 3. Se entiende, además, que
si la tabla 100 personalizada es de mayor tamaño, con muchas
entradas de tipo de trama, puede ser configurada en forma de árbol
binario en la memoria del NP para facilitar la búsqueda en tabla.
Para cada trama clasificada como tipo de trama especial, hay
prevista una entrada correspondiente que incluye: una dirección 115
de "cuchilla" objetivo, es decir, la dirección del elemento de
placa de circuito impreso asociado con el GPP de destino para
manejar el tipo de trama especial; y, una dirección 120 de puerto
del dispositivo NP que conecta al GPP de destino. Se entiende que
la tabla 100 también incluye, en algunas realizaciones, datos de
relación de correspondencia adicionales.
En la realización preferida, la tabla 100 que
puede ser personalizada es descargada del GPP a cada procesador
125a, ..., 125n de red en el sistema 100 a través de la API. Lo que
sigue es una API ilustrativa incorporada en la práctica para
configurar la tabla plana:
La API ilustrada anteriormente se describe ahora
con mayor detalle como sigue: específicamente, la API lleva a cabo
una llamada de procedimiento
np_ims_customizedParms_configure, que, en una realización, se
ejecuta en el lenguaje C/C++ para recibir parámetros especificados
por el usuario para configurar la tabla personalizada de la figura
3. Los parámetros incluyen: por ejemplo, una entrada
np_unit32number-TLVs que representa el número
de valores de lista etiquetados (TLV) proporcionados en una lista
de TLV, y proporciona una inicialización del número de tipos de
tramas especiales que van a ser configurados en la tabla; una
entrada np_TLV_s*tlv que representa un puntero a una cadena
de valores de TLV; y, una entrada np_msg_ctrl_info_s
ctrl_info que representa información de control para una
respuesta de sistema asíncrono, tal como una notificación de que la
API ha terminado de personalizar la tabla para el NP. Con referencia
a la cadena de valor de TLV, cada cadena es, preferiblemente, de la
forma identificada más arriba
donde Attr# representa un número de
atributo (uno o más octetos) que describe el protocolo particular
que va a ser configurado, por ejemplo, el protocolo PPP;
lenght representa la longitud física del valor; y
Value representa el valor real del tipo de trama de protocolo
y comprende una cantidad de bytes, por ejemplo, dos bytes, que
representan la dirección de "cuchilla" de NP y otra cantidad de
bytes (por ejemplo, dos bytes) que representan el puerto NP
asociado con el GPP objetivo. Estos valores son descargados para
almacenarlos en un campo de longitud variable. Para recuperar el
número posible de TLV puede hacerse referencia a un fichero de
cabecera np_types.h y, de manera correspondiente con la tabla
personalizada de la figura 3,
incluye
NP_ATTRNUM_'s que incluye dos bytes de dirección
NP + dos bytes de dirección de puerto, tales como: NP_
ATTRNUM_PPPCONTROL_ADDR, NP_ATTRNUM_IP_ADDR, NP_ATTRNUM_UNKNOWN_DATA_ADDR, y NP_ATTRNUM_WRAP_ADDR.
ATTRNUM_PPPCONTROL_ADDR, NP_ATTRNUM_IP_ADDR, NP_ATTRNUM_UNKNOWN_DATA_ADDR, y NP_ATTRNUM_WRAP_ADDR.
Otros datos configurados para descargar a través
de la API incluyen información de control para especificar
cualesquiera características de respuesta asíncrona esperadas, tal
como, por ejemplo, una notificación a través de la API de que cada
uno de los NP de la red ha sido configurado con la tabla
personalizada. Un parámetro de retorno de la API designado
np_return_code_t, por ejemplo, devuelve valores como:
NP_RC_NOT_READY para indicar que un subsistema en particular no fue
inicializado adecuadamente; NP_RC_BADPARMS para indicar que se ha
entregado un parámetro falso; NP_RC_MISCERR para indicar que se ha
producido un error durante la configuración de la tabla; y,
NP_RC_SUCCESS para indicar que la configuración del NP se realizó
con éxito.
Habiendo configurado el EPC de cada procesador
de red de la red distribuida, el procedimiento 200 de distribución
de tratamiento entre varios procesadores para fines generales se
describe ahora haciendo referencia a la figura 4 y de acuerdo con
una realización preferida.
Como se muestra en la figura 4, en ella se
ilustra una primera operación 203 de tratamiento que representa un
procesador de red que recibe una trama de la red. En la operación
205, el tipo de trama recibido es clasificado por un clasificador
de hardware del dispositivo procesador de red y la trama es
enviada al picocódigo NP que se ejecuta en el GDH. Si el
clasificador de hardware no pudiera clasificar la trama, la
clasifica el picocódigo. Basado en la clasificación, en la
operación 210, el picocódigo ejecuta la lógica para realizar una
búsqueda en la tabla personalizada 100 (figura 3) cargada en el
almacén de datos de un procesador de red. Se entiende que el tipo
de trama se usa, preferiblemente, como índice en la tabla 100.
Luego, en la operación 213, se determina si existe coincidencia, es
decir, si la trama ha de ser enviada a un GPP específico para
tratamiento especial basándose en su tipo de trama. Si no existe
coincidencia (es decir, no se requiere tratamiento especial), el
procesador de red trata la trama en la operación 215. Si, en la
operación 213, se determina que existe coincidencia, la búsqueda se
realiza en la tabla 100 personalizada para determinar la dirección
GPP y la dirección de puerto objetivos para ese tipo de trama en la
operación 218 y, la trama especial es enviada al GPP adecuado en la
operación 220 usando esos parámetros. El tratamiento descrito con
respecto a la figura 4 tiene como resultado cuatro posibles
consecuencias: 1) el paquete es enviado para tratamiento en el
procesador de red; 2) el paquete es redirigido a un GPP para
tratamiento; 3) el paquete es abandonado; y 4) el paquete es
abandonado y un mensaje no solicitado es enviado al GPP.
Un ejemplo que usa la metodología de la
realización preferida representada en la figura 4 se describe,
ahora, para el caso que supone el tratamiento de una trama de
Protocolo Punto-a-Punto (PPP). La
trama de PPP es tratada por el procesador de red. Si la trama es
una trama de control de PPP, es enviada al GPP configurado,
basándose en la tabla de búsqueda personalizada (figura 3). Si la
trama es una trama de capa 3, el picocódigo procesador de red de
capa 2 la envía al componente procesador de red adecuado. Si el
protocolo de capa 3 no es manejado mediante picocódigo, la trama es
enviada al GPP configurado para ese protocolo, como se especifica en
la tabla de búsqueda. Si el protocolo no ha sido habilitado, la
trama es puesta en una cola de desecho, no mostrada. Si la trama no
es una trama de capa 3 reconocida y la trama de PPP desconocida de
desecho está configurada, se pone en la cola de desecho. En otro
caso, la trama es envia-
da al GPP configurado para tramas de PPP desconocidas/no reconocidas, como se especifica en la tabla de búsqueda.
da al GPP configurado para tramas de PPP desconocidas/no reconocidas, como se especifica en la tabla de búsqueda.
Las acciones ilustrativas que se han tomado se
resumen en la tabla siguiente:
Protocolo | Acción |
Trama de control de PPP | Redirigir a GPP configurado |
IP | Seguir al NP de IP de capa 3 si IP habilitado en PCT |
Desconocido | Redirigir a GPP configurado (Datos Desconocidos) si la trama de PPP desconocida |
no está establecida en el PCT |
Se entiende que, habilitando un procesador de
red para distribuir el tratamiento entre varios procesadores para
fines generales y proporcionando la capacidad de configurar qué NP
maneja operaciones específicas en un gran entorno de red el
resultado es, ventajosamente, que se necesita menos pilas de
protocolo en cada procesador para fines generales, ya que cada GPP
estará equipado para manejar solamente las tramas especiales
enviadas por el NP de acuerdo con la tabla que puede ser
personalizada, ilustrada en la figura 3.
Claims (11)
1. Un sistema para distribuir el tratamiento de
tramas de datos recibidas por un dispositivo (25a, 25b, 25c, ...,
25n) procesador de red (designado en adelante NP) en un entorno de
red distribuido que comprende uno o más procesadores de control
para fines generales (designados en adelante GPP) (15a, 15b, ...,
15n) que controlan, al menos, un dispositivo NP, en el que dicho
procesador de red NP incluye un mecanismo para clasificar tramas de
datos recibidas y medios para enviar tramas de datos recibidas a un
GPP objetivo a través de una dirección de puerto objetivo, cuyo
sistema se caracteriza porque comprende:
una tabla (100) configurable incorporada en la
práctica en dicho al menos un dispositivo NP para especificar tipos
de tramas de datos y para establecer una relación de correspondencia
de tramas de datos de un tipo especificado recibidas en dicho
dispositivo NP con una dirección (115) objetivo y una dirección
(120) de puerto objetivo asociadas con un GPP objetivo capaz de
manejar tramas de datos del tipo de trama especificado; y
una interfaz de programación de aplicaciones
para personalizar dicha tabla configurable en dicho dispositivo NP
con dichas entradas de dirección objetivo y dirección de puerto
objetivo a través de un GPP,
en el que dicho procesador de red NP incluye,
además, medios para comparar cada trama recibida con entradas en
dicha tabla configurable, y en el que los medios para enviar tramas
de datos responden a dicho tipo de trama clasificada que tiene una
entrada correspondiente en dicha tabla, pudiendo ser hechos
funcionar los medios para enviar una trama recibida a un GPP
objetivo correspondiente a través de una dirección de puerto
objetivo correspondiente, en el que dicho GPP objetivo está previsto
para manejar el envío de tramas de datos del tipo especificado.
2. El sistema según la reivindicación 1, en el
que un tipo de trama de datos especificada incluye una trama de
datos de un protocolo no reconocido por dicho dispositivo NP.
3. El sistema de la reivindicación 1, que
comprende:
medios configurables para poner tipos de tramas
de un protocolo no reconocido por dicho dispositivo NP, en una cola
de desecho.
4. El sistema según las reivindicaciones 1, 2 o
3, en el que dicha tabla configurable tiene un diseño de tabla
plana configurada en la memoria de dicho dispositivo NP.
5. El sistema según las reivindicaciones 1, 2 o
3, en el que dicha tabla configurable tiene un diseño de árbol
binario configurado en la memoria de dicho dispositivo NP.
6. Un método para distribuir el tratamiento de
tramas de datos recibidas por un dispositivo (25a, 25b, 25c, ...,
25n) procesador de red (designado en adelante NP) en un entorno de
red distribuido que comprende uno o más procesadores de control
para fines generales (designados en adelante GPP) (15a, 15b, ...,
15n) que controlan uno o más dispositivos NP, comprendiendo dicho
método:
a) recibir en un procesador de red NP tramas de
datos que tienen, cada una, un tipo (203) de trama de datos; y
b) clasificar las tramas de datos recibidas,
cuyo método se caracteriza porque
comprende, además:
c) proporcionar una tabla (100) incorporada en
la práctica en dicho dispositivo NP para especificar tipos de
tramas de datos y para establecer una relación de correspondencia de
tramas de datos de un tipo especificado recibido en dicho
dispositivo NP con una dirección (115) objetivo y una dirección
(120) de puerto objetivo asociadas con un GPP objetivo capaz de
tratar dicho tipo de trama especificado;
d) comparar cada trama recibida citada con
entradas de dicha tabla (205); y
e) si una trama clasificada tiene una entrada
correspondiente en dicha tabla, enviar dicha trama de datos
clasificada del tipo especificado a dicho GPP objetivo a través de
una dirección de puerto objetivo correspondiente, estando previsto
dicho GPP objetivo para manejar el envío de tramas de datos del tipo
(220) especificado,
en el que la operación c) incluye la operación
de: incorporar en la práctica una interfaz de programación de
aplicaciones para configurar dicha tabla con dicha dirección
objetivo y una dirección de puerto objetivo asociadas con un GPP
objetivo para cada entrada de tipo de trama especificado.
7. El método de la dirección 6, que comprende la
operación de proporcionar una opción configurable para poner en una
cola de desecho tipos de tramas de un protocolo no reconocido por
dicho dispositivo NP.
\newpage
8. Una interfaz de programación de aplicaciones
para configurar un dispositivo (25a, 25b, 25c, ..., 25n) procesador
de red (designado en adelante NP) que opera en un entorno de red
distribuida que incluye uno o más procesadores de control para
fines generales (designados en adelante GPP) (15a, 15b, ..., 15n)
que controlan uno o más dispositivos NP, cuya interfaz de
programación de aplicaciones se caracteriza porque
comprende:
un mecanismo para generar una estructura de
datos para introducir en dicho dispositivo NP, teniendo dicha
estructura de datos una o más entradas que especifican un tipo de
trama de datos y una dirección (115) objetivo asociada y una
dirección (120) de puerto objetivo asociada con un GPP en dicho
entorno de red capaz de manejar tramas de datos del tipo de trama
especificado; y,
un dispositivo para generar una tabla (100)
personalizada a partir de dicha estructura de datos generada, e
introducir dicha tabla personalizada en una memoria de dispositivo
NP, por lo que las búsquedas de tabla subsiguientes en dicha tabla
son realizadas para enviar tramas de datos de un tipo de trama
especificado a un GPP asociado a través de una dirección de puerto
objetivo.
9. La interfaz de programación de aplicaciones
según la reivindicación 8, en la que dicha estructura de datos
incluye una cadena de valores de lista etiquetados, incluyendo cada
valor de lista etiquetado un campo de atributo que representa un
tipo de trama especificado a ser incluido en dicha tabla, un campo
de longitud que representa una longitud de dicho valor de lista
etiquetado, y un campo de valor para especificar una dirección
objetivo asociada a objetivo y una dirección de puerto objetivo para
dicho tipo de trama especificado.
10. Un dispositivo de almacenamiento de programa
legible por una máquina, que incorpora de manera concreta un
programa de instrucciones ejecutable por la máquina para realizar
operaciones de método para configurar un dispositivo (25a, 25b,
25c, ..., 25n) procesador de red (designado en adelante NP) que
opera en un entorno de red distribuido que incluye uno o más
procesadores de control para fines generales (designados en adelante
GPP) (15a, 15b, ..., 15n) que controlan uno o más dispositivos NP,
cuyo dispositivo de almacenamiento de programas se
caracteriza porque dichas operaciones de método
comprenden:
(a) generar una estructura de datos para
introducir en dicho dispositivo NP, teniendo dicha estructura de
datos una o más entradas que especifican un tipo de trama de datos y
una dirección (115) objetivo asociada y una dirección (120) de
puerto objetivo asociadas con un GPP asociado con dicho entorno de
red capaz de manejar tramas de datos del tipo de trama
especificado; y,
(b) generar una tabla (100) personalizada a
partir de dicha estructura de datos generada, e introducir dicha
tabla personalizada en la memoria de dispositivo NP, por lo que se
llevan a cabo búsquedas de tabla subsiguientes en dicha tabla para
enviar tramas de datos de un tipo especificado a un GPP asociado a
través de una dirección de puerto objetivo.
11. El dispositivo de almacenamiento de
programas legible por una máquina según la reivindicación 10, en el
que dicha estructura de datos incluye una cadena de valores de lista
etiquetados, incluyendo cada valor de lista etiquetado un campo de
atributo que representa un tipo de trama especificado a ser incluido
en dicha tabla, un campo de longitud que representa una longitud de
dicho valor de lista etiquetado, y un campo de valor para
especificar una dirección objetivo asociada a un objetivo y una
dirección de puerto objetivo para dicho tipo de trama
especificado.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US544588 | 2000-04-06 | ||
US09/544,588 US6675221B1 (en) | 2000-04-06 | 2000-04-06 | Method and apparatus for customizing and fowarding parameters in a network processor |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2264443T3 true ES2264443T3 (es) | 2007-01-01 |
Family
ID=24172803
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES01921542T Expired - Lifetime ES2264443T3 (es) | 2000-04-06 | 2001-04-05 | Disposicion de tratamiento multiprotocolo. |
Country Status (14)
Country | Link |
---|---|
US (1) | US6675221B1 (es) |
EP (1) | EP1293067B1 (es) |
JP (1) | JP3730921B2 (es) |
KR (1) | KR100543732B1 (es) |
CN (1) | CN1165144C (es) |
AT (1) | ATE331370T1 (es) |
AU (1) | AU2001248517A1 (es) |
CA (1) | CA2407060C (es) |
DE (1) | DE60120970T2 (es) |
ES (1) | ES2264443T3 (es) |
HK (1) | HK1053025B (es) |
MY (1) | MY129249A (es) |
TW (1) | TW501024B (es) |
WO (1) | WO2001077849A2 (es) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6973503B2 (en) | 2002-05-23 | 2005-12-06 | International Business Machines Corporation | Preventing at least in part control processors from being overloaded |
DE10260604B4 (de) * | 2002-12-23 | 2006-09-21 | Infineon Technologies Ag | Multikanal-Prozessor |
CN100440824C (zh) * | 2003-01-28 | 2008-12-03 | 华为技术有限公司 | 数字传送网上不同的数据帧接入和传送的方法 |
US7281247B2 (en) * | 2003-06-24 | 2007-10-09 | Microsoft Corporation | Software image creation in a distributed build environment |
US20050154762A1 (en) * | 2004-01-14 | 2005-07-14 | Bing Wang | Fast rule lookup with arbitrary IP range configurations |
US7974272B2 (en) | 2004-07-29 | 2011-07-05 | Conexant Systems, Inc. | Remote control of a switching node in a stack of switching nodes |
CN1294728C (zh) * | 2004-08-05 | 2007-01-10 | 华为技术有限公司 | 边缘路由器提供服务质量保证的方法及系统 |
US20060165121A1 (en) * | 2005-01-27 | 2006-07-27 | Alcatel | Communication protocol interface systems and methods |
KR100726175B1 (ko) * | 2005-12-09 | 2007-06-11 | 한국전자통신연구원 | 무선 휴대 인터넷 시스템에서 상위 프로토콜 메시지의 방송 전송 방법 및 장치 |
US7990974B1 (en) | 2008-09-29 | 2011-08-02 | Sonicwall, Inc. | Packet processing on a multi-core processor |
CN101964759B (zh) * | 2010-11-10 | 2012-03-28 | 中国人民解放军国防科学技术大学 | 支持多用户的高速报文分流方法 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2094097C (en) | 1992-04-30 | 2000-05-30 | Ray Balogh | Multi-equipment routing method and master station for layered protocol communication network system |
US5570084A (en) | 1994-06-28 | 1996-10-29 | Metricom, Inc. | Method of loose source routing over disparate network types in a packet communication network |
US5485460A (en) | 1994-08-19 | 1996-01-16 | Microsoft Corporation | System and method for running multiple incompatible network protocol stacks |
US6463078B1 (en) * | 1998-07-22 | 2002-10-08 | Microsoft Corporation | Method for switching protocols transparently in multi-user applications |
US6424621B1 (en) * | 1998-11-17 | 2002-07-23 | Sun Microsystems, Inc. | Software interface between switching module and operating system of a data packet switching and load balancing system |
US6272522B1 (en) * | 1998-11-17 | 2001-08-07 | Sun Microsystems, Incorporated | Computer data packet switching and load balancing system using a general-purpose multiprocessor architecture |
US6426944B1 (en) * | 1998-12-30 | 2002-07-30 | At&T Corp | Method and apparatus for controlling data messages across a fast packet network |
US6473434B1 (en) * | 2001-04-20 | 2002-10-29 | International Business Machines Corporation | Scaleable and robust solution for reducing complexity of resource identifier distribution in a large network processor-based system |
-
2000
- 2000-04-06 US US09/544,588 patent/US6675221B1/en not_active Expired - Lifetime
-
2001
- 2001-03-20 TW TW090106406A patent/TW501024B/zh not_active IP Right Cessation
- 2001-03-29 MY MYPI20011501A patent/MY129249A/en unknown
- 2001-04-05 AU AU2001248517A patent/AU2001248517A1/en not_active Abandoned
- 2001-04-05 JP JP2001574632A patent/JP3730921B2/ja not_active Expired - Fee Related
- 2001-04-05 AT AT01921542T patent/ATE331370T1/de not_active IP Right Cessation
- 2001-04-05 EP EP01921542A patent/EP1293067B1/en not_active Expired - Lifetime
- 2001-04-05 ES ES01921542T patent/ES2264443T3/es not_active Expired - Lifetime
- 2001-04-05 DE DE60120970T patent/DE60120970T2/de not_active Expired - Lifetime
- 2001-04-05 KR KR1020027013291A patent/KR100543732B1/ko not_active IP Right Cessation
- 2001-04-05 CN CNB018076602A patent/CN1165144C/zh not_active Expired - Fee Related
- 2001-04-05 WO PCT/GB2001/001566 patent/WO2001077849A2/en active IP Right Grant
- 2001-04-05 CA CA002407060A patent/CA2407060C/en not_active Expired - Fee Related
-
2003
- 2003-07-22 HK HK03105256.5A patent/HK1053025B/zh not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
HK1053025B (zh) | 2005-02-25 |
CN1165144C (zh) | 2004-09-01 |
WO2001077849A3 (en) | 2002-04-18 |
ATE331370T1 (de) | 2006-07-15 |
CN1422474A (zh) | 2003-06-04 |
TW501024B (en) | 2002-09-01 |
AU2001248517A1 (en) | 2001-10-23 |
MY129249A (en) | 2007-03-30 |
JP3730921B2 (ja) | 2006-01-05 |
DE60120970T2 (de) | 2007-01-04 |
HK1053025A1 (en) | 2003-10-03 |
JP2003530744A (ja) | 2003-10-14 |
KR20020087472A (ko) | 2002-11-22 |
WO2001077849A2 (en) | 2001-10-18 |
US6675221B1 (en) | 2004-01-06 |
CA2407060C (en) | 2007-10-16 |
KR100543732B1 (ko) | 2006-01-23 |
DE60120970D1 (de) | 2006-08-03 |
CA2407060A1 (en) | 2001-10-18 |
EP1293067B1 (en) | 2006-06-21 |
EP1293067A2 (en) | 2003-03-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20190327323A1 (en) | Accelerated network packet processing | |
US20170366605A1 (en) | Providing data plane services for applications | |
ES2720759T3 (es) | Descarga de procesamiento de paquetes para virtualización de dispositivos de red | |
US20190158398A1 (en) | System and method for improved service chaining | |
US10454991B2 (en) | NIC with switching functionality between network ports | |
ES2264443T3 (es) | Disposicion de tratamiento multiprotocolo. | |
US9036636B1 (en) | System and methods for managing network packet broadcasting | |
CN110035009B (zh) | 用于在网络设备内处理分组的设备及方法、计算机可读介质 | |
US11593144B2 (en) | Near-hitless upgrade or fast bootup with virtualized hardware | |
WO2013093858A1 (en) | Forwarding element for flexible and extensible flow processing in software-defined networks | |
CN107070674A (zh) | 第三方控制的数据包转发路径的网络装置数据平面沙盒 | |
US10536375B2 (en) | Individual network device forwarding plane reset | |
US8924915B2 (en) | Use of metadata for seamless updates | |
US10484333B2 (en) | Methods and systems for providing limited data connectivity | |
US11882060B2 (en) | Near-hitless upgrade or fast bootup with mobile virtualized hardware | |
ES2628094T3 (es) | Dispositivo de conmutación, método y programa de gestión de configuración de VLAN | |
JP2019533340A (ja) | 分散顧客構内機器 | |
JP2003532179A (ja) | ネットワーク・プロセッサ・デバイスの挙動全体を規定および制御する方法 | |
US9503372B1 (en) | SDN protocol message handling within a modular and partitioned SDN switch | |
US7653718B2 (en) | Shell specific filtering and display of log messages | |
US9819585B1 (en) | Making a flow ID for an exact-match flow table using a programmable reduce table circuit | |
US9756152B1 (en) | Making a flow ID for an exact-match flow table using a byte-wide multiplexer circuit | |
US20150063119A1 (en) | Method and Apparatus for Content Processing Application Acceleration | |
JP2003188936A (ja) | パケット処理装置とそのパケット転送方法 | |
US9699084B1 (en) | Forwarding messages within a switch fabric of an SDN switch |