TCP/IP En este apartado se ven los principales protocolos y series de protocolos más utilizados en redes locales, y sus métodos de encaminamiento (routing) de la información. TCP/IP es un protocolo habitual en muchas redes de ordenadores y cubre, en terminología OSI, desde el nivel de red al nivel de aplicación. Incluye diferentes protocolos para cubrir los aspectos de control de una red extensa. TCP/IP fue desarrollado por medio de los trabajos iniciados por la Defence Project Research Agency (DARPA) en Estados Unidos, de los cuales resultó la red mundial INTERNET. TCP/IP es popular por su amplio soporte comercial con implementaciones disponibles locales y operacionales muy experimentadas. A cada host de una red IP se le asigna una única dirección IP de 32 bits que se utiliza para cualquier comunicación con ese dispositivo. Estas direcciones pueden ser asignadas localmente por el administrador local (Network Administrator - NA) en una red privada. Las direcciones en Internet son asignadas por el Network Information Centre (NIC) para asegurar el control y su unicidad. Existen cinco clases de direcciones disponibles, de las cuales tres están generalmente implementadas. Estas permiten direccionar esquemas que son elegidos para ajustarse a una particular estructura de red. Por convenio las direcciones IP están escritas con números decimales separados por puntos, antes que por numeración hexadecimal, para conveniencia del usuario; por ejemplo 128.129.0.10 Debido a que las direcciones IP codifican tanto redes como host, ellas especifican una conexión de red más que la máquina host. Esta distinción es importante para los casos de gateways, los cuales tienen múltiples conexiones de redes. Las direcciones IP pueden ser también utilizadas para redes aisladas, con el convenio de poner la I.D. del host toda a ceros. Una dirección tipo broadcast puede ser especificada poniendo la I.D. del host toda a unos. La principal ventaja de este tipo de direccionamiento es que el problema de encaminamiento (routing) queda simplificado considerablemente, debido a que está basado solo en la dirección de red y no en hosts particulares. Aunque existen desventajas como resultado de esto. La dirección IP del host podría tener un cambio con su localización en la red, la cual requiere la intervención manual del administrador de la red. Puede haber problemas con la asignación de direcciones si la red llega a ser muy grande, conteniendo muchos dispositivos. El servicio de datagramas IP proporciona un sistema de conmutación de paquetes sin conexión. Este sistema no es fiable en el sentido de que la recepción de una serie de paquetes no está garantizada, ya que pueden ser perdidos, duplicados o cambiados de orden sin detectarlo. Es sin conexión debido a que cada paquete viaja separadamente de los demás. Este tipo de servicio es independiente de la tecnología empleada en niveles inferiores. No existe un tamaño máximo de paquete especificado para este protocolo. Sin embargo se recomienda que todos los dispositivos de la red manejen un paquete mínimo de 576 octetos. Dependiendo del tamaño de trama de los sistemas intermedios se puede fragmentar el datagrama IP para ajustarse a su Maximum Transfer Unit (MTU). Estos fragmentos pueden no ser reemsamblados hasta que alcancen su destino final. Dos máquinas en una red física dada solo pueden comunicarse con la otra si conoce cada una su dirección física. Así tiene que haber una correspondencia entre las direcciones lógicas IP y las direcciones físicas. Este problema no es trivial. Considerando una dirección Ethernet de 48 bits esta no puede ser codificada en una dirección de 32 bits IP. En algunos casos esto puede ser una simple asignación, sino se necesita un proceso dinámico El Address Resolution Protocol (ARP) permite a un host descubrir la dirección física de otro host en la misma red física, dando solo la dirección destino IP. Esta es una técnica broadcast que genera una respuesta conteniendo la dirección IP solicitada. La técnica de broadcast puede ser siempre usada para alcanzar ese destino, pero esto es ruinoso, si una caché se mantiene para los mapas de los recientes ARP. La broadcast ARP también contiene las direcciones IP de los emisores, como contestadores que posiblemente lo soliciten. Cualquier nueva máquina unida a la red podría generar una broadcast ARP permitiendo a los otros host actualizar sus tablas. ARP permite enmascarar la red física, por tanto se es libre de asignar y usar las direcciones IP para todas las comunicaciones. En algunos sistemas una máquina debe efectuar una solicitud para su propia dirección IP al iniciarse un señal de broadcast. Entonces se usa el Reverse Address Resolution Protocol (RARP), produciendo una respuesta desde servidores RARP de la red. Este diseño está realizado para máquinas sin almacenamiento secundario, tal como estaciones sin disco. El Internet Control Message Protocol (ICMP) permite a gateways y otros dispositivos de la red enviar mensajes de error y control a otras máquinas. El mensaje ICMP se transmite en un datagrama IP y proporciona comunicación entre software IP de un dispositivo con el software IP de otro. El ICMP solicitud de eco/respuesta de eco, ha probado ser una de las más útiles herramientas del entorno IP, dado que reporta alcance y respuesta de host remotos. Como el ICMP es manejado por el software IP del host, responderá normalmente incluso cuando existan sobra cargas en el proceso de usuario. El User Datagram Protocol (UDP) proporciona un servicio sin conexión sobre IP para transmitir mensajes entre máquinas. Permite un proceso individual de los niveles superiores para comunicarse. Esto añade la importante capacidad para distinguir múltiples destinos dentro de un único host. Estos destinos pueden ser referenciados como puertos, con múltiples puertos multiplexados dentro del servicio UDP. Estos puertos pueden ser asignados dinámicamente según las necesidades o reservados como Well-Known-Ports para funciones específicas. Ambas posibilidades son implementadas usualmente, y los well-known-ports están aceptados universalmente. El Transmission Control Protocol (TCP) proporciona conexión punto a punto para dispositivos de red. Este realiza pocas transformaciones respecto a los niveles inferiores. Por esto puede ser utilizados en muchos entornos, no solo teniendo como compañero al IP. TCP proporciona un servicio controlado de flujo, fiable, ordenado y full-duplex sobre redes cuyos paquetes pueden ser perdidos, retardados, duplicados o entregados con el orden cambiado. Para realizar esto TCP usa un reconocimiento positivo con la retransmisión, solicitando que todos los paquetes sean reconocidos. Par conseguir que sea eficiente existe un protocolo de ventana deslizante, manteniendo la conexión de red convenientemente alimentada. Como un paquete puede ser retardado o duplicado se usa un número de secuencia muy grande, así un paquete dado no se confunde con otro. Este número se basa en octetos antes que en paquetes. Como UDP, TCP tiene una idea abstracta de los puertos. Así cada conexión TCP es únicamente identificada por sus direcciones IP fuente y destino y números de puerto. También well-known-ports son aceptados ampliamente para aplicaciones específicas, tales como TELNET y FTP. El término routing (encaminamiento) se refiere a la elección de un camino sobre el cual enviar los paquetes. Los dispositivos capaces de tomar esa decisión son los routers y los gateways. El proceso de routing puede ser dividido en dos categorías: directa e indirecta. La transmisión directa de un datagrama IP entre dos máquinas sobre una misma red física es simple, ya que no implica ningún gateway. El emisor encapsula el datagrama en una trama física y lo envía directamente. Si no están directamente conectadas el emisor debe identificar un gateway al cual enviar el datagrama. El gateway debe entonces reenviarlo a su destino. En un sistema IP de interconexión de redes los datagramas son retransmitidos de gateway en gateway hasta que el dispositivo conectado directamente es alcanzado, el cual será capaz de entregar el mensaje. Para hacer esto cada host de la red utiliza tablas de routing. Para mantener estas tablas de una manera manejable se usa direcciones cortas de IP routing basadas en direcciones de red, no en direcciones de host. Cada entrada especifica una red destino y la primera ruta (hop) a tomar para llegar allí. Los host especifican otras rutas posibles y las rutas por defecto para destinos no conocidos. El Exterior Gateway Protocol (EGP) se usa para informar de rutas desde un gateway en un sistema autónomo hacia otras. El gateway no hace -no debe hacerlo- informar rutas para otros sistemas autónomos de los cuales no forme parte. El administrador de red decidirá que gateways informarán a cuales otros gateways en otros sistemas. En la práctica todos son informados de esa disponibilidad, debido a que no existe un método común para determinar rutas. Por lo tanto los gateways centrales que reciben múltiples rutas para un gateway dado no pueden usar la información de distancia para saber cual ruta es la mejor. EGP se utiliza primeramente para informar de rutas hacia los gateways centrales, y estos construyen un modelo de disponibilidad de localización, el cual resulta en una topología en árbol. Solo los gateways centrales saben como alcanzar cualquier red en Internet. EGP1 y EGP2 extienden el protocolo para introducir el concepto de coste de routing y no únicamente su alcance. Esto se realiza haciendo una escala de la información de la distancia donde se atraviesan los límites de un sistema autónomo. Los Internal Gateways Protocol (IGP) se usan para informar rutas dentro de un sistema autónomo. El más común de ellos es el Routing Information Protocol (RIP). Este es un protocolo ampliamente implementado, diseñado en principio para redes de área local, pero que ahora es contemplado para grandes redes. RIP es un protocolo broadcast el cual basa sus decisiones de routing sobre la información de la distancia (contador de saltos - hop counting) relativos desde el servidor. Este no es un concepto de coste relacionado con rutas. Existen cierto número de problemas relacionados con el RIP: 1. El protocolo no detecta lazos de rutas. 2. El máximo de saltos está limitado a 15. 3. La lenta convergencia da tablas de routing inconsistentes. OSPF (Open Shortest Path First Routing Protocol) OSPF está clasificado como un IGP y se usa para distribuir información de routing dentro de un único sistema autónomo. El protocolo OSPF se basa en SPF o Link State, más que en el número menor de saltos habitual de los protocolos de routing de Internet. OSPF encamina paquetes basados solo en la dirección IP destino del paquete y no se requiere además de eso ninguna encapsulación. Es un protocolo dinámico el cual calcula rutas libres de bucles después de un periodo de convergencia corto y predecible. Cada router mantiene una base de datos que describe el sistema autónomo, el cual consiste en entradas que describen cada estado local del router, por ejemplo sus interfaces disponibles y los vecinos alcanzables. Todos los routers funcionan con el mismo algoritmo en paralelo. OSPF permite a las redes agruparse conjuntamente dentro de áreas, y en cada área funciona una copia separada del algoritmo SPF. La topología interior del área es invisible fuera de ella, y los routers de dentro del área no tiene una detallada información de la topología exterior. Cuando se configuran áreas "no OSPF", cada router tiene una base de datos idéntica desde la cual genera su tabla de routing calculando caminos en topología de árbol donde él es la raíz. Este árbol da la ruta completa a cualquier red destino, pero solo el salto (hop) siguiente es usado en el proceso de reenvío. El uso de áreas reduce el tráfico de routing comparado al que tiene el sistema autónomo completo como una única área. El routing entre áreas se efectúa vía backbone o troncal, el cual consiste en redes las cuales no están en ninguna área ni sus routers acoplados y también routers que conectan múltiples áreas. Con este supuesto los routers son divididos en diferentes categorías dependiendo de su localización, routers internos, routers de límite de área, routers de backbone. OSPF soporta los siguientes tipos de red física: a) Punto a punto. Los cuales unen un único par de routers. Por ejemplo una línea en serie. b) Broadcast. Soporta muchos routers, con la capacidad de enviar un único mensaje a todos los dispositivos acoplados. Por ejemplo Ethernet. c) No broadcast. Con múltiple acceso pero sin capacidad de broadcast. Por ejemplo X.25. Resumen funcional de OSPF 1. Protocolo HELLO usado para determinar a sus vecinos y elegir un router particular. 2. Formar adyacencias con algunos vecinos y sincronizar las bases de datos de las topologías. 3. Paquetes de protocolo de routing son intercambiados con las adyacencias, en actualizaciones de bases de datos particulares. 4. Los routers indican su estado de línea por método de "inundación" del área, para asegurar que todos los routers tienen la misma base de datos. 5. Desde la base de datos del Link State (topológico) cada router calcula el árbol de rutas más corto. 6. El árbol de rutas más corto produce la tabla de routing. Hay cinco tipos de paquetes de protocolos de routing implicados en este proceso:
El protocolo HELLO se usa para establecer y mantener vecindades, y sobre redes multiacceso elegidas por un router determinado. En redes tipo broadcast cada router envía paquetes HELLO multicast. Sobre redes "no broadcast" los mensajes HELLO son enviados a una lista configurada de routers designados potenciales. Para hacer una adyacencia dos vecinos primero sincronizan sus bases de datos por medio del database exchange process. Este es un intercambio de secuencia de información con una relación master/slave entre dos routers (el master será el router del ID más alto). Después de este proceso cada router tiene una lista de avisos de link state más recientes de su vecino, siendo estos solicitados con el link state request. Cuando se completa los dos routers han completado la adyacencia plenamente y la han avisado como tal. La adyacencia queda establecida si: · La red es punto a punto. · La red es un enlace virtual · El router es un router designado · El vecino es un router designado · El vecino es un router designado como backup El router designado es elegido por medio del protocolo HELLO. Cuando una primera interfaz llega a convertirse en operacional, chequea para ver si hay ya un router designado para la red. Si lo hay, este es aceptado; si no, el router con la prioridad más alta será el designado. Se elige también un router designado de backup. Este es también adyacente a todos los routers de la red y se usa si el que estaba previsto falla. Si esto no fuera hecho, entonces las adyacencias podrían estar formadas por todos los routers de la red, y la red podría no estar disponible durante la sincronización de las bases de datos. Los paquetes HELLO son enviados desde cada interfaz de un router a intervalos regulares. Ellos contienen la router ID, intervalo HELLO, Router Dead Interval, una lista de todos los routers desde los cuales los HELLO han sido recientemente recibidos y también su propia elección de router designado y backup. Por medio de este proceso cada router construye una neighbour data structure para cada vecino con el cual se puede comunicar, y esto contiene toda la información necesaria para formar adyacencias apropiadas y también contiene el estado funcional del vecino, por ejemplo DOWN o FULL. ESTRUCTURA DE LAS TABLAS DE ROUTING La tabla de routing contiene toda la información necesaria para enviar datagramas IP hacia su destino. Cada entrada o unidad de información de la lista contiene el conjunto de mejores caminos para un destino determinado. Cuando se procesa un paquete la tabla es examinada buscando la mejor entrada para su destino, y proporciona la información del próximo salto -hop- para su retransmisión. La entradas de la tabla consisten en un tipo de destino, destino ID, área, tipo de camino, coste, siguiente hop y router de avisos. Avisos de Link State Cada router origina avisos de link state, los cuales describen como los routers de área y los enlaces están interconectados. El conjunto de avisos de estado de enlace forma la Link State Database topológicamente. Existen cinco tipos de mensajes de Link State; router links, network links, summary link advertisements, cada uno de los cuales pasa diferente información. Hay una base de datos diferente para cada área y el cálculo del camino más corto es repetido en cada área. Los contenidos de los avisos de Link State varían dependiendo del tipo de mensaje. Por ejemplo, para avisos router links el contenido describe las interfaces que trabajan del router (enlaces, links) para el área, y la información contenida varía según el tipo de red con la cual el interfaz está conectado.
Hay también una métrica asociada con el enlace, la cual identifica el coste usando este enlace de router fuera del límite. Si cuando se recibe en un router dado un aviso Link State se encuentra contenida información nueva o más reciente, se envía por unas interfaces seleccionadas en un mensaje de actualización de Link State para ser difundido por toda el área. Cálculo de la tabla de routing Usando la base de datos de Link State para un área un router eliminará su tabla de routing actual (pero guardará una copia) y ejecutará un proceso de búsqueda y construirá un árbol de camino más corto para todos los destinos utilizando el algoritmo de Dijkstra de la especificación OSPF. Si, durante este cálculo, un nuevo camino más corto es encontrado, el nuevo siguiente salto debe ser calculado para ese destino. Esto puede ocurrir repetidamente. Cambios en las entradas de la tabla de routing pueden requerir que un nuevo sumario de avisos de Link State sea generado. Durante este cálculo rutas de igual coste pueden ser mantenidas para su utilización, pero no se requiere que todas ellas sean conservadas.
XNS (Xerox Networking System) son una serie de protocolos definidos por Xerox en un modelo de arquitectura de cinco niveles a comienzos de los años 80.La serie de protocolos Netware de Novell están basados también en el modelo XNS, como se muestra a continuación.
Cuando se configura un router para XNS y/o IPX, opera en el primero de los tres niveles del modelo XNS/Netware.
Serie de protocolos Netware El router soporta los siguientes protocolos: · INTERNETWORK PACKET EXCHANGE (IPX). Protocolo de conexión de nivel 1 (equivalente al nivel 3 de OSI) que proporciona servicio sin conexión · IPX ROUTING INFORMATION PROTOCOL (RIP). Protocolo de conexión de nivel 2 (nivel 4 de OSI) que proporciona al router la capacidad de mantener dinámicamente información de routing para IPX internetwork. · IPX ERROR PROTOCOL. Protocolo de conexión de nivel 2 (nivel 4 de OSI) que reporta errores en el procesamiento de paquetes. El error de notificación se envía desde el host o el router que detecta el error, al host fuente de los paquetes. · IPX ECHO PROTOCOL. Protocolo de conexión de nivel 2 (nivel 4 de OSI) que se usa para verificar la operación de los dispositivos de la red. Comúnmente conocido como IPX ping. · IPX SERVICE ADVERTISEMENT PROTOCOL (SAP). Protocolo de conexión de nivel 2 (nivel 4 de OSI) que avisa a servicios de red, por ejemplo servidores de ficheros o servidores de impresoras.
Serie de protocolos XNS Son los que siguen: · XNS INTERNET DATAGRAM PROTOCOL (IDP). Protocolo de conexión de nivel 1 (equivalente al nivel 3 de OSI) que proporciona servicio de datagramas sin conexión. · IPX ROUTING INFORMATION PROTOCOL (RIP). Protocolo de conexión de nivel 2 (nivel 4 de OSI) que proporciona al router la capacidad de mantener dinámicamente información de routing para XNS internetwork. Las tablas de routing están basadas solo en recuento de saltos. · XNS ERROR PROTOCOL. Protocolo de conexión de nivel 2 (nivel 4 de OSI) que reporta errores en el procesamiento de paquetes. El error de notificación se envía desde el host o el router que detecta el error, al host fuente de los paquetes. · XNS ECHO PROTOCOL. Protocolo de conexión de nivel 2 (nivel 4 de OSI) que se usa para verificar la operación de los elementos de internetwork. Comúnmente conocido como XNS ping.
Los paquetes XNS e IPX que son encaminados por el router son IDP e IPX. Estos dos protocolos tienen el mismo formato, mostrado en la figura siguiente. BITS
El paquete XNS/IPX está constituido por tres partes:
Configuración XNS/IPX sobre el router Existen tres métodos de configuración y mantenimiento de las tablas de routing:
Soporte IPX SAP El router puede ser configurado para retransmitir o abandonar paquetes SAP (service advertisement protocol) sobre cada interfaz (servicio de retransmisión IPX). El parámetro remoto IPX define si está completa la tabla de routing y la lista SAP o solo cambia sobre broadcast desde esa interfaz. Filtrado de control de acceso XNS/IPX Los filtros de control de acceso se usan para regular el flujo de tráfico y proporcionar una medida de seguridad por medio de restringir comunicación entre dispositivos/redes. La restricción es entre la red fuente y dirección de host, y la red destino y la dirección de host. Adicionalmente las restricciones de comunicación pueden extenderse para aplicarlas a grupos de redes y/o hosts. Este protocolo es consecuencia del desarrollo de la Digital Network Architecture (DNA) Fase IV de Digital. Esta define una pila de protocolos completa en la cual Decnet Routing Layer es un componente. Digital también desarrollo el nivel de enlace de la red Ethernet. La pila de protocolos de DNA es similar al modelo OSI:
Definiciones DNA · Un nodo es cada ordenador de una red conteniendo una implementación Decnet. Los nodos pueden ser tanto nodos finales como nodos de routing (encaminadores). · Un área es un grupo de nodos. Las direcciones de nodo están compuestas del número de área y del de nodo; por ejemplo 2.35 · Una adyacencia es otro nodo separado por un único medio físico. · Un circuito es una conexión lógica entre módulos de protocolo en el nivel de enlace de datos. Direccionamiento Decnet Cada nodo tiene una dirección de 16 bit que comprenden 6 bits de número de área y 10 bits de número de nodo. Un área puede soportar hasta 1023 nodos y DECnet puede soportar hasta 63 áreas. Para LAN's, la dirección de MAC de la interfaz se cambia a: AA-00-04-00-nn-nn donde nn-nn se construye con el número de área y el de nodo. El router debe tener una única dirección DECnet, de aquí que todas las interfaces tienen la misma dirección de MAC. Las interfaces preparadas para DECnet también responden a varias direcciones multicast (usadas por routers para encontrarse entre ellos, encontrar nodos finales, etc.) Existen dos tipos de circuitos: 1. Circuitos broadcast, los cuales son Ethernet II, 802.3, FDDI, PPP, LAPB, Frame Relay. Un nodo puede retransmitir a muchos. Hacen circuito con el nodo adyacente. Requieren reconocimiento dentro de los mensajes de routing (Router Hello, Endnode Hello, Paquetes de routing nivel 1 y Paquetes de routing nivel 2). Tiene un largo formato de cabecera para tramas de datos. 2. Circuitos no-broadcast, como X.25. Son punto a punto y hacen circuito con el nodo adyacente. Requieren la inicialización del intercambio de paquetes (inicialización del paquete, verificación del paquete, paquetes de test y Hello, Paquetes de routing nivel 1 y Paquetes de routing nivel 2). Tiene un formato corto de cabecera para tramas de datos. Hay tres tipos de nodos en DECnet: · Nodo no-routing (nodo final-end node). · Router nivel 1. · Router de área. Un nodo final envía paquetes de datos directamente al nodo destino si se conoce la dirección de MAC del destino, o si no hay routers presentes. Sino, envía el paquete al Router Designado. Un router de nivel 1 encamina paquetes a todos los nodos adyacentes de su propia área. Si el destino está en un área diferente, el router reenvía los paquetes al Router de Área más cercano. Los routers de área son los responsables de encaminar paquetes entre áreas. El router con prioridad más alta de una LAN también actúa como Router Designado para su área para todos los nodos finales de esa LAN. El número de circuitos que puede configurar un router será el número de puertos que tenga. Por ejemplo si tiene doce puerto puede configurar doce circuitos. Puede ser Router designado para algunos circuitos y para otros no. Un router de área encamina paquetes a otros routers de área. El router de área puede también actuar como router de nivel 1. Si hay solo un router en una LAN y se conecta a otro router de área de un área diferente, debe ser configurado como un router de área y también actuará como un router de nivel 1 y router designado para la LAN. Normas de configuración · Todos los routers de área deben estar conectados para que toda área sea alcanzable sin pasar por routers que no sean de área. · Varios routers de nivel 1 o de área pueden ser mezclados en una red. · No hay una clara ventaja técnica en dividir los nodos de una única área en múltiples áreas mientras el número de nodos esté dentro de 1023. Algunos administradores de red pueden querer asignar un área para cada departamento de la compañía para una gestión más simple. · DECnet debe ser puesta en servicio para cada interfaz que requiera routing DECnet. · La identificación de área y nodo debe ser configurada antes que DECnet pueda funcionar. · El número máximo de área debe ser por lo menos igual o superior que el más alto número de área de la red. · El número máximo de nodo debe ser por lo menos igual o superior que el más alto número de nodo de la red. · Cada interfaz DECnet tiene un coste asociado con ella. Los costes más bajos se utilizan para lineas de alta velocidad. Los costes deben ser configurados para que sean usadas las rutas deseadas. |