ES2284259T3 - Arquitectura de sistema electronico. - Google Patents

Arquitectura de sistema electronico. Download PDF

Info

Publication number
ES2284259T3
ES2284259T3 ES99929556T ES99929556T ES2284259T3 ES 2284259 T3 ES2284259 T3 ES 2284259T3 ES 99929556 T ES99929556 T ES 99929556T ES 99929556 T ES99929556 T ES 99929556T ES 2284259 T3 ES2284259 T3 ES 2284259T3
Authority
ES
Spain
Prior art keywords
data
communications
clock
section
network
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
ES99929556T
Other languages
English (en)
Inventor
Martyn Gilbert
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.)
Amino Holdings Ltd
Original Assignee
Amino Holdings 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
Application filed by Amino Holdings Ltd filed Critical Amino Holdings Ltd
Application granted granted Critical
Publication of ES2284259T3 publication Critical patent/ES2284259T3/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
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5691Access to open networks; Ingress point selection, e.g. ISP selection
    • H04L12/5692Selection among different networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)
  • Computer And Data Communications (AREA)
  • Radiation-Therapy Devices (AREA)
  • Selective Calling Equipment (AREA)
  • Manipulator (AREA)
  • Superconductors And Manufacturing Methods Therefor (AREA)
  • Analysing Materials By The Use Of Radiation (AREA)
  • Tests Of Electronic Circuits (AREA)

Abstract

Un dispositivo (3) con al menos dos secciones (9, 10) de comunicaciones, adecuadas para la conexión con dispositivos similares por distintos enlaces bidireccionales de comunicaciones, caracterizado porque el dispositivo tiene una primera sección de comunicaciones dispuesta para responder a la recepción de una transición de reloj por un primer enlace de comunicaciones, transmitiendo una transición de reloj con la misma polaridad de vuelta por dicho primer enlace de comunicaciones, y una segunda sección de comunicaciones, dispuesta para responder a la recepción de una transición de reloj por un segundo enlace de comunicaciones, transmitiendo una transición de reloj con la polaridad opuesta de vuelta por dicho segundo enlace de comunicaciones.

Description

