¿Cuál es la estructura de hardware del enrutador?
El concepto de router
Un router es un dispositivo que conecta LAN y WAN en Internet. Selecciona y configura automáticamente rutas según las condiciones del canal, enviando señales secuencialmente por la mejor ruta. Los enrutadores son el centro de Internet y de la "policía de tránsito". En la actualidad, los enrutadores se han utilizado ampliamente en todos los ámbitos de la vida y los productos de diferentes grados se han convertido en la fuerza principal para lograr la conexión interna de varias redes troncales, la interconexión entre redes troncales y la interconexión entre redes troncales e Internet. La principal diferencia entre enrutamiento y conmutación es que la conmutación ocurre en la segunda capa del modelo de referencia OSI (la capa de enlace de datos), mientras que el enrutamiento ocurre en la tercera capa, la capa de red. Esta diferencia determina que los enrutadores y conmutadores necesiten utilizar información de control diferente en el proceso de mover información, por lo que implementan sus funciones de diferentes maneras.
Un enrutador, también conocido como dispositivo de puerta de enlace, se utiliza para conectar múltiples redes lógicamente separadas. Una llamada red lógica representa una única red o subred. Cuando los datos se transfieren de una subred a otra, se puede realizar mediante la función de enrutamiento del enrutador. Por tanto, el enrutador tiene la función de determinar la dirección de red y seleccionar la ruta IP. Puede establecer conexiones flexibles en entornos de interconexión de múltiples redes y puede conectar varias subredes con paquetes de datos y métodos de acceso a medios completamente diferentes. El enrutador solo acepta información del sitio de origen u otros enrutadores y es un dispositivo de interconexión en la capa de red.
La composición del hardware del enrutador
1. La composición del hardware del enrutador
El enrutador se compone principalmente de las siguientes partes: interfaz de entrada/salida, reenvío de paquetes o estructura de conmutación, cálculo o procesamiento de rutas.
El puerto de entrada es el punto de entrada para el enlace físico y los paquetes de entrada. Los puertos suelen proporcionarse mediante tarjetas de línea. Una tarjeta de línea generalmente admite 4, 8 o 16 puertos y un puerto de entrada tiene muchas funciones. La primera función es encapsular y decapsular la capa de enlace de datos. La segunda función es buscar la dirección de destino del paquete entrante en la tabla de reenvío para determinar el puerto de destino (lo que se denomina búsqueda de ruta). La búsqueda de rutas se puede lograr utilizando hardware de uso general o integrando un microprocesador en cada tarjeta de línea. En tercer lugar, para proporcionar QoS (calidad de servicio), el puerto debe clasificar los paquetes de datos recibidos en varios niveles de servicio predefinidos. En cuarto lugar, es posible que el puerto necesite ejecutar protocolos de capa de enlace de datos como SLIP (Protocolo de Internet de línea serie) y PPP (Protocolo punto a punto) o protocolos de capa de red como PPTP (Protocolo de túnel punto a punto). Una vez completada la búsqueda de ruta, el paquete debe enviarse a través del conmutador a su puerto de salida. Si el enrutador tiene entrada y está en cola, varias entradas * * * comparten el mismo conmutador. La función final de este puerto de entrada es participar en el protocolo de arbitraje de recursos públicos (como conmutadores). En los enrutadores normales, esta parte de la función la completa completamente el procesador central del enrutador, que limita la velocidad de reenvío de paquetes de datos (de miles a decenas de miles de paquetes de datos por segundo). Los enrutadores de alta gama implementan ampliamente el procesamiento de hardware distribuido, y la parte de la interfaz tiene un potente procesador de CPU y un caché de gran capacidad, lo que permite que la velocidad de datos de la interfaz alcance los 10 Gbps, cumpliendo con los requisitos de transmisión de las redes troncales de alta velocidad.
El mecanismo de reenvío del enrutador tiene un gran impacto en el rendimiento del enrutador. Los métodos de reenvío comunes incluyen: reenvío de procesos, reenvío rápido, reenvío optimizado y reenvío rápido distribuido. El reenvío de procesos copia paquetes de la caché de la interfaz a la caché del procesador para su procesamiento. Primero, mira la tabla de enrutamiento y luego la tabla ARP. Después de volver a empaquetar el paquete, lo copia en la caché de la interfaz para su transmisión. Buscar la tabla y copiar los datos dos veces consume mucho tiempo de procesamiento de la CPU, por lo que este es el método de conmutación más lento y solo se usa en enrutadores de gama baja. Fast Exchange almacena en caché los resultados de dos búsquedas de tablas sin copiar los datos, por lo que se acorta el tiempo que le toma a la CPU procesar los paquetes. La conmutación optimizada se mejora ligeramente sobre la base de la conmutación rápida y cambia la estructura de datos de la tabla de caché. El árbol binario o tabla hash con una profundidad de 32 se reemplaza por un árbol 256 con una profundidad de 4, y el tiempo de búsqueda de la CPU se reduce aún más. Estos dos métodos de reenvío se utilizan ampliamente en enrutadores de alta gama. En los enrutadores troncales, debido a la duplicación de las entradas de la tabla de enrutamiento, cualquier cambio en la tabla de enrutamiento o en la tabla ARP hará que la mayoría de los buffers de enrutamiento dejen de ser válidos y el modo de conmutación anterior ya no se aplique.
El último modo de conmutación es la conmutación rápida distribuida. En cada placa de procesamiento de interfaz se construye una tabla de reenvío que combina una tabla de enrutamiento espejo y una tabla de direcciones MAC. Es un árbol 256 con una profundidad de 4, pero la parte de datos de cada nodo es. Un puntero a otro llamado lista de adyacencia, que contiene los requisitos de estructura del enrutador. Esta estructura permite que la tabla de enrutamiento y la tabla ARP actualicen completamente la tabla de reenvío, sin la necesidad de procesos de envejecimiento adicionales, y supera las deficiencias de otros métodos de conmutación que requieren el envejecimiento continuo de las tablas de caché.
Las estructuras de conmutación más comunes son el tipo bus, * * * * tipo de memoria compartida y estructura de división de espacio de barra transversal. La estructura del bus es la más simple. Todas las interfaces de entrada y salida están colgadas en un bus y solo dos interfaces intercambian datos a través del bus. Su desventaja es que sus capacidades de conmutación están limitadas por la capacidad del bus y los gastos generales adicionales causados por el arbitraje del bus. Debe gastar una cierta cantidad de dinero en la programación de canales de transmisión de datos y la expansión del ancho de banda del bus es limitada, lo que restringe la expansión de las capacidades de conmutación. Generalmente esta estructura se utiliza en enrutadores de gama media. En la estructura de memoria compartida * * *, el paquete entrante se almacena en * * la memoria compartida y solo se intercambia el puntero del paquete, lo que mejora la capacidad de intercambio, pero está limitado por la velocidad de acceso a la memoria y la eficiencia de la administración de la memoria. Aunque la capacidad de la memoria puede duplicarse cada 65,438+08 meses, el tiempo de acceso a la memoria solo disminuye un 5% por año, lo cual es una limitación inherente de los conmutadores de intercambio de memoria compartida. * * * La arquitectura de memoria compartida se usa ampliamente en los primeros enrutadores de gama media y baja. La estructura de división del espacio de barras transversales es equivalente a múltiples buses trabajando en paralelo, n? Se puede considerar que un interruptor de barra transversal con n puntos de cruce tiene 2N buses. Si el punto de cruce está cerrado, los datos en el bus de entrada están disponibles en el bus de salida; de lo contrario, no están disponibles. Los datos que fluyen a través de él se intercambian constantemente. Se puede ver que la velocidad de intercambio determina la capacidad de intercambio. Con la aparición continua de varios dispositivos de alta velocidad, la capacidad de conmutación de esta estructura generalmente alcanza más de decenas de Gbps, lo que la convierte en la primera opción para enrutadores y conmutadores de alta gama.
La parte de cálculo o procesamiento de rutas ejecuta principalmente protocolos de enrutamiento dinámicos. Envíe y reciba información de enrutamiento, calcule tablas de enrutamiento y proporcione la base para el reenvío de paquetes. El tamaño de las entradas de la tabla de enrutamiento varía mucho entre las diferentes clases de enrutadores, desde miles hasta millones. Por lo tanto, la construcción de la tabla de enrutamiento de los enrutadores de alta gama tiene un gran impacto en la velocidad de búsqueda de rutas. La estructura de datos de la tabla de enrutamiento a menudo adopta la forma de un árbol binario, lo que hace que la búsqueda y la actualización sean más rápidas.
El puerto de salida almacena paquetes antes de enviarlos al enlace de salida, lo que permite algoritmos de programación complejos para soportar los requisitos de prioridad. Al igual que los puertos de entrada, los puertos de salida también deberían poder admitir la encapsulación y desencapsulación de la capa de enlace de datos y muchos protocolos de capas superiores.
En términos generales, un router necesita pasar por una serie de procesos complejos para intercambiar un paquete de datos, lo que se refleja principalmente en los siguientes aspectos:
1) Compresión y descompresión p>
2) Cifrado y descifrado
3) Utilice listas de acceso de entrada/salida para filtrar mensajes.
4) Limitación de la velocidad de entrada
5) Realizar traducción de direcciones de red (NAT)
6) Abordar cualquier ruta estratégica que afecte este artículo.
7) Verifique el paquete aplicando la función firewall.
8) Manejar la redirección del buffer de la página web.
9) Procesamiento de transmisión física, como dirección IP de ayuda.
10) Utilice el mecanismo QoS habilitado para poner en cola los paquetes.
11) Procesamiento de valores TTL
12) Procesa cualquier opción en el encabezado IP.
13) Comprobar la integridad del paquete de datos.
2. Sistema de software del enrutador
El enrutador funciona bajo el control del software. En comparación con los sistemas operativos comunes, su sistema de software es relativamente simple, todo reside en la memoria y está limitado por la plataforma original. Basado en el núcleo del sistema operativo comercial en tiempo real, se desarrolla una plataforma de interfaz que incluye una pila de protocolos TCP/IP, complementada con varios módulos funcionales para formar un sistema de software completo. Para maximizar la capacidad del enrutador para intercambiar mensajes rápidamente, el sistema operativo está diseñado para tener una sobrecarga operativa mínima y permitir que la CPU dedique el máximo ancho de banda al intercambio de mensajes.
El sistema de software del enrutador se compone principalmente de cinco partes:
1 Proceso: compuesto por subprocesos independientes y datos relacionados que realizan tareas específicas, como el demonio telnet y el proceso del cliente. , Procesos FTP, procesos TFTP, procesos SNMP, procesos de varios protocolos: IP, TCP, UDP, RIP, OSPF, BGP, ARP, ICMP, IGMP y otros procesos de cifrado y descifrado, procesos de filtrado de mensajes, procesos NAT, etc.
2. Kernel: Proporciona servicios básicos del sistema para otras partes del sistema, como gestión de memoria, programación de procesos, temporizadores y gestión de relojes. Proporciona gestión de recursos de hardware (CPU y memoria) para procesos.
3. Búfer de mensajes: se utiliza para almacenar mensajes a intercambiar.
4. Controlador de dispositivo: controla los dispositivos de hardware de interfaz de red y otros dispositivos periféricos (como Flash). La interfaz del controlador del dispositivo se encuentra entre el proceso, el kernel y el hardware y tiene una interfaz con el software de control del conmutador.
5. Software de control de conmutación: controla la conmutación de mensajes según el método de reenvío, que se implementa mediante hardware en enrutadores de alta velocidad de línea.