Arquitectura de sistema electrónico.
Esta invención se refiere a una arquitectura de sistema electrónico y, en particular, a una arquitectura de sistema electrónico para un sistema electrónico doméstico distribuido, con una conexión con una red mayor, tal como un sistema informático doméstico distribuido conectado con Internet.
El empleo de grandes redes electrónicas portadoras de datos está aumentando sostenidamente. En general, la red más significativa y más extensamente utilizada es Internet, especialmente para usuarios domésticos o de pequeñas empresas. Sin embargo, existen otras redes tales como las redes corporativas o gubernamentales, y las redes de área local que conectan usuarios en una única sede o en un único edificio de oficinas. Tales redes privadas, o de área local, están a menudo dotadas de conexiones con Internet.
Un creciente número de servicios están siendo proporcionados, o propuestos para su provisión, a través de Internet y otras redes. Además, numerosos dispositivos, concebidos para ser controlados, o para informar y comunicar, a través de una red, a menudo para funciones vinculadas con la seguridad y el resguardo, están llegando al mercado. Por ejemplo, el suministro de música, o de señales de televisión para facilitar el vídeo a pedido, como alternativa a la televisión de emisoras, y dispositivos tales como las cámaras de vigilancia o las alarmas contra el humo.
En principio, tales servicios pueden brindarse a través de, y tales dispositivos pueden conectarse con, cualquier red, siempre y cuando, por supuesto, que las prestaciones de la red sean suficientes para satisfacer los requisitos mínimos de un servicio o dispositivo. Los servicios de red pueden proporcionarse a través de un enlace por satélite, tal como DVB [Digital Vídeo Broadcast - Emisión de Vídeo Digital] o DBS [Digital Vídeo Services - Servicios de Vídeo Digital]. Sin embargo, en la práctica, la mayoría de los usuarios domésticos utilizará empresas de telecomunicaciones o enlaces terrestres de televisión por cable, y ésta también será la elección normal para la mayoría de las organizaciones. Se espera que Internet sea la red más usualmente elegida.
Según se reduce el gasto en hardware para permitir el acceso a Internet, en general, así como en los dispositivos remotos, tales como las cámaras de vigilancia y alarmas contra el humo, y según aumenta el número de servicios ofrecidos a través de Internet, hay una tendencia creciente a tener múltiples dispositivos con acceso a Internet dentro del hogar, y se espera que esta tendencia continúe durante el futuro previsible. Por ejemplo, un hogar individual podría tener uno o más televisores digitales capaces de exhibir imágenes de vídeo a pedido, extraídas a través de una red de área amplia, tal como Internet, o una empresa de Televisión por Cable, o una conexión ADSL (Asymmetric Digital Subscriber Line - Línea Asimétrica Digital de Abonado) desde la compañía telefónica local, o cualquier otra red con la suficiente capacidad de datos. Tal hogar también puede tener uno o más ordenadores personales capaces de conectarse con Internet y también, posiblemente, una o más consolas dedicadas para juegos, capaces de descargar software de juegos de Internet o de otra red, y de conectarse optativamente a través de Internet para facilitar juegos de jugadores múltiples, y una o más alarmas contra el humo o los ladrones, y/o cámaras de vigilancia remota.
Además, muchos fabricantes de equipos domésticos están proponiendo integrar las instalaciones de acceso a Internet, no sólo en sistemas de música y de vídeo/televisión, sino también en "artefactos de línea blanca" tales como cocinas, neveras y congeladores, para permitir funciones de operación remota, resolución de problemas en línea y reposición automática. Aunque estas sugerencias, actualmente, son mayormente especulativas, parece probable que estas ideas se tornen estándares, o al menos convencionales, con el tiempo.
La mayoría de los usuarios domésticos sólo tendrán una única conexión a Internet, generalmente por la línea telefónica doméstica. Esto puede dar origen a problemas, con conflictos en cuanto a la demanda de acceso a Internet por parte de distintos dispositivos, y por el conflicto entre los dispositivos que acceden a Internet y los usuarios que hacen llamadas telefónicas. Una solución obvia a este problema es proporcionar al hogar una conexión, o múltiples conexiones, a Internet por separado, a través de distintas líneas telefónicas. Sin embargo, este abordaje del problema por la fuerza bruta tiene un cierto número de inconvenientes. Lo más obvio: las penalizaciones en el coste de tener múltiples líneas telefónicas en un hogar individual disuadirán a los consumidores de tal enfoque. En cambio, es más probable que los servicios múltiples y los clientes múltiples sean proporcionados por una o más conexiones de banda ancha, cada una de las cuales puede gestionar muchos servicios simultáneos con efectividad. Incluso si sólo está disponible una línea telefónica, el empleo del Protocolo de Internet (IP) permite que se ofrezcan simultáneamente múltiples servicios de baja velocidad de datos.
Además, aunque no produzca un impacto directamente sobre el consumidor individual, existe un problema general en la advocación de tecnología que requiere números crecientes de líneas telefónicas por cada hogar, en cuanto a que el número de líneas telefónicas disponibles está limitado. Ya hay un problema en algunos países desarrollados, por ejemplo, Gran Bretaña, en cuanto a que la creciente demanda de conexiones telefónicas, debida al rápido aumento en el uso de máquinas de fax, módems y teléfonos móviles está teniendo como resultado que el sistema de telecomunicación está agotando los números, por lo que se requieren con regularidad cambios costosos e inconvenientes en los formatos de los números y los códigos de áreas.
En consecuencia, es necesario proporcionar sistemas electrónicos que incluyen, pero que no se limitan a, pequeños sistemas informáticos y redes capaces de conectar entre sí múltiples sistemas dentro de un único edificio u hogar, y de proporcionarles acceso a una o más conexiones con Internet o con otra red mayor a un coste aceptable.
Un procedimiento para hacer esto es conectar entre sí, y con un servidor, todos los dispositivos que requieren acceso a Internet, a fin de formar una Red de Área Local (LAN). El servidor puede actuar entonces como pasarela a Internet para todos los dispositivos, y controlar y arbitrar el acceso a Internet.
Convencionalmente, los dispositivos electrónicos en tal LAN emplearían un bus de datos en su construcción, y usualmente se restringirían al empleo de un medio tal como el cableado por par cruzado para interconectar el servidor y los dispositivos. Sin embargo, existe un cierto número de problemas en este enfoque.
En primer lugar, dentro de los dispositivos electrónicos, que pueden incluir, pero que no se limitan a, ordenadores, hay problemas debidos a la naturaleza global de un bus de datos. Un fallo eléctrico en cualquier sitio en el bus puede perturbar la propagación de datos entre dos o más elementos comunicantes cualesquiera, dando como posible resultado el fallo completo del producto o de la red.
Además, la escalabilidad no es posible en sistemas basados en un bus. Es decir, no es posible añadir capacidad de prestaciones adicionales en respuesta a la carga de trabajo deseada con una relación lineal entre la capacidad y la carga de trabajo.
Además, cualquier comunicación entre dos partes en un bus es accesible para otras partes, que no sean los destinatarios previstos de la información. En consecuencia, el único procedimiento disponible para proteger los datos es el cifrado. Incluso entonces, no es posible impedir que dispositivos no previstos como receptores de datos accedan a los datos, si bien posiblemente en forma cifrada.
Puede parecer que esta falta de seguridad en sistemas basados en un bus no sea un problema en un sistema doméstico de hogar individual. Sin embargo, hay muchos casos de fraude que surgen del empleo ilícito de tarjetas de crédito o de tarjetas de débito (de cajeros automáticos) por parte de miembros de la familia, y el riesgo de mal empleo de datos financieros dentro de un hogar es un problema para las redes con bus de datos. Otro problema es el suministro de servicios de datos, tales como el vídeo a pedido. Los proveedores de tales datos emiten efectivamente datos cifrados de vídeo, y los usuarios pagan por poder descifrarlos. Como resultado, el proveedor de datos no tiene objeciones a que los datos cifrados de vídeo atraviesen una red local, pero objetaría que los datos descifrados de vídeo atravesaran un bus de datos, debido a la facilidad de la copia ilícita. En consecuencia, hay una considerable demanda comercial de productos que mantengan inherentemente los datos valiosos lejos de todo medio para copiarlos.
Además, la pérdida potencial de intimidad que resulta de esta falta de seguridad de datos es un problema, incluso dentro de un hogar.
Finalmente, bien dentro de un producto electrónico o bien de la red o redes con las cuales está conectado, la disponibilidad de todos los datos en todos los puntos de un bus de datos significa que, una vez que un usuario ilícito obtiene acceso a cualquier dato para un dispositivo en la red, muy probablemente por acceso remoto al servidor, por Internet u otra red pública, otros datos están potencialmente comprometidos.
Estos problemas de seguridad, por supuesto, son peores cuando la red está siendo utilizada por una pequeña empresa o por más de un hogar; por ejemplo, en una vivienda de ocupación múltiple.
Otro problema de un sistema basado en bus de datos es la fiabilidad. Generalmente, todo fallo en el bus de datos inhabilitará la red entera.
Además, en sistemas basados en bus de datos, las prestaciones generales del sistema están limitadas por la velocidad del dispositivo más lento. Esto es debido a que la tasa de transferencia de datos, o la frecuencia del reloj, del bus no puede superar la tasa de transferencia de datos del dispositivo más lento conectado con él; en caso contrario, no puede llevarse a cabo la comunicación fiable. Como resultado, las mejoras en la tasa de transferencia de datos de la red sólo pueden lograrse reemplazando o actualizando todos los dispositivos.
Además, los buses de datos generan cantidades significativas de interferencia electromagnética (IEM).
Finalmente, las redes basadas en bus de datos son relativamente caras, y los buses amplios imponen penalizaciones en cuando a las placas de circuitos, la fabricación y el tamaño del producto y, como resultado, imponen penalizaciones de coste sobre los dispositivos a conectar en red.
Una conocida disposición en red se describe en el documento EP-A-0537408. Éste describe una red de datos en la cual los dispositivos se disponen en una pluralidad de redes de área local (LAN) interconectadas por enlaces bidireccionales de comunicaciones, a través de dispositivos puente.
La presente invención está concebida para proporcionar arquitecturas, componentes, dispositivos y redes de sistemas electrónicos que superen estos problemas, al menos en parte.
En un primer aspecto, la invención proporciona un dispositivo con al menos dos secciones de comunicaciones, adecuadas para la conexión con dispositivos similares por distintos enlaces bidireccionales de comunicaciones, caracterizado porque el dispositivo tiene una primera sección de comunicaciones dispuesta para responder a la recepción de una transición de reloj por un primer enlace de comunicaciones, transmitiendo a su vez una transición de reloj con la misma polaridad de vuelta, por dicho primer enlace de comunicaciones, y una segunda sección de comunicaciones dispuesta para responder a la recepción de una transición de reloj por un segundo enlace de comunicaciones, transmitiendo a su vez una transición de reloj con polaridad opuesta de vuelta por dicho segundo enlace de comunicaciones.
En un segundo aspecto, la invención proporciona una red de comunicación electrónica que comprende al menos dos dispositivos conectados por al menos un enlace bidireccional de comunicaciones, y caracterizada porque un bucle es formado por el primer dispositivo, que recibe una transición de reloj por el enlace de comunicaciones y que envía a su vez una transición de reloj con la misma polaridad de vuelta por el enlace de comunicaciones, y por el segundo dispositivo, que recibe una transición de reloj por el enlace de comunicaciones y que envía a su vez una transición de reloj con la polaridad opuesta de vuelta por el enlace de comunicaciones, y porque los dispositivos primero y segundo están adaptados para utilizar las transiciones de reloj que circulan por el bucle a fin de proporcionar una señal de reloj para controlar la transferencia de datos por el enlace de comunicaciones.
Se describirán ahora realizaciones de la invención, sólo a manera de ejemplo, con referencia a las figuras adjuntas de diagramas, en las cuales:
La Figura 1 muestra una estructura de red según un primer aspecto de la invención;
La Figura 2 muestra detalles de los dispositivos que componen la red de la Figura 1;
La Figura 3 muestra detalles de un conmutador utilizado en los dispositivos de la Figura 2;
La Figura 4A muestra una sección receptora utilizada en el conmutador de la Figura 3;
La Figura 4B muestra una sección transmisora utilizada en el conmutador de la Figura 3;
Las Figuras 5A y 5B son diagramas explicativos de temporización que muestran la propagación de mensajes en la red según la Figura 1;
La Figura 6 muestra un sistema de cifrado adecuado para su empleo en la red;
La Figura 7 muestra un sistema mejorado de cifrado para su empleo en la red;
La Figura 8 muestra otro sistema mejorado de cifrado para su empleo en la red;
Las Figuras 9A a 9C muestran formatos y códigos de mensaje, adecuados para su empleo en la red;
La Figura 10 es un diagrama explicativo que muestra cómo se generan automáticamente los circuitos de pulsos de reloj entre los dispositivos de la red;
La Figura 11 muestra ejemplos de datos de reloj y señales de tramas en la red;
La Figura 12 muestra una arquitectura de dispositivo según la invención;
La Figura 13 muestra una arquitectura de dispositivo alternativa, según la invención;
La Figura 14 es un diagrama explicativo que muestra características de seguridad de las arquitecturas de dispositivo;
La Figura 15 muestra una disposición de procesador para su empleo en los dispositivos; y
La Figura 16 muestra un formato de mensaje alternativo para su empleo en la red o en los dispositivos.
Una red electrónica según un primer aspecto de la invención se muestra en la Figura 1. Esta red puede componerse de cualesquiera dispositivos y productos electrónicos de comunicaciones, informáticos u otros. Aunque este ejemplo se describe en términos de una conexión doméstica, es decir, de hogar individual, con Internet, que se espera que sea el empleo más común y más comercialmente significativo de la invención, se entenderá que la arquitectura inventiva es igualmente aplicable al uso comercial o a la conexión con cualquier otra red digital de comunicaciones.
En la Figura 1 un servidor 1 está conectado con el sistema o la arquitectura electrónica, que comprende una pluralidad de dispositivos cliente 2, dispuestos en una estructura jerárquica a través de un cierto número de conexiones de red local, a fin de formar una red de área local.
El servidor 1 puede ser un único servidor o una red de servidores individuales, que forman una red anfitriona, tal como Internet.
Los dispositivos cliente 2 se disponen en una estructura jerárquica de árbol, conectada por ramas formadas por los enlaces de comunicación de la red de área local. En la estructura jerárquica, las ramas más abajo en la estructura tienen menor ancho de banda que las ramas encima de ellas, es decir, las ramas a través de las cuales se conectan con el servidor 1. Allí donde múltiples ramas flujo abajo y una única rama flujo arriba se conectan con un único nodo, la suma de los anchos de banda de esta rama flujo abajo debe ser menor que el ancho de banda de la rama flujo arriba. La seguridad de los datos se afianza desde el extremo inferior del sistema hacia arriba, según se explicará más adelante.
Los dispositivos cliente 2 que forman los nodos extremos del sistema son dispositivos cliente 2 con capacidad de procesamiento a bordo, y ofrecen acceso de usuario a las utilidades del servidor. Los dispositivos cliente 2 que forman los nodos en la estructura que no son puntos extremos controlan el suministro de servicios a los dispositivos cliente 2 inferiores. Tendrán capacidad de procesamiento a bordo y también pueden ser ellos mismos dispositivos cliente 2 que ofrecen acceso de usuario a las utilidades del servidor por mérito propio, además de controlar el suministro de servicios a los dispositivos cliente 2 de nivel inferior.
La reducción en ancho de banda para las ramas más alejadas del servidor 1 es necesaria a fin de impedir que los requisitos de ancho de banda para el sistema aumenten geométricamente según aumenta de tamaño, y para garantizar que un dispositivo cliente 2 de nivel inferior no pueda desbordar a un dispositivo cliente 2 de nivel superior demandando más ancho de banda, es decir, una mayor tasa de transferencia de datos, de lo que el dispositivo cliente 2 de nivel superior pueda soportar.
Una razón para emplear un sistema multiprocesador que comprende una pluralidad de distintos dispositivos cliente es distribuir la carga de cálculo y funcional a fin de situar la capacidad de cálculo requerida allí donde más se necesite, y proporcionar la electrónica adecuada para una función dada en la ubicación más económica y efectiva, a fin de brindar dicha función de manera fiable y sostenible.
Otra razón para emplear un sistema multiprocesador que comprende una pluralidad de dispositivos cliente 2 distintos es permitir que los datos se mantengan seguros. Esta seguridad de datos puede ser necesaria para garantizar el control autorizado, el comercio electrónico financieramente fiable o, simplemente, la protección de la intimidad. Por ejemplo, un procesador de aplicación capaz de ejecutar aplicaciones de software de Internet puede ser susceptible a un ataque externo. Así, conservar el control de una tarjeta inteligente de comercio electrónico en una unidad por separado realzará la seguridad de las funciones de comercio electrónico y mejorará la calidad predecible del servicio que puede obtenerse al utilizar la tarjeta inteligente.
A fin de proporcionar la seguridad de datos deseada, la arquitectura inventiva del sistema electrónico brinda soporte a estructuras jerárquicas de datos. El acceso a un dispositivo cliente 2 específico está controlado sólo por ese dispositivo cliente 2. Los usuarios de datos de nivel superior, es decir, el servidor 1 y los dispositivos cliente 2 situados entre un dispositivo cliente 2 específico y el servidor 1, deben solicitar a los dispositivos cliente 2 de nivel inferior sus datos, y ser capaces de autenticar estas peticiones. Por supuesto, los dispositivos cliente 2 que no tienen un requisito de salvaguardar datos pueden pasarse entre sí libremente peticiones y respuestas, o responder a peticiones de cualesquiera datos desprotegidos que puedan albergar, sin requerir ninguna autenticación.
Las peticiones de acceso desde dispositivos cliente 2 de nivel superior a dispositivos cliente 2 de nivel inferior pueden hacerse por hardware o software. Si un dispositivo cliente 2 de nivel superior es capaz de hacer una solicitud de acceso por hardware a un dispositivo cliente 2 de nivel inferior, puede permitirse que esta petición de acceso por hardware atraviese cualesquiera dispositivos cliente 2 de nivel intermedio sin modificación. Si la petición de acceso por hardware se bloquea, el dispositivo cliente 2 de nivel intermedio intentará realizar el acceso en nombre del dispositivo cliente 2 de nivel superior, si se permite. A fin de lograr que el sistema sea transparente, para que las peticiones de acceso por hardware y software parezcan iguales al dispositivo cliente 2 de origen, el dispositivo cliente 2 intermedio tendrá que dotarse de utilidades de control de excepciones, es decir, la facultad de causar que se emplee un protocolo de software para llevar a cabo una petición de acceso, en lugar de una solicitud abortada de acceso por hardware. Es indeseable requerir el empleo de elementos de procesamiento de excepciones en todos los niveles en el sistema informático, debido al aumento resultante en el coste. Sin embargo, cualquier dispositivo cliente 2 que no brinde soporte al procesamiento de excepciones debe ser un punto extremo en el sistema jerárquico, o bien ser un dispositivo cliente 2, que nunca realiza ni pasa peticiones de acceso por hardware a los dispositivos cliente 2 de nivel inferior.
Un ejemplo de este requisito sería un equipo de sobremesa capaz de extraer señales de vídeo digital de Internet para su exhibición en un televisor digital. El equipo de sobremesa, en sí mismo, será un dispositivo cliente 2 conectado con Internet, en forma de un servidor 1 de Internet, a través de uno o más dispositivos cliente 2 distintos, y está controlado por un mando infrarrojo a distancia equipado con una interfaz de tarjeta inteligente integral. A fin de operar el mando a distancia, es necesario insertar la tarjeta inteligente que identifica al usuario. Cuando la tarjeta inteligente está colocada, el mando a distancia puede instruir al equipo de sobremesa para permitir que el pago por visionado, el vídeo a pedido o señales similares de vídeo digital de acceso restringido se visualicen en el televisor.
Es claro que, aunque tanto el equipo de sobremesa como el mando a distancia son dispositivos cliente 2, el equipo de sobremesa no puede efectuar un acceso por hardware a la tarjeta inteligente, y debe remitirse a un protocolo de software por el enlace infrarrojo. Como resultado, el procesador en el equipo de sobremesa no necesita brindar soporte al procesamiento de excepciones, incluso aunque el mando a distancia sea un dispositivo de nivel inferior al del equipo de sobremesa en la red.
Cada dispositivo cliente 2 que conforma un nodo en la red electrónica, según el primer aspecto de la invención, es un dispositivo activo de procesamiento de información, capaz de manipular los datos que lo atraviesan. O, más precisamente, cada dispositivo cliente 2 puede manipular los datos que recibe y puede reenviar selectivamente estos datos. Una cantidad mínima de procesamiento sería la nula, es decir, todo lo que ingresa a un nodo, sale de él. Alternativamente, puede pasarse muy poco de la información original recibida por un dispositivo cliente 2 que conforma el nodo. En un extremo, un dispositivo cliente 2 específico puede incluso no reenviar nada de los datos recibidos; en cambio, puede responder a los datos recibidos reenviando un mensaje distinto que contiene datos distintos que, no obstante, están relacionados con, o derivados de, los datos recibidos.
El más alto dispositivo cliente 2 flujo arriba, más cercano al servidor 1, proporcionará una pasarela al servidor, y controlará y arbitrará el acceso al servidor para la red entera. Este dispositivo cliente 2 de pasarela, normalmente, deberá brindar soporte a distintos protocolos de comunicaciones en la red, y para las comunicaciones con el servidor, aunque los protocolos podrían ser los mismos.
El paso de datos a través de los dispositivos cliente 2 que conforman nodos en la red permite que la seguridad jerárquica sea implementada por los dispositivos cliente 2 en nodos más arriba en la red, que controlan el suministro de servicios a los componentes inferiores, mientras que los dispositivos cliente que conforman nodos más abajo en la red controlan la autenticación de usuarios finales. De esta manera, esencialmente, los nodos superiores facilitan la seguridad en el lado del servidor, mientras que los nodos inferiores facilitan la seguridad en el lado del cliente.
Debido a que los enlaces de comunicaciones individuales entre pares de nodos pueden ser físicamente distintos, y a que los dispositivos cliente 2 que conforman los nodos pueden retransmitir selectivamente datos al siguiente nodo, o bloquearlos, la seguridad de datos en la red puede mejorar enormemente, porque los datos se ponen a disposición sólo de dispositivos cliente 2 que requieren los datos, y de aquellos dispositivos cliente 2 que forman parte del itinerario de datos por el cual viajan los datos. Así, la característica de seguridad por la cual los datos sólo son accesibles físicamente en puntos específicos en la red puede utilizarse para proporcionar un nivel adicional de seguridad, por encima y más allá del provisto sólo por el cifrado. Además, debido a que puede hacerse que los datos transportados entre distintos pares de dispositivos cliente 2 y distintos nodos sean no sólo lógicamente, sino también físicamente distintos, el fallo de un enlace de comunicaciones o de un dispositivo cliente 2 individual no necesariamente desactivará el sistema entero. El grado en que el sistema continuará funcionando después de un fallo, por supuesto, depende del tamaño, estructura y función de la red, de la función de los dispositivos cliente 2 individuales que la componen y del tipo y localización del fallo, por lo que no puede garantizarse que todos los sistemas, en la práctica, podrían continuar funcionando parcialmente a continuación de todos los fallos posibles. Sin embargo, la posibilidad del funcionamiento parcial después de un fallo existe en redes según la invención, de una manera que no puede proporcionarse en redes basadas en bus de datos.
Un dispositivo cliente 2 genérico se muestra en la Figura 2. Se entenderá que esta ilustración está concebida sólo como un diagrama explicativo, a fin de explicar las funciones de un dispositivo cliente 2 genérico, y no pretende postular la disposición o estructura física de ningún componente específico.
Con fines de ilustración, se muestra una serie de dispositivos cliente 2, dispuestos en una red con un nodo superior M y un nodo inferior 0, y se muestra en detalle el dispositivo cliente 2 que conforma el nodo intermedio N + 1. La estructura de red de una ristra lineal de nodos es un ejemplo sencillo que ha sido seleccionado para mayor claridad, y se entenderá que son posibles otras estructuras de red.
El dispositivo cliente 2 comprende tres componentes principales: un conmutador local 3, una sección 4 de procesamiento local y una sección 5 de entrada y salida de datos locales.
Durante el funcionamiento, los datos se pasan en un sentido u otro entre los dispositivos cliente 2 situados en la cadena de nodos que forman la red. En cada nodo, la información es enviada o recibida en un sentido u otro por la cadena, a través del conmutador local 3 del dispositivo cliente 2. En cada dispositivo cliente 2, el conmutador 3 funciona sólo bajo el control del dispositivo cliente 2. Los datos pasados a través de la red se dirigen a un destino específico, y este destino puede definirse lógica o físicamente. Todos los dispositivos cliente 2 que componen todos los nodos son capaces de recibir datos, y aquellos dispositivos cliente 2 que no son puntos extremos de la red son capaces de reenviar los datos. En principio, el dispositivo cliente 2 en cualquier nodo puede iniciar una transacción de información, enviando datos a otro dispositivo cliente 2 en otro nodo. Sin embargo, es posible que algunos dispositivos cliente no puedan hacer esto en la práctica, porque su función sólo requiere que reciban datos, y no que inicien transacciones de información.
El conmutador 3 en cada dispositivo cliente 2 puede ser tan complejo como lo requiera la aplicación específica. Sin embargo, la funcionalidad mínima del conmutador 3 es que debe retirar todos los mensajes recibidos, destinados a su dispositivo cliente 2 local, del flujo de datos entrante, y reenviar en la misma dirección a lo largo de la cadena de la red los mensajes recibidos destinados a dispositivos cliente 2 que no sean el local.
Podría parecer que esta funcionalidad choca con las observaciones anteriores, en cuanto a que un dispositivo cliente específico podría no reenviar datos en la forma recibida, sino que podría, en cambio, reenviar datos enteramente nuevos en respuesta a la recepción de datos originales. En términos de la funcionalidad del conmutador descrito anteriormente, los datos originales se considerarían como mensajes destinados al nodo local, el cual iniciaría entonces el envío de un nuevo mensaje que lleva los nuevos datos.
Como se ha explicado anteriormente, el conmutador 3 remite por la cadena mensajes destinados a otros dispositivos cliente 2, y extrae el mensaje recibido, destinado al dispositivo cliente 2 local, del flujo de mensajes que pasan por la red. Estos mensajes destinados a los dispositivos cliente 2 locales se pasan a la sección 4 de procesamiento local.
La sección 4 de procesamiento local procesa los datos recibidos según se requiera. Cuando es necesario, la sección 4 de procesamiento local pasa datos o instrucciones a una sección 5 de entrada/salida local, que puede ser un dispositivo de visualización de datos, o algún equipo bajo el control de, o subordinado a la sección 4 de procesamiento local o una interfaz a algún equipo externo bajo el control de o subordinado a, el dispositivo cliente 2. De manera similar, la sección 5 de entrada/salida local puede enviar datos, según sea necesario, a la sección 4 de procesamiento local. La sección 4 de procesamiento local procesa estos datos y, según lo determinado por los datos recibidos del conmutador 3 y la sección 5 de entrada/salida local, y otros factores cualesquiera, tales como la hora local, la sección 4 de procesamiento local prepara mensajes para otros dispositivos cliente 2 y los envía al conmutador 3, para su envío por la red.
En principio, sería posible un dispositivo cliente que comprenda sólo un conmutador 3 y una sección 4 de procesamiento local, o sólo un conmutador 3 y una sección 5 de procesamiento local, aunque, en la práctica, hay muy pocas circunstancias en las cuales sería útil un dispositivo cliente capaz de recibir, procesar y enviar datos sólo por la red, y sin ninguna función de entrada y salida local. De manera similar, aunque es posible un dispositivo cliente capaz de ingresar directamente por la red datos generados localmente, o de emitir datos directamente de la red, ocurrirá normalmente en la práctica que será necesaria al menos una cantidad mínima de procesamiento local dentro del dispositivo cliente 2.
Aunque la sección 5 se describe como la sección de entrada y salida de datos locales, en la práctica, éstos podrían ser, en algunas aplicaciones, sólo datos emitidos o sólo datos ingresados. El conmutador 3, normalmente, es capaz de brindar soporte a una operación dúplex completa.
Un conmutador 3 se muestra en detalle en la Figura 3. El conmutador 3 comprende dos bloques conmutadores 6a y 6b distintos, ocupándose el bloque conmutador 6a del tráfico flujo abajo, es decir, el bloque conmutador 6a recibe mensajes del próximo nodo flujo arriba, y transmite mensajes al siguiente nodo flujo abajo, mientras que el bloque conmutador 6b se ocupa del tráfico flujo arriba, es decir, el bloque conmutador 6b recibe datos del próximo nodo flujo abajo y envía datos al siguiente nodo flujo arriba.
Los bloques conmutadores 6 están interconectados por un enlace 7, a fin de proporcionar un itinerario de datos para acuses de recibo de mensajes recibidos, y cada bloque conmutador 6 está conectado para enviar datos recibidos desde el procesador local 4 por las líneas 8.
Además del enlace 7, para permitir la generación automática de acuses de recibo de mensajes y la notificación de recibos o acuses, no hay ninguna otra conexión directa entre los bloques conmutadores 6a y 6b flujo arriba y flujo abajo.
Cada bloque conmutador 6 contiene una sección receptora 9 (de entrada) y una sección transmisora 10 (de salida), que operan bajo el control de una máquina sincronizadora de estado finito, que forma parte del bloque conmutador 6.
Ejemplos adecuados de estructuras receptora y transmisora se muestran en las Figuras 4a y 4b, en donde la Figura 4a muestra la estructura receptora, mientras que la Figura 4b muestra la estructura transmisora.
La sección receptora 9 recibe mensajes sólo desde la sección transmisora 10 de un bloque conmutador 6 de un dispositivo cliente 2 que conforma un nodo adyacente, aunque los datos efectivos llevados por el mensaje pueden haberse originado en cualquier parte de la red.
Cada mensaje incluye una sección de tipo de mensaje y de información de encaminamiento, que identifica el dispositivo cliente 2 de origen y el dispositivo cliente 2 de destino, el tipo de mensaje y la cantidad de datos llevados y, usualmente, una sección de carga útil de datos, compuesta por los datos llevados por el mensaje. Sin embargo, algunos tipos de mensajes, en particular, los acuses de recibo de mensajes anteriores, sólo pueden identificarse como tales por la sección del tipo de mensaje y de la información de encaminamiento, y no llevan ningún dato de carga útil.
Cada mensaje es recibido a lo largo del itinerario de datos de entrada por un elemento sincronizador 11, y pasado luego a un elemento 12 de tipo y encaminamiento de mensaje, que examina los datos del tipo de mensaje llevados por el mensaje, a fin de ver qué tipo de mensaje es. Si el mensaje es un acuse de que se ha recibido un mensaje, esta información se pasa a una máquina 17 de estado finito, que notifica al otro bloque conmutador 6 del conmutador local 3 que la notificación ha sido recibida por el enlace 7, a fin de que el otro bloque conmutador 6 conozca que su sección de entrada opuesta está lista para recibir el siguiente mensaje. La sección 9 de entrada aguarda entonces al próximo mensaje.
Si el mensaje no es identificado como un acuse de recibo por el elemento 12 de tipo y encaminamiento de mensaje, el elemento 12 de tipo y encaminamiento de mensaje extrae la información de identificación de ruta llevada por el mensaje, es decir, el número de circuito local del dispositivo cliente 2 para el cual está destinado el mensaje, y la pasa a un comparador 13 de ruta. El comparador 13 de ruta compara el número de circuito de destino extraído del mensaje con el número de circuito local contenido en un almacén 14 de número de circuito local. Si el comparador 13 de ruta identifica los números de circuito como idénticos, el elemento 12 de tipo y encaminamiento de mensaje pasa las partes relevantes de la información de tipo y encaminamiento del mensaje al elemento 16 de interfaz con el sistema anfitrión, y el elemento 15 de carga útil del mensaje pasa el contenido de datos del mensaje al elemento 16 de interfaz con el sistema anfitrión. El elemento 16 de interfaz con el sistema anfitrión envía estos datos a las otras partes de la máquina cliente 2. Es decir, estos datos se envían a la sección 4 de procesamiento local y/o a la sección 5 de entrada y salida local.
Alternativamente, si los dos elementos de información de ruta no son idénticos, el mensaje se pasa a la sección transmisora 10.
En cualquier caso, una vez que el mensaje ha sido enviado, bien a la sección transmisora 10 o bien a las otras partes del dispositivo cliente 2 local, la máquina 17 de estados de la sección receptora 9 instruye al otro bloque conmutador 6 del conmutador local 3 para devolver una respuesta de acuse de recibo en su nombre al dispositivo cliente 2 en el nodo adyacente, desde el cual se recibió el mensaje. Este acuse de recibo informa al dispositivo cliente 2 remitente de que la sección receptora 9 está lista para recibir el próximo
mensaje.
La sección transmisora 10 puede recibir mensajes para su transmisión, tanto desde la sección receptora 9 que forma parte del mismo bloque conmutador 6 como desde otras partes del dispositivo cliente 2 local, y puede ser instruida para enviar mensajes de acuse de recibo por la sección receptora 9 del otro bloque conmutador 6 del conmutador local 3. Dado que la sección transmisora 10 sólo puede enviar un mensaje por vez, la máquina de estados debe arbitrar entre las tres fuentes de mensajes, y debe proporcionarse algún medio para almacenar temporalmente los mensajes por enviar. Además, como la operación de la sección receptora 9 y la sección transmisora 10 de un bloque conmutador 6 individual no están sincronizadas, y pueden operarse a distintas velocidades de reloj, es decir, las velocidades con que los datos se reciben en, y se transmiten desde, un bloque conmutador 6 individual pueden ser distintas, y las longitudes de los mensajes recibidos y transmitidos, o consecutivos, también pueden ser distintas, se requeriría un almacén temporal en cualquier caso entre la sección receptora 9 y la sección transmisora 10. Los almacenes temporales necesarios pueden incorporarse localmente en la sección receptora 9, la sección transmisora 10, o en otra parte, según convenga. En este ejemplo, la sección 17 de interfaz con el sistema anfitrión transmisor, que recibe datos de otras partes del dispositivo cliente 2 local, incorpora un almacén temporal de transmisión y otro almacén temporal está situado dentro del bloque conmutador 6, entre la sección receptora 9 y la sección transmisora 10, pero esto no se muestra en las figuras.
Cuando debe enviarse un mensaje, los datos a transportar se pasan desde el almacén temporal o la interfaz 17 con el sistema anfitrión a un almacén 18 de carga útil. Los datos se pasan luego a un generador 19 de tipo y encaminamiento de mensaje, que genera la parte apropiada del mensaje de información del tipo de mensaje y encaminamiento del mensaje, basándose en los datos proporcionados por la interfaz 17 con el sistema anfitrión, o bien simplemente comprueba y repite la información del tipo de mensaje y de encaminamiento ya incorporada en el mensaje recibido. Cuando el mensaje se origina en la máquina cliente 2 local, el número de circuito local que identifica el dispositivo cliente 2 de origen es proporcionado al generador 19 de tipo y encaminamiento de mensaje por un almacén 20 de número de circuito local.
En respuesta a una instrucción desde la sección receptora 9 del otro bloque conmutador 6 del conmutador local 3, para enviar un mensaje de acuse de recibo, el generador 19 de tipo y encaminamiento de mensaje genera una parte del mensaje de información de tipo de mensaje y de encaminamiento del mensaje, identificándola como un acuse. No hay ninguna carga útil de datos a transportar por tal mensaje.
Finalmente, cuando se confirma el estado de disponibilidad de la sección receptora 9 adecuada de la máquina cliente 2 en el nodo adyacente, el mensaje ensamblado se envía por el enlace de comunicaciones a esa máquina cliente 2, a través de un sincronizador 21 de transmisión.
En la exposición precedente, tanto la sección receptora 9 como la sección transmisora 10 se muestran controladas por una máquina sincronizadora de estado finito. Puede haber una máquina controladora distinta de estado finito para la sección transmisora 9 y para la sección receptora 10, o bien puede haber una única máquina sincronizadora de estado finito controlando el bloque conmutador 6 entero. De manera similar, se muestran memorias 14 y 20 distintas de números de circuito local para la sección receptora 9 y la sección transmisora 10. Es claro que éstas podrían ser reemplazadas por una única memoria común de números de circuito local.
Como se ha explicado anteriormente, la sección transmisora 10 puede transmitir mensajes tanto desde la sección receptora 9 del mismo bloque conmutador 6 como desde otras partes del dispositivo cliente 2 local, o bien acuses de recibo, según indicación de la sección receptora 9 del otro bloque conmutador 6 del conmutador local 3, pero sólo puede enviar un mensaje por vez, por lo que la máquina de estado finito debe arbitrar entre las tres fuentes de mensajes. A fin de evitar la degradación del ancho de banda y la latencia percibidas de la red, los acuses de recibo tendrán prioridad, seguidos por los mensajes pasados a la sección transmisora 10 desde la sección receptora 9 del mismo bloque conmutador 6.
Para mayor claridad, la descripción precedente ha supuesto que cada dispositivo cliente 2 local tiene un único número de circuito local asociado a él. Por supuesto, podría ser posible que a un dispositivo cliente 2 local se asignaran múltiples números de circuito locales.
En sistemas convencionales basados en bus, una señal enviada por el bus es recibida en todos los dispositivos conectados con el bus de forma efectivamente simultánea. Es decir, los sistemas de bus funcionan bajo la hipótesis de que las señales colocadas en el bus se propagan a todos los puntos en el bus instantáneamente, aunque, en realidad, hay una muy pequeña diferencia entre punto y punto por el bus, debido al tiempo empleado para que las señales eléctricas se propaguen físicamente por el bus. En consecuencia, los buses, generalmente, pueden considerarse como sistemas síncronos, porque las señales están disponibles simultáneamente en todas las partes del bus.
Por el contrario, la red electrónica según la invención es un sistema asíncrono, en el cual los mensajes se recibirán en distintos puntos en el sistema en distintos momentos, siendo el retardo temporal múltiplo del tiempo empleado para transmitir el mensaje desde un dispositivo cliente 2 al próximo dispositivo cliente 2 en el nodo adyacente.
Un ejemplo ilustrativo se muestra en las Figuras 5a y 5b, que muestran el mismo grupo lineal sencillo de nodos mostrados en la Figura 2.
Con referencia a la Figura 5, se ilustra la secuencia de temporización de un mensaje que viaja desde el nodo N + 1 al nodo N. En el momento t = 0, se envía un mensaje desde el nodo N + 1 al nodo N. Luego, en el momento t = 1, se devuelve un acuse de recibo desde el nodo N al nodo N + 1. Esto confirma que el mensaje ha sido recibido a salvo y que el dispositivo cliente 2 y el nodo N están ahora libres para recibir otro mensaje.
Un ejemplo más complejo se muestra en la Figura 5b, en la cual un mensaje debe enviarse desde el nodo M en el extremo superior de la red al nodo 0 en el extremo inferior de la red. En el momento t = 0, el mensaje se envía desde el nodo M al nodo N + 1. Luego, en el momento t = 1, el nodo N + 1 acusa recibo del mensaje al nodo N y, en el momento t = 2, el nodo N + 1 reenvía el mensaje original al nodo N. Observe que, aunque el reenvío del mensaje y el envío del acuse se identifican como producidos en los momentos t = 1 y t = 2, respectivamente, para mostrar que no son síncronos y que pueden tener lugar en momentos distintos, es posible que puedan enviarse simultáneamente, o que el mensaje pueda ser reenviado al nodo N antes de que el acuse de recibo sea devuelto al nodo M. Esto es porque el envío de mensajes en direcciones opuestas por los dos bloques conmutadores 6a y 6b en cada conmutador 3 es independiente y no está sincronizado, y ambos deben esperar que se complete el envío de cualquier mensaje que ya esté siendo enviado por sus respectivas secciones transmisoras 10. Luego, cuando el mensaje ha sido recibido en el nodo N, en el momento t = 3 un acuse de recibo es devuelto al nodo N + 1 por el nodo N y, en el momento t = 4, el mensaje es copiado al nodo 0. Finalmente, en el momento t = 5, el nodo 0 envía un acuse de recibo del mensaje al nodo N.
No se pasa al nodo M ningún acuse de que el mensaje ha sido recibido con éxito en el nodo 0. Sólo se acusa el recibo con éxito en el siguiente nodo en cada etapa del curso del mensaje. A fin de minimizar la magnitud utilizada del ancho de banda del sistema, el acuse es un sencillo acuse del último mensaje recibido, que no contiene ningún dato que identifique el mensaje original ni su contenido, ni cualquier dato de encaminamiento del mensaje original. El acuse es siempre un acuse de recibo del último mensaje enviado en la dirección contraria, por lo que no hay ninguna necesidad de incluir estos datos en el mensaje de acuse.
La arquitectura de bloque conmutador descrita anteriormente es una implementación mínima con sólo un único almacén temporal entre las secciones transmisora y receptora. Una vez que un mensaje recibido ha sido pasado desde la sección receptora 9 a la sección transmisora 10, la sección receptora 9 puede comenzar a recibir un segundo mensaje, por lo que el bloque conmutador 6, en su totalidad, está efectivamente dotado de doble almacenamiento temporal.
Un inconveniente de esta arquitectura minimalista de bloque conmutador es que, allí donde debe pasarse una serie de mensajes a través del nodo, la velocidad a la cual pueden recibirse los mensajes entrantes está limitada a la velocidad a la cual pueden transmitirse los mensajes salientes, porque un mensaje recibido no puede transferirse al almacén temporal, para permitir que se reciba el próximo mensaje, hasta que haya sido transmitido el mensaje anteriormente transferido al almacén temporal. Este problema puede superarse con el empleo de una arquitectura más compleja, aumentando el tamaño del almacén temporal para permitir que aloje múltiples mensajes, dejando que el bloque conmutador 6 actúe como un elemento de apareo de velocidades. Tal almacén temporal aumentado, capaz de alojar múltiples mensajes, debe ser una memoria del tipo ‘primero en entrar, primero en salir' (First In First Out - FIFO), para mantener constante el orden de los mensajes que atraviesan un nodo, pero no hay ningún límite en cuanto a cuántos mensajes puede alojar el almacén temporal FIFO, es decir, el almacén temporal FIFO puede ser arbitrariamente largo, según se requiera para permitir el flujo suave de los datos, y sólo está limitado por el coste.
La arquitectura de red anteriormente descrita proporciona un nivel básico de seguridad para los datos dentro del sistema, porque los mensajes enviados a un dispositivo cliente 2 en un nodo específico son extraídos del flujo de señal en la red por el conmutador local 3 y, por lo tanto, no están disponibles ni accesibles para los dispositivos cliente 2 en nodos más alejados en la red. Además, los mensajes enviados a través de un dispositivo cliente 2 en un nodo específico a un dispositivo cliente en otro nodo se pasan sólo a través del conmutador local 3 del dispositivo cliente 2 intermedio, y no se suministran a la sección 4 de procesamiento local del dispositivo cliente 2 intermedio.
Este nivel básico de seguridad, por supuesto, es vulnerable. Normalmente, sería posible para un usuario de un dispositivo cliente utilizar la sección 4 de procesamiento local para obtener acceso a los mensajes que atraviesan el conmutador local 3 hacia otros dispositivos cliente 2, pero se evitaría el fisgoneo casual. Además, cualquiera con acceso físico al sistema podría utilizar instrumentos, tales como un analizador de estado lógico, para registrar las transacciones a lo largo de un itinerario de datos, y un nodo no autorizado podría entonces insertarse en el itinerario de datos para interceptar mensajes legítimos e inyectar mensajes a fin de llevar a cabo alguna forma de ataque a la integridad de datos de la red. Sin embargo, tal ataque depende de tener acceso físico al sistema.
Puede obtenerse una mejor seguridad de datos cifrando los mensajes enviados por los enlaces de datos individuales entre pares de nodos conectados.
Un primer procedimiento para hacer esto se muestra en la Figura 6, en la cual cada uno de los receptores 9 y de los transmisores 10 que componen los bloques conmutadores 6 de un conmutador local 3 está dotado de un elemento programable 33 de operador lógico O exclusivo, que aplica una función de operador lógico O exclusivo a cada mensaje después de la recepción por parte de la sección receptora 9, o antes de la transmisión por parte de la sección transmisora 10.
La función de operador lógico O exclusivo aplicada por los elementos programables 33 de operador lógico O exclusivo en cada conmutador local 3 adopta la forma de una máscara de operador lógico O exclusivo, controlada por la sección 4 de procesamiento local.
La máscara de operador lógico O exclusivo codifica todo el mensaje transmitido, por lo que, al igual que los datos efectivos llevados por el mensaje, se codifican totalmente la cabecera del mensaje y la información de encaminamiento, tal como la identificación del circuito virtual destinatario, el tipo de datos y el tamaño de los datos.
La máscara de operador lógico O exclusivo, aplicada por los elementos 33 de operador lógico O exclusivo, puede modificarse periódicamente, enviando mensajes a todos los dispositivos cliente 2 en el sistema, instruyéndolos para cambiar la máscara del operador lógico O exclusivo.
Tal sistema hará inútiles los ataques al sistema utilizando un analizador de estado lógico, porque no será posible identificar lo que significan los mensajes e, incluso si se hace un intento de deducir la máscara utilizada del operador lógico O exclusivo, se vería frustrado por los cambios periódicos.
Al cambiar las máscaras de operador lógico O exclusivo, puede hacerse bien instruyendo a todos los dispositivos cliente 2 para cambiarlas por la nueva máscara de operador lógico O exclusivo en un momento futuro fijado, o bien propagando un mensaje de cambio de máscara por la red, de manera tal que cada máquina cliente 2 reciba a su vez el mensaje de cambio de máscara, diciéndole que aplique la nueva máscara de operador lógico O exclusivo a todos los mensajes futuros, y que reenvíe el mensaje de cambio de máscara al siguiente dispositivo cliente 2 en el próximo nodo. Cualquiera de los enfoques debería ser efectivo, aunque la naturaleza asíncrona del sistema y el hecho de que los bloques conmutadores 6, que operan en direcciones opuestas en el mismo conmutador 3, y las secciones 9 y 10 de recepción y transmisión de cada bloque conmutador 6, no están sincronizados, requerirá que se aplique algún protocolo para tratar los mensajes que se transmitan o reciban cuando se reciban instrucciones para cambiar la máscara de operador lógico O exclusivo, o cuando estén por ejecutarse.
Los mensajes cifrados por la máscara de operador lógico O exclusivo son de tamaño idéntico al de los mensajes originales antes del cifrado y, en consecuencia, este procedimiento de cifrado no impone ninguna penalización en ancho de banda sobre las prestaciones del sistema.
Puede brindarse un nivel mejorado de seguridad con la incorporación de un procesador auxiliar de seguridad dentro de cada conmutador local 3.
Con referencia a la Figura 7, se muestra una sección 3 de conmutación local, que comprende dos bloques conmutadores 6a y 6b, que operan respectivamente sobre los itinerarios de datos flujo abajo y flujo arriba a través del conmutador 3. El conmutador local 3 también incluye un procesador auxiliar 34 de seguridad.
El procesador auxiliar 34 de seguridad establece las máscaras del operador lógico O exclusivo aplicadas por los elementos 33 de operador lógico O exclusivo, en lugar de las máscaras de operador lógico O exclusivo establecidas por la sección 4 de procesamiento local, como en el sistema sin el procesador auxiliar 34 de seguridad, anteriormente descrito.
En funcionamiento, los procesadores auxiliares 34 de seguridad en los conmutadores locales 3 opuestos en dispositivos cliente 2 en nodos adyacentes se comunican entre sí intercambiando claves públicas de cifrado. Los procesadores auxiliares 34 de seguridad utilizan entonces estas claves públicas para cifrar y emitir entre sí máscaras de operador lógico O exclusivo, que se aplican a los mensajes enviados entre ellos. Esta comunicación e intercambio de claves públicas se lleva a cabo inyectando mensajes adicionales en el flujo de mensajes por el enlace de comunicaciones entre los dos nodos. Esto requerirá un encaminamiento y procesamiento adicional del mensaje recibido, y arbitraje de los mensajes transmitidos por parte de las secciones receptoras 9 y las secciones transmisoras 10, dado que el sistema estará ahora llevando mensajes a y desde el procesador auxiliar 34 de seguridad en cada conmutador local 3, así como mensajes a y desde las secciones 4 de procesamiento local, mensajes a pasar por la red hacia otros nodos y acuses de recibo.
El intercambio de claves públicas y el establecimiento de máscaras de operador lógico O exclusivo son efectuados por separado por cada procesador auxiliar 34 de seguridad para los mensajes a y desde el siguiente nodo flujo arriba, y a y desde el siguiente nodo flujo abajo, por lo que los mensajes flujo arriba y los mensajes flujo abajo serán cifrados y descifrados utilizando distintas máscaras de operador lógico O exclusivo.
A ciertos intervalos, cada procesador auxiliar 34 de seguridad reestablecerá la comunicación con los procesadores auxiliares 34 de seguridad en nodos adyacentes y, de manera sincronizada, cambiarán las máscaras de operador lógico O exclusivo. Utilizando este sistema, sólo es necesario que las máscaras de operador lógico O exclusivo se cambien a la vez en ambos extremos de cada enlace de comunicaciones entre nodos; no hay ningún requisito de que todas las máscaras de operador lógico O exclusivo en la red se cambien simultáneamente. Así, además de tener los intervalos en los cuales se cambian las máscaras de operador lógico O exclusivo una base cronológica, también podrían cambiarse independientemente, basándose en el número de mensajes intercambiados por cada enlace de comunicaciones, o basándose en alguna combinación de estos dos criterios.
Es usualmente conveniente emplear la misma máscara de operador lógico O exclusivo en ambas direcciones, en cualquier enlace de comunicaciones dado entre nodos. Sin embargo, esto no es esencial. Sólo es esencial que se utilice la misma máscara de operador lógico O exclusivo para cifrar y descifrar mensajes en una dirección por cada enlace de comunicaciones. La máscara de operador lógico O exclusivo utilizada en la sección receptora 9 del bloque conmutador 6a flujo abajo y la máscara de operador lógico O exclusivo empleada en la sección transmisora 10 del bloque conmutador 6b flujo arriba no necesitan ser la misma. De manera similar, los intervalos a los cuales se cambian estas máscaras de operador lógico O exclusivo podrían ser distintos. Sin embargo, tener máscaras distintas en cada dirección por el mismo enlace de comunicaciones duplicará efectivamente la magnitud del procesamiento que debe ser realizado por cada procesador auxiliar 34 de seguridad, y duplicará la cantidad de mensajes que deben enviarse para controlar el cifrado. En consecuencia, puede preferirse el empleo de las mismas máscaras en cada dirección en cada enlace de comunicaciones.
El empleo de las mismas, o de distintas, máscaras de cifrado en cada dirección en cada enlace de comunicaciones son igualmente válidos y es una cuestión de elección del diseñador o usuario escoger cuál se usa.
Una ventaja de este sistema es que el proceso de cifrado es llevado a cabo totalmente por los procesadores auxiliares 34 de seguridad contenidos dentro de cada conmutador local 3, por lo que las secciones 4 de procesamiento local, y cualesquiera aplicaciones relacionadas, no tienen control sobre, ni acceso a, el proceso de generación y cifrado de máscaras. Esto aumenta la seguridad del cifrado, porque un usuario no puede acceder a ningún dato, con respecto a las máscaras de cifrado utilizadas, de una aplicación en un dispositivo cliente 2. Además, incluso si se accede físicamente al conmutador local 3 de un dispositivo cliente 2, sólo se compromete a las máscaras de cifrado utilizadas para los mensajes que pasan a y desde ese conmutador local 3, y, de cualquier manera, estos mensajes están disponibles en el conmutador local 3.
Otra ventaja es que la generación y cifrado efectivos de la máscara por parte del procesador auxiliar 34 de seguridad no tienen que llevarse a cabo en tiempo real. Es decir, la generación y cifrado de máscara puede ser realizados por el procesador auxiliar 34 de seguridad fuera de la banda, mientras que el resto del conmutador local 3 está enviando y recibiendo mensajes utilizando las máscaras ya establecidas de operador lógico O exclusivo. Como resultado, el tiempo empleado para llevar a cabo el proceso de generación y cifrado de máscara no es crítico, por lo que los procesadores auxiliares 34 de seguridad pueden ser microprocesadores sencillos, pequeños y baratos, lo que les permite incorporarse en los elementos 3 de conmutación local con sólo un efecto marginal en los costes. El procesador auxiliar 34 de seguridad podría empotrarse en macrocélulas dentro de los elementos 3 de conmutación local.
En los ejemplos anteriores, los procesadores auxiliares 34 de seguridad se muestran como una única unidad conectada con ambos bloques conmutadores 6a y 6b de un conmutador local 3. Por supuesto, sería posible emplear distintos procesadores auxiliares de seguridad dentro de cada bloque 6a y 6b de seguridad, pero los dos procesadores auxiliares de seguridad tendrán que estar en contacto entre sí para controlar debidamente el proceso de cifrado.
Esta disposición garantiza que cualquier intento de comprometer el sistema y de extraer datos tendría acceso a sólo una parte de los datos llevados por la red, durante un periodo de tiempo relativamente corto.
Cuando se activa la red por primera vez, o después de una reinicialización de sistema por toda la red, los procesadores auxiliares 34 de seguridad intercambiarán claves públicas y establecerán las máscaras de cifrado por operador lógico O exclusivo antes de permitir que se envíen otros mensajes cualesquiera.
Un procedimiento para realzar adicionalmente la seguridad proporcionada por los procesadores auxiliares 34 de seguridad es incorporar la autenticación de usuario de tarjeta inteligente en los conmutadores locales 3.
Un ejemplo se muestra en la Figura 8, donde se incorpora un zócalo conector 35 de tarjeta inteligente, conectado con el procesador auxiliar 34 de seguridad, en el conmutador local 3.
La inserción de la tarjeta inteligente en el zócalo 35 actúa como una autenticación de usuario y permite que el procesador auxiliar 34 de seguridad comience su operación. Además, la tarjeta inteligente 35 proporciona una o más semillas para las máscaras utilizadas de cifrado por operador lógico O exclusivo.
Cuando no está presente una tarjeta inteligente en el zócalo 35 de tarjeta inteligente, el conmutador local 3 es incapaz de funcionar, porque el procesador auxiliar 34 de seguridad no establecerá las máscaras de operador lógico O exclusivo ni permitirá la operación de los bloques conmutadores 6a y 6b. Por supuesto, puede ser conveniente, en la práctica, incluir también conexiones desde el zócalo 35 de tarjeta inteligente a otras partes del conmutador local 3 a fin de desactivar partes adicionales del conmutador local 3 cuando la tarjeta inteligente no está presente en el zócalo 35.
Además, incluso si una tarjeta inteligente físicamente compatible está conectada con el zócalo 35 de tarjeta inteligente, si esta tarjeta inteligente no es una tarjeta correcta, por ejemplo, si es válida sólo hasta una fecha dada, que ha pasado, no podrá proporcionar una semilla de máscara de operador lógico O exclusiva al procesador auxiliar 34 de seguridad que sea compatible con los requisitos de red. Como resultado, el procesador auxiliar 34 de seguridad será incapaz de establecer máscaras efectivas de cifrado por operador lógico O exclusivo que coincidan con aquellas utilizadas en los conmutadores 3 en nodos adyacentes, y el conmutador local 3 nuevamente será incapaz de funcionar.
Como se ha explicado anteriormente, incluso sin el uso de un procesador auxiliar 34 de seguridad, el procedimiento de operación de la arquitectura de red según la invención proporciona cierta seguridad. Que se empleen o no las opciones mejoradas de seguridad basadas en el cifrado, según lo descrito anteriormente, será, como la mayoría de las decisiones de seguridad, un compromiso entre la importancia dada a la seguridad y a los costes.
Si deben emplearse tarjetas inteligentes de autenticación de usuario, pueden utilizarse para uno, algunos o todos los conmutadores locales 3 en la red, según el grado de seguridad requerido. En algunas aplicaciones de muy alta seguridad, puede ser adecuado emplear tarjetas inteligentes para la autenticación de usuario en todos los conmutadores locales 3, mientras que en aplicaciones menos críticas para la seguridad puede ser suficiente emplear la autenticación de usuario por tarjeta inteligente sólo en el dispositivo cliente 2 de pasarela que conecta con Internet, o el dispositivo cliente 2 de pasarela que contiene y genera los datos más críticos para la seguridad.
Se entenderá que las características de seguridad anteriormente descritas son una función del hardware y software de la red en sí mismos, y que son totalmente independientes de, y transparentes para, las aplicaciones que emplean y que funcionan sobre la red. Todas las características de seguridad basadas en aplicaciones, tales como el cifrado de datos por las aplicaciones, son totalmente independientes de las características de seguridad anteriormente descritas.
El empleo de máscaras de operador lógico O exclusivo es ventajoso, porque impone muy poco retardo adicional sobre la transmisión y recepción de mensajes, no aumenta el tamaño del mensaje y puede implementarse de manera sencilla y barata. Sin embargo, podrían utilizarse máscaras de cifrado o disposiciones alternativas.
Se describirá ahora un ejemplo de un formato y códigos de mensaje adecuados para su empleo en un sistema de este tipo.
Como se muestra en la Figura 9a, el formato de mensaje tiene una sección de tipo de mensaje y de encaminamiento que comprende un código de tipo de mensaje de 2 bits, un código de tamaño de datos de 2 bits, e identificadores de destino y fuente de 6 bits. El formato de mensaje también puede tener una sección de datos que comprende una carga útil de datos de 32 o 128 bits.
Esta disposición simplifica la lógica empleada en las máquinas de estado finito de los bloques conmutadores 6, ya que el contador de bits y la terminación temprana pueden procesarse durante el campo siguiente.
El empleo del código de fuente y destino de 6 bits en el ejemplo limitaría la red a 64 dispositivos cliente en 64 nodos. Esto se considera adecuado para la mayoría de los sistemas domésticos. Sin embargo, esto es meramente un ejemplo, y podría disponerse de más bits de identificador de destino y fuente, según se requiera.
Los códigos de tipo de mensaje se muestran en la Figura 9B, e identifican el mensaje como un acuse de recibo del último mensaje enviado, o el nivel de seguridad del mensaje. En este ejemplo, los mensajes de nivel 1 son mensajes no seguros entre elementos de procesamiento en los nodos. Cada nodo sólo puede enviar mensajes de petición de datos, o respuestas a peticiones anteriores en este formato, y sólo puede recibir peticiones de datos o devolver información en respuesta a una petición anterior. El paso de mensajes de este tipo se utiliza normalmente para informar de peticiones de interrupción y para transportar protocolos de red.
Los mensajes que incluyen datos enviados a y desde las aplicaciones de los dispositivos cliente 2, en lugar de a y desde los mismos conmutadores 3, también se consideran como mensajes de nivel 1.
Los mensajes de nivel 2 son mensajes precodificados entre procesadores de aplicaciones, para configurar máscaras de cifrado entre nodos y son, esencialmente, mensajes de nivel 1 para fines especiales.
Los mensajes de nivel 3 y 4 se utilizan para la comunicación entre los procesadores auxiliares 34 de seguridad en distintos nodos.
Los mensajes de acuse de recibo no contienen carga útil de datos y son específicamente identificados como tales por el código de tipo de mensaje.
Los códigos de tamaño de datos se muestran en la Figura 9c e indican si el mensaje incluye cero datos, una palabra (32 bits) de datos o cuatro palabras (128 bits) de datos como carga útil. Normalmente, sólo los acuses de recibo tendrán un contenido de cero datos.
Según se indica en las Figuras 4a y 4b, el enlace de comunicaciones entre nodos adyacentes lleva señales de datos, de reloj y de trama.
La señal de datos, por supuesto, consiste en los datos efectivos que componen los mensajes llevados por la red, según lo anteriormente explicado.
La señal de reloj se requiere para garantizar que las secciones transmisora y receptora, 9 y 10, opuestas en los conmutadores 3 en cada extremo de cada enlace de comunicaciones en el sistema, están enviando y recibiendo datos a la misma velocidad, a fin de permitir la transmisión fiable de datos.
Convencionalmente, las redes funcionan con una señal común de reloj por toda la red, debiéndose cualquier diferencia sólo a los retardos de propagación y, de hecho, tal disposición de reloj común es obligatoria en un sistema de tipo de bus de datos.
En la arquitectura inventiva de red electrónica, los pares opuestos 9 y 10 de transmisor y receptor en los conmutadores 3 de nodos adyacentes se conectan a fin de formar un bucle lógico asíncrono, que genera una señal de reloj, utilizada para sincronizar los transmisores y receptores, y el enlace de datos entre ellos. Este bucle lógico se muestra en forma de diagrama en la Figura 10.
Una transición del estado del reloj se genera en la sección transmisora 9 del conmutador local 3a flujo arriba en el nodo flujo arriba, y se envía por el itinerario de comunicación a la sección receptora 10 del conmutador local 3b en el nodo flujo abajo. La transición de reloj es luego invertida por un invertidor 36, para proporcionar una transición de reloj de polaridad opuesta, y reenviada por la sección transmisora 10 del conmutador local 3b flujo abajo, de vuelta a la sección receptora 9 del conmutador local 3a flujo arriba, donde es devuelta a la sección transmisora 9 y
reenviada.
Esto proporciona un bucle con una ganancia de -1.
Si el retardo total alrededor del bucle se considera como \deltaTu más \deltaTd, donde \deltaTu es el retardo al atravesar el conmutador local 3a flujo arriba, y \deltaTd es el retardo al atravesar el conmutador local 3b flujo abajo, el bucle de pulso de reloj resonará a una frecuencia con un periodo de aproximadamente 2 (\deltaTu + \deltaTd).
En el sistema es un requisito que el retardo en cualquier nodo, es decir \deltaTu y \deltaTd, sea suficiente para que una sección transmisora envíe un bit desde su registro de salida, o para que un receptor reciba correctamente y almacene un bit entrante.
En el bucle, el invertidor da un desplazamiento de fase de 180º, y el resto del desplazamiento de fase a la frecuencia de resonancia del bucle es proporcionado por los diversos retardos de la señal que circula por el bucle.
Esto permite que la señal de reloj utilizada en cada enlace de datos en la red se fije automáticamente en el valor óptimo para la más rápida transferencia de datos permitida por la electrónica en los conmutadores locales 3 opuestos, la longitud del enlace de comunicaciones y la temperatura ambiente.
Los conmutadores 3 están dispuestos de manera tal que cuando sus secciones flujo arriba o flujo abajo no están conectadas con otro conmutador 3 a través de un enlace de comunicaciones, un puerto transmisor flujo abajo no conectado se mantiene en un nivel lógico de reloj de valor uno, mientras que una sección receptora flujo arriba no conectada se mantiene en un nivel lógico de reloj de valor cero.
Cuando las secciones flujo arriba y flujo abajo no conectadas de dos conmutadores activados se conectan en oposición a través de un enlace de comunicaciones, el uno lógico producido por la sección transmisora flujo abajo del conmutador 3 flujo arriba prevalece sobre el cero lógico en la sección receptora flujo arriba del conmutador 3 flujo abajo. Este cambio aparece en el conmutador flujo abajo como una transición del estado del reloj, de forma tal que el bucle comienza a oscilar según se ha expuesto anteriormente.
Esto brinda la ventaja de que pueden conectarse nuevos dispositivos cliente al sistema en funcionamiento, y se generará automáticamente una señal de reloj que permite la comunicación con el nuevo dispositivo cliente. Además, cuando un dispositivo cliente no está conectado, los puertos no conectados se mantienen en un nivel de voltaje constante sin ninguna actividad de corriente alterna y, por ello, no generarán ninguna interferencia electromagnética.
Los sistemas que permiten la conexión automática de nuevos elementos a un sistema en funcionamiento, el así llamado enchufe en caliente, existen, pero los sistemas conocidos de este tipo requieren la transmisión continua de señales alternadas, tales como señales de reloj, en los conectores no utilizados, a fin de permitir que se detecte la conexión de un nuevo dispositivo. Como resultado, tales sistemas conocidos generan grandes cantidades de interferencia electromagnética (IEM).
Además, los sistemas conocidos de este tipo requieren hardware y software complejos para permitir que los dispositivos recién conectados se integren en un sistema.
Se entenderá que la descripción anterior es puramente ejemplar. Los niveles lógicos del reloj mantenidos en los distintos puertos no conectados pueden variarse en muchas combinaciones, siempre que se genere al conectarse una transición aparente del estado del pulso del reloj.
El empleo de una única inversión en el bucle no es esencial, siendo el criterio esencial tener un número impar de inversiones. La ubicación precisa de la inversión, o de cada una de ellas, no tiene importancia; el invertidor 36 puede estar en cualquier conmutador 3.
Se prefiere que los bucles sean gobernados por un pulso de reloj inicial desde el conmutador 3 flujo arriba.
Si uno de los conmutadores locales 3 es reemplazado por un nuevo modelo, capaz de funcionar más rápido, el retardo reducido en el bucle causará automáticamente que aumenten las señales de reloj para los enlaces de comunicaciones que está utilizando el conmutador. De manera similar, los cambios en los tiempos de retardo a través de los enlaces de datos, debidos, por ejemplo, al reemplazo de un cable por otro de longitud distinta, serán automáticamente compensados por un cambio en la velocidad del reloj, como ocurrirá con los cambios en las velocidades de operación de los conmutadores 3 debidos a cambios de temperatura.
Debería entenderse que la velocidad del reloj para cada enlace de comunicaciones en la red puede ser distinta y, en la práctica, probablemente será al menos levemente distinta. Además, aunque las velocidades internas del reloj utilizadas por los conmutadores 3 y las velocidades de reloj utilizadas para transferir datos a través de los enlaces conectores de datos están vinculadas, porque todo aumento en la velocidad de reloj del conmutador permitirá dar soporte a una velocidad aumentada del reloj de transferencia de datos por sus enlaces de datos, no son iguales.
Aunque la técnica anteriormente descrita para fijar velocidades de reloj por los enlaces de datos se considera como sumamente ventajosa, no es esencial y, en algunas situaciones, no será práctica. A fin de que se utilice esta técnica de determinación automática de velocidades de reloj, debe haber un enlace de datos bidireccional entre los conmutadores en dos nodos adyacentes. Donde sólo se proporciona un enlace de datos unidireccional, por ejemplo, donde sólo está presente un enlace de datos infrarrojo unidireccional, deberá emplearse un procedimiento convencional para fijar y sincronizar las velocidades de reloj.
Un ejemplo de las señales de reloj, datos y trama en una dirección por un único enlace de comunicación se muestra en la Figura 11.
Se prefiere el uso de temporización síncrona por bit para permitir que la velocidad de datos entre nodos adyacentes sea tan alta como sea posible, sin perder ancho de banda debido a los preámbulos para la sincronización. Esto también es sencillo de implementar.
Los mensajes pueden enviarse parcialmente en paralelo, si se desea. Si va a emplearse el envío en paralelo a mitad del mensaje, los conmutadores locales 3 a lo largo de la ruta de datos enviados en paralelo deben cooperar a fin de que todos estén utilizando la misma velocidad de reloj a lo largo de todos los enlaces de comunicación. Esta velocidad común del reloj tendrá que ser la más lenta a lo largo de la ruta de datos. En consecuencia, la determinación de una velocidad común de reloj debería ser llevada a cabo por las secciones 4 de procesamiento local de los dispositivos cliente 2 que requieren el envío en paralelo de mensajes, instruyendo a los conmutadores 3 necesarios para hacer esto sólo cuando han de enviarse mensajes en paralelo, utilizándose en caso contrario las velocidades de reloj fijadas localmente, según lo anteriormente descrito.
En cualquier red dada, un nodo será el más alejado flujo arriba y uno será el más alejado flujo abajo. El nodo más alejado flujo arriba es considerado como el nodo maestro de la red para fines de resolución de posición y de asignación de números de circuito lógico o virtual. Siendo el nodo superior extremo, durante el inicio o la reinicialización no tendrá una señal de reloj entrante en su receptor orientado hacia la salida (flujo arriba). Durante el inicio o la reinicialización del sistema, todos los conmutadores 3 envían señales de reloj flujo abajo, y se utiliza la presencia, o no, de una señal de reloj recibida desde la zona flujo arriba para determinar si un nodo es o no un nodo maestro. Después de que se han recibido, o no, señales de reloj durante un periodo prefijado, el hecho de que un conmutador 3 esté o no en un nodo maestro se indicará en un registro de estado y luego se desactivará el estado de reinicialización.
Después de la reinicialización, todos los conmutadores 3 están configurados con una dirección asignada de valor cero. El circuito asignado es determinado entonces, desde el nodo maestro hacia fuera, siendo el conmutador 3 en el nodo maestro el circuito lógico cero y enviando un mensaje flujo abajo al nodo 1, generando el circuito lógico número 1. El conmutador 3 en el nodo 1 captura ese mensaje y se asigna a sí mismo el número de circuito recibido, utilizando el resultado como su propia dirección de nodo. El conmutador 3 en el nodo 1 incrementa entonces el número de circuito recibido y lo envía flujo abajo al nodo 2. Este proceso continúa, asignando los números de circuito virtual nodo por nodo. Si es necesario, a un nodo dado pueden asignarse más de un número de circuito. Estas funciones de adjudicación de dirección pueden ser realizadas por hardware o software en los conmutadores 3, o por procesamiento local en el dispositivo cliente 2.
Se necesita esta asignación automática de números de nodo, en lugar de que los números de nodo sean permanentemente asignados inicialmente, a fin de permitir la posibilidad de que los conmutadores pudiesen añadirse o quitarse o llevarse de un sitio a otro en una red a lo largo del tiempo, lo que requiere la reasignación de números. Además, la reinicialización, seguida por la asignación de nuevos números de identificación, puede ser útil o necesaria a fin de permitir que una red parcial, separada de una red mayor por un fallo de componente, continúe funcionando independientemente.
Es posible que el equipo en cada nodo no tenga las mismas capacidades. La posibilidad de que distintos nodos puedan dar soporte a distintas velocidades de reloj es abordada por el procedimiento de determinación automática de velocidad del reloj, anteriormente descrito.
El equipo de todos los nodos debe poder dar soporte a transferencias asíncronas de un byte y síncronas de un byte, pero todas las otras características son optativas. Durante el inicio o la reinicialización del sistema, el procesamiento local debe establecer qué utilidades están disponibles en cada nodo en la red.
Por ejemplo, un procesador local capaz de enviar y recibir mensajes de 128 bits debe comprobar no sólo que el nodo destinatario de un mensaje es capaz de enviar y recibir mensajes de 128 bits, sino también que todos los nodos intermedios son capaces de hacer esto si deben enviarse mensajes de 128 bits. En caso contrario, el mensaje deberá partirse en un cierto número de mensajes más pequeños, que pueden ser tratados por los nodos intermedios.
Las anteriores descripciones de la operación de la arquitectura de red de ordenadores y de las partes específicas operativas en red de los dispositivos cliente 2 han sido expuestas sólo con referencia a una red lineal muy sencilla. Sin embargo, como se muestra en la Figura 1, son posibles estructuras de red más complejas, en las cuales los nodos pueden tener múltiples enlaces con múltiples nodos flujo abajo. A fin de atender a los múltiples enlaces de comunicaciones flujo abajo, tales nodos, múltiplemente conectados, requerirán conmutadores locales 3 que empleen bloques conmutadores 6a y 6b, flujo arriba y flujo abajo, con múltiples secciones receptoras 9 y secciones transmisoras 10 orientadas flujo abajo.
En el bloque conmutador 6a flujo abajo, el único requisito adicional es la conmutación lógica o por hardware, para permitir que se seleccione la sección adecuada entre las secciones transmisoras, basándose en la dirección de destino del mensaje.
El bloque conmutador 6b flujo arriba requerirá almacenamiento temporal adicional y arbitraje de mensajes, a fin de permitir la posibilidad de que se reciban simultáneamente múltiples mensajes en las distintas secciones receptoras temporizadoras flujo abajo, y arbitrar qué mensaje recibido debería ser el siguiente a transmitir.
El empleo de secciones transmisoras distintas para cada enlace de comunicaciones no es estrictamente esencial; podría utilizarse una única sección transmisora, junto con la conmutación flujo abajo de la sección transmisora, para seleccionar el nodo de destino. Sin embargo, se prefiere el empleo de secciones transmisoras distintas para cada enlace de comunicación, porque esto permite que se utilicen plenamente la técnica de determinación automática de la velocidad del reloj y las técnicas de seguridad mejorada anteriormente esbozadas.
La arquitectura de red descrita también puede utilizarse como una arquitectura dentro de los dispositivos cliente 2 individuales, para proporcionar la sección 4 de procesamiento local.
Aunque tal enfoque de la arquitectura de dispositivos es desmedidamente compleja para un único dispositivo procesador, en la práctica, la mayoría de los dispositivos serán dispositivos multiprocesadores que pueden beneficiarse de este enfoque de la arquitectura.
Una típica sección 4 multiprocesadora y de procesamiento local se muestra en la Figura 12.
La sección 4 de procesamiento está formada por una pluralidad de procesadores 40, seis procesadores 40a a 40f en el ejemplo, enlazados entre sí en una cadena por una serie de buses de entrada/salida o enlaces 41a a 41e de transferencia de datos, cada uno de los cuales enlaza un par de procesadores 40.
Los datos son introducidos y retirados de la sección 4 de procesamiento por un bus de entrada/salida o enlace 42 que conduce a otros elementos, tales como el conmutador local 3 y la sección local 5 de entrada y salida. Aunque las conexiones 41a a 41e pueden ser buses, tales buses sólo enlazarán dos procesadores 40 consecutivos en la cadena, y no todos los procesadores 40, como en un dispositivo multiprocesador convencional basado en bus.
Se proporcionan buses distintos 43a y 43b de entrada y salida de vídeo, que enlazan todos los procesadores 40, a fin de impedir que los dispositivos de vídeo desborden las conexiones 41 entre procesadores con muy grandes cantidades de datos de vídeo.
La sección 4 de procesamiento funciona de manera similar a la red lineal anteriormente descrita, siendo considerado el procesador 40a como el más alto procesador flujo arriba, y controlando el acceso externo a y desde la sección 4 de procesamiento.
Se entenderá que toda transferencia de datos a y desde los procesadores 40 flujo abajo es potencialmente capturada y controlada por los procesadores 40 flujo arriba, brindando seguridad de esa manera. Sin embargo, de manera similar a la red, un procesador 40 que no desea aplicar controles de seguridad a los datos transferidos puede sencillamente dejarlos pasar sin modificación.
Los procesadores no tienen que ser exclusivamente aritméticos; podrían ser procesadores de audio o vídeo con sus propias entradas y salidas distintas.
Una ilustración sencilla de este principio se muestra en la Figura 14. El dispositivo en la Figura 14 es extremadamente sencillo, con sólo tres nodos, estando el primer nodo 30 de red conectado con un segundo nodo 31 de tarjeta inteligente, que está conectado a su vez con un tercer nodo 32 procesador de aplicaciones. El nodo 30 de red está formado por un procesador que forma una conexión con el conmutador local 3. El nodo 31 de tarjeta inteligente incorpora un conector de tarjeta inteligente. Los datos enviados a y desde la tarjeta inteligente desde la red no pueden ser interceptados por el procesador de aplicaciones en el nodo 32 procesador de aplicaciones, porque los datos enviados a y desde la tarjeta inteligente, que pueden incorporar datos de comercio electrónico, o biométricos, sencillamente no son físicamente entregados al mismo.
Este nivel de seguridad básica es sólo fiable para aplicaciones empotradas en un dispositivo cliente 2 que sólo recibe actualizaciones de software por medio de un servicio protegido; en este ejemplo, por tarjeta inteligente. En caso contrario, el software dentro del nodo 31 de tarjeta inteligente podría ser alterado remotamente, de manera tal que los mensajes que contienen los datos sensibles fueran copiados al procesador en el nodo 32 procesador de aplicaciones.
De manera similar a la seguridad de red descrita anteriormente, este nivel de seguridad es vulnerable ante cualquiera con acceso físico al dispositivo, porque podría utilizarse un analizador de estado lógico para registrar transacciones a lo largo de un itinerario de datos, y para permitir luego que se inserte un nodo no autorizado. Sin embargo, tal ataque depende de tener acceso físico al dispositivo, y esto puede no ser posible, por ejemplo, allí donde el dispositivo es una máquina de cajero automático o está dentro de equipos médicos.
Una estructura alternativa se muestra en forma de diagrama en la Figura 13, donde a un dispositivo 4 con cinco procesadores 40a a 40e se le ha conectado un enlace 41f adicional de comunicación, entre el procesador 40a más flujo arriba y el procesador 40f más flujo abajo, de manera tal que los procesadores estén enlazados en un anillo. Esta estructura soportará enlaces de comunicación de bucle rotativo de control dual. En esta ilustración, no se muestran los posibles buses distintos de entrada y salida de vídeo, para mayor claridad.
Hay un cierto número de ventajas en esta estructura de anillo. La primera es la redundancia aumentada y la integridad mejorada del sistema. Si el anillo se rompe en cualquier punto por el fallo de un enlace 41 de comunicaciones o de un procesador 40, la comunicación entre las partes restantes del dispositivo aún puede efectuarse encaminando mensajes alrededor del bucle en la dirección que evita la ruptura.
En el caso de una sospecha de fallo, cualquier procesador 40 puede comprobar la integridad del bucle intentando enviarse mensajes a sí mismo en ambas direcciones alrededor del bucle y, si uno de estos mensajes, o ambos, se bloquea(n), enviando mensajes a los otros procesadores 40 sucesivamente, hasta que pueda determinarse el punto de fallo.
Aunque en el pasado se han utilizado bucles contra-rotativos en sistemas basados en FDDI (Fibre Distributed Data Interface - Interfaz de Fibra para Datos Distribuidos), nunca antes han sido utilizados en arquitecturas al nivel del dispositivo. El empleo de un bucle dual contra-rotativo confiere un nivel de robustez de sistema no alcanzable con tradicionales arquitecturas paralelas basadas en bus.
Además, el ancho de banda de comunicaciones dentro del dispositivo aumenta efectivamente, dado que cualquier procesador 40 de origen puede transmitir datos en ambas direcciones al mismo procesador 40 de destino. Por la ubicación adecuada de los procesadores 40 alrededor del bucle, puede lograrse que cualquier procesador específico brinde el doble de ancho de banda en el sistema que lo que puede hacer utilizando una disposición lineal, siendo el hardware idéntico en lo demás.
Podría parecer que, debido a que los datos se envían alrededor del bucle en ambas direcciones, algunas de las ventajas de seguridad expuestas anteriormente con respecto a la arquitectura de red se perderán para la arquitectura de dispositivo en bucle. Sin embargo, este no es necesariamente el caso. Las ventajas de seguridad brindadas por la no disponibilidad de mensajes en algunos nodos en el sistema aún pueden proporcionarse en la arquitectura de dispositivo en bucle, para procesadores que envían mensajes en sólo una dirección alrededor del bucle en la operación normal. Esto permitiría que se alcanzara la seguridad mejorada incluso cuando el dispositivo está funcionando normalmente, y la seguridad se comprometería sólo cuando un fallo obligase a que se alterara la dirección de envío de mensajes. Si se utiliza la estructura de bucle para aumentar el ancho de banda de un procesador específico, habrá un compromiso entre la seguridad y el ancho de banda disponible.
Una estructura adecuada de procesador para su empleo dentro de las estructuras de dispositivo mostradas en las Figuras 12 y 13 se muestra en la Figura 15.
Análogamente a la arquitectura de red, en la arquitectura de dispositivo cada procesador 40 incluye un elemento conmutador 43, así como el procesador 44 de aplicación efectivo. En consecuencia, un circuito virtual atravesará el conmutador 43 hacia un puerto específico en el procesador 44. La seguridad controlada por software se implementa programando el conmutador 43 para encaminar los círculos virtuales seleccionados, es decir, las direcciones de destino seleccionadas, hacia el procesador local 44. Es entonces una cuestión de normas de seguridad específicas para las implementaciones lo referido a las condiciones en las cuales los datos aceptados se reinsertan en el conmutador para pasar al próximo procesador 40 en la secuencia. Se prefiere utilizar ATM (Asynchronous Transfer Mode - Modalidad de Transferencia Asíncrona) para llevar datos dentro del dispositivo. Cuando se utiliza la ATM, a diferencia de un conmutador convencional de ATM, se prefiere que los datos reinsertados reciban la misma cabecera de circuito virtual que los datos entrantes, para evitar la necesidad de que el dispositivo receptor sea reprogramado con un circuito virtual distinto al entrante. Esto hace el conmutador transparente desde una perspectiva de transparencia interna del dispositivo.
A bajas velocidades de datos, todos los datos entrantes pueden inspeccionarse, filtrarse y encaminarse bajo control de software; sin embargo, a mayores velocidades de datos, será deseable el empleo de conmutación por hardware.
Como se ha explicado anteriormente, la seguridad brindada en la red al no estar disponibles los mensajes por todo el sistema, se proporcionará también en un único dispositivo. Esto es más significativo dentro de un dispositivo que en una red, porque la seguridad física de las partes internas de un único dispositivo es, usualmente, mucho mayor que la seguridad física de la red.
La estructura de procesador descrita permite la utilización de un muy sencillo conmutador 43 en cada procesador, ya que sólo aquellos circuitos virtuales destinados a ser retenidos en el nodo de ese dispositivo, para su empleo por parte del procesador 44 de aplicaciones, necesitan ser registrados en el conmutador 43. Los mensajes para todos los otros destinos de circuito virtual simplemente se dejarán pasar sin modificación.
El ejemplo ilustrado en la Figura 15 sí requiere alguna capacidad de procesamiento en cada nodo con dispositivos. Allí donde se desea conectar dispositivos periféricos tradicionales al dispositivo, sin requerir ningún soporte de procesamiento al dispositivo, podría utilizarse un sencillo nodo raso, en el cual los componentes periféricos son incapaces de controlar el conmutador 43.
En la Figura 15, sólo se muestra la comunicación de un único flujo de mensajes en una dirección. También será necesario enviar mensajes en la dirección opuesta, y esto puede ser llevado a cabo por el conmutador 43, con capacidad dúplex y capaz de enviar o recibir mensajes en ambas direcciones, por lo que el conmutador 43 es análogo al conmutador local 3 descrito con respecto a la red, o bien por la provisión de dos conmutadores 43 distintos, uno para cada dirección de flujo de mensajes, por lo que el conmutador 43 es análogo al bloque conmutador 6 descrito con respecto a la red.
El nivel de seguridad de datos proporcionada dentro de los dispositivos puede realzarse de manera similar a la seguridad de datos brindada por toda la red, proporcionando máscaras de operador lógico O exclusivo, u otras facilidades de cifrado, a fin de permitir que los mensajes pasen entre los procesadores 40 en distintos nodos del dispositivo para su cifrado.
Tales esquemas de cifrado son análogos a los esquemas de cifrado al nivel de la red, anteriormente descritos, y por ello no se describirán aquí en detalle. Tal cifrado puede emplear máscaras de operador lógico O exclusivo, establecidas bajo el control del procesador 44 de aplicaciones, o establecidas autónomamente por un procesador auxiliar de seguridad incorporado dentro del procesador 40, y que controla las máscaras de operar lógico O exclusivo empleadas por el conmutador o conmutadores 43 del procesador 40, de manera similar al procesador auxiliar de seguridad descrito con respecto a la seguridad de la red.
De manera similar a los procesadores auxiliares de seguridad basados en la red, los procesadores auxiliares de seguridad que forman parte de los procesadores 40 individuales dentro de un dispositivo también pueden ser controlados y dotados de semillas de máscara por una tarjeta inteligente.
Las ventajas de seguridad proporcionadas por esta disposición al nivel de dispositivo son similares a aquellas proporcionadas al nivel de la red.
Las arquitecturas de dispositivo anteriormente descritas son meramente cadenas lineales de procesadores 40 o bucles de procesadores 40, y se espera que estas arquitecturas fuesen, normalmente, las más convenientes para dispositivos reales. Sin embargo, serían posibles disposiciones alternativas, similares a aquellas propuestas para la red.
La velocidad de reloj empleada entre procesadores distintos de un único dispositivo, y el tamaño de mensaje a emplear, pueden fijarse de manera similar a las técnicas anteriormente descritas para su empleo en la red.
Se prefiere el empleo de las arquitecturas anteriormente descritas, tanto para una red en su totalidad como para los dispositivos individuales dentro de ella, debido a las ventajas brindadas, según lo explicado anteriormente. Sin embargo, esto no es esencial, y la arquitectura descrita está concebida para ser utilizable para redes, independientemente de la arquitectura utilizada dentro de los dispositivos individuales que componen la red, y para dispositivos, independientemente de la arquitectura de la red con la que están conectados o, incluso, de si están conectados en absoluto con una red.
Tanto en la arquitectura de red como en la arquitectura de dispositivo sin bucle, es posible conectar dispositivos o procesadores adicionales más flujo abajo, sin afectar el funcionamiento de las partes flujo arriba de la red o dispositivo. Esto permite el enchufe en caliente, tanto de dispositivos nuevos en una red como de procesadores nuevos en un dispositivo, sin interrumpir la operación del resto de la red o dispositivo. Esto, normalmente, no es posible en dispositivos o productos de consumo y, generalmente, no es posible con las arquitecturas basadas en bus de datos.
A fin de permitir tal enchufe en caliente, los conectores para dispositivos en la red, o para procesadores dentro de un dispositivo, deberían disponerse para enlazar primero la energía y la descarga a tierra, y luego permitir que el elemento recién añadido comience a recibir la señal de reloj desde el dispositivo, flujo abajo del cual ha sido conectado. El elemento recién añadido puede integrarse por sí mismo en la red o dispositivo. Este proceso es más simple allí donde la red o dispositivo es una disposición puramente lineal, porque al elemento recién añadido puede entonces asignársele simplemente una dirección o número de circuito lógico, simplemente aumentando el número o números almacenados por el dispositivo flujo arriba. Allí donde se utiliza una red más compleja, o una estructura de dispositivo con ramificaciones, será necesario que se proporcione uno o más números únicos disponibles al nuevo elemento, bien sondeando la red o dispositivo para identificar qué números están en uso, o bien por los dispositivos o procesadores ya integrados en la red o dispositivo que tengan un registro del estado actual de la red o dispositivo, identificando todos los números en uso actualmente.
Tal inserción de enchufe en caliente del nuevo procesador no puede llevarse fácilmente a cabo en un dispositivo configurado como un bucle, a menos que los mensajes se envíen normalmente sólo alrededor del bucle en una dirección, de forma tal que el enlace adicional 40F no esté normalmente en uso, en cuyo caso su enlace podría romperse y rehacerse para incluir un procesador adicional, sin perturbar el funcionamiento del resto del dispositivo.
En la descripción precedente, tanto de la arquitectura de red y de dispositivo como de los dispositivos y procesadores utilizados en los mismos, los dispositivos y procesadores genéricos descritos son capaces tanto de enviar como de recibir mensajes flujo arriba y flujo abajo.
Se comprenderá, por supuesto, que el elemento más flujo arriba, o pasarela, estará enviando y recibiendo mensajes flujo arriba, fuera del dispositivo o red, mientras que los elementos más flujo abajo no estarán conectados con ninguna posición más flujo abajo. En consecuencia, estos elementos en los extremos del dispositivo o red no requieren la capacidad de enviar o recibir mensajes tanto flujo arriba como flujo abajo. Sin embargo, en la práctica se preferirá, normalmente, retener una capacidad completa de envío y recepción de mensajes flujo arriba y flujo abajo en todos los elementos, a fin de permitir las economías mejoradas de escala en la producción de componentes, y de permitir la máxima flexibilidad en la redisposición de elementos dentro de una red o dispositivo, incluso aunque esto involucre que los elementos en los extremos de la red o dispositivo tengan componentes y capacidades redundantes.
El empleo de la modalidad de transferencia asíncrona (ATM) como un protocolo de transporte de red se considera como especialmente ventajosa en términos de prestaciones de red. Sin embargo, en la actualidad no está disponible el hardware necesario para implementar la ATM a un coste aceptablemente bajo para una red doméstica.
Los enlaces de datos entre nodos en la red pueden ser proporcionados por módem portador principal, pares cruzados gemelos de categoría 5, cable coaxial de 75 \Omega, o infrarrojos inalámbricos o de consumo. Esta es una lista de ejemplos adecuados, y no se pretende que sea exhaustiva.
Un formato de mensaje alternativo al mostrado en la Figura 9A se muestra en la Figura 16.
En este formato de mensaje alternativo, el mensaje tiene un tamaño fijo con una carga útil de sólo 32 bits. En consecuencia, no hay ningún requisito de un código de tamaño de datos. El identificador de origen de 6 bits es reemplazado por un número de circuito virtual de 8 bits, utilizado para identificar el origen.
Los formatos de mensaje dados son meros ejemplos. Como otras alternativas, sería posible incluir el tipo y tamaño de mensaje en un único código, si se requiriese un tamaño variable de mensaje, en lugar de tener códigos distintos de tipo de mensaje y de tamaño de mensaje.
Los ejemplos anteriormente descritos son ciertamente ejemplares, y la persona versada en la técnica comprenderá que pueden hacerse numerosos cambios y sustituciones dentro del ámbito de la invención, que está definido por las reivindicaciones adjuntas.

Claims (7)

1. Un dispositivo (3) con al menos dos secciones (9, 10) de comunicaciones, adecuadas para la conexión con dispositivos similares por distintos enlaces bidireccionales de comunicaciones, caracterizado porque el dispositivo tiene una primera sección de comunicaciones dispuesta para responder a la recepción de una transición de reloj por un primer enlace de comunicaciones, transmitiendo una transición de reloj con la misma polaridad de vuelta por dicho primer enlace de comunicaciones, y una segunda sección de comunicaciones, dispuesta para responder a la recepción de una transición de reloj por un segundo enlace de comunicaciones, transmitiendo una transición de reloj con la polaridad opuesta de vuelta por dicho segundo enlace de comunicaciones.
2. Un dispositivo según la Reivindicación 1, en el cual cuando la primera sección de comunicaciones no está conectada con otro dispositivo; está dispuesta para almacenar un primer estado del reloj como salida y, cuando la segunda sección de comunicaciones no está conectada con otro dispositivo, está dispuesta para almacenar un segundo estado del reloj, con una polaridad opuesta al primero, como entrada.
3. Un dispositivo según la Reivindicación 1, en el cual, cuando la segunda sección de comunicaciones no está conectada con otro dispositivo, está dispuesta para almacenar un primer estado del reloj como una salida y, cuando la primera sección de comunicaciones no está conectada con otro dispositivo, está dispuesta para almacenar un segundo estado del reloj, con polaridad opuesta al primero, como una salida.
4. Un dispositivo según una cualquiera de las Reivindicaciones 1 a 3 en el cual, cuando la primera sección de comunicaciones está enlazada con la segunda sección de comunicaciones de otro dispositivo, o viceversa, a través de un enlace bidireccional de comunicaciones, las secciones de comunicación enlazadas se disponen para formar un bucle, y el dispositivo utiliza una señal oscilante desde el bucle como una señal de reloj, para la comunicación por el enlace de comunicaciones.
5. Un dispositivo según la Reivindicación 4, en el cual, cuando la primera sección de comunicaciones no está conectada con otro dispositivo, está dispuesta para almacenar un primer estado del reloj como una salida y, cuando la segunda sección de comunicaciones no está conectada con otro dispositivo, está dispuesta para almacenar un segundo estado del reloj, con polaridad opuesta al primero, como una entrada, cuando las secciones de comunicación se enlazan por primera vez y, cuando la segunda sección de comunicaciones no está conectada con otro dispositivo, está dispuesta para almacenar un primer estado del reloj como una salida y, cuando la primera sección de comunicaciones no está conectada con otro dispositivo, está dispuesta para almacenar un segundo estado del reloj, con una polaridad opuesta al primero, como una salida y, cuando la primera sección de comunicaciones está enlazada con la segunda sección de comunicaciones de otro dispositivo, o viceversa, a través de un enlace bidireccional de comunicaciones, las secciones de comunicación enlazadas están dispuestas para formar un bucle y, cuando las secciones de comunicaciones se enlazan por primera vez, la diferencia entre sus estados de reloj almacenados, de entrada y de salida, causa que una señal oscilante circule por el bucle.
6. Una red de comunicación electrónica que comprende al menos dos dispositivos (3) conectados por al menos un enlace bidireccional de comunicaciones, y caracterizada porque un bucle es formado por el primer dispositivo (3A), que recibe una transición de reloj por el enlace de comunicaciones y que envía una transición de reloj con la misma polaridad de vuelta por el enlace de comunicaciones, y por el segundo dispositivo (3B), que recibe una transición de reloj por el enlace de comunicaciones y envía una transición de reloj con polaridad opuesta de vuelta por el enlace de comunicaciones, y estando los dispositivos primero y segundo adaptados para utilizar las transiciones de reloj que circulan por el bucle a fin de proporcionar una señal de reloj para controlar la transferencia de datos por el enlace de comunicaciones.
7. Una red según la Reivindicación 6, en la cual las transiciones de reloj que circulan en el bucle se utilizan como dicha señal de reloj.
ES99929556T 1998-07-02 1999-07-02 Arquitectura de sistema electronico. Expired - Lifetime ES2284259T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US9166598P 1998-07-02 1998-07-02
US91665P 1998-07-02

Publications (1)

Publication Number Publication Date
ES2284259T3 true ES2284259T3 (es) 2007-11-01

Family

ID=22229014

Family Applications (1)

Application Number Title Priority Date Filing Date
ES99929556T Expired - Lifetime ES2284259T3 (es) 1998-07-02 1999-07-02 Arquitectura de sistema electronico.

Country Status (11)

Country Link
EP (1) EP1142259B1 (es)
JP (1) JP2002520906A (es)
CN (1) CN1312997A (es)
AT (1) ATE356503T1 (es)
AU (1) AU4634599A (es)
CA (1) CA2336328A1 (es)
DE (1) DE69935452T2 (es)
ES (1) ES2284259T3 (es)
HK (1) HK1039006A1 (es)
NO (1) NO20006622L (es)
WO (1) WO2000002345A2 (es)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB0031157D0 (en) * 2000-12-20 2001-01-31 Ncr Int Inc Streaming of data
CH713392A1 (de) 2017-01-30 2018-07-31 Clean Air Entpr Ag Steuerelektronik für mehrere Elektrofilter.

Also Published As

Publication number Publication date
NO20006622D0 (no) 2000-12-22
EP1142259A2 (en) 2001-10-10
WO2000002345A2 (en) 2000-01-13
NO20006622L (no) 2001-03-01
JP2002520906A (ja) 2002-07-09
ATE356503T1 (de) 2007-03-15
DE69935452D1 (de) 2007-04-19
EP1142259B1 (en) 2007-03-07
CA2336328A1 (en) 2000-01-13
WO2000002345A3 (en) 2001-07-12
HK1039006A1 (zh) 2002-04-04
AU4634599A (en) 2000-01-24
CN1312997A (zh) 2001-09-12
DE69935452T2 (de) 2007-11-15

Similar Documents

Publication Publication Date Title
Perlman Network layer protocols with byzantine robustness
ES2225902T3 (es) Configuracion de barra cruzada/servidor central destinada a una red multimedia.
Tysowski et al. The engineering of a scalable multi-site communications system utilizing quantum key distribution (QKD)
ES2643488T3 (es) Sistema y procedimiento de gestión distribuida de ordenadores compartidos
ES2932380T3 (es) Autorización físicamente asegurada para aplicaciones de servicios públicos
Lou et al. A multipath routing approach for secure data delivery
ES2367588T3 (es) Procedimiento y dispositivo para una comunicación de datos y de voz móvil codificada anónima.
US6137792A (en) Method and apparatus for enabling transmission of data packets over a bypass circuit-switched public telephone connection
KR20090081639A (ko) 이종 무선 네트워크간의 데이터 트래픽을 분산하는 장치
Hauser et al. Lowering security overhead in link state routing
US8989046B1 (en) Inter-domain routing message distribution through wide area broadcast channel
US9787606B2 (en) Inline network switch having serial ports for out-of-band serial console access
Kumar Integration of security in network routing protocols
ES2241275T3 (es) Metodo, disposicion y aparato para autentificacion.
EP0794640B1 (en) Virtual authentication network for secure processors
US20200167341A1 (en) High performance distributed system of record with hosted origin services
ES2284259T3 (es) Arquitectura de sistema electronico.
Gilad Metadata-private communication for the 99%
CN109245887B (zh) 量子保密通信网络系统的中继装置以及包括该装置的通信网络系统
GB2419785A (en) Ensuring the integrity of data by transmitting over at least two separate paths and comparing each reception to determine reliability
US7337216B1 (en) Electronic system architecture
CN113452694B (zh) 基于公共通道对终端应用实现网络控制的隐蔽通信方法
JPH11272616A (ja) データアクセス制御を行うデータ通信システム
Cooper et al. The design and implementation of a private message service for mobile computers
Basha et al. Double secure optimal partial aggregation using trust inference and hybrid syncryption algorithm for wireless sensor networks