Вы находитесь на странице: 1из 131

Redes de Telecomunicacin o

Baquero Portero, Isidro Borrego Checa, Juan Cmara Mora, Carlos M a Clemente Pascual-Vaca, Emilio Mrquez Girldez, Laura a a Snchez-Matamoros Prez, Jose a e Morales Castro, Manuel Angel Neira Fernndez, Rubn a e Ojeda Rodr guez, Maria Elena Rodr guez Quesada, Agust n Romero del Toro, Maria Jos e Rueda Borrego, Beltrn a Serrano Muoz, Fernando n Julio 2007

Indice general
1. Introduccin a las redes de telecomunicaciones o 1.1. Denicin. Modelo genrico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . o e 1.2. Eciencia, evolucin e integracin . . . . . . . . . . . . . . . . . . . . . . . . . . o o 1.3. Elementos de una red . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.3.1. Elementos bsicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . a 1.3.2. Elementos no bsicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . a 1.4. Clasicacin de las redes de telecomunicaciones en funcin de cmo actan sus o o o u conmutadores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.4.1. Tipos bsicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . a 1.4.2. Tipos de redes basadas en la conmutacin de paquetes atendiendo al funo cionamiento interno . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.4.3. Tipos especiales de conmutacin de paquetes . . . . . . . . . . . . . . . . o 1.4.4. Ejemplos. Internet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.5. Retardos en redes de conmutacin de paquetes . . . . . . . . . . . . . . . . . . . o 1.6. Revisin de los modelos de referencia: el modelo OSI . . . . . . . . . . . . . . . o 1.6.1. Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . o 1.6.2. Capas o niveles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.6.3. Comunicacin entre sistemas. Primitivas . . . . . . . . . . . . . . . . . . o 1.6.4. Funciones que se pueden realizar en cada capa . . . . . . . . . . . . . . . 1.6.5. Comparacin con la jerarqu TCP/IP . . . . . . . . . . . . . . . . . . . o a 5 5 6 6 6 7 7 7 8 8 8 10 11 11 12 13 16 17

Redes de Telecomunicacin o 2. Redes de rea extensa, WAN, Wide Area Networks a 2.1. Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . o 2.2. Funciones bsicas del nivel de red . . . . . . . . . . . . . . . . . . . . . . . . . . a 2.2.1. Direccionamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2.2. Encaminamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2.3. Control de congestin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . o 2.2.4. Integracin de redes heterogneas . . . . . . . . . . . . . . . . . . . . . . o e 3. Direccionamiento 3.1. Tipos de direcciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.1.1. Clasicacin segn el mbito o alcance . . . . . . . . . . . . . . . . . . . o u a 3.1.2. Clasicacin segn la jerarqu . . . . . . . . . . . . . . . . . . . . . . . o u a 3.2. Formatos de direcciones ms extendidos a . . . . . . . . . . . . . . . . . . . . . . 3.2.1. IPv4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.2.2. Otros esquemas de direccionamiento . . . . . . . . . . . . . . . . . . . . 3.3. Algunos ejemplos de funcionamiento de IPv4 . . . . . . . . . . . . . . . . . . . . 3.3.1. Mquinas directamente accesibles . . . . . . . . . . . . . . . . . . . . . . a 3.3.2. Subnetting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3.3. Varios interfaces de red en una misma LAN . . . . . . . . . . . . . . . . 3.3.4. Ejercicio propuesto en clase . . . . . . . . . . . . . . . . . . . . . . . . . 3.3.5. Difusin de mensajes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . o 4. Integracin de redes o 4.1. Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . o 4.2. Ejemplo de integracin de redes con IPv4 . . . . . . . . . . . . . . . . . . . . . . o 4.3. Formato de los paquetes IPv4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.3.1. Fragmentacin de paquetes IPv4 . . . . . . . . . . . . . . . . . . . . . . o 4.3.2. Opciones ms usuales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . a 4.4. Tablas de encaminamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2 18 18 19 20 20 21 22 23 23 23 23 24 24 30 32 32 33 34 35 36 38 38 39 40 41 45 46

Redes de Telecomunicacin o 5. Encaminamiento 5.1. Tipos de direcciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.2. Clasicacin de mecanismos de encaminamiento . . . . . . . . . . . . . . . . . . o 5.3. Jerarqu de encaminamiento y direccionamiento . . . . . . . . . . . . . . . . . . a 5.4. Establecimiento de vecindades (Neighbour creating) . . . . . . . . . . . . . . . . 5.4.1. Enlace punto a punto 5.5. PROXY ARP 5.6. Clculo de rutas a . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.4.2. Red de rea local (LAN) . . . . . . . . . . . . . . . . . . . . . . . . . . . a . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3 53 53 54 55 57 57 58 67 69 69 70 74 75 78 82 84 87 90 96 97 99 99

5.6.1. Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . o 5.6.2. Algoritmo del camino ms corto . . . . . . . . . . . . . . . . . . . . . . . a 5.7. Distribucin de la informacin o o 5.7.1. Vector de distancias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

5.7.2. Estados de los enlaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.7.3. LSP en una LAN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.8. Protocolos espec cos de encaminamiento . . . . . . . . . . . . . . . . . . . . . . 5.8.1. Protocolos intradominio (IGP) . . . . . . . . . . . . . . . . . . . . . . . . 5.8.2. Protocolos interdominio (EGP) . . . . . . . . . . . . . . . . . . . . . . . 5.8.3. TEMA 6: Control de congestin o . . . . . . . . . . . . . . . . . . . . . . 5.8.4. Clasicacin de los mecanismos de control de congestin . . . . . . . . . o o 6. Capa de transporte 6.1. Introduccin a la capa de transporte . . . . . . . . . . . . . . . . . . . . . . . . o

6.2. Jerarqu TCP/IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100 a 6.2.1. UDP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100 6.2.2. TCP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102

Redes de Telecomunicacin o 7. Evolucin de los equipos y tendenc o as

4 118

7.1. Introduccin a IPv6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118 o 7.2. Direccionamiento en IPv6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118 7.3. Direcciones especiales en IPv6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119 7.4. Organizacin de las direcciones en IPv6 . . . . . . . . . . . . . . . . . . . . . . . 122 o 7.5. Asignacin de direcciones en IPv6 . . . . . . . . . . . . . . . . . . . . . . . . . . 122 o 7.6. Formato de datagramas IPv6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124 7.7. Cabeceras de opciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125 7.8. Protocolo ICMPv6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127 7.9. IPv6 Mvil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128 o 7.10. Introduccin a IPsec . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129 o 7.11. Introduccin a las VPN o . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130

Cap tulo 1 Introduccin a las redes de o telecomunicaciones


1.1. Denicin. Modelo genrico o e

Podemos denir una red de telecomunicaciones como aquella que proporciona una comunicacin eciente entre mltiples entidades usando distintas tecnolog (elctrica, electrnica, o u as e o electromagntica...). e El modelo general de una red de telecomunicaciones (g. 1.1) se compone de:

Figura 1.1: Modelo general de una red de telecomunicaciones. Fuente: genera informacin. o Transmisor: transforma informacin en seales. o n Sistema de transmisin: transporta seales. o n Receptor: inverso del transmisor. Destino: donde llega la informacin. o 5

Redes de Telecomunicacin o

1.2.

Eciencia, evolucin e integracin o o

Para mejorar la eciencia usamos conmutadores, dando lugar a estructuras jerrquicas exisa ten distintas redes dependiendo del servicio que se quiera ofrecer con dicha red (g. 1.2):

Figura 1.2: Interconexin de dos redes mediante un conmutador. o Redes pblicas: RTB, X.25, TV por cable. u Redes privadas: Centralitas, red de datos (red de area local) RDSI: Red unica que se concibi para que pudiera servir para ofrecer cualquier tipo de o servicio. La tecnolog ATM es la que iba a soportar RDSI. a

1.3.
1.3.1.

Elementos de una red


Elementos bsicos a

Acceso: parte de la red que va del sistema origen al primer conmutador (bucle de abonado). Conmutacin: conjunto de conmutadores que forman la red. o Transmisin: conjunto de enlaces que une los conmutadores. Se usan tcnicas de multipleo e xin para compartir enlaces. Al conjunto de conmutadores y enlaces se les denomina red o dorsal. Sealizacin: parte de la red que controla su funcionamiento. Hay dos tipos de sealizacin: n o n o usuario-red, que comunica al usuario con el sistema, y red-red, que utiliza el sistema para organizarse.

Redes de Telecomunicacin o

1.3.2.

Elementos no bsicos a

Sincronizacin: corresponde a toda la parte que se encarga de sintonizar un transmisor con o un receptor. Gestin: se encarga de los fallos (detectarlos, corregirlos...), monitorizacin y taricacin. o o o Servicios: es la parte de red que sirve para ofrecer distintos servicios.

1.4.

Clasicacin de las redes de telecomunicaciones en o funcin de cmo act an sus conmutadores o o u


Tipos bsicos a

1.4.1.

Redes basadas en conmutacin de circuitos: se basan en establecer una reserva de recuro sos para la comunicacin. Este sistema es muy adecuado con fuentes que emiten a una tasa o constante y que durante un cierto tiempo hablan con el mismo destino, como pueden ser las conversaciones telefnicas. Sin embargo, no es adecuado para comunicacin entre ordeo o nadores, ya que stos no tienen tasa constante y cambian constantemente de destinos, por e lo que si reservamos un canal exclusivamente para ellos gran parte del tiempo lo estaremos desaprovechando. Redes basadas en conmutacin de paquetes: pensadas para fuentes intermitentes a rfao a gas y cuando los destinos cambian rpidamente. Utilizan multiplexin estad a o stica. Fig. 1.3.

Figura 1.3: Red de conmutacin de paquetes. o

Redes de Telecomunicacin o

1.4.2.

Tipos de redes basadas en la conmutacin de paquetes ateno diendo al funcionamiento interno

Circuito virtual: consiste en preparar el camino para mandar una serie de paquetes de forma que todos sigan la misma ruta. Al transmitir el primer paquete, se calcula la ruta hacia el destino. Todos los paquetes posteriores con el mismo destino siguen la misma ruta. Datagrama: en este caso, el camino se busca para cada paquete individualmente. Es ms lento a si existe gran cantidad de paquetes, pero permite adaptarse mejor a los cambios de la red.

1.4.3.

Tipos especiales de conmutacin de paquetes o

Conmutacin de mensajes: cuando llega a un conmutador la informacin que se ha ido frago o mentando en paquetes, se reensambla, se analiza y se vuelve a enviar el paquete fragmentndolo de nuevo. Sirve cuando queremos interconectar redes con funcionamientos a muy distintos. Conmutacin de clulas: los paquetes son de tamao jo y pequeos. Al ser de tamao jo, o e n n n los clculos son ms sencillos y rpidos de realizar (incluso se pueden realizar por harda a a ware), pero la probabilidad de fragmentacin es ms alta. Por ser de tamao pequeo, la o a n n cabecera ocupar proporcionalmente un tamao mayor, lo que disminuye el rendimiento, a n pero a cambio presenta la ventaja de tener un tiempo de transmisin menor. Un tiempo de o transmisin menor minimiza el problema de que llegue un paquete mientras ests transo a mitiendo. Adems, el tiempo de llenado (tiempo que se tarda en crear un paquete, por a ejemplo si estamos muestreando) es menor, lo cual es una ventaja.

1.4.4.

Ejemplos. Internet

Existen dos ejemplos claros de redes que utilizan cada uno de los dos sistemas comentados en el apartado 1.4.1: Conmutacin de circuitos: RTB (Red Telefnica Bsica). o o a Conmutacin de paquetes: Internet. o Veremos en profundidad el segundo ejemplo, Internet.

Redes de Telecomunicacin o Descripcin interna o

Funciona con conmutacin de paquetes. Sus componentes ser sistemas nales (hosts), o an conmutadores intermedios (encaminadores o routers), enlaces de comunicacin (punto a punto, o red de area local) y otros dispositivos como repetidores o puentes. Organizacin o Protocolos: Jerarqu TCP/IP a Normas: RFC (IETF) Proveedores de servicios: los Internet Service Provider (ISP) son los que componen la red dorsal. Se estructuran en 3 niveles, llamados tiers. Los proveedores tier 3 son los que dan acceso a nivel residencial o a pequeas compa Los tier 2 proveen a los tier 3. Los n nas. grandes proveedores, llamados tier 1 o Internet Backbone Provider (IBP), slo dan acceso o a proveedores tier 2 o compa muy grandes. Los tier 1 tienen alcance internacional y nas estn interconectados entre s (g. 1.4). a

Figura 1.4: Internet Service Providers o ISPs.

Descripcin externa o Permite aplicaciones distribuidas.

Redes de Telecomunicacin o Presenta dos tipos de servicios: No orientado a conexin y no able o Orientado a conexin y able. o No garantiza retardo en ninguno de los casos.

10

1.5.

Retardos en redes de conmutacin de paquetes o

Existen cuatro tipos de retardos: Procesamiento: se denomina tiempo de procesamiento el tiempo que tarda el conmutador en decidir qu hacer con un paquete. Es aproximadamente constante. e Encolado: se denomina tiempo de encolado al tiempo que tiene que esperar un paquete a que se transmitan otros. Es muy variable, lo que hace que se convierta en el principal problema de la fuente. Transmisin: el tiempo de transmisin depende de la longitud del paquete (L, en bits) y de su o o capacidad (C, en bits por segundo), ecuacin 1.1. o ttransmisin = o L C (1.1)

Propagacin: el tiempo de propagacin depende de la distancia que separa a los nodos emisor o o y receptor (D, metros) y de la velocidad con la que se propaga la seal (V, metros por n segundo), ecuacin 1.2. o D tpropagacin = (1.2) o V En la g. 1.5 podemos ver de forma esquemtica los distintos retardos que intervienen en a una transmisin entre el equipo A y el B. o Para estudiar el tiempo de encolado se emplea la teor de colas, donde: a Nmero de paquetes por segundo que llegan al sistema (tasa de llegada): u Tasa de salida del sistema: Intensidad de trco: a
C L

(C ) L

. Si es 1, la cola se hace innita.

Redes de Telecomunicacin o

11

Figura 1.5: Retardos que intervienen en una transmisin. o

1.6.
1.6.1.

Revisin de los modelos de referencia: el modelo OSI o


Introduccin o

Cuando los equipos telemticos empezaron a conectarse en red hace unas dcadas, cada a e fabricante desarroll su propia arquitectura, de manera que era imposible conectar en la misma o red equipos de distintos fabricantes (a menos que los fabricantes hubieran desarrollado interfaces entre sus equipos). Como alternativa a los sistemas propietarios, la UIT-T desarroll la norma o X.200, con el objetivo de interconectar sistemas de distintos fabricantes (interoperabilidad). Esta norma es lo que conocemos como modelo OSI (Open System Interconnection). Se trata de un modelo de capas en el que cada una de dichas capas: Ofrece un servicio a la inmediatamente superior. Recibe servicios de la capa inferior a ella.

Redes de Telecomunicacin o

12

De esta forma, el modelo OSI aborda el problema de la interconexin de equipos dividindolo o e en varios problemas menores. Esta solucin es menos eciente que una solucin directa (una o o que aborde simultneamente todos los procesos implicados en la comunicacin), pero es mucho a o ms sencilla de implementar. Adems, tiene la gran ventaja de que las distintas capas pueden a a ir desarrollndose por separado, sin que ello repercuta en el resto de capas, por lo que podr a a cambiarse toda la infraestructura de una capa determinada sin que el resto se enterara del cambio. Existen algunos trminos que conviene tener claros al hablar del modelo OSI: e Entidad: Cada capa se descompone en entidades. Una entidad no es ms que un mdulo esa o pecializado que realiza una o varias de las funciones que le corresponden a dicha capa. Si antes dec amos que el modelo OSI aborda el problema de la interconexin de equipos dio vidindolo en varios problemas menores, en cada capa esos problemas menoresvuelven e a dividirse en problemas ms pequeos an. a n u PDU (Protocol Data Unit): Se denomina PDU a la unidad que intercambia informacin o entre entidades pares de distintos sistemas (entidades de la misma capa pero en mquinas a distintas). Servicio: lo que ofrece cada capa a la inmediatamente superior. Para ofrecer un servicio, las entidades de una capa colaboran con las entidades gemelas de la misma capa residentes en otros sistemas. En general, el servicio que una capa N ofrece a la capa N+1 consiste en transmitir datos. Protocolo: conjunto de reglas que rige el intercambio de PDUs entre entidades pares. SAP (Service Access Point): es la forma que tiene una capa de ofrecer un servicio. Los SAP constituyen la frontera.o interfaz.entre dos capas. Primitivas: Son las ordenes que se env entre capas contiguas. Son necesarias para poder an acceder al servicio.

1.6.2.

Capas o niveles

Nivel 1: F sico: Se encarga de transmitir la seal por el medio f n sico. Controla parmetros a como niveles de tensin, tipos de seal, etc. Libera a las capas superiores de las funciones o n que impongan los diferentes medios de transmisin. o Nivel 2: Enlace: Es responsable de la transferencia de informacin entre nodos adyacentes. o

Redes de Telecomunicacin o

13

Nivel 3: Red: Ofrece comunicacin extremo a extremo poniendo de acuerdo a los sistemas o intermedios. Nivel 4: Transporte: Es muy similar al nivel de red, ya que tambin se ocupa de la transfee rencia de informacin extremo a extremo. La diferencia est en que la capa de transporte o a lo hace independiente de cualquier nodo intermedio, mientras que la capa de red realiza su funcin coordinndolos. Ofrece servicios que la capa de red no ofrece: o a Fiabilidad: por si la capa de red ofrece un servicio no able, transporte puede emular uno able si se requiere. Orientacin a conexin. o o Multiplexin: el nivel de red puede ofrecer una sola comunicacin de una mquina a o o a otra, mientras que el nivel cuatro puede aadir multiplexin para tener ms canales. n o a Nivel 5: Sesin: Ofrece mecanismos para organizar y sincronizar dilogos entre mquinas. Pero a a mite a las aplicaciones marcar el progreso del dilogo (insertando puntos de sincronismo) a y determinar qu sistema est en posesin del turno, as como retomar un dilogo que se e a o a haya interrumpido (por ejemplo, si hay algn error en la transmisin). u o Nivel 6: Presentacin: Se ocupa de la compatibilidad sintctica (cmo se representa la inforo a o macin). Para ello ofrece una forma cannica de representar informacin independiente a o o o la implementacin de los distintos sistemas. o Nivel 7: Aplicacin: Se ocupa de la compatibilidad semntica (lo que representa la informao a cin). o

1.6.3.

Comunicacin entre sistemas. Primitivas o

Las entidades residentes en una capa necesitan comunicarse con las entidades gemelas residentes en otros sistemas. Dicha comunicacin se realiza mediante el intercambio de mensajes o denominados PDU. Aunque desde un punto de vista lgico cada capa se comunica directamente con su equio valente de otro sistema, la realidad es que cada capa va pasando la informacin que quiere o transmitir a la inferior, hasta llegar a la ms baja (nivel f a sico), que es la unica que se comunica realmente. Para ello, segn la informacin va atravesando de forma descendente las distintas u o capas del modelo, se van aadiendo encabezamientos que contienen la informacin de control. n o El conjunto resultante se transmite por el canal, y en el destino seguir el camino inverso, es a

Redes de Telecomunicacin o

14

decir, cada encabezamiento ser utilizado slo por la capa receptora del mismo nivel; los ena o cabezamientos destinados a las capas superiores son completamente ignorados, permitiendo la evolucin independiente de cada una de las capas. o Como ilustra la g. 1.6, cuando una capa quiere mandar informacin lo hace en forma o de PDUs. Para ello, la entidad correspondiente de la capa N+1 utiliza los servicios que la capa inferior (la capa N) le ofrece a travs del SAP, generando un SDU (Service Data Unit) que pasa a e dicha capa. A este N-SDU se le aade una cabecera llamada PCI (Protocol Control Information). n La PCI contiene informacin que solamente es util para la capa par, de modo que cuando una o capa recibe una PDU, extrae la PCI, la interpreta y env la SDU a la capa superior. a

Figura 1.6: Intercambio de PDUs entre entidades pares mediante los servicios que ofrecen las capas inferiores. Los SAP, como ya se ha visto, proporcionan servicios a la capa inmediatamente superior, y lo hacen mediante las denominadas primitivas de servicio. Existen 4 tipos: Peticin (REQ, Request) o

Redes de Telecomunicacin o Indicacin (IND, Indication) o Respuesta (RESP, Response) Conrmacin (CONF, Conrmation) o Segn el tipo de primitivas que utilice, un servicio puede ser: u No conrmado: slo utiliza REQ e IND. o Conrmado: usa los 4 tipos, REQ, IND, RESP y CONF. Por otro lado, si atendemos al tipo de conexin, los servicios pueden clasicarse en: o

15

Orientados a conexin (CO, Connection Oriented): necesitan establecer una conexin entre o o emisor y receptor antes de enviar los datos. No orientados a conexin (CL, Connectionless). o Es importante recalcar que el hecho de que un servicio sea conrmado o no conrmado es totalmente independiente de que sea CO CL. Aunque algunas de las combinaciones puedan pao recer extraas, pueden darse cualquiera de las 4 posibilidades que podr obtenerse al combinar n an el tipo de primitivas utilizadas y la orientacin a conexin. o o De forma esquemtica, el funcionamiento de las primitivas ser el de la g. 1.7. a a

Figura 1.7: Uso de primitivas. El env de primitivas lleva asociado, en general, la generacin de PDUs, pero no tiene por o o qu. Por ejemplo, la mquina B puede aprovechar un paquete que contenga una peticin suya e a o hacia A e incluir en dicho paquete una respuesta de B a una peticin anterior de A. o

Redes de Telecomunicacin o

16

1.6.4.

Funciones que se pueden realizar en cada capa

Control de errores: Aunque puede realizarse en todas las capas, lo mejor es buscar un compromiso entre calidad y servicio (segn el nivel de errores de cada capa), ya que el control u de errores consume recursos del sistema Habitualmente se realiza en las capas bajas: f sica, de enlace, de red y de transporte. Control de ujo: Si un receptor se ve desbordado por la informacin que recibe (le llegan ms o a datos de los que es capaz de procesar), puede pedirle a un emisor que se frene. Establecimiento de la conexin Dentro de un mismo sistema puede haber capas cuya coo municacin est orientada a conexin y capas que no, dependiendo de lo que interese al o e o disear el sistema. n Segmentacin y reensamblado: Cada nivel tiene un tamao mximo de SDU admisible. o n a Cuando el nivel inferior no admite una SDU que queremos transmitir por ser demasiado grande, se puede trocear (fragmentar) esa SDU en varias en el emisor, volviendo a unirla (reensamblarla) en el receptor. Hay otras operaciones parecidas, que no veremos en profundidad: Bloqueo-desbloqueo: Crea bloques de informacin. Denida en la recomendacin X.200. o o Concatenacin-separacin. o o Multiplexin-demultiplexin: Cosiste en ofrecer el servicio de varios SAP del nivel N+1 a o o travs de un SAP del nivel N (g. 1.8). Se usa de forma habitual en servicios CO. e

Figura 1.8: Multiplexin. o

Redes de Telecomunicacin o

17

Figura 1.9: Comparacin OSI-TCP. o

1.6.5.

Comparacin con la jerarqu TCP/IP o a

La Jerarqu TCP/IP slo tiene 5 capas, cuya correspondencia con las 7 de la pila OSI es a o la de la g. 1.9.

Cap tulo 2 Redes de rea extensa, WAN, Wide a Area Networks


2.1. Introduccin o

Existen varias formas de conectar varios ordenadores: Punto a punto: cada ordenador se conecta directamente al resto, mediante un cable f sico exclusivo. Red de rea local (RAL o LAN): Hablamos de una red de rea local cuando tenemos varios a a equipos interconectados de modo que pueden comunicarse entre s sin necesidad de pasar por conmutadores y/o encaminadores. Cmo se observa en la g. 2.1. o En una LAN, los equipos pueden interconectarse de dos formas: Si todos los equipos trabajan con el mismo nivel f sico (por ejemplo, todos se conectan a travs de interfaces Ethernet), para interconectarlos usamos un repetidor (hub). e Dicho dispositivo solo presenta funciones de la capa 1 (f sica). Para conectar equipos que utilizan interfaces no compatibles se utiliza un puente (en ingls, bridge). El puente presenta funciones de las capas 1 y 2 (f e sica y enlace). Red de rea extensa (RAE o WAN): para interconectar varias redes de area local, se necea sita un encaminador o router. Este dispositivo posee funcionalidades de la capa 3 (red), lo 18

Redes de Telecomunicacin o

19

Figura 2.1: Concepto de LAN y WAN. que signica que puede encaminar trco. Adems de encaminar, puede controlar y ltrar a a el trco que pase por l. Al unir varias redes LAN con encaminadores, obtenemos una red a e de rea extensa. a

Cmo se observa en la g. 2.2, si la mquina A se quisiera conectar al PC de la segunda o a red, tendr que seguir el siguiente camino: Saldr de la capa 7 del PC A, pasar por la capa 1 a a a del hub, por la capa 3 del router, por la capa 2 del bridge y de all pasar a la capa 7 del PC. a De forma ms esquemtica, una WAN se puede representar como en la g. 2.3. a a

No hay que confundir el servicio ofrecido por nivel de red (orientado a conexin o no o orientado a conexin) con el funcionamiento interno de los encaminadores (circuito virtual o o datagrama). Normalmente, orientado a conexin se relaciona con circuito virtual, pero podemos o tener TCP (que es orientado a conexin) sobre datagramas. o

2.2.

Funciones bsicas del nivel de red a

Redes de Telecomunicacin o

20

Figura 2.2: Comunicacin atravesando una WAN. o

Nota: Saber cules son las funciones bsicas del nivel de red es concepto muy bsico e a a a importante de cara al examen.

2.2.1.

Direccionamiento

Identicacin un o voca de los nodos de la red. Las direcciones son unicas en todo el nivel de red. Si el enlace es punto a punto no hacen falta direcciones.

2.2.2.

Encaminamiento

Bsqueda de un camino para que los paquetes atraviesen la red desde el emisor hasta el u receptor. Se divide el problema en: Establecimiento de vecindades: saber cules son los nodos vecinos y adyacentes. a Distribucin de informacin: distribuir la informacin que cada encaminador posee. o o o Clculo de rutas: se calculan rutas con la informacin que posee el encaminador y la que le a o env los otros. an

Redes de Telecomunicacin o

21

Figura 2.3: Esquema genrico de una WAN. e

Nota: Saber cules son las partes que componen el encaminamiento es concepto muy a bsico e importante de cara al examen. a

2.2.3.

Control de congestin o

La red dedica parte de sus recursos para controlarse a s misma, de modo que se eviten bloqueos. Para ello, el nivel de red debe introducir informacin adicional en los paquetes. o

Figura 2.4: Comportamiento ideal, con info. de control y real en situacin de congestin. o o

Redes de Telecomunicacin o

22

Como se ilustra en la g. 2.4, los diferentes comportamientos frente a la situacin de cono gestin son los siguientes: o En el caso ideal la informacin que sale es igual a la que entra. Esto ocurre hasta que llegamos o al punto de saturacin del sistema, en que independientemente de la informacin que entre, o o la salida es la misma, el mximo que permita el sistema. a En el caso ideal con informacin de control se pierde un poco de rendimiento al tener en o cuenta que parte de los recursos se dedican a la comunicacin entre conmutadores. o En el caso real entran en accin dos efectos que no ten o amos en cuenta anteriormente: que algunos paquetes se pierden y es necesario retransmitirlos, y que el sistema no posee una memoria innita, sino limitada. Por tanto, pasado un punto (punto de congestin), el sistema empieza a perder paquetes o debido a que su memoria est llena. Adems, se puede llegar a un punto en que todos los recursos a a del sistema se dediquen al control de congestin, y perdamos la capacidad de transmitir (punto o de bloqueo). Es necesario buscar un compromiso entre congestin y rendimiento. Lo mejor ser o a una menor congestin a costa de un menor rendimiento. o

2.2.4.

Integracin de redes heterogneas o e

El mejor sitio para conectar redes heterogneas es el nivel de red, ya que es dicho nivel el e que posee la informacin ms util para poder traducir los paquetes entre una red y otra. o a

Cap tulo 3 Direccionamiento


3.1.
3.1.1.

Tipos de direcciones
Clasicacin seg n el mbito o alcance o u a

Locales: las direcciones estn restringidas a un cierto entorno. Ser suciente con el direca a cionamiento en el nivel de enlace. Globales: alcanzan a toda la red (son por tanto direcciones del nivel de red). En el nivel de enlace se usan normalmente direcciones MAC de 48 bits (IEEE 802.11). Son direcciones unicas que los fabricantes asignan a cada tarjeta de red, aunque slo hace falta que o sean unicas dentro de una misma LAN.

3.1.2.

Clasicacin seg n la jerarqu o u a

Jerrquicas: si dos de estas direcciones tienen una parte comn, los caminos que deben a u seguirse para llegar a ellas tambin tienen una parte comn. e u Planas: coincidencias en una parte de las direcciones no implican que los caminos a recorrer vayan a tener una parte comn. Ej. Dos tarjetas de red del mismo fabricante comparten los u 24 primeros bits de su direccin MAC, y no tienen por qu instalarse en la misma subred. o e

23

Redes de Telecomunicacin o

24

3.2.
3.2.1.

Formatos de direcciones ms extendidos a


IPv4

Introduccin o Se trata de direcciones globales y jerrquicas de 32 bits (4 octetos). Tienen dos partes, red a y host (tambin llamadas subred y mquina, respectivamente). Todas las mquinas cuya parte e a a de red coincida, deben poder comunicarse directamente sin pasar por un router; dicho de otro modo, esas mquinas podr comunicarse mediante el nivel de enlace. En ese caso se dice que a an esas mquinas son directamente accesibles. a Clases de direcciones IP. Direcciones especiales Existen 3 tipos fundamentales de direcciones IPv4, que se distinguen segn el valor de sus u primeros bits: Clase A: La parte de red la foman los 8 primeros bits mientras que la parte de host son los siguientes 24 bits. El nmero mximo de direcciones que podemos conseguir son 16777216. u a 0XXXXXXX.XXXXXXXX.XXXXXXXX.XXXXXXXX Clase B: La parte de red la foman los 16 primeros bits. El nmero mximo de direcciones u a son 65536. 10XXXXXX.XXXXXXXX.XXXXXXXX.XXXXXXXX Clase C: La parte de red la foman los 24 primeros bits. El nmero mximo de direcciones u a son 256. 110XXXXX.XXXXXXXX.XXXXXXXX.XXXXXXXX Adems de estas tres fundamentales, existen otras dos clases de direcciones, aunque su uso a est poco extendido: a Clase D: direccin de grupo (multidifusin o multicast). Sirven para enviar un mismo o o datagrama simultneamente a varios destinatarios de un mismo grupo. Su formato es el a siguiente:

Redes de Telecomunicacin o 1110XXXX.XXXXXXXX.XXXXXXXX.XXXXXXXX Tienen dos particularidades: No pueden usarse como direccin de origen, slo de destino. o o

25

Necesitan usar el protocolo IGMP para ser encaminadas. Esto signica que slo se o podrn usar estas direcciones entre redes que estn unidas por routers que haa e blenmulticast, lo que en la prctica ocurre muy pocas veces. a Clase E: este tipo de direcciones estn reservadas para usos experimentales y posibles a usos futuros. Su formato es el siguiente: 1111XXXX.XXXXXXXX.XXXXXXXX.XXXXXXXX

Figura 3.1: Tabla resumen de las clases de direcciones.

Existe una serie de direcciones IPv4, denominadas especiales, que tienen un uso espec co, independientemente de lo que pudiera indicar a priori su clase: 255.255.255.255 - Direccin de difusin general (tambin llamada de difusin local o o o e o limitada): cuando se env un datagrama con esta direccin de destino, la tarjeta de red lo a o env a todos los nodos de la red local. Si la LAN est interconectada con otras mediante a a un router, ste NO retransmite el datagrama fuera de la red. e 127.xxx.xxx.xxx - Direccin reexiva: cuando se env un datagrama a esta direccin, o a o vuelve a la misma mquina que lo envi. Sirve generalmente para realizar pruebas y a o diagnsticos del sistema. o

Redes de Telecomunicacin o

26

Direcciones de uso privado - no tienen por qu ser unicas, esto es, s se pueden repetir e dentro de distintas redes locales, pero estn aisladas de la WAN. Son tres rangos: a 10.0.0.0 - 10.255.255.255 172.16.0.0 - 172.31.255.255 192.168.0.0 - 192.168.255.255 Para que las mquinas que estn dentro de una red local direccionadas con una direccin a e o privada puedan comunicarse con otras redes remotas a travs de una WAN se utiliza el protocolo e de encaminamiento NAT (Network Address Translation). Este protocolo se implementa generalmente en los routers, y se encarga de traducir de forma transparente al usuario las direcciones IPv4 privadas en direcciones IPv4 vlidas para poder ser enviadas a travs de una WAN. a e Mscaras a El esquema de direccionamiento de IPv4 que acabamos de ver (denominado por clases o classful) es muy cmodo y sencillo de gestionar, pero tiene el inconveniente de ser poco exible. o Por ello surgieron las mscaras (y su implementacin oblig a realizar ciertas modicaciones a o o en los protocolos de encaminamiento, como veremos). Una mscara no es ms que un grupo de 32 bits divididos en 4 octetos (como las direcciones a a IPv4) que indican hasta dnde llega la parte de red de una direccin dada. Su formato es el o o de una serie de unos seguido de una serie de ceros (salvo los casos l mite de todo unos y todo ceros, claro), es decir, que no puede haber ceros intercalados entre los unos, ni unos entre los ceros. Suelen expresarse en decimal, como las direcciones; por ejemplo: 11111111.11111111.11111111.10000000=255.255.255.128 Tambin pueden expresarse mediante una notacin compacta, que consiste en poner una e o barra seguida del nmero de unos que tiene la mscara justo tras la direccin a la que se u a o aplica. Por ejemplo, para aplicar la mscara anterior a la direccin 138.4.3.120 podr a o amos usar indistintamente: 138.4.3.120/255.255.255.128 o 138.4.3.120/25 Las mcaras pueden usarse de diversas maneras para dar mayor exibilidad al sistema de a direccionamiento IPv4. Veremos algunas de estas formas con mayor detalle, y otras simplemente las nombraremos.

Redes de Telecomunicacin o Subnetting con subredes homogneas (FLSM - Fixed Length Subnet Mask) e

27

Inicialmente se desarroll dentro de algunas grandes empresas que lo empleaban para o optimizar sus redes, pero acab convirtindose en un estndar. o e a El esquema classfulque acabamos de ver presenta varios problemas: Las direcciones de clase A estn sobredimensionadas, ya que pueden albergar millones a de hosts, lo que dif cilmente una tecnolog LAN podr soportar. Adems, son muy a a a escasas, y por tanto caras. Por otro lado, las direcciones de clase B tambin son demasiado grandes para ser e empleadas como unidad m nima. Por ejemplo, si una compa tiene 2000 mquinas, na a necesitar una direccin B, que le permitir direccionar 65536 mquinas. Como vemos, a o a a esto es muy ineciente, ya que se desperdician ms de 60000 direcciones. a No permite el fraccionamiento interno de la red; si se quiere aislar el trco entre dos a grupos de mquinas, es necesario asignar una direccin a cada grupo. a o El subnetting permite introducir routers dentro de una LAN y realizar subredes dentro de una misma direccin de red tipo B (tericamente puede usarse tambin en las clase A y o o e C, pero es muy poco habitual). Desde el exterior, es como si la LAN original no hubiera cambiado (permite compatibilidad hacia atrs con los esquemas de direccionamiento origia nales de IPv4), pero desde dentro de la red es como si se hubiera dividido en varias LANs ms pequeas, lo que permite gestionar el trco de red mucho mejor. a n a Su funcionamiento es muy simple: se trata de dividir el campo host de una direccin IP o como las que vimos en el apartado anterior en dos, asignando una de estas partes al campo de red para formar un campo de red extendido. Para ello se emplea una mscara, que a deber tener tantos unos seguidos como el campo de red originalms el nmero de bits a a u que queramos ampliarlo. Es ms fcil verlo grcamente en la g. 3.2. a a a

Figura 3.2: Ejemplo de subnetting.

Redes de Telecomunicacin o Al aplicar la mscara, aparecen nuevas direcciones reservadas: a Direccin de la subred: IP AND MASK o Direccin de difusin de la subred: IP OR (MASK negada) o o

28

La direccin de subred no se usa (no est asignada a ningn host de la red, slo se utio a u o liza para c rculos de direccionamiento). En cambio, la direccin de difusin de la subred o o s conviene resaltar que, a diferencia de la direccin de difusin general, la direccin de ; o o o difusin de subred s puede emplearse para transmitir datagramas a equipos que no estn o a en la misma red f sica, pudiendo atravesar routers (siempre que estn en la misma subred). a Cada subred ir desde la (direccin de subred+1) hasta la (direccin de difusin de la a o o o subred -1), por lo que cada una tendr: a no direcciones = 2LongitudCampoHost 2 (3.1)

Desde el exterior, no habr diferencia alguna, pero internamente el router tendr un maa a yor control sobre el trco en cada subred; por ejemplo, cuando se indica la direccin de a o difusin de la subred, el datagrama debe llegar a todos los nodos de la subred, pero no sale o fuera de sta. e Subnetting con subredes no homogneas (VLSM-Variable Length Subnet Mask) e La principal restriccin del subnetting que acabamos de ver es que la mscara debe ser la o a misma para todas las subredes. Esto es lo mismo que decir que todas las subredes tendrn a el mismo tamao, ya que en todos los casos los campos de subred y host tendrn el mismo n a nmero de bits. Con este esquema se desaprovechan muchas direcciones. u Con VLSM se pretende dar an ms exibilidad, ya que permite que distintas subredes u a tengan mscaras distintas (permite crear sub-subredes, por decirlo de alguna manera), a permitiendo de esta manera ajustar ms los tamaos de las subredes al nmero de mquinas a n u a que estn dentro de ellas y desaprovechando menos direcciones. a El esquema VLSM no es compatible con el esquema classful, ya que es necesario modicar el protocolo de red para que pueda transportar las mscaras de las subredes adems de las a a direcciones IP. No veremos nada ms acerca de este esquema de direccionamiento. a

Redes de Telecomunicacin o Supernetting

29

Supongamos que se desea montar una red con 900 equipos. Para poder direccionarla, una direccin de clase C (254 hosts) ser insuciente, pero usar una de clase B (65536 hosts) o a implicar desperdiciar miles de direcciones utiles. Esta situacin se dio mucho, pues redes a o de tamao medio se ve obligadas a pedir una direccin de clase B a pesar de desapron an o vechar la mayor parte del espacio de direcciones, lo que llev a un rpido agotamiento de o a este tipo de direcciones. El supernetting naci como solucin a este problema: bsicamente consiste en la asociacin o o a o de varias direcciones consecutivas (normalmente de clase C) para formar una especie de super-red(en contraposicin al trmino subred) mayor. La forma de hacerlo es sencilla: o e se toman varias direcciones consecutivas y se les asocia a todas la misma mscara. El a router slo deber recordar la primera direccin del grupo y la mscara (por lo que no es o a o a compatible con el sistema classful). Veamos un ejemplo para nuestra red de 900 equipos. Necesitaremos 4 direcciones de clase C (254 x 4 = 1016 hosts) que sean consecutivas, ya que en ese caso su campo de red ser exactamente igual salvo por los ultimos bits. Supongamos que en nuestro caso el campo a de red de la primera direccin acaba con los bits 00; de esta forma, las tres direcciones o siguientes acabarn en 01, 10 y 11, pero el resto del campo de red ser exactamente igual a a al de la primera direccin. o

Figura 3.3: Ejemplo de supernetting

Como puede verse, el supernetting tiene una restriccin: las direcciones slo pueden agruo o parse en conjuntos que sean potencias de 2 (de 2 en 2, de 4 en 4, de 8 en 8), debido a la forma de aplicar las mscaras. Se siguen desaprovechando algunas direcciones, pero desde a

Redes de Telecomunicacin o luego no tantas como con el esquema classful. CIDR (Classless InterDomain Routing)

30

Es el esquema que se utiliza actualmente en Internet. Consiste en una especie de fusin o entre los conceptos de VLSM y supernetting, y soluciona (al menos de forma temporal) los dos principales problemas que estaba teniendo internet: Agotamiento de direcciones Crecimiento excesivo de las tablas de enrutamiento Sus principales caracter sticas son: Las clases de direcciones (A, B, C, etc) dejan de tener sentido. Esto permite que cualquier red est dentro de cualquier rango (no siendo necesario hacer subredes dentro e de una de clase B, como en el subnetting, o agrupar direcciones de clase C, como en el supernetting). Las entradas en las tablas de enrutamiento de los routers deben tener, adems de la a direccin, la mscara. o a Los protocolos de enrutamiento deben ser capaces de transportar las m 00e1scaras. Permite ajustar ms el tamao de las redes al necesario, desaprovechando menos a n direcciones, gracias al uso de mscaras de tamao variable. a n

3.2.2.

Otros esquemas de direccionamiento

ISO/NSAP Sus direcciones tienen longitud variable, hasta un mximo de 20 octetos. a X.121 Se usa en redes X.25. La direccin est compuesta por d o a gitos, no por octetos, hasta un tamao mximo de 14 d n a gitos, y consta de dos campos: TERMINAL (10 d gitos) + RED (hasta 4 d gitos) Los d gitos del campo de red tienen signicado geogrco, ya que identican al pa a s.

Redes de Telecomunicacin o E.164

31

Propia de la red telefnica actual. Se compone de un mximo de 15 d o a gitos, que se dividen en tres campos. Cuando se usan estas direcciones para la interconexin de redes tienen el siguiente o formato: PA (3 d IS gitos) + Cdigo de identicacin (entre 1 y 4 d o o gitos) + no de abonado (12-X d gitos) F.69 Se usa en la red Tlex. e IPv6 IPng (nueva generacin) o o Direcciones de 128 bits (16 octetos). Cada octeto se expresa como dos cifras en hexadecimal y cada cuatro cifras hexadecimales se separan por dos puntos (:). Ejemplo: 1234:5678:90AB:0000:FCB7:0000:0000:FFA7 Si la direccin lleva dos puntos seguidos de otros dos (::), indica que la cantidad de cifras o hexadecimales que faltan son todos ceros en esa posicin (4 ceros, 8 ceros, etc). Por ejemplo: o 1234:5678:90AB:0000:FCB7:0000:0000:FFA7 En este caso vemos como nos faltar ocho ceros y los pondr a amos en la posicion de los :: como en el primer ejemplo. No podr amos reemplazar los primeros cuatro ceros (negrita) a la vez que los ultimos ocho poque no sabr amos que cantidad de ceros ir en cada posicin. an o Adems se pueden indicar los ultimos cuatro octetos en formato IPv4. Por ejemplo: a ::193.147.162.5 = 0000:0000:0000:0000:0000:0000:193.147.162.5 Las direcciones IPv6 pueden ser de tres tipos: Unicast: como en IPv4, dirigida a un slo host. o Multicast: como IPv4, dirigida a varios host. Anycast: es como si fuese una direccin de grupo pero con que llegue a uno del grupo es o suciente.

Redes de Telecomunicacin o

32

3.3.
3.3.1.

Algunos ejemplos de funcionamiento de IPv4


Mquinas directamente accesibles a

Supongamos la situacin de la gura 3.4 El equipo A no conoce la mscara de B, slo su o a o

Figura 3.4: Ejemplo

IP. Para que A pueda saber si B est o no accesible debe realizar lo siguiente: a Compara los resultados de estas dos operaciones: IPa &M ASCa IPb &M ASCa (3.2) (3.3)

Si ambos resultados son iguales indica que el nodo es directamente accesible, y las tramas del nivel de enlace que transmite el equipo A sern de la forma que indica la gura 3.5: a Si ambos resultados no son idnticos, el ser el encaminador el que tenga que encargarse e a de hacer llegar los datos a B, y los datagramas que salen de A quedar como la gura an 3.6: Para poder realizar comunicaciones a travs del nivel de enlace, se utiliza el protocolo ARP e (Address Resolution Protocol). Es un protocolo de nivel de red responsable de encontrar la

Redes de Telecomunicacin o

33

Figura 3.5: Datagrama de A a B si B es directamente accesible

Figura 3.6: Datagrama de A a B si B no es directamente accesible

direccin hardware (Ethernet MAC) que corresponde a una determinada direccin IP. Para ello o o se env un paquete (ARP request) a la direccin de multidifusin de la red (broadcast (MAC a o o = )) conteniendo la direccin IP por la que se pregunta, y se espera a que esa o mquina (u otra) responda (ARP reply) con la direccin Ethernet que le corresponde. Cada a o mquina mantiene una cach con las direcciones traducidas para reducir el retardo y la carga. a e ARP permite a la direccin de Internet ser independiente de la direccin Ethernet, pero esto o o solo funciona si todas las mquinas lo soportan. a

3.3.2.

Subnetting

Supongamos el rango de direcciones denido por: 193.147.160.0/21. El nmero total de u direcciones que tendremos disponible, teniendo en cuenta que hay que reservar dos para direccin o de red y la de difusin ser de: o a 23221 2 = 2046 direcciones (3.4)

Supongamos que nuestro objetivo es hacer 3 subredes de aproximadamente 1000 usuarios en una y 500 en las otras dos. El esquema de lo que queremos se puede apreciar en la gura 3.7. La primera, de 512-2=510 usuarios se podr direccionar de la siguiente forma (hay ms de una a a solucin posible): o

Redes de Telecomunicacin o

34

Figura 3.7: Ejercicio 1

193.147.160.0/23 Dir de subred: 193.147.160.0 Dir de difusin: 193.147.161.255 o La segunda de los mismos usuarios ser a: 193.147.162.0/23 Dir de subred: 193.147.162.0 Dir de difusin: 193.147.163.255 o Y la tercera de 1024-2=1022 usuarios ser a: 193.147.164.0/23 Dir de subred: 193.147.164.0 Dir de difusin: 193.147.167.255 o En realidad a todas las subredes habr que quitarle un usuario ms, ya que una de estas a a direcciones la tenemos que asignar a la interfaz del router con la que est conectada la subred. a Normalmente se toma la primera direccin del rango de la subred. Visto desde fuera de la red, o todas las subredes comparten los 21 primeros bits de la direccin IP. o

3.3.3.

Varios interfaces de red en una misma LAN

Supongamos una LAN en la que tenemos, entre otros, 3 equipos llamados A, B y C. La red se conecta a Internet mediante un router, y las mscaras de los 3 equipos es la misma: a 255.255.255.248 (29 bits a uno). Figura 3.8.

Redes de Telecomunicacin o

35

Figura 3.8: Ejercicio 2

En teor podr a, amos pensar que, estando en la misma red local, todos los equipos deber an poder comunicarse directamente a travs del nivel de enlace (estar directamente accesibles). e Aunque esto deber ser as lo cierto es que el uso de mscaras puede hacer que no siempre sea a , a posible. En nuestro ejemplo, si A quiere enviar un datagrama a B o C, lo primero que har ser a a comprobar sus direcciones con su mscara, con lo que obtendr a a: IPa &M ASCa = 150,214,4,0 IPb &M ASCa = 150,214,4,8 IPc &M ASCa = 150,214,4,8 (3.5) (3.6) (3.7)

Si A quiere mandar algo a B o C debe enviarlo al router, ya que interpreta que no estn a accesibles. Si B quiere enviar algo a C lo puede hacer directamente sin pasar por el encaminador. Por tanto, el router deber tener dos interfaces de red, que ser 150.214.4.1 (para la subred a an donde se encuentra A) y 150.214.4.9 (para la subred donde se encuentran B y C).

3.3.4.

Ejercicio propuesto en clase

Asignar direcciones a 3 subredes con al menos 50 direcciones cada una a partir de 193.0.0.0. Para cada una denir lo siguiente:

Redes de Telecomunicacin o Direccin de subred y de difusin. o o Cul es la mejor direccin de subred y mscara que agrupe a las tres? a o a

36

3.3.5.

Difusin de mensajes o

En este ejemplo, vemos cmo el ordenador A env un paquete a tres direcciones de difusin o a o distintas. En el caso de los paquetes enviados a 181.168.7.255 (la direccin de difusin de la o o subred), el paquete llega a todas las mquinas de la subred. Es el mismo caso que con el paquete a enviado a 255.255.255.255 (la direccin de difusin general). En ambos casos, el router, al ver o o que el paquete va dirigido a la subred a la cual pertenece el interfaz por el que le llega el paquete, no reenv Figura 3.9. a.

Figura 3.9: Reenv de los paquetes de difusin o o

El caso del paquete dirigido a 173.15.23.255 es diferente. El router, al ver que la direccin o

Redes de Telecomunicacin o

37

de difusin no es la de la subred por la que le llega el paquete, decide reenviarlo. Tras viajar o por la red, llegar a la subred deseada. El mensaje ser recibido por todos los componentes de a a dicha subred.

Cap tulo 4 Integracin de redes o


4.1. Introduccin o

Cuando se disea una red de datos se desea sacar el mximo rendimiento de sus capacidades. n a Para conseguir esto, la red debe estar preparada para efectuar conexiones a travs de otras redes, e sin importar qu caracter e sticas posean. El objetivo de la Interconexin de Redes (internetworking) es dar un servicio de comunicao cin de datos que involucre diversas redes con diferentes tecnolog de forma transparente para o as el usuario. Este concepto hace que las cuestiones tcnicas particulares de cada red puedan ser e ignoradas al disear las aplicaciones que utilizarn los usuarios de los servicios. n a Algunas de las ventajas que plantea la interconexin de redes de datos, son: o Comparticin de recursos dispersos. o Coordinacin de tareas de diversos grupos de trabajo. o Reduccin de costes, al utilizar recursos de otras redes. o Aumento de la cobertura geogrca. a Los dispositivos de interconexin de redes sirven para superar las limitaciones f o sicas de los elementos bsicos de una red, extendiendo las topolog de esta. a as Como vimos en temas anteriores, el nivel de red es el ms apropiado para integrar distintas a redes. En este tema vamos a ver de qu forma podemos conectar redes heterogneas, centrndonos e e a fundamentalmente en las redes TCP-IP. 38

Redes de Telecomunicacin o

39

4.2.

Ejemplo de integracin de redes con IPv4 o

Supongamos que queremos comunicar dos mquinas distantes. Como puede verse en la a gura 4.1, el circuito f sico que hay entre ambas atraviesa redes de distinto tipo:

Figura 4.1: Ejemplo de interconexin de una red heterognea. Nota: CNLP (Connection Less o e Net Protocol)

Desde el punto de vista de los equipos que se comunican, lo ms sencillo ser usar un a a solo protocolo comn, sin que tuvieran que lidiaron los distintos tipos de redes que hay entre u c ambos; y justamente eso es lo que se hace al usar IP: cada mquina debe preocuparse unicamente a de generar un paquete IP indicando, principalmente, su propia direccin IP y la direccin IP de o o destino, y ser el protocolo el que se preocupe de llevar los datos desde el origen al destino a a travs de cualesquiera redes f e sicas que haya entre ambos. Para que podamos usar IP sobre cualquier tipo de red se necesita un mtodo de resolucin e o de direcciones. En nuestro ejemplo, necesitar amos un mtodo mediante el cual el ordenador A e fuera capaz de obtener la direccin X.25 del router R1 a partir de su IP; una vez en R1, que o encontrara la direccin ethernet del router R2; y nalmente, una vez en R2, que encontrara o la direccin CLNP del equipo B. Para ello se usa ARP, que funciona de la siguiente manera: o Cuando un ordenador quiere enviar un paquete a una direccin IP de un router u otro PC de su o misma red, primero env un mensaje ARP (que es de difusin) preguntando a qu direccin de a o e o nivel de enlace pertenece esa IP (direccin de nivel de red). El router correspondiente respono der indicando su MAC (su direccin de nivel de enlace). Algunos sistemas permiten el proceso a o inverso, obtener una IP a partir de una MAC.

Redes de Telecomunicacin o

40

4.3.

Formato de los paquetes IPv4

El formato general de un datagrama IP se aprecia en la gura 4.2:

Figura 4.2: Cabecera IP

Las 5 primeras las (primeros 20 octetos) son lo que se denomina la parte ja de la cabecera, y siempre irn en cada datagrama, de modo que el tamao m a n nimo de cada datagrama IP es de 20 octetos. A continuacin vendr un campo opcional de tamao variable, y nalmente, si los o a n hubiera, los datos (tambin de tamao variable). Veamos una descripcin detalla de cada uno e n o de los campos: Versin (4 bits): versin del protocolo. Para IPv4 aparecer un 4. o o a Logitud de la Cabecera (4 bits): indica, en grupos de 4 octetos, el tamao de la n cabecera IP (parte ja+opciones). Dado que el tamao m n nimo es 20 octetos, el valor m nimo de este campo es 5. ToS=Type of Service (8 bits): inicialmente era un campo opcional que los routers antiguos ignoraban, pero hoy en d se utiliza para la tecnolog QoS (Quality of Service, a a calidad de servicio). En concreto se utiliza en los Servicios Diferenciales. En estos, el TOS identica el tipo de trco que lleva cada paquete (Tranferencia de cheros, voz sobre a IP, etc.). As cada router tratar cada paquete de acuerdo al contenido. Por ejemplo, los , a

Redes de Telecomunicacin o

41

paquetes de VoIP (Voz sobre IP) requieren poco retardo pero importa poco que se pierdan algunos. De esta forma, los routers darn prioridad a los paquetes VoIP pero los desecharn a a si tienen que hacerlos esperar demasiado. Longitud total del paquete (16 bits): indica, en nmero de octetos, el tamao total del u n datagrama IP, incluyendo cabecera y datos. Sirve para que el nivel IP del destino sea capaz de descartar el relleno aadido por niveles inferiores. La longitud mxima del paquete es n a de: 216 1 = 65535 octetos. (4.1) Identicador (16 bits), Flags (3bits) y Desplazamiento y Oset (13 bits): estos 3 campos se utilizan para controlar la fragmentacin de los paquetes, y se describen con o detenimiento en el apartado de Fragmentacin de paquetes IPv4. o TTL = Time To Life (8bits): el tiempo de vida se inicializa en el emisor con un valor entero, que se ir decrementando en una o varias unidades cada vez que el paquete a atraviesa un router. Si llega a cero, se destruye el paquete. De esta forma se evita que paquetes perdidos queden atrapados en bucles innitos saturando la red. Protocolo (8bits): contiene un identicador del protocolo al que pertenece la PDU que va en el campo de datos, como por ejemplo TCP. Checksum (16bits): se trata de un sistema de control de la cabecera. Es muy simple, ya que no es ms que la suma de paridad de todos los bits de la cabecera. a Opciones: se describen en el apartado de Opciones ms usuales. a

4.3.1.

Fragmentacin de paquetes IPv4 o

Dado que los paquetes IP pueden atravesar redes de muy distinto tipo, cada una con un tamao mximo de paquete, a menudo ocurre que el tamao del paquete IP a enviar es den a n masiado grande y hay que dividirlo en trozos ms pequeos antes de pasarlo al nivel inferior. a n Esto es lo que se conoce como fragmentacin de paquetes. Es evidente que en el receptor, los o paquetes deber volver a unirse hasta obtener los paquetes IP originales, en lo que se denomina an reensamblado. Veamos un primer ejemplo sencillo de fragmentacin: supongamos que el router A quiere o enviarle al router B un paquete IP que contiene 3980 Bytes (octetos) ms los 20 Bytes de cabecera a y que nuestro nivel inferior acepta datagramas de, como mximo, 1500 Bytes. Figura 4.3. a

Redes de Telecomunicacin o

42

Figura 4.3: Ejemplo de fragmentacin o

El router A divide los 3980 Bytes de datos en 3 fragmentos, cada uno con un tamao n mximo de 1480 Bytes. De esta forma obtenemos 2 paquetes de 20+1480=1500 Bytes y uno de a 20+1020=1040 Bytes. Ntense varias cosas: o La cabecera del paquete original (el de 4000 Bytes) no se incluye en los fragmentos. Los paquetes nales no deben superar el tamao mximo incluyendo las nuevas cabeceras. n a Por eso hemos dividido los datos en paquetes de 1480 Bytes como mximo, para que al a aadir la cabecera IP no superemos los 1500 Bytes. n Si sumamos, todos los Bytes nales, incluidas las cabeceras, vemos que el tamao total se n ve incrementado, ya que cada nuevo fragmento aade una nueva cabecera. n Es importante observar que la fragmentacin de un paquete puede darse en cualquier parte o del caminoque siguen los paquetes desde el emisor hasta el receptor, pero el reensamblado slo o se efecta en el receptor. u El protocolo IPv4 implementa un sistema para controlar la fragmentacin y el reensamblao do. Para ello, como vimos en el apartado anterior, hay varios campos en la cabecera de todo datagrama IP que se encargan de controlar la fragmentacin, y que sern de vital importancia o a a la hora del reensamblado. Figura 4.4.

Redes de Telecomunicacin o

43

Figura 4.4: Campos de control de la fragmentacin o

Veamos una descripcin detallada de cada uno: o Identicador (16bits): es un identicador un voco del datagrama original antes de fragmentar (en el ejemplo el de 4000 Bytes). Se usa cuando se solicitan reenv Debe ser os. unico a nivel de pareja IPorigen/IPdestino. Para ello, el origen lleva un contador interno con el que numera cada paquete que env e incrementa el contador en uno. Para evitar a confusiones en caso de que el sistema se caiga y restituya demasiado rpido y se mezclen a nmeros, el contador no empieza en cero, sino en una cifra aleatoria. Adems, se obliga al u a sistema a que tarde en arrancar al menos el tiempo que tarda un paquete en desaparecer de la red. De este modo, aunque coincidieran las cifras aleatorias no habr confusin, ya a o que el ultimo paquete que us el identicador ya no estar en la red. o a Flags o banderas (3 bits): se trata de tres bits indicadores, cada uno con una funcin: o Cero: siempre a cero (no tiene funcin asignada). o MF (More Fragments): vale 0 en el ultimo fragmento (no hay ms fragmentos a detrs) y 1 en otro caso. Si el datagrama es unico (no hubo fragmentacin) tambin a o e vale 0. Cada vez que un datagrama se fragmenta, se pone el MF a uno en todos los fragmentos salvo en el ultimo, que se le pone el del datagrama del que proviene. DF (Dont Fragment): indica al router que no debe fragmentar el paquete en ningn caso. En el caso de no poderse enviar un datagrama tan grande, ser desechado u a por el router. Oset o desplazamiento (13 bits): indica el lugar que ocupaba el fragmento actual dentro del fragmento original. Hay que tener en cuenta las siguientes cosas: Se cuenta en grupos de 8 bytes, es decir, que si este campo vale 100 en realidad querr decir que van 100x8=800 bytes. Esto se debe a que slo disponemos de 13 bits a o para denir el oset, que en muchos casos pueden ser ms que insucientes. a Se comienza a contar el Oset sin tener en cuenta la cabecera del datagrama original, esto es, el desplazamiento es relativo al inicio del campo de datos, no al inicio del datagrama.

Redes de Telecomunicacin o

44

Los fragmentos de un paquete que a su vez es un fragmento de otro datagrama, tendrn el Oset denido con respecto al datagrama original del que partieron todos a y no con respecto al fragmento justo anterior. Para ilustrar esto con ms detalle vamos a suponer que A env el primer paquete por el a a router de arriba, sin problemas de fragmentacin, mientras que los paquetes 2 y 3 van a ser o enviados por B, donde vuelve a surgir la necesidad de fragmentacin, como se aprecia en la o gura 4.5.

Figura 4.5: Ejemplo de fragmentacin mltiple o u

Veamos de forma detallada y paso a paso el desglose de las cabeceras de fragmentacin, o con los valores que irn tomando en cada paquete fragmentado. Originalmente, en el emisor, a no tenemos ms que un solo datagrama, y los valores de los campos de fragmentacin de su a o cabecera sern los que se muestran en la tabla 4.3.1: a

Redes de Telecomunicacin o Paquete 1 20 octetos 3980 octetos 0 0 (por ser el unico paquete existente)

45

Cabecera Datos Oset MF

En el router A se produce la primera fragmentacin, dando lugar a los siguientes paquetes o que se aprecian en la tabla 4.3.1: Paquete 1 Paquete 2 Cabecera 20 octetos 20 octetos Datos 1480 octetos=185 grupos de 8 octetos 1480 octetos Oset 0 185 MF 1 1 Paquete 3 20 octetos 102 octetos 185+185=370 0

En el router B, los paquetes vuelven a dividirse. El resultado se muestra en la tabla 4.3.1. Paquete 2.1 Paquete 2.2 20 octetos 20 octetos 800 octetos=100 grupos de 8 octetos 680 octetos 185 185+100=285 1 1 Paquete 3.1 Paquete 3.2 20 octetos 20 octetos 800 octetos=100 grupos de 8 octetos 220 octetos 370 370+100=470 1 0

Cabecera Datos Oset MF Cabecera Datos Oset MF

4.3.2.

Opciones ms usuales a

Como se dijo en su momento, este campo es opcional. En l se indicarn los servicios e a opcionales que quieran utilizarse slo cuando vayan a ser usados. Hay que tener en cuenta que, o al no ser campos obligatoriosno todos los routers los implementan; cuando quieran usarse se deber saber bien lo que se hace y los equipos de los que se dispone. a Son muchas las posibilidades, y solo veremos algunas:

Redes de Telecomunicacin o

46

Source Routing: sirve para especicar las IPs de los routers por los que debe ir pasando el paquete. Dicho de otro modo, el origen especica de forma expl cita la ruta que debern a seguir los datagramas hasta el destino. Source Recording: cada router escribe su IP en el paquete antes de reenviarlo. De esta forma, en el destino se puede saber de forma exacta la ruta seguida por cada paquete hasta llegar a l. e TimeStamp: cada router escribe en el paquete el instante en el que lo encaminan. Permite hacer controles de tiempo para las distintas rutas.

4.4.

Tablas de encaminamiento

Cuando un router recibe un paquete, mira la direccin de nivel de enlace que aparece en el o destino del paquete; esta direccin puede ser: o La del propio router. Pasa el paquete al nivel superior para analizarlo. No lo reenv a. La de difusin. En este caso tenemos dos posibilidades: o Que sea la general (255.255.255.255): no se reenv a. Que sea la de subred (SUBRED.255): tampoco se reenv a. Cualquier direccin distinta a las anteriores. En ese caso, el paquete ser enrutado, en o a funcin de la IP de destino, siguiendo las tablas de encaminamiento. o Una tabla de encaminamiento consta de varias entradas (las), cada una de las cuales consta de 5 campos (columnas). Los campos son los siguientes: Direccin de Red (enadelante DirRed): es una direccin IP que engloba toda una red. o o Suele acabar en cero. Mscara de Red (en adelante Mask): dene, aplicada al campo anterior, la extensin de a o la red (vase el apartado 2.1.3 del tema anterior para una descripcin ms detallada). e o a Mtrica: es el nmero de routers por los que debe pasar un paquete antes de alcanzar el e u siguiente salto.

Redes de Telecomunicacin o

47

IP del siguiente salto (en adelante IPnext): es la IP del siguiente router al que se debe enviar el paquete para que llegue a su destino. Tambin llamada Next Hop. e Interfaz: indica la interfaz (tarjeta de red) por la que se debe enviar ese paquete. Y en la tabla 4.4 vemos el aspecto que tendr a: DirRed Mscara Mtrica a e IPnext Interfaz Dir1 Mask1 ... Dest1 ... Dir2 Mask2 ... Dest2 ... ... ... ... ... ... 0.0.0.0 0.0.0.0 ... Router por defecto ... La tabla de encaminamiento se ordena de mayor a menor longitud de mscara. A igual a longitud de mscara, se ordena de menor a mayor mtrica. a e Cada vez que llega un paquete al nivel 3 se le aplica la mscara de la primera entrada. Si el a resultado coincide con la DirRed de esa entrada ser enviado a la IPnext por la interfaz especia cada. Si el resultado no coincide, se pasa a comprobar la segunda entrada y as sucesivamente. La tabla de encaminamiento se aplica en orden, de arriba hacia abajo. A pesar de que el paquete es reenviado a IPnext, la IP de destino (en adelante IPdest) que aparece en el datagrama recibido no se modica, pues para que el paquete llegue a su destino se usar el nivel de enlace, a es decir, la MAC de destino (MACdest) s cambia, la IPdest no. La ultima entrada de todas debe ser la salida por defecto (Gateway). Tanto su mscara a como su DirRed son 0.0.0.0, eso garantiza coincidencia con cualquier IP de destino. Todos los paquetes que no hayan encontrado coincidencia antes, coincidirn con la entrada por defecto. a El algoritmo que usan los routers se muestra en la gura 4.6. A continuacin vamos a ver un ejemplo de tablas de encaminamiento. Tenemos una red con o la topolog que muestra la gura 4.7. a En ella, tabla de encaminamiento de A tendr el aspecto que se muestra en la gura 4.4. a

Redes de Telecomunicacin o DirRed 193.0.0.0 193.0.0.64 193.0.0.128 193.0.0.192 DirRedZ DirRedX DirRedY 0.0.0.0 Mscara a Mtrica e 255.255.255.192 0 255.255.255.192 0 255.255.255.192 0 255.255.255.192 0 MaskZ 1 MaskX 0 MaskY 1 0.0.0.0 1 IPnext IP.D.1 IP.B.1 IP.B.1 Interfaz 1 2 3 4 5 5 5 5

48

A la hora de ordenar la tabla hemos supuesto que la mscara de la red del router A tiene a una longitud mayor que la de Z, a su vez mayor que la de X y esta que la de Y: 26 > Long(M askZ) > Long(M askX) > Long(M askY ) La tabla de encaminamiento de B quedar como se indica en la gura 4.4. a DirRed Mscara a Mtrica IPnext e 193.0.0.0 255.255.255.0 1 IP.A.5 DirRedZ MaskZ 1 IP.D.1 DirRedX MaskX 0 DirRedY MaskY 0 0.0.0.0 0.0.0.0 1 IP.C.1 Interfaz 1 1 1 2 2 (4.2)

Aqu se observa el detalle de que hemos agrupado las 4 LANs que empiezan por 193.0.0.* en una sola, haciendo la mscara lo sucientemente grande. Esto es posible gracias a que todos a los paquetes que son enviados al cualquiera de esas LANs es enviado al router A. Por supuesto que la suposicin de los tamaos de las mscaras de redes anterior quedar o n a a ahora as : 24 > Long(M askZ) > Long(M askX) > Long(M askY ) (4.3) Y para el router C, se muestra en la gura 4.4. DirRed Mscara a Mtrica IPnext e 193.0.0.0 255.255.255.0 2 IP.B.2 DirRedZ MaskZ 2 IP.B.2 DirRedX MaskX 1 IP.B.2 ... ... ... ... Interfaz 1 1 1 ...

Redes de Telecomunicacin o

49

Los puntos suspensivos de la ultima la representan las restantes entradas, correspondientes a las restantes redes tambin conectadas a C. e Puntos importantes a tener en cuenta son los siguientes: Las entradas deben estar ordenadas de mayor a menor longitud de mscara para optimizar a el funcionamiento del router. Direcciones contiguas pueden ser agrupadas, en ocasiones. La IP del siguiente nodo (IPnext) debe ser accesible directamente. Supongamos que realizamos el siguiente cambio en la topolog de la red, mediante el cual a 193.0.0.192/26 cuelga ahora de D y no de A como se muestra en la gura 4.8. La nueva tabla de A se puede apreciar en la tabla 4.4. DirRed 193.0.0.0 193.0.0.64 193.0.0.128 193.0.0.192 DirRedZ DirRedX DirRedY 0.0.0.0 Mscara a Mtrica e 255.255.255.192 0 255.255.255.192 0 255.255.255.192 0 255.255.255.192 1 MaskZ 1 MaskX 0 MaskY 1 0.0.0.0 1 IPnext IP.D.1 IP.D.1 IP.B.1 IP.B.1 Interfaz 1 2 3 5 5 5 5 5

Para el router B los cambios son mucho ms traumticos. En principio ya no se podr a a an agrupar las LANs 193.0.0.* sino que habr que subdividirlas de la forma que se indica en la a tabla 4.4. DirRed Mscara a 193.0.0.192 255.255.255.192 193.0.0.128 255.255.255.192 193.0.0.0 255.255.255.128 DirRedZ MaskZ DirRedX MaskX DirRedY MaskY 0.0.0.0 0.0.0.0 Mtrica IPnext e 1 IP.D.1 1 IP.A.5 1 IP.A.5 1 IP.D.1 0 0 1 IP.C.1 Interfaz 1 1 1 1 1 2 2

Redes de Telecomunicacin o

50

Donde hemos agrupado las redes 193.0.0.0/26 y 193.0.0.64/26 en 193.0.0.0/25. Sin embargo la red 193.0.0.128/26 debe ir separada. Hay un truco para evitarnos esto y consiste en aprovechar que las entradas se comprueban en orden. Si la entrada correspondiente a la red 193.0.0.192/26 estuviese justo encima de la correspondiente a 193.0.0.0/24 todo funcionar correctamente. As todos los paquetes con destino a a 193.0.0.192/26 coincidir con la primera entrada mientras que los que no ser procesados an an normalmente justo como estaba antes. Se ilustra en la tabla 4.4. DirRed Mscara a Mtrica e 193.0.0.192 255.255.255.192 1 193.0.0.0 255.255.255.0 1 DirRedZ MaskZ 1 DirRedX MaskX 0 DirRedY MaskY 0 0.0.0.0 0.0.0.0 1 IPnext IP.D.1 IP.A.5 IP.D.1 IP.C.1 Interfaz 1 1 1 1 2 2

La tabla de C no se ver afectada por este cambio de topolog dado que todos los paquetes a a destinados a 193.0.0.0/24 siguen siendo enviados a IP.B.2.

Redes de Telecomunicacin o

51

Figura 4.6: Algoritmo de un router

Redes de Telecomunicacin o

52

Figura 4.7: Ejemplo de tablas de encaminamiento

Figura 4.8: Modicacin del ejemplo de tablas de encainamiento o

Cap tulo 5 Encaminamiento


5.1. Tipos de direcciones

Se denomina encaminamiento al conjunto de procedimientos que permiten establecer las rutas ptimas. Es la funcin bsica del nivel de red. o o a Se puede dividir en tres partes o funciones: Establecimiento de vecindades: Se trata de encontrar informacin de los nodos adyacentes o para comunicarse con ellos. Distribucin de informacin: La informacin recibida de los nodos adyacentes es compartida o o o por todos los nodos. Clculo de rutas: Con la informacin que nos llega de la distribucin podemos calcular la a o o ruta ptima a un destino. o Un encaminador se puede esquematizar como una mquina con la siguiente estructura: a BIE es la Base de Informacin de Encaminamiento (en ingls RIB, Routing Information o e Base), la base de datos que se consulta para decidir y formar la BIR. La informacin de la o BIE se consigue mediante interaccin con el entorno local de cada nodo (cada nodo observa o sus enlaces) y mediante la recepcin de informacin de control procedentes de otros nodos o o vecinos que informan del conocimiento que estos nodos tienen sobre el estado de la red. BIR es la Base de Informacin de Reenv (en ingls FIB, Forwarding Information Base). o o e Es la tabla que se consulta para hacer el reenv de los paquetes. o 53

Redes de Telecomunicacin o

54

Figura 5.1: Esquema de un encaminador.

5.2.

Clasicacin de mecanismos de encaminamiento o

Los mecanismos de encaminamiento se pueden clasicar segn el ambito en: u Encaminamiento jado en el origen: El origen decide la ruta completa hacia el destino (por ejemplo, el source routing de IP). Encaminamiento salto a salto: En cada salto se decide dnde reenviar el paquete. Este o ultimo mecanismo es el que utiliza en el funcionamiento normal de la red. Si los clasicamos segn la capacidad de adaptacin tenemos: u o Encaminamiento esttico: si hay algn cambio en la red, el router no hace ningn a u u cambio en su conguracin. Los encaminadores solamente poseen BIR, no BIE ni mdulo o o de clculo de rutas. a Encaminamiento dinmico o adaptativo: la conguracin del router cambia a lo largo a o del tiempo. Dentro de este tipo de encaminamiento podemos encontrar a su vez distintos tipos segn su organizacin. u o Aislado: No se tiene en cuenta la informacin de los otros nodos a la hora de eno caminar. Tiene un clculo de rutas muy simple. Ejemplos: Inundacin (el paquete a o llega al router y se reenv por todas las interfaces excepto por aquella por la que a lleg), Patata Caliente (env el paquete por la primera interfaz disponible, de forma o a

Redes de Telecomunicacin o

55

aleatoria. Los paquetes se pondr a dar vueltas por la red y en algn momento an u llegarn a su destino) y reenvo por la interfaz menos cargada. a Centralizado: El clculo de rutas slo lo hace el nodo central. Los nodos recogen a o la informacin de sus vecinos y la env al nodo central. Estas rutas son muy cono an sistentes dado que el nodo central conoce perfectamente la estructura completa de la red y no se producirn bucles, pero el nodo central se convierte en un punto cr a tico (cuello de botella). Distribuido: Son los ms utilizados. En este tipo de encaminamiento todos los nodos a son iguales, todos env y reciben informacin de control y todos calculan, a partir an o de su BIE, sus tablas de encaminamiento. La adaptacin a cambios es optima siempre o y cuando stos sean noticados. e Nos centraremos en el encaminamiento salto a salto dinmico distribuido. a

5.3.

Jerarqu de encaminamiento y direccionamiento a

Si tenemos una red que va aumentando de tamao hace que aumente la dimensin de la n o BIE y, por tanto, tambin de la BIR. Esto supone un mayor consumo de memoria, de CPU y de e ancho de banda para intercambiar informacin de control. Veamos un ejemplo en la ilustracin o o 6.2:

Figura 5.2: Red sin niveles de jerarqu a.

Redes de Telecomunicacin o

56

La forma de encaminamiento la elegimos nosotros. En este caso la tabla del nodo 1 quedar a de la siguiente forma: Destino Siguiente nodo 1 1 2 2 3 7 4 7 5 2 6 7 7 7 8 7 9 2 10 2 Cuadro 5.1: Tabla de rutas para la red sin niveles de jerarqu a

Si jerarquizamos el sistema nombrando los nodos como en la ilustracin 6.3, la tabla dismio nuye considerablemente de tamao pero a costa de perder precisin. n o Destino Siguiente nodo 11 11 12 12 13 13 14 12 2x 12 3x 13 Cuadro 5.2: Tabla de rutas para la red con niveles de jerarqu a

Vemos como la nueva tabla tiene aproximadamente la mitad de tamao que la anterior, n pero el precio que hemos de pagar por ello es que para alcanzar algunos nodos ser necesario a realizar ms saltos. Por ejemplo, para llegar al nodo 3, el camino antes era 1 7 6 8 3, a mientras que ahora se convierte en 1 2 10 5 9 3, es decir, damos un salto ms. a An se podr introducir un nivel ms de jerarqu u a a a: La tabla de encaminamiento quedar as a :

Redes de Telecomunicacin o

57

Figura 5.3: Red con jerarqu a.

5.4.

Establecimiento de vecindades (Neighbour creating)

Los objetivos del establecimiento de vecindades son los siguientes: Permitir a los sistemas intermedios (SI = router = encaminador) encontrar la direccin de o nivel de red y del nivel de enlace de los nodos adyacentes. Permitir a los sistemas nales (SF = host = nodo) encontrar los SI adyacentes, distinguir cules son los nodos adyacentes y encontrar la direccin del nivel de enlace de los nodos a o adyacentes. Este establecimiento lo veremos en dos escenarios distintos; en un enlace punto a punto y en una red de area local (LAN).

5.4.1.

Enlace punto a punto

El SI necesita saber la direccin del sistema nal de nivel 3. o

Redes de Telecomunicacin o

58

Figura 5.4: Red con niveles y subniveles de jerarqu a.

Solucin ISO: Dispone de un protocolo denominado ESH (end system hello). Peridicao o mente, el SF env por el enlace un mensaje hello con el cual el SF indica al SI su direccin a o de nivel 3. Solucin TCP/IP : No se env mensajes, sino que se utiliza la conguracin de los nodos. o an o Se resuelve a partir de la direccin y de la mscara. En el enlace punto a punto bastar o a a con una mscara de 30 bits, que nos proporciona un sistema con 4 direcciones: una para a direccin de red, otra para difusin, otra para el SI y otra para el SF. o o

5.4.2.

Red de rea local (LAN) a

3 La notacin que usaremos en este apartado es la siguiente: SFB representa la direccin del o o nivel de red (nivel 3) del sistema nal B.

Los problemas que debemos de solucionar en este tipo de redes son:

Redes de Telecomunicacin o Destino Siguiente nodo 111 111 112 112 113 113 114 112 2xx 112 Cuadro 5.3: Tabla de rutas para la red con varios niveles de jerarqu a

59

Figura 5.5: Esquema de un enlace punto a punto.

3 3 1. SI : SFA SFB . El SI debe conocer la direccin de nivel 3 de los sistemas nales A y B. o 2 2 a o 2. SI : SFA SFB . El SI debe saber cul es la direccin de nivel 2 de los sistemas nales A y B. 2 3. SF : SIX . Cualquier sistema nal debe conocer la direccin de nivel 2 del sistema intero medio al que est conectado. a

4. SF A SF B, SF A : SF 2 B. A quiere enviar algo a B. Como estn unidos f a sicamente en una LAN no hace falta que pase por ningn SI, pero A necesita conocer la direccin de u o nivel de enlace de B. Si por desconocimiento o error A enviara el mensaje a un SI, debe existir alguna forma para que el SI le comunique a A que B est accesible a travs del nivel a e de enlace. 5. SF A SIB SF C. Encaminar los mensajes de A a C a travs del SIB. e
2 6. Suponemos que no hay SI. SF A SF B, SF A : SFB . Si no hay SI y A quiere enviar un mensaje a B, A necesita conocer la direccin de nivel de enlace de B. o

Solucin ISO o Existen 3 tipos de mensajes:

Redes de Telecomunicacin o

60

Figura 5.6: Ejemplo de una LAN.

ESH (Hola del SF): Los sistemas nales env este mensaje a una direccin destino de an o grupo que la escuchan todos los SI. ISH (Hola del SI): El SI env este mensaje por todas sus interfaces a todos los sistemas a nales con los que est conectados directamente. e Redireccin: Es un mensaje en el cual el SI especica al SF por dnde debe enviar los meno o sajes a un destino determinado. Por ejemplo cuando un SI recibe un paquete y lo reenv a por la misma interfaz que la recibi, env un mensaje al que lo envi para informarle de o a o que ese destinatario est visible directamente. Lo vemos en estas ilustraciones. a Otro ejemplo de redireccin es el siguiente: o
3 2 Con esto SFA conoce el par de direcciones de nivel 3 y nivel 2 necesarias (SFC SIB ) para alcanzar a SFC .

Por tanto, los mensajes de ESH e ISH permitirn la solucin de: a o ESH: soluciona los problemas 1 y 2 al tener direccin de nivel 2 y 3 de SF. o ISH: soluciona el problema 3 al tener direccin de nivel 2 y 3 de SI. o

Redes de Telecomunicacin o

61

Figura 5.7: SFA le quiere enviar un mensaje a SFB . B se encuentra directamente accesible por el nivel de enlace, pero A no lo sabe. A env el mensaje destinado a B al SI. a

Veamos el comportamiento de los SF ante los problemas que nos quedan (los problemas 4, 5 y 6). Para ello estudiamos el algoritmo de los SF: Env peridico de ESH a todos los SI o o Env directo de ESH a los SF o Cach de SI (CSI): Almacena la relacin direccin de nivel 3 - direccin de nivel 2 de los e o o o sistemas intermedios.
3 SI1 3 SI2 2 SI1 2 SI2

Cach Destino (CD): Esta tabla contiene una relacin entre la direccin de nivel 3 destino e o o y la direccin nivel 2 que debemos poner en el mensaje para que alcance dicho destino. o Almacena tanto mensajes de redireccin como ESH. o Mensajes de redireccin o Hola de SF directo (ESH)
2 2 2 SYZ = SIZ o SFZ 3 Donde SFX representa la direccin de nivel de red del destino nal de nuestro paquete, y o 2 2 SYZ y SYK ser la direccin de nivel de enlace del primer nodo al que hemos de mandar an o el paquete para que llegue al destinatario (SY puede ser tanto un SF como un SI). 3 SFX 3 SFX 2 SYZ 2 SYK

Redes de Telecomunicacin o

62

Figura 5.8: El SI lee el mensaje entrante y lo reenv a su destino, B. Pero, adems, el SI se da a a cuenta de que para reenviarlo ha tenido que usar el mismo enlace por el que le lleg. Por tanto, o le dice a A que los siguientes paquetes con destino a B los debe enviar a la direccin de nivel de o enlace de B, no a la del SI.

Estas tablas tienen asignados unos temporizadores de envejecimiento, es decir, si vence el temporizador sin haberse refrescado el registro, ste se borrar. e a El algoritmo seguir los siguientes pasos cuando un SF quiera transmitir un paquete a un a destino identicado por su direccin de nivel 3 (D3 ): o 1. BuscaD3 en la cach destino (CD) Si la encuentra, se lo env (D3 , X 2 ) e a
2 2. Si no Busca en CSI una entrada cualquiera y se lo env (D3 , SIX ) a

3. Si la CSI est vac env un mensaje de difusin dentro de su LAN, ya que es el alcance a a, a o que tienen las direcciones de nivel de enlace (D3, SF 2 ) Veamos como se solucionar los problemas que nos quedan: an Supondremos que las cachs estn vac e a as.
3 1. Si el SFA quiere enviar algo a SFD y SFA slo sabe SFD , aplica el algoritmo de los SF. o Como las cachs se encuentran vac se env un mensaje de difusin dentro de su LAN, e as a o 2 2 rellenando la tabla de CSI de SFA con las direcciones de nivel de enlace SIA y SIB . El mensaje sale a travs de alguno de estos sistemas intermedios. e

Redes de Telecomunicacin o

63

Figura 5.9: SFA quiere enviar algo a SFC . A no sabe donde est C, as que env el paquete a a a un SI aleatoriamente. En este caso, lo env al SIA . a

2. Si SFA desea enviar algo a SFC , el mensaje tendr como direccin de red la direccin a o o destino de SFC y como direccin de enlace la direccin de nivel 2 de SIA o de SIB . o o N red 3 SFC N enlace 2 SIA datos ...

Si ha sido enviado a travs del SIA ,SIA lo reenv a SIB por la misma interfaz y avisar e a a a SFA , mediante un mensaje de redireccin, de que el destino est alcanzable a travs de o a e SIB (se vio en uno de los ejemplos de redireccin). Esta informacin la almacenar SFA o o a en su cach de destinos (CD) de la siguiente forma: e
3 SFC 2 SIB

3. Si SFA desea enviar algo a SFB en principio lo har a travs de SIA . Como este sistema a e intermedio tiene que reenviar el mensaje por la misma interfaz por la que lo recibi, enviar o a un mensaje de redireccin a SFA para comunicarle que SFB est accesible directamente o a (se vio en uno de los ejemplos de redireccin). Esta informacin la almacena SFA en su o o cach de destino por lo que la CD de SFA quedar as e a :
3 SFC 3 SFB 2 SIB 2 SFB

Redes de Telecomunicacin o

64

Figura 5.10: El SIA consulta su tabla de encaminamiento y ve que para enviar un paquete a C ha de pasar por SIB . Por tanto, reenv el paquete a SIB . Pero SIA se da cuenta de que al a reenviar el paquete ha usado el mismo interfaz por el que lo recibi, as que comunica a SF A o que, cuando tenga que enviar un paquete a SFC , lo tiene que mandar a la direccin de enlace o de SIB .

4. Si caen los SI, desus de un cierto tiempo se borrar la cach de CSI y CD. Si ahora SFA e a e quiere enviarle algo a SFB y suponiendo que los SI estn ca a dos y las tablas borradas, SFA enviar un mensaje de difusin tal que as a o : N red 3 SFB N enlace 2 SFB datos ...

El SFB contestar a SFA con un mensaje ESH directo indicndole en este su direccin a a o de nivel de enlace. SFA lo almacena en su cach de destinos y ya podr compartir e an informacin. o Solucin TCP/IP o En esta arquitectura cada host conoce su IP, su mscara y la IP del router por defecto. a Para traducir las direcciones IP en direcciones de nivel de enlace (direccin MAC), TCP/IP o cuenta con el protocolo ARP (Address Resolution Protocol, RFC 826). Si un sistema quiere encontrar la direccin de nivel de red que pertenece a una determinada IP, este env un paquete o a (ARP REQUEST) a la direccin de difusin de la red en el que se indica la IP por la que se o o

Redes de Telecomunicacin o

65

Figura 5.11: Ejemplo de una LAN

pregunta. La mquina implicada, si existe, responde con otro mensaje (ARP RESPONSE) donde a le indica su direccin MAC. o El protocolo ICMP (Internet Control Message Protocol, RFC 792) permite enviar mensaje de redireccin. En este protocolo se encapsulan en el mismo mensaje dos direcciones IP, es decir, o dos direcciones de nivel de red, no una de red y otra de enlace como en casos anteriores. Esta diferencia con respecto a los mensajes de reencaminamiento de ISO se explicar detenidamente a ms adelante con un ejemplo. a Veamos como soluciona TCP/IP los mismos problemas anteriores:
3 3 1. SI : SFA SFB . El SI debe conocer la direccin de nivel 3 de los sistemas nales A y B. o 2 2 2. SI : SFA SFB . El SI debe saber cul es la direccin de nivel 2 de los sistemas nales A y a o B. 2 3. SF : SIX . Cualquier sistema nal debe conocer la direccin de nivel 2 del sistema intero medio al que est conectado. a

4. SFA SFB , SFA : SF 2 B . A quiere enviar algo a B. Como estn unidos f a sicamente en una LAN no hace falta que pase por ningn SI, pero A necesita conocer la direccin de u o nivel de enlace de B. Si por desconocimiento o error A enviara el mensaje a un SI, debe

Redes de Telecomunicacin o

66

existir alguna forma para que el SI le comunique a A que B est accesible a travs del nivel a e de enlace. 5. SFA SIB SFC . Encaminar los mensajes de A a C a travs del SIB. e
2 6. Suponemos que no hay SI. SFA SFB , SFA : SFB . Si no hay SI y A quiere enviar un mensaje a B, A necesita conocer la direccin de nivel de enlace de B. o

El problema 1 se puede solucionar con el uso de la mscara. Dado que cada enlace del SI a tendr asignadas una IP y una mscara, yo se todas las direcciones posibles de nivel de red de a a cada enlace. Los problemas 2, 4 y 6 se pueden resolver haciendo uso del protocolo ARP. Ejemplo: Si A y B son dos sistemas nales dentro de una misma LAN y A quiere conocer la direccin de nivel de enlace de B, A enviar un mensaje de difusin ARP REQUEST con la o a o direccin IP de B. B contestar con un mensaje directo ARP RESPONSE en el que le indica o a a A su direccin de nivel de enlace. En la cach de A se almacenar la IP y la MAC de B, o e a mientras que en la cach de B se guarda la IP y la MAC de A. e En el problema 3, el sistema nal quiere conocer la direccin de nivel de enlace del router. o Por conguracin los hosts saben su IP, su mscara y la direccin IP del router por defecto. o a o Usando ARP conseguir la direccion de nivel de enlace del router. Para ello la direccin IP debe a o ser accesible directamente (al multiplicar bit a bit la mscara con la IP propia y del router debe a salir el mismo resultado). En el problema 5 se trata de averiguar qu router es mejor para llegar a un determinado e destino. Si nos acordamos del ejemplo en que SFA quiere enviar algo a SFC , el SIA debe enviar un mensaje de redireccin a SFA para que lo que env a SFC lo haga a travs de SIB . En o e e TCP/IP contamos con ICMP para enviar los mensajes de redireccin. En este caso, el mensaje o de redireccin que SIA env a SF A contiene una pareja de IPs (IPSFC , IPSIB ), es decir, dos o a direcciones de nivel de red en vez de una direccin de nivel de red y una de nivel de enlace como o hac la norma ISO. El SFA es el que se encarga de traducir la direccin IP del SIB (SI 3 B ) a la a o direccin de nivel de enlace del SIB . o Otros protocolos relacionados con ARP son: RARP (ARP reverse RFC 903): Sirve para averiguar una direccin IP a partir de una o direccin de enlace. Se usa en maquinas que no tienen unidad de almacenamiento (tienen o MAC pero no tienen IP). BOOTP (RFC 951): Al arrancar enviamos por difusin nuestra direccin MAC, consio o guiendo de un servidor BOOTP la IP. Tambin permite conocer la direccin de un servidor e o

Redes de Telecomunicacin o

67

de cheros y una lista de cheros a descargar (til si se quiere que al arrancar la mquina u a se instale un sistema operativo desde un servidor de cheros, por ejemplo). DHCP (RFC 2131): Es una evolucin del BOOTP, que adems de lo que ste proporcioo a e naba da ms informacin (como la direccin del servidor DNS, la del router por defecto...). a o o Se puede usar cuando tenemos ms mquinas que IPs disponibles, ya que las IPs se asiga a nan dinmicamente cuando la mquina lo requiere. Dichas IPs pueden tener un tiempo de a a asignacin limitado, de modo que pasado ese tiempo caducan y es necesario solicitar otra o direccin. o InARP (RFC 2390): Inverse ARP. Cuando se tiene una conexin punto a punto te permite o averiguar la IP del otro extremo.

5.5.

PROXY ARP

Es un mecanismo que permite tener niveles de enlace separados por un router que ejecute PROXY ARP. Su objetivo es simular que todos esos enlaces pertenecen a una unica red. Para ello, el router responder a paquetes ARP dirigidos a destinos situados al otro lado del router, a simulando as que dichos destinos son accesibles directamente. Se ver ms claro con un ejemplo: a a

Figura 5.12: Ejemplo de PROXY ARP

Supongamos que el equipo C quiere enviar al equipo A un paquete y que ambos estn a separados por un router con Proxy ARP (en este caso, el router R est haciendo Proxy ARP de a A y B por R1 ). Lo primero que har C ser enviar un paquete ARP a su red local preguntando a a por la MAC del equipo A. Este paquete no llega a A, sino que es el router quien responde con su MAC hacindose pasar por A. Cuando C env el paquete, lo env con la MAC del router y e a a

Redes de Telecomunicacin o

68

Figura 5.13: Ejemplo de PROXY ARP

la IP de A. El paquete llega al router, y ste averigua cual es la direccin de enlace verdadera e o de A y lo enruta hacia all De esta forma el paquete llega a su destino y las mquinas C, D y . a E ven a A y B directamente accesibles. Una aclaracin: en el ejemplo anterior hemos supuesto que las cachs ARP de todos los o e equipos estn vac Es por ello por lo que es necesario enviar mensajes ARP para averiguar las a as. direcciones de nivel de enlace. Para paquetes posteriores, simplemente se enviar datos a las an direcciones que ya conocemos. Ntese que no ser necesario hacer Proxy ARP de C, D y E por R2. Para que las mquinas o a a A y B puedan comunicarse sin problemas con el resto de su red, slo es necesario poner como o router por defecto al router R. Esto no ser posible en la zona de la derecha, ya que el router a por defecto es el que da acceso al exterior, el gateway. La ventaja del Proxy ARP es la sencillez. Una red puede extenderse usando esta tcnica sin e que lo sepa el router de salida al exterior de la red. Esta tcnica se emplea en redes virtuales para e simular que los equipos estn conectados de forma local. Entre las desventajas del Proxy ARP a estn la escalabilidad (ya que se requiere una resolucin ARP para cada dispositivo enrutado de a o esta forma) y la abilidad, pudiendo ocasionar problemas si existe algn software anti-intrusos. u El software detectar que una misma MAC responde a varias IPs distintas, y podr pensar que a a se trata de un intruso realizando suplantacin de identidad (spoong). o Problema: Suponer que las tablas ARP estn vac Dibujar los mensajes que se env a as. an cuando B quiere enviar un datagrama a A. Dibujar tambin los datagramas que se env cuando e an A env un datagrama a B. Representar los mensajes con la siguiente notacin: TIPO(D3 ,D2) a o

Redes de Telecomunicacin o

69

Figura 5.14: Problema de PROXY APRP

R1=172.16.0.1/24 R2=172.16.1.121/16, hace Proxy ARP de A y B B=172.16.1.120/16. Su router por defecto es Gateway. A=172.16.0.2/24. Su router por defecto es R.

5.6.
5.6.1.

Clculo de rutas a
Introduccin o

El clculo de rutas se dene como el clculo del mejor camino suponiendo que ya tenemos a a informacin de la red. El primer objetivo de este mecanismo es obtener una funcin a optimizar: o o funcin de optimizacin. A los parmetros de esta funcin se les denominan mtricas. o o a o e El mtodo consistir en mximizar o minimizar esas mtricas segn convenga (por ejemplo, e a a e u si la variable que estamos manejando es el retardo, convendr minimizarla. Si se trata de los a benecios obtenidos, interesar maximizarla). a

Redes de Telecomunicacin o Las mtricas pueden ser de 2 tipos: e GLOBALES: Miden una cualidad de la red completa. Algunos ejemplos son:

70

Saturacin mxima: se mide en cada nodo. Para nuestra ruta habr que ver en o a a qu nodo se da la saturacin mxima. e o a Retardo global medio: Se trata del retardo de cada enlace ponderado por el nmero u de paquetes que lo atraviesa. LOCALES: A cada enlace se le asigna un valor. Ahora a cada camino (sucesin de enlaces) o se le asigna otro valor en funcin del valor aadido de los enlaces. La funcin ptima o n o o ser los caminos que maximicen o minimicen el valor anterior. Dentro de las mtricas a e locales, podemos clasicarlas en: ADITIVAS: Su funcin ptima depende de la suma del valor asociado a cada enlace o o en el camino. P.ej. Nmero de saltos, retardo medio en el camino. u CONCAVAS: Su funcin optima depende del m o nimo del valor asociado a cada enlace en el camino. P.ej. Capacidad del enlace, MTU (Unidad Mxima de Transmisin, nos a o da informacin acerca del tamao mximo de la SDU (Unidad de Datos del Servicio)). o n a MULTIPLICATIVAS: Su funcin optima depende del producto del valor asociado a o cada enlace en el camino. P.ej. Probabilidad de error.

5.6.2.

Algoritmo del camino ms corto a

Es un mecanismo que emplea mtricas locales aditivas. El valor de cada enlace se le llama e coste, longitud o peso. Este algoritmo nace debido al carcter dinmico del coste de los enlaces. a a Dicho coste puede cambiar constantemente (por ejemplo, si consideramos el coste como el retardo de los paquetes o la saturacin del enlace) y provocar oscilaciones. o El objetivo de este algoritmo es obtener al arbol de expansin de distancia m o nima a un nodo concreto, esto es, el conjunto de enlaces con los caminos ms cortos de todos los nodos al a nodo destino. Se le llama rbol porque no se forman bucles y se le dice de expansin porque a o contiene todos los nodos de la red. Vamos a estudiar 2 tipos de algoritmos del camino ms corto: el algoritmo de Bellman- Ford a y el algoritmo de Dijkstra.

Redes de Telecomunicacin o

71

Figura 5.15: Ejemplo de red.

Figura 5.16: Arbol de expansin de distancia m o nima a A.

Algoritmo de Bellman-Ford Obtiene la distancia m nima de todos los nodos a un nodo destino (al que denominamos nodo 1). Usaremos la siguiente notacin: o
n nima del nodo i al nodo 1 a travs de caminos de n saltos o menos. e Di = Distancia m

Denimos:
n Di = 0n 0 Di = i = 1 n+1 n Di = m jN (i) [dij + Dj ], donde dij =coste, longitud o peso del enlace entre i y j (si no n hay, se considera innito) y N(i) es el conjunto de nodos adyacentes a i. n+1 n Cuando se alcanza Di = Di i , se dice que se ha encontrado el camino ms corto. a

Esta representacin grca equivale a la siguiente tabla de costes: o a

Redes de Telecomunicacin o

72

Figura 5.17: Ejemplo para el algoritmo de Bellman-Ford.

dij 1 2 3 4 5

1 0 1

2 3 0 2 8 8 2

4 5 0 4 0 4 2 0

Calculamos las distancias m nimas al nodo 1, considerando que el nmero mximo de saltos u a que se pueden dar es 1:
1 D2 = min(d21 + D01 ; d23 + D03 ; ...) = 1 1 D3 = 4 1 D4 = 1 D5 =

Ahora repetimos los clculos, considerando que el mximo nmero de saltos es 2, despus 3... a a u e as hasta que en una de las iteraciones los resultados no cambien respecto a la iteracin anterior o (por ejemplo, en nuestro caso la distancia permitiendo 5 saltos es igual que si permitimos 4). Si realizamos todas las combinaciones posibles resulta la siguiente tabla:

Redes de Telecomunicacin o
n Di 0 1 2 3 4 5

73 D1 0 0 0 0 0 0 D2 1 1 1 1 1 D3 4 2 2 2 2 D4 9 9 8 8 D5 6 4 4 4

Existe una variante, el algoritmo de Bellman-Ford distribuido as ncrono, que comienza con: D1 = 0 Di = i = j Cada nodo env a sus vecinos los Di obtenidos y recibe de sus vecinos los Dj obtenidos por a ellos mediante la ecuacin de Bellman-Ford (Di = min(dij + Dj )). Entonces, el nodo i calcula o Di = minjN (i) (dij + Dj ), donde N(i) representa los nodos adyacentes a i. Es decir, cada nodo calcula la distancia m nima a los nodos de la red a partir de la informacin que recibe de sus o vecinos. El proceso se repite de forma iterativa, y al nal converge en el camino ms corto, a donde se tendr la distancia m a nima. Este algoritmo presenta la ventaja de que slo es necesario o conocer de antemano a los nodos vecinos al nuestro, no a toda la red como ocurr con el a algoritmo Bellman-Ford. Sin embargo, es un algoritmo en el que la convergencia se produce de forma muy lenta. Algoritmo de Dijkstra Obtiene la distancia m nima de todos los nodos con el nodo 1. La notacin que se usa es: o Di = Estimacin de la distancia m o nima al nodo 1. A esto lo llamaremos etiqueta. P = Conjunto de nodos cuya etiqueta no es una estimacin de la distancia, sino que es la o distancia real. En cada iteracin del algoritmo conseguiremos que ms estimaciones se vayan o a haciendo permanentes, por lo que P se ir incrementando hasta contener a todos los nodos de a la red. Las suposiciones iniciales del algoritmo son: D1 = 0. Es una etiqueta permanente (ya que sabemos con seguridad que la distancia del nodo 1 al nodo 1 es siempre 0)

Redes de Telecomunicacin o

74

P = 1. Es el conjunto de distancias que sabemos con seguridad que son ciertas. Ntese coo mo, inicialmente, sabemos que la distancia del nodo 1 al nodo 1 es cero, pero no conocemos ninguna otra distancia. Dj = dij j = i. Esto es, inicialmente se considera que la distancia del nodo 1 al nodo j es el coste del enlace que los une, si existiera. Si no existe, vale innito. El algoritmo iterativo es el siguiente: 1. Encontrar i P : Di = miniP Dj , es decir, de todos los nodos buscamos aquel que tenga / / la etiqueta tentativa m nima (lo llamaremos nodo i) y lo aadimos al conjunto P. Una vez n que lo aadimos al conjunto P, su etiqueta se vuelve permanente (no cambia). n 2. P = P i, esto es, aadimos el nodo que acabamos de conseguir al conjunto P. n 3. Si P contiene a todos los nodos, naliza el algoritmo. 4. Recalcular las etiquetas tentativas de la siguiente forma: j P , Dj = min(Dj ; dij + Di ). / Esto equivale a comparar la distancia que ya ten de la iteracin anterior a la que obtengo a o ahora si en lugar del camino escogido anteriormente, escojo el camino que atraviesa el nodo i. En realidad, slo hay que calcular la de los vecinos al nodo aadido a P, porque los otros o n no variarn. a 5. Volver a 1. Veamos el ejemplo anterior usando el algoritmo de Dijkstra: Como era de esperar, con este mtodo se obtienen los mismos resultados que conseguimos e con el algoritmo de Bellman-Ford. Existe la posibilidad de que los dos algoritmos den resultados diferentes, pero sto slo ocurre si hay ms de un camino m e o a nimo al nodo 1. Ejercicio: Calcular el camino ms corto de todos los nodos al nodo C, usando ambos algoa ritmos

5.7.

Distribucin de la informacin o o

Vamos a ver dos tipos de algoritmos para la distribucin de informacin: los algoritmos o o basados en el vector de distancias y los algoritmos basados en el estado de los enlaces.

Redes de Telecomunicacin o

75

Figura 5.18: Ejemplo para el algoritmo de Dijkstra.

5.7.1.

Vector de distancias

Consiste en la aplicacin del algoritmo de Bellman-Ford distribuido as o ncrono aplicado a todos los nodos y no a uno slo como se hizo anteriormente. o Con este algoritmo se siguen estos pasos: Cada nodo conoce su identicador. Cada nodo conoce el coste de sus enlaces: Estado de las vecindades Cada nodo comienza con un vector VDi=(, , , ...,0 (en la posicin i),,...,) se o denomina vector distancia del nodo i. Este vector tendr en cuenta todos los nodos de la a red. Cada nodo transmite su vector distancia V Di a sus vecinos. Se transmite: o peridicamente o o cuando cambia el V Di o cuando se activa un enlace Lo que realmente se transmite es una lista de duplas del tipo < nodo, distancia >: V Di = {< id, distancia>,..., < i, 0 >,..., < id, distancia>}. Para disminuir el ancho de banda gastado, aquellas duplas cuya distancias sean no se env an, por lo que el otro extremo las supone. El primer V Di , por tanto, ser V Di ={ <i, 0> } Cada nodo almacena una copia del vector distancia ms reciente a a que haya recibido para cada enlace. Cada nodo calcula V Di minimizando dij + Dj para cada elemento del vector, y teniendo en cuenta todos los enlaces que posee.

Redes de Telecomunicacin o

76

Figura 5.19: Ejemplo para el algoritmo de Dijkstra.

Se recalcula V Di si: Se recibe V Di distinto del almacenado. Cae el enlace a j, entonces se descarta la informacin que se posea de j y se recalcula o el V Di completo. Cambia el coste de un enlace. Presenta una ventaja, la comunicacin se da entre nodos adyacentes por lo que slo es o o necesario emplear el nivel de enlace. Se env mucha informacin, pero a pocos equipos. El a o problema que presenta, dado que se basa en el algoritmo Bellman-Ford distribuido as ncrono, es que la convergencia puede ser lenta. Vemoslo con un ejemplo: a En esta situacin los vectores de distancias convergen a esta situacin: o o A B 0 1 1 0 2 1 C 2 1 0

Dist. a A Dist. a B Dist. a C

Redes de Telecomunicacin o

77

Figura 5.20: Ejercicio para la aplicacin de ambos algoritmos. o

Figura 5.21: Ejemplo de lentitud en convergencia.

Los vectores que cada nodo tiene almacenados por cada interfaz ser an: A BA 1 0 0 1 1 2 BC 2 1 0 C 1 0 1

Figura 5.22: Ejemplo. Si cae el enlace B-C, desechamos el vector de B (1 0 1) y el que tiene almacenado en la interfaz con C (2 1 0). B recalcula su vector y le da (1 0 3) ya que cree que por el camino de la izquierda, C est accesible en 2 saltos ms el salto de B a A. Como ha cambiado su vector se a a lo env a A. A calcular su vector y le dar (0 1 4), que enviar a B. B recalcula y obtiene a a a a (1 0 5). Esto provoca un c rculo vicioso que hace que la distancia a C crezca. Para solucionarlo, cuando se rebase un valor l mite se considera el enlace ca y C inaccesible. do A medida que la red aumenta de tamao, la convergencia se complica. n

Redes de Telecomunicacin o

78

5.7.2.

Estados de los enlaces

La informacin que se env es la distancia a los vecinos. Esta informacin se la mandamos o a o a todos los nodos de la red, por lo que cada nodo puede conseguirse su propio mapa de la red. Se maneja menos informacin, pero se env a ms destinos. Los pasos que sigue son: o a a Cada nodo (SI) sabe su identicador y el de sus vecinos. Cada nodo construye LSP (Link State Packet, paquete de estado de los enlaces) que contiene la lista de coste e identicador de los vecinos. LSP={<id, coste>, <id, coste>, ...} Los LSP se env a todos los sistemas intermedios de la red. an Cada SI crear un mapa completo y har el clculo de rutas (p.e. con Dijkstra) a a a Los paquetes LSP se construyen y se env an: peridicamente. o cuando aparece un nuevo vecino. cuando cambia el coste del enlace. cuando cae un enlace. Los inconvenientes de este mtodo son los siguientes: si no conseguimos que los paquetes LSP e les lleguen a todos los nodos de la red se pueden producir bucles. Tambin puede que se gasten e muchos recursos con el env de LSP. o Para que los LSP lleguen a todos los nodos no podemos basarnos en encaminamiento porque todav no lo tenemos (recordemos que la fase en la que estamos actualmente, la distribucin de a o informacin, es previa al encaminamiento). Se usa el mtodo de inundacin que puede hacer o e o que se llene la red de LSP. El mecanismo para controlar la cantidad de LSP es que el nodo se quede con los ms recientes o usar numeracin. La solucin pasa por un esquema que mezcla la a o o numeracin y el tiempo. Como mtodo bsico se usa la numeracin. A cada paquete se le asocia o e a o un nmero de secuencia y adems se le indicar la edad (contador que se va decrementando u a a con el tiempo y en cada salto) como mecanismo de autodestruccin, esto es, cuando se alcance o edad=0 se rechaza el paquete. El LSP contendr por tanto: origen, SN (nmero de secuencia), a u edad y datos. No lleva destino porque est dirigido a todos los routers de la red. a

Redes de Telecomunicacin o

79

Si el LSP que le llega a un nodo tiene un nmero de secuencia mayor que el almacenado, u guardamos la informacin y lo reemitimos decrementando la edad. Cuando se almacena tambin o e va decrementando su edad con el transcurso del tiempo y normalmente no llegar a cero. Si llega a un LSP con el SN menor del que tenemos almacenado se descarta. El problema que se plantea ahora es la sincronizacin del reloj con los dems. o a

Figura 5.23: Recepcin del paquete. o

LSP/enlace 1 2 3 o [h] origen=R5 env LSP 1 1 0 SN=17 env ACK 0 0 1 o ALGORITMO: 1. Al inicio la tabla est vac Supondremos que los mensajes recibidos tendrn EDAD= 0. a a. a 2. Peridicamente se recorre la tabla. Para cada enlace, si env LSP vale 1, se env el LSP o o a correspondiente y se mantiene env LSP a 1. Si env ACK vale 1, env ACK y se le asigna o o a el valor 0 a env ACK. El razonamiento que lleva a este comportamiento es el siguiente: o manteniendo env LSP a 1 me aseguro de que el paquete llegar a su destino, ya que o a lo estar retransmitiendo hasta que me llegue conrmacin de su llegada. Sin embargo el e o ACK slo lo env una vez, ya que, si se perdiera el paquete, el LSP correspondiente me o o ser reenviado por el emisor original y yo volver a conrmarlo. a a 3. Si recibe un LSP por enlace j: Si es nuevo (de otro enlace que no ten o es ms reciente a) a (de un origen que ya ten pero con un SN mayor) se realiza lo siguiente: a

Redes de Telecomunicacin o

80

Figura 5.24: Reenv del paquete. o

Se decrementa la edad en 1 unidad. Se almacena en memoria Para todo enlace distinto de j se pone env LSP=1 y env ACK=0, y para el enlace o o o j se pone env LSP=0 y env ACK=1. o 4. Si recibe LSP por enlace j duplicado (es decir, coincide el SN y el origen con el de alguno de los LSP que tenemos almacenados en la tabla, pero me llega por un enlace distinto que aqul por el que recib el que tengo en memoria): Para el enlace j se pone env LSP a 0 y e o env ACK a 1. o Esto se hace para evitar bucles en los que una serie de nodos se env informacin que ya en o tienen. Podemos ver un ejemplo en el siguiente dibujo: En este caso, C env el mismo LSP a A y B. Supongamos que, por cualquier razn, B a o reenv el LSP ms rpido que A. A A le llegar un LSP por A-B que ya le hab llegado a a a a a por el enlace A-C, luego pone env LSP a 0 en el enlace AB (para no enviarle a B un LSP o que ya tiene) y env ACK del enlace A-B a 1. As le env un ACK a B para que no le o , a siga retransmitiendo el LSP. 5. Si se recibe un ACK por el enlace j de un nodo que ya est en memoria. Se pondr para a a ese enlace j el valor env LSP a 0 y env ACK a 0. Poner env ACK a 0 puede parecer o o o un poco extrao, pero si analizamos la situacin es fcil entender el por qu. Al haber n o a e recibido un ACK de otro nodo, forzosamente el nodo que te ha enviado el ACK tiene que

Redes de Telecomunicacin o

81

Figura 5.25: Ejemplo de env de LSPs. o

haber puesto env LSP a 0 en el enlace. Entonces, enviarle un ACK no tiene sentido, ya o que el unico uso del ACK es forzar al otro extremo a poner env LSP a 0 en el enlace. o 6. Si se recibe algo que no cumple ninguno de los casos anteriores, se rechaza el paquete. Hasta ahora, siempre hemos considerado que la edad del paquete ten un valor distinto a a 0. Veamos la utilidad de este campo: Si tenemos un LSP en memoria y la edad llega a 0: Descartamos los datos. Se env a todos los vecinos el LSP con edad 0. a Se espera asentimiento o al temporizador. Se olvida completamente del origen que envi el LSP que lleg a edad 0. o o Si ese origen le manda un nuevo LSP lo trata como si fuese un enlace nuevo. Cuando alguien recibe un LSP con edad 0 y coincide con el que est en memoria (mismo a SN) responde con un ACK por ese enlace y se reenv por los dems enlaces para informar que a a ese nodo no est accesible por ese enlace. Se esperan ACKs hasta que venza el temporizador. Si a vence, nos olvidamos del enlace. Si se recibe un LSP con edad 0 en el que no se conoce el origen o no coincide con el SN, el LSP no se propaga para que no se queden viajando por la red y solo se enviar un ACK al a emisor. (Para ms informacin sobre encaminamiento, consultar Interconnections, de Radia a o Perlman, Ed Addison-Wesley) Problema: Cmo se propagar los paquetes LSP cuando cae el enlace A-E si nos centrao an mos unicamente en aquellos cuyo origen es A? Cuntas copias aparecer en total? a an

Redes de Telecomunicacin o

82

Figura 5.26: Ejercicio.

5.7.3.

LSP en una LAN

Figura 5.27: Esquema de una LAN con mltiples routers. u

En una LAN tenemos un medio compartido que utilizan todos los nodos de la red. Si intentamos utilizar el algoritmo de los LSP tal y como estaba, cada router ver un enlace virtual a con cada mquina de la red. Esto provoca que todos los routers pertenecientes a la misma LAN a se consideren vecinos entre ellos, como si hubiera una malla de interconexin total unindolos. o e Cada router tiene que poner el estado del enlace a cada uno de los vecinos, por lo que enviar a un mensaje con tantas parejas enlace-estado como routers haya en la red. Esto multiplicado por el nmero de routers lleva a un gran gasto de recursos. u Para solucionarlo, podemos transformar la malla virtual en una conexin en estrella virtual. o Para ello, se selecciona al uno de los routers, al que se llama router designado. Este router, adems a de realizar las funciones de router normal, funciona como router designado, es decir, adems de a su direccin origen presenta una direccin nueva que no existe f o o sicamente. Al usar un router

Redes de Telecomunicacin o

83

designado, no es necesario que cada router env un LSP a cada nodo de la red. Simplemente e enviar un LSP con todas las parejas enlace-coste al router designado, y ste se encargar de a e a retransmitirlo en difusin. o Ntese que, aunque el paquete a enviar contenga la misma informacin, al enviarse a muchos o o menos destinos se reduce considerablemente el trco en la red. a

Figura 5.28: LSP que se env en condiciones normales. an

Figura 5.29: LSP que se env si se usa router designado (en este caso, se ha designado al router an 3.

Por otra parte, en una LAN no se env asentimientos entre los nodos, ya que aumentar an a considerablemente el trco de la red. Para compensar esto el router designado env un paquete a a llamado SNP (resumen de los nmeros de secuencia) a todos los nodos de la LAN. En el SNP u se indican los nmeros de secuencia de los LSP de todos los nodos de la red. Los vecinos lo u

Redes de Telecomunicacin o

84

comparan con lo que tienen en memoria y slo en el caso de que no concuerde (SN menor) le o pide que le retransmita el paquete. En caso de que el nodo detecte que su SN es mayor que el del SNP (signicar que se ha perdido un LSP antes de llegar al router designado), el nodo env a a el LSP de nuevo.

5.8.

Protocolos espec cos de encaminamiento

Para describir las redes, se usa un modelo jerrquico basado en dominios. Distinguimos dos a tipos de dominios: Dominio administrativo: comprende una parte de la red que es administrada por una unica autoridad. Dominio de encaminamiento: es una parte de un dominio administrativo en la que se sigue un mismo criterio para el encaminamiento. Area: es una regin de la red en la que se utilizan protocolos intradominio. o Las ventajas de realizar esta divisin son: o Escalabilidad: recordemos que, al usar vector de distancias, la velocidad de convergencia decrece rpidamente al aumentar la red. Con la divisin en dominios reducimos el ambito a o del vector, con lo que conseguimos una convergencia ms rpida. Por otra parte, si usamos a a LSP ser necesario enviar los paquetes en difusin a toda la red. Con redes grandes, el a o consumo de recursos puede ser excesivo. Autonom de gestin: la divisin permite que los propietarios o gestores sean los adminisa o o tradores de la red. Adems, se puede decidir qu informacin se comparte con el exterior a e o y cul se mantiene oculta. a Los protocolos de encaminamiento se dividen en dos tipos, segn el ambito: u Intradominio: propaga informacin dentro de un mismo dominio. Los criterios que se usan o para el encaminamiento son tcnicos. Busca optimizar la eciencia. Algunos son: e En TCP/IP, se usan RIP (Routing Information Protocol) y OSPF (Open Shortest Path First).

Redes de Telecomunicacin o En OSI, existe el protocolo IS-IS.

85

Interdominio: transmite informacin entre distintos dominios, que pueden presentar diso tintos criterios para el encaminamiento, basados en cuestiones administrativas. Permiten formular restricciones sobre el trco encaminado. Algunos son: a Encaminamiento manual. En TCP/IP, se usan EGP (External Gateway Protocol) y BGP (Border Gateway Protocol). En OSI, se usa IDRP (Inter-Domain Routing Protocol).

Figura 5.30: Divisin de dominios. o Existen dos tipos de protocolos: Intradominio: Poseen unicidad de criterios (se basa en criterios tcnicos). Buscan optimizar e la eciencia. Interdominio: Poseen distintos criterios (basados en criterios administrativos o pol ticos). Estos criterios son ms restrictivos que los anteriores. a Deniciones: D.A. (Dominio Administrativo): Parte de la red administrada por una sola autoridad.

Redes de Telecomunicacin o D.E. (Dominio de Encaminamiento): Subdivisin de D.A. con especicaciones. o Areas: Subdivisin de D.E. o

86

Entre D.E.-D.E. y D.A.-D.A. se dan los protocolos interdominio mientras que entre areas y dentro de las areas se dan los protocolos intradominio. Algunos de los protocolos existentes son: Intradominio: ISO: SI-SI (LSP) (SI: Sistema Intermedio) TCP/IP: RIP (Router Information Protocol): Muy simple, usa el vector de distancias. No soporta mscaras a OSPF ( parecido a SI-SI) Interdominio: TCP/IP: EGP (empleaba algo parecido a VD, est en desuso), BGP a ISO: IDRP (parecido a BGP) Las ventajas de dividir en dominios la red son: Escalabilidad: Pueden estar basados en VDs o en LSPs . El problema de VDs era la convergencia. El problema de los LSPs era la cantidad de recursos que se empleaban. Por tanto, en ambas opciones hay ventajas si se reduce el tamao de la red. De n ah viene el benecio de dividir los dominios. Autonom de gestin: Permite que los propietarios o gestores sean los administradores y a o ocultar una serie de detalles internos de la red. Ya hemos visto en el apartado 6 cmo conseguir el mejor camino dentro de un dominio. o Para salir del dominio es necesario usar el router de salida (gateway router). En caso de tener un solo router de salida, la eleccin es obvia: todos los mensajes que tengan que salir del dominio o se enviarn a ese router. Pero si hubiera ms de un router, habr que ver hacia cul de ellos se a a a a env el mensaje. O bien se congura manualmente, o se selecciona segn algn algoritmo. En a u u este ultimo caso, habr que: a

Redes de Telecomunicacin o

87

Obtener la informacin de alcanzabilidad travs de otros dominios (es decir, otros dominios o e me tendrn que comunicar a qu direcciones puedo llegar atravesndolos). Los dominios a e a que sirven para conectar a otros dominios se llaman dominios de trnsito. a Propagar esta informacin dentro del dominio. o Escoger el mejor camino. Hay que destacar que en este caso no se puede escoger el mejor camino como el que tenga una mejor mtrica, ya que distintos dominios pueden tener e conceptos distintos de lo que es la mtrica (para uno puede ser el retardo, para otro el e nmero de saltos, etc.). Lo que s se usar para escoger el mejor camino es el nmero de u a u dominios que hay que atravesar, procurando que este parmetro sea lo menor posible. a Los protocolos encargados de esta tarea son los protocolos interdominio. Pasemos a analizar los 2 tipos de protocolos existentes:

5.8.1.

Protocolos intradominio (IGP)

Protocolo RIP (Routing Information Protocol) Especicado en: Versin 1- RFC 1058 o Versin 2- RFC 2453 o Emplea el VD (Vector Distancia). Por defecto, consideramos que el coste de cada enlace es 1. Este protocolo mide el nmero de saltos. El mximo nmero de saltos es 15. Si es mayor u a u que 15, no se tiene en cuenta. De ah que sea una buena eleccin de protocolo en caso de redes o pequeas. n Cada 30 segundos se resfrescan los datos de los vecinos enviando un mensaje de anuncio. Si en 180 segundos no se recibe informacin de algn vecino, toda la informacin acerca de l se o u o e desecha. Existen 2 tipos de mensajes: Respuesta (RESP): es un mensaje que contiene el vector de distancias. Este mensaje se env a los vecinos. a Solicitud (REQ): fuerza a uno de los vecinos a que te env un mensaje RESP. e

Redes de Telecomunicacin o

88

La Versin 1 no soportaba mscaras mientras la Versin 2 s Cada vecino se denir por el o a o . a par dir.IP/Mscara. La estructura de un paquete RIP es (donde L2 representa la cabecera del a protocolo que se use en nivel de enlace):

Figura 5.31: Estructura de un paquete RIP. Si observamos cmo se construye un paquete RIP, podemos ver dos cosas. Desde el punto o de vista de la eciencia, es un desperdicio de cabeceras. Este gasto de cabeceras se justica porque hacindolo as es ms fcil programar el protocolo en una mquina real. Tambin debemos e a a a e resaltar el que use UDP (ms concretamente, su puerto 520). Debido a esto, el env de mensajes a o es no able. Protocolo OSPF (Open Shortest Path First) Este protocolo viene determinado en RFC 2328. La palabra .Open que aparece en su nombre signica que no es un protocolo propietario. Shortest Path First signica que emplea el estado de los enlaces (LSP). No emplea ni Dijkstra ni Bellman-Ford. Cada enlace tiene su propio coste. Por defecto ser 1, pero lo usual es que el administrador a de la red asigna un valor inversamente proporcional a la capacidad del enlace. Se env LSP, an por defecto, cada 30 minutos. Este protocolo se encapsula directamente sobre IP, pero indicando en el campo protocolo de la cabecera IP que se trata de OSPF (identicador 89 en el campo protocolo). Algunas caracter sticas que presenta este protocolo son: Se basa en la transmisin de LSPs. o Seguridad: Se puede autenticar al otro extremo mediante: Password (no se usa) MD5: Se aade un nmero de secuencia que impide la reproduccin. n u o

Redes de Telecomunicacin o

89

Figura 5.32: Algoritmo de autenticacin mediante hash. o

Multicast: Un paquete puede llegar a varios nodos. En realidad, se emplea una variante llamada MCSPF (MultiCast Service Path Finding). Jerarqu Permite realizar divisiones dentro de un dominio, llamadas reas. En Internet, a a: a cada dominio se le llama Sistema Autnomo (AS). La jerarqu se establece de la siguiente o a forma: Para RAL, aparecen router designado y router designado de backup, por si falla el designado. En OSPF, a los paquetes del estado de los enlaces se les denomina LSA (Link State Announcement/Advertisement). Se distinguen 5 tipos de LSA: Tipo 1 - LSP - Router informa a los vecinos Tipo 2 - LSP - Router designado Tipo 3 - LSP - Router borde de area hacia dentro del rea resumiendo la informacin de a o fuera del area pero dentro del dominio o viceversa. Tipo 4 - LSP - Router borde de area hacia dentro del rea indicando el camino hacia los a nodos o routers de salida. Tipo 5 - LSP - Router de salida a todo el dominio indicando las redes accesibles fuera del dominio basndose en los clculos realizados mediante protocolos interdominio. a a

Redes de Telecomunicacin o

90

Figura 5.33: Jerarqu en Internet. a

5.8.2.

Protocolos interdominio (EGP)

BGP (Border Gateway Protocol) Est denido en las RFC 4271 (BGP-4), 1772 y 1773. Emplea un vector de caminos, algo a parecido al vector distancia pero que lista los AS (Sistemas Autnomos) que hay que atravesar o para llegar a un destino. Por tanto, requiere informacin de alcanzabilidad. o Los routers de salida establecen conexiones TCP entre ellos que se llaman sesiones BGP. El protocolo TCP es able, es decir, se encarga de reenviar la informacin que se haya podido o perder. Existen dos tipos de sesiones BGP: las sesiones externas, o eBGP, que sirven para obtener la informacin de alcanzabilidad, y las sesiones internas, o iBGP, que propagan la informacin o o

Redes de Telecomunicacin o obtenida a travs de eBGP dentro de un dominio. e

91

Figura 5.34: Tipos de sesiones.

En la siguiente ilustracin podemos ver cmo, mediante el protocolo BGP, se transmite o o la informacin de alcanzabilidad entre varios sistemas autnomos. Podemos ver que las IPs o o involucradas forman parte de un mismo bloque, el 138.16.64.0/22, que es la informacin que o transmitimos.

Figura 5.35: Env de informacin mediante BGP. o o

Exite un organismo encargado de gestionar esto protocolo, IANA, autoridad encargada de la asignacin de nmeros en Internet, que fue sustituido por el actual ICANN (Internet Corporation o u Assigned Names and Numbers). Las rutas se denen utilizando rutas, que estn compuestas por un prejo y varios atributos. a El prejo, a su vez, se compone de direccin de red y mscara. Entre los posibles atributos o a

Redes de Telecomunicacin o encontramos:

92

AS-PATH: Camino para llegar al destino. Se da como una lista de ASN (Nmero de u identicacin de Sistema Autnomo, de 16 bits). Se emplea para decidir sobre el mejor o o camino, que ser aquel con menor AS-PATH. a NEXT-HOP: La direccin IP del que env esa ruta. Es interesante para sistemas autnoo a o mos conectados por varios routers. Los router BGP manejan 3 tipos de bases de datos, en lugar de la RIB habitual. Estas son: RIB de entrada: contiene los anuncios recibidos de otros routers, ltrados mediante una serie de pol ticas de entrada. Es una tabla con una entrada por cada sesin BGP. o RIB local: es unica para cada router, y es la que se usa para decidir el encaminamiento. Se crea ltrando la RIB de entrada. Esta tabla, junto a la conguracin del router y los o protocolos intradominio, forman la FIB. RIB de salida: controla qu informacin se anuncia. Se forma ltrando la RIB local con la e o pol tica de salida.

Figura 5.36: Lgica para la creacin de las RIBs. o o

En BGP, se sigue este algoritmo para la seleccin de rutas: o 1. Se escoge con mayor preferencia la ruta local.

Redes de Telecomunicacin o 2. . Si hay varias con el mismo valor, se escoge la de menor AS-PATH. 3. Si hay varias con el mismo valor, se escoge aquella cuyo Next-Hop est ms cerca. e a

93

4. Si estuvieran todos a la misma distancia, se escoge segn el identicador BGP, que es unico u para cada router. Esta eleccin es simplemente para deshacer el empate, no tiene ningn o u sentido. El Sistema Autnomo puede considerarse como terminal (stub) o de trnsito (transit). o a Un sistema congurado como stub solamente cursa trco cuyo origen o destino sea l mismo. a e Un sistema de trnsito, sin embargo, permite que lo atraviese trco que va destinado a otros a a sistemas. Los sistemas de trnsito anuncian las rutas que se pueden alcanzar a travs de ellos, a e generalmente segn acuerdos econmicos (anuncian las rutas que les pueden reportar benecios). u o

Figura 5.37: Ejemplo con varios SA interconectados. En la grca, W e Y ser claramente sistemas terminales. X se puede congurar para que a an sea de trnsito o terminal, permitiendo que anuncie rutas o no, respectivamente. Una situacin a o que se da con cierta frecuencia es que un sistema autnomo terminal est conectado a dos o e proveedores de servicio (ISPs). En este caso, X podr ser una empresa que tenga contratado a acceso a Internet con los proveedores B y C. Normalmente, un ISP te asigna direcciones privadas o bien un rango de direcciones pblicas que est bajo el control del ISP. Si un AS est conectado u e a a dos ISPs al mismo tiempo, se presentan dos opciones: Solicitar un rango de direcciones pblicas, independiente de cualquier ISP. Es una solucin u o que no se suele adoptar, debido al excesivo coste. Pedir un rango de direcciones privadas a uno de los dos ISP, y anunciarlo a ambos ISP. La ruta se propagar por toda la red a travs de ambos AS. a e En ocasiones, varios sistemas autnomos se unen para crear una confederacin. Aunque los o o AS que las componen son independientes y tienen cada uno un ASN propio, de cara al exterior se presentan como si formaran un unico AS.

Redes de Telecomunicacin o

94

Figura 5.38: Problema de la creacin de confederaciones. o

Vemos que la creacin de confederaciones a veces evita que se pueda escoger el camino o optimo. En la ilustracin, si el AS 33 quisiera llegar hasta el ASN 38, el camino ms corto ser o a a a travs de 1, 37 y 4. Sin embargo, desde fuera vemos a la confederacin como un slo AS, no e o o tenemos acceso a informacin sobre los AS de su interior. Si siguiramos ese camino, estar o e amos entrando dos veces en el AS 15, lo cual no est permitido (se proh que una ruta pase dos a be veces por un mismo AS para evitar bucles). La ruta a seguir tendr que ser la marcada con a l nea continua, que tiene un salto ms que la ruta optima. a Reectores de rutas

Figura 5.39: Uso de reectores de rutas.

Los reectores de rutas se utilizan para evitar tener que realizar un mallado total de cone-

Redes de Telecomunicacin o

95

xiones iBGP dentro de un AS. El reector de rutas est unido al mallado total, y adems existen a a varios nodos que se conectan unicamente al reector de rutas. Aunque normalmente lo que se aprende por una conexin iBGP no se puede retransmitir por otra conexin iBGP, el reector o o de rutas viola esta norma y env toda la informacin de que dispone por sus enlaces. Mediante a o el uso de reectores se ahorra la creacin de muchas conexiones, pero hay que tener en cuenta o que el reector es un elemento centralizado, y como tal un fallo en el reector ser catastrco a o para la red. Veamos ahora un ejemplo real de conguracin de un AS. Vamos a suponer que los routers o implicados utilizan el sistema operativo IOS (Internetwork Operating System) de Cisco. Los comandos que utilizaremos son: router bgp x: Indica a un router que pertenece al AS con ASN x. neighbor x remote-as y: Indica a un router que la direccin IP x pertenece a un router que o forma parte del AS con ASN y. Si tenemos una serie de routers dispuestos de la siguiente forma:

Figura 5.40: Ejemplo. algunos de los comandos que tendremos que ejecutar en los routers son: Router A router bgp 100 neighbor129.213.1.1remote-as200 Router RTB Router RTC router bgp 200 router bgp 200 neighbor129.213.1.2 remote-as100 neighbor175.220.212.1remote-as200 neighbor175.220.1.2remote-as200

Redes de Telecomunicacin o

96

5.8.3.

TEMA 6: Control de congestin o

Introduccin o En una red de conmutacin ideal, la situacin de congestin nunca llega a producirse. Al o o o tener los nodos memoria innita, ningn paquete se pierde, independientemente del trco. Pero u a en una situacin real, cada cola solo puede almacenar un nmero limitado de paquetes, por lo o u que es necesario un mecanismo que impida que la red se congestione y se bloquee el trco. a Dada una red de conmutacin de paquetes, la evolucin de la carga es la siguiente: o o

El rendimiento normalizado se puede calcular como la velocidad de salida de paquetes del sistema partido por la capacidad terica. Igualmente podemos calcular la carga normalizada o como los paquetes por segudo que entran al sistema dividido por la capacidad terica. o La carga en el sistema puede aumentar por varias razones:

Redes de Telecomunicacin o

97

Encaminamiento defectuoso: un encaminamiento perfecto repartir la carga lo mejor poa sible, por lo que retrasa la congestin del sistema. Hay que tener en cuenta que solamente o la retrasar si la entrada de datos es superior a la capacidad del sistema para procesarlos, a: por muy bueno que sea el encaminamiento acabar por saturarse el sistema. a Lentitud en los conmutadores. Al aumentar la carga, se llena la memoria de los nodos del sistema. Esto provoca que aumente el retardo y se pierdan paquetes por saturacin de las colas (overow). Al perderse paquetes, es o necesario retransmitirlos, por lo que aumenta la carga. Esto provoca un c rculo vicioso que hace que el sistema llegue al punto de bloqueo. Para evitar este c rculo vicioso, se utilizan los mecanismos de control de congestin. o No hay que confundir mecanismos de control de congestin con mecanismos de control de o ujo. En control de ujo, el extremo receptor da rdenes al transmisor para que reduzca o frene o su transmisin. En control de congestin, es la red la que lo decide. El control de ujo puede ser o o consecuencia del control de congestin. o

5.8.4.

Clasicacin de los mecanismos de control de congestin o o

Los mecanismos de control de congestin se pueden clasicar segn 3 caracter o u sticas: Segn lugar de realizacin: u o En los encaminadores: son los encaminadores los que tienen mayor responsabilidad en el control de congestin. o En los sistemas nales: la responsabilidad del control de congestin recae en su o mayor parte sobre los sistemas nales. Ojo, aunque el lugar de realizacin sea en los encaminadores, siempre una pequea parte o n del procesamiento la tendrn que realizar los sistemas nales. Igualmente ocurre en el caso a contrario. Segn el mecanismo en que estn basados: u e Basados en realimentacin: Los sistemas nales reciben rdenes sobre como deo o ben comportarse (es decir, si deben aumentar el trco que transmiten o reducirlo). a

Redes de Telecomunicacin o

98

Estas rdenes pueden provenir de los encaminadores (si es un mecanismo localizao do en encaminadores) o puede ser que los mismos sistemas nales tomen decisiones basadas en lo que observan que ocurre en la red (por ejemplo, si ven que se estn pera diendo paquetes, podr decidir reducir su tasa de transmisin). Este ultimo mtodo an o e est asociado con los mecanismos de congestin localizados en sistemas nales. a o Basados en reserva: un sistema nal tiene que pedir permiso antes de inyectar informacin en la red. Se suele usar al establecer conexiones. Aunque se llamen basados o en reserva no se produce una reserva real de capacidad (recordemos que estamos hablando de redes de conmutacin de paquetes, y realizar una reserva de recursos es o contraproducente en general). La reserva que se produce es virtual. Segn la forma de darle derechos de transmisin al emisor: u o Basado en crditos: el emisor recibe una serie de crditos. Por cada crdito, puede e e e introducir un paquete en la red. La asignacin de crditos es dinmica, similar a una o e a ventana deslizante. Basados en tasa: el emisor tiene una velocidad mxima a la que puede transmitir a paquetes.

Cap tulo 6 Capa de transporte


6.1. Introduccin a la capa de transporte o

Si recordamos los niveles que hemos estudiado hasta ahora, el nivel de enlace era solo entre nodos adyacentes. En el nivel de red, tenamos que tener en cuenta los nodos intermedios. En la capa de transporte, sin embargo, son los sistemas nales los que se entienden extremo a extremo, sin importarles la red intermedia.

Figura 6.1: Nivel de transporte.

La capa de transporte puede aadir las siguientes funcionalidades: n Fiabilidad. Orientacin a conexin. o o Posibilidad de multiplexin de conexiones. o 99

Redes de Telecomunicacin o

100

ISO normaliz y deni 5 protocolos de nivel de transporte, denominados de TP0 a TP5. o o TP0 es muy simple y se utiliza si el nivel de red ofrece un servicio muy bueno. Si se empieza a tener errores en el nivel de red pasamos a TP1, TP2, TP3, y TP4 (siendo cada uno de los protocolos con numeracin superior capaz de recuperar ms errores; TP4 es capaz de recuperar o a casi cualquier error, pero tambin es el ms complejo). Tambin se denieron servicios ofrecidos e a e por el nivel de transporte, tanto orientados a conexin como no orientados a conexin. o o Estos protocolos ten muchas opciones y aplicaciones, pero no se usan porque se implanan taron los protocolos de transporte de IP: TCP y UDP.

Figura 6.2: Protocolos de transporte en TCP/IP.

6.2.
6.2.1.

Jerarqu TCP/IP a
UDP

Protocolo de Datagrama de Usuario (User Datagram Protocol). Denido en la RFC 768. Es un protocolo con el cual se ofrece un servicio no orientado a conexin (CL, Connection o Less) y no able. Esto era prcticamente lo que ofreca el nivel de red, IP, pero la diferencia a es que con UDP se aade la capacidad de multiplexin (MUX). En UDP se utiliza el nmero n o u de puerto para multiplexin: los mensajes van a la misma mquina pero dentro de ella van a o a una aplicacin u otra dependiendo del nmero de puerto. Por tanto, una direccin UDP tiene la o u o forma: Direccin U DP = Direccin IP + P uerto U DP o o (6.1) En la cabecera IP se indica que la informacin que est encapsulada es un paquete UDP o a poniendo en el campo protocolo el valor correspondiente a UDP, que es 17. En la cabecera UDP van el nmero de puerto origen y el nmero de puerto destino (al u u igual que en la de IP iban la IP origen y la IP destino). Los nmeros de puerto, al estar u

Redes de Telecomunicacin o

101

Figura 6.3: Encapsulamiento de UDP.

Figura 6.4: Formato de la cabecera UDP.

formados por 16 bits, pueden ser del 0 al 65535. Sin embargo, el usuario no puede escoger uno cualquiera: los puertos de 0 a 1023 estn reservados para aplicaciones espec a cas. Por ejemplo: 69: puerto para TFTP, Trivial File Transfer Protocol (transferencia de cheros trivial). 513: puerto para who, que permite conocer quien ocupa el equipo en ese momento. La longitud total del segmento mide el tamao del segmento completo (cabecera y datos) n en octetos. Checksum es un cdigo de redundancia que detecta errores. Para calcularlo, se tienen o en cuenta las direcciones IP del datagrama donde va este segmento, es decir, tomamos informacin del nivel inferior (en OSI, eso sera una HEREJ o A). Algunos campos aceptan valores especiales:

Redes de Telecomunicacin o

102

Si ponemos checksum = 0 en la trama, estaramos indicando que no est calculado el a cdigo de redundancia. o Si ponemos puerto origen = 0 no estaramos indicando el origen, por lo que el destino no podr contestar. a

6.2.2.

TCP

Protocolo de Control de Transmisin (Transmission Control Protocol). Denido en la RFC o 793. Con este protocolo se puede ofrecer un servicio orientado a conexin (CO,Connection Orieno ted) y able (adems de ofrecer multiplexin, al igual que UDP). Al ser un servicio CO es dplex a o u (se pueden enviar datos en ambos sentidos, da igual quien haya iniciado la conexin). Dicha coo nexin est identicada por una direccin TCP: o a o Direccin U DP = Direccin IP + P uerto U DP o o El nmero de puerto sirve para poder multiplexar. Veamos un ejemplo: u (6.2)

Figura 6.5: Ejemplo de multiplexin. o

En la mquina con IP1 tengo 3 conexiones distintas con la misma IP y puerto origen. Las a conexiones con la mquina IP2 se diferencian en el nmero de puerto destino, puesto que TCP2 a u es distinto que TCP3 en IP2. Vemos que una conexin IP est denida un o a vocamente por 4 parmetros: IP origen, puerto origen, IP destino y puerto destino. Se pueden repetir a hasta 3 de estos parmetros en dos conexiones distintas, pero nunca los cuatro a la vez. a

Redes de Telecomunicacin o

103

Podemos tener un servidor asociado a un nmero de puerto. Por ejemplo, si TCP1 fuera u el puerto asociado con un servidor FTP (puerto 21), estar amos transriendo cheros hacia el mismo puerto, pero desde mquinas distintas (llegan datos desde 2 y 3). a La abilidad es este tipo de conexin se puede conseguir mediante asentimiento y retranso misiones. Cada paquete tiene que ser asentido. Si enviamos datos y no recibimos asentimientos durante un cierto tiempo, suponemos que se ha perdido la informacin y lo que hacemos es o retransmitir. El modelo que se usa en estos casos es el siguiente:

Figura 6.6: Modelo de colas para transmisin en TCP. o

La mquina destino recibe en un buer y, cuando comprueba que no falta nada y todo a est en orden, se lo pasa al nivel superior. Si llega bien, manda asentimiento. Si no, no manda a nada y espera a que se retransmita. La interfaz entre las capas (es decir, la forma de pasarse los datos) no est normalizada. Slo se obliga a que lo que se env a la capa adyacente a o a est en el mismo orden en que se envi. Al contrario que OSI, ni siquiera se obliga a que el e o tamao del paquete que se envi y el del paquete que el receptor pasa al nivel superior sea el n o mismo. Tampoco est normalizado lo que se hace con los datos si algo no llega. Lo a normal es, si tienes una serie de paquetes pero te falta uno, que almacenes los que tienes y los que van llegando hasta que el origen te reenv el que te falta. Entonces, se pasan todos de golpe a al nivel superior. Lo que s est normalizado es el conjunto de PDUs que se intercambian. a Normalmente, a la hora de enviar un datagrama, el nivel superior se lo env al nivel a inferior. Este entonces lo pone en una cola, y lo transmite cuando considere oportuno. Hay dos modicaciones de este funcionamiento: Mecanismo PUSH: tampoco est normalizado. Mediante este mecanismo, el nivel superior a obliga al nivel inferior a enviar todo lo que tenga en el buer lo antes posible. Existe un

Redes de Telecomunicacin o

104

ag dentro de la trama que se env (recordemos que un ag es una variable binaria, que a puede valer 1 en caso de que algo sea cierto y 0 en caso de que sea falso) en la que se indica que esos datos han sido mandados de forma obligada. Datos urgentes: los paquetes que estn marcados como datos urgentes pueden saltarse todas a las colas. Se ponen siempre al principio del segmento en el que viajan. En la cabecera, se debe indicar que el segmento lleva datos urgentes (con un ag) y adems es obligatorio a indicar cuntos de los datos son urgentes. a En TCP existe control de ujo: el receptor frena al emisor, dicindole el receptor al emisor e la cantidad de octetos que puede enviar sin esperar asentimiento. Esto es lo que se llama tamao n de ventana. Aqu se usa ventana deslizante (regulable segn lo que desee el receptor). Como la u conexin es dplex, lo que pasa en un sentido pasa tambin en el contrario. o u e Estudiemos la cabecera TCP en detalle:

Figura 6.7: Fomato de cabecera en TCP.

Puerto origen y puerto destino: como ya hemos visto, se usa para multiplexin. Son de 16 o bits cada uno (van de 0 a 65535)

Redes de Telecomunicacin o

105

Nmero de secuencia: en vez de numerarse los segmentos, se numeran los octetos (Los u octetos tienen su propio nmero de orden. Se pone el nmero del primer octeto que va u u en el segmento). Tiene mucho sentido numerar los octetos en lugar de los segmentos, ya que los segmentos pueden tener longitud variable. Hay que resaltar que el nmero con el u que se comienza a numerar los octetos es aleatorio, y se decide en el establecimiento de la conexin. Un ejemplo ser o a:

Figura 6.8: Numeracin de octetos en la cabecera TCP. o

Asentimiento: Se env el nmero de orden del primer octeto que se espera recibir. A a u la vez que mandas datos se pueden mandar asentimientos, para optimizar el gasto de ancho de banda. El mecanismo de asentimiento se explica con detalle en el siguiente apartado. THL (TCP Header Length, longitud de cabecera TCP): Contiene el tamao de la cabecera, n en unidades de 4 octetos (32 bits). El tama o m n nimo de la cabecera TCP son 20 octetos, al igual que en la cabecera IP. Es obligatorio conocer este dato de memoria, se puede preguntar expresamente en el examen. Flags:

Figura 6.9: Seccin de ags de la cabecera TCP. o

Redes de Telecomunicacin o

106

URG: Indica que el paquete contiene datos urgentes. Recordemos que estos datos se ponen al principio del segmento, se pueden saltar el orden normal y acceden al nivel superior cuanto antes. Si no contiene datos urgentes, se pone a 0. ACK(ACKnowledgement, asentimiento): Si vale 0, se ignora el campo asentimiento. Si vale 1, signica que el campo asentimiento de la cabecera contiene un asentimiento. PSH: se pone a 1 cuando se fuerza el PUSH. As cuando lo recibe el otro extremo, sabe que son datos obligados (pushed) por el receptor. RST: bit de reset. Aborta la conexin cuando vale 1. Veremos su uso en un apartado o posterior. SYN (SYNchronous idle, espera s ncrona): se usa en el establecimiento de la conexin, o para ponerse de acuerdo ambos extremos. FIN: para el cierre de la conexin. Al contrario que RST, que cierra la conexin de o o forma abrupta, con FIN se comienza un proceso de negociacin para el cierre. o Tamao de ventana: Le dice al receptor el nmero de octetos que puede enviar sin tener n u que esperar asentimiento. Si est a 0, no podr mandar nada. a a Checksum: Aqu en el clculo del checksum, tambin se tienen en cuenta las direcciones a e IP (nivel inferior). Campos opcionales: al igual que la cabecera IP, los campos opcionales debern ser mtiplos a u de 4 octetos. Si no lo son, se aadir relleno hasta conseguirlo. n a Detalles de TCP: Funcionamiento de los asentimientos Como se numeran los octetos, lo que se asienten son los octetos, no las tramas. Se usa un tipo de asentimiento que se llama asentimiento acumulativo. Cuando asientes un octeto, asientes todos los que han llegado antes que l. e Es un protocolo bueno porque es muy simple, pero da poca informacin. Eso podemos verlo o en el ejemplo anterior, con el paquete de nmero de secuencia 2500 (resaltado en un recuadro), u que se ha retransmitido sin ser necesario. Cuando perdemos una rfaga de paquetes sabemos a que el primero se ha perdido, pero no sabemos si tambin se han perdido los que siguen. Hay e dos formas de enfrentarse a esta situacin: o Ser conservativos: Retransmitir el que se piensa que se ha perdido y esperar asentimiento. Si es el unico que se hab perdido, llegar el asentimiento de todo el conjunto completo, a a

Redes de Telecomunicacin o

107

Figura 6.10: Funcionamiento de los asentimientos en TCP.

en el ejemplo ACK=4500. Pero si se hab perdido los siguientes, se convierte en un an protocolo de parada y espera (manda y espera asentimiento, as con todos los que se hayan perdido). Esto es muy ineciente. Ser agresivos: Retransmitir todo aunque lo dems no se haya perdido, pero de esta forma a gastamos ancho de banda y ms recursos. a Realmente el problema no tiene una solucin ptima, depende de la implementacin. o o o Funcionamiento de la ventana deslizante: La ventana autorizada representa lo que puedo enviar sin recibir asentimiento. Vemos cmo o con asentimientos se va desplazando el borde inferior de la ventana y con el tamao se limita el n borde superior. Para implementar el mecanismo de retransmisin, se asocia a cada segmento un o

Redes de Telecomunicacin o

108

Figura 6.11: Funcionamiento de la ventana desliante en TCP.

temporizador. Cuando cumple el temporizador, el segmento asociado se retransmite. El clculo a del temporizador debe ser acorde con el comportamiento de la red. Clculo del temporizador de retransmisin de TCP: a o El tiempo que pasa desde que se env un paquete hasta que se retransmite es parmetro a a muy importante. Hay que tener en cuenta que, si ese tiempo demasiado corto, a menudo transmitiremos paquetes sin necesidad. Por contrario, si es demasiado largo, tardaremos mucho en retransmitir y habr tiempo muerto en que no estaremos transmitiendo nada. a

Figura 6.12: Denicin del Round Trip Time o

Podemos medir el tiempo desde que se transmite un segmento hasta que llega el ACK correspondiente. Este tiempo se conoce como tiempo de ida y vuelta, RTT (Round Trip Time)

Redes de Telecomunicacin o

109

y nos puede servir para determinar el temporizador. El RTT medio es muy oscilante porque al atravesar la red, el retraso es muy variable. Lo que se hace es una estimacin, el RTT estimado, o segn la siguiente frmula: u o RT Test = RT Testant (1 ) + RT Tmedido () (6.3)

Con ello conseguimos suavizar el RTT. Tambin podemos calcular la desviacin y suavizarla: e o DESVest = DESVestant (1 )+ | RT Testant | Con estos parmetros podemos calcular el valor del temporizador: a T EM P = RT Test + DESVest ms. a Ahora se nos presenta un nuevo problema. Si retransmitimos un segmento y nos llega un ACK, no podemos saber si ese ACK se reere al segmento original o a la retransmisin. o (6.5) (6.4)

El resultado ser un poco ms grande que lo que tarda en llegar el ACK, pero no mucho a a

Figura 6.13: Ambigedad del RTT u

El asentimiento de TCP es acumulativo y no hay forma de saber con qu original se mide e el asentimiento, por lo que no hay forma de medir el RTT. Para ello usamos el algoritmo de KARN: Cuando hay que retransmitir no se calcula el temporizador con la frmula de RTT. o En su lugar, con cada retransmisin se aumenta el temporizador de los segmentos enviados y no o asentidos al doble (hasta un valor mximo). Cuando no hay retransmisin ya se vuelve a medir a o el temporizador mediante la frmula. o Control de congestin de TCP: o

Redes de Telecomunicacin o

110

En TCP, cuando el extremo que est transmitiendo estima que la red est congestionada, a a se frena. Pero el resto de los protocolos no se frenan (por ejemplo UDP), as que utilizan lo que deja libre TCP y acaban saturando la red. Por tanto, aunque histricamente se llame ontrol de o c congestin, realmente lo que hace es ayudar para que no haya congestin, no la controla. Ser o o a un control de congestin si todas las comunicaciones de una red se hicieran usando el protocolo o TCP exclusivamente. Hemos visto que en los segmentos aparece un campo que especica la ventana indicada por el receptor. Adems de esa, en TCP hay otra ventana que es la ventana de congestin, la cual a o se va reduciendo cuando se estima que hay congestin. El m o nimo de estas dos ventanas es la ventana autorizada (lo que puedo transmitir sin esperar asentimientos).

V entana autorizada = min(ventana indicada por receptor, ventana de congestin) o

(6.6)

Si no hay congestin, la ventana autorizada ser la ventana indicada por el receptor. El o a c1lculo de la ventana de congestin se realiza de la siguiente forma: cada vez que se estima que a o hay congestin (se considera que hay congestin si hay que retransmitir un segmento), o o se disminuye el tama o de la ventana de congestin a la mitad. Eso se har as hasta n o a que la ventana alcance el tama o m n nimo de un segmento (que no un octeto). Recordemos que, como el algoritmo de Karn controla la retransmisin, aumentamos los temporizadores de o los segmentos enviados y no asentidos al doble. A la hora de aumentar la ventana, se siguen dos procedimientos: Arranque lento: Se utiliza cuando empezamos a aumentar la ventana. Por cada ACK que llegue, se incrementa la ventana de congestin en el tamao de 1 segmento. o n Otro protocolo, sin nombre: Se utiliza cuando se alcanza cierto umbral mediante el protocolo anterior. En este caso, se incrementa la ventana en el tamao de 1 segmento cada vez n que se recibe ACK para toda la ventana (es decir, tantos asentimientos como segmentos quepan en la ventana). Por ejemplo, con segmentos de 1000 octetos y una ventana de 3000 octetos, al recibir 3 asentimientos la ventana pasar a valer 4000 octetos. a Una aclaracin: la notacin del nombre de los protocolos puede dar lugar a equ o o vocos. El protocolo de arranque lento en realidad es ms r1pido que el segundo. En el primero, cuando a a recibes un asentimiento ya puedes mandar ms datos. En el segundo, necesitas varios asentia mientos antes de aumentar la ventana. Mecanismo Fast Retransmit-Fast Recovery:

Redes de Telecomunicacin o

111

Permite retransmitir antes de que venzan los temporizadores. Si un segmento se pierde, se empezarn a recibir asentimientos repetidos (como se puede ver en la g10). Si llegan 3 a asentimientos repetidos (es decir, el ACK original y otros 3 iguales), aunque no haya vencido el temporizador se retransmite el segmento y se considera que hay congestin: disminuye la ventana o de congestin a la mitad y los temporizadores se duplican. Establecimiento de conexin: Durante o o el establecimiento de la conexin se negocian parmetros como el tamao mximo de segmento o a n a y los nmeros de secuencia iniciales en cada sentido. Se hace en tres etapas: u

Figura 6.14: Protocolo para establecimiento de la conexin o

1. Uno de los extremos env un paquete, compuesto slo de una cabecera con el bit SYN a a o 1 (expresa el deseo de iniciar una conexin) y un nmero de secuencia arbitrario X (ser1 o u a el nmero de secuencia inicial en ese sentido de la transmisin). u o 2. El otro extremo le responde con otro paquete, compuesto exclusivamente de una cabecera, con el bit SYN a 1 (l tambin desea establecer una conexin en el otro sentido, recordemos e e o que en TCP las conexiones son dplex), el nmero de secuencia Y (nmero de secuencia u u u inicial en su sentido de la transmisin) y asiente el nmero de secuencia X que le envi el o u o otro extremo con un ACK a X+1. 3. El extremo que inici el procedimiento indica que su nmero de secuencia es ahora X+1, o u y asiente el nmero de secuencia enviado por el otro extremo con un ACK a Y+1. En u este momento, se considera que la conexin est establecida y se pueden empezar a enviar o a datos en ambos sentidos. De hecho, el extremo de la izquierda podr haber empezado a a enviar datos justo despus de recibir el asentimiento a X+1. e

Redes de Telecomunicacin o

112

Si recordamos el funcionamiento de los asentimientos, cabe preguntarse por qu se asiente e X+1 e Y+1 si no se ha enviado ningn octeto de datos. Esto se hace as porque se u considera que el bit SYN puesto a 1 equivale a enviar un octeto de datos (tambin ocurrir esto con el bit FIN, como veremos ms adelante). Otra cuestin que e a a o llama la atencin es que se utilice un nmero de secuencia arbitrario, en lugar de empezar o u siempre por 0. Esto se hace as para evitar confusiones: si empezramos siempre por 0, al a abrir una conexin, cerrarla rpidamente y volverla a abrir podrn confundirse los paquetes o a a pertenecientes a cada una de las conexiones (tendrn nmeros de secuencia similares). Para a u evitar esto, adems de usar nmeros aleatorios, TCP recuerda los nmeros de secuencia a u u que utiliz en las ultimas conexiones para no repetir los mismos nmeros contra los mismos o u destinos. Cierre de la conexin: o Para el cierre de la conexin no la tiene que cerrar el extremo que la abri. Lo que si es que o o hay que cerrarla en ambos sentidos por separado. Puede que cerremos la conexin en un o sentido pero en el otro sentido an queden paquetes por enviar. Se enviarn los paquetes y u a despus se cerrar el otro sentido de la conexin. Una vez cerrado un sentido de la conexin, e a o o el transmisor correspondiente a ese sentido queda limitado a enviar asentimientos, no puede enviar datos.

Figura 6.15: Caso ms simple: ambas conexiones se cierran a

Algunos detalles a tener en cuenta sobre el segundo caso: Como dec amos, el extremo transmisor de la conexin cerrada solamente puede transmitir o cabeceras con asentimientos, no datos. Hay que resaltar que todas las cabeceras tendrn a el n mero de secuencia correspondiente al que tendrn si enviaran datos, pero u a dicho nmero de secuencia no cambia porque no se env ningn octeto de datos. u a u

Redes de Telecomunicacin o

113

Figura 6.16: Caso complejo: primero se cierra un sentido y despus otro e

Una conexin se considera cerrada cuando se recibe el asentimiento al paquete que conten o a el bit FIN a 1. Es necesario cerrar cada uno de los dos sentidos. Hay un caso especial de cierre de conexin, llamado liberacin abrupta. Se suele dar o o cuando hay algn error. El cierre de la conexin es sin negociacin, inmediato y no requiere u o o asentimiento. Veamos dos ejemplos en los que se da este tipo de cierre: Aspectos del rendimiento de TCP: Recordemos que TCP tiene una cabecera de tamao m n nimo 20 octetos e IP tiene una cabecera de tamao m n nimo 20 octetos. Por otra parte, el nivel de enlace que se use tambin tendr su propia cabecera que aadir a esto. Esto quiere e a n decir que, independientemente del tamao de los datos, estamos transmitiendo una cabecera de n al menos 40 octetos en cada datagrama. Existe un fenmeno, llamado s o ndrome de la ventana tonta (Silly Window Syndrome), en el que se desperdicia mucho ancho de banda en cabeceras. El fenmeno consiste en lo o siguiente: El extremo receptor (B) necesita que el extremo transmisor (A) se frene momentneamente a porque el buer de recepcin de B est saturado. Para ello, le env como tamao de o a a n ventana de transmisin el valor 0. o

Redes de Telecomunicacin o

114

Figura 6.17: Liberacin abrupta por ca de uno de los extremos o da

B se recupera un poco, consigue un espacio de un octeto en su buer y env a A el tamao a n de ventana de transmisin 1 (es decir, puede transmitir un octeto de datos) o Si A transmite, estar enviando un paquete con 1 octeto de datos y ms de 40 de cabeceras. a a El rendimiento ser inferior al 2,5 %. a Para evitar esto, cuando B env un tamao de ventana 0 a A, tendr que esperar antes de e n a cambiar el tamao de ventana de transmisin de A. No podr enviarle un tamao de ventana n o a n distinto a A hasta que ocurra una de estas dos condiciones: En el buer de B cabe un segmento de A (es decir, el tamao de segmento que se negoci en n o el establecimiento de la conexin). o La mitad del buer de B est vac a o. Tambin puede darse la situacin de que el transmisor tenga poca informacin que enviar. e o o En ese caso, se hace lo siguiente: Si todo lo que A ha enviado est asentido, A env lo poco que tenga que enviar (aunque a a slo sea un octeto). o Si falta algo de lo que A ha enviado por asentir, A espera a tener bastantes datos para llenar un segmento o bien a que llegue un asentimiento. Entonces, A puede transmitir. PROBLEMA:Sean dos sistemas nales con la siguiente torre de protocolos:

Redes de Telecomunicacin o

115

Figura 6.18: Liberacin abrupta por exceso de retraso durante establecimiento de conexin o o

Nos dan los siguientes datos: Retardo de propagacin:105ns o Caudal ofrecido en el nivel f sico: 64Kbps (nota: K = 103 ) La ventana TCP es ja de 2000 octetos. La ventana LAPB es ja a 6 tramas. Queremos transmitir 40.000 octetos de datos Suponer que en el establecimiento y cierre de la conexin no se env datos, tan solo o an cabeceras. Suponer la conexin LAPB previamente establecida. o

Redes de Telecomunicacin o

116

Figura 6.19: Torre de protocolos del ejercicio

Se pide: Cunto tiempo se tarda en establecer la conexin? Y el cierre? a o Tiempo m nimo de transmisin de los datos. o FUNCIONAMIENTO DE LAPB: LAPB es un protocolo del nivel de enlace. Para tramas sueltas se tiene una sobrecarga de 6 octetos. Para tramas continuas se tiene una sobrecarga de cabecera con 5 octetos (porque el guindel nal sirve para la trama siguiente, como si fuera el del principio de la trama). o

Figura 6.20: Encadenado de tramas LAPB A la hora de decidir el tamao de los segmentos TCP, nos encontramos con un problema n de optimizacin. Cuanto mayor sea el segmento, mayor es el rendimiento (ya que hay ms datos o a para la misma cabecera). Pero, como tenemos una ventana limitada, tambin ser mayor el e a tiempo muerto que nos pasamos sin transmitir, mientras llega el asentimiento: A la larga nos interesa estar el m nimo tiempo sin transmitir, que se haga 0, para tener env o contino en ese punto. Con ello disminuye el rendimiento (ms cabecera para los mismos datos), u a

Redes de Telecomunicacin o

117

Figura 6.21: Tiempo muerto en funcin del tamao de trama o n

pero transmitimos ms tiempo. Lo complicado es que la ventana TCP se mide en octetos y la a de LAPB en tramas. u Nota importante: El tiempo de asentimiento es jo. Si nos sale que el nmero optimo de tramas a mandar antes de que llegue el asentimiento de la primera es mayor que 6, hay que truncar a 6 porque la ventana de transmisin de LAPB no deja transmitir ms de 6 tramas. o a

Cap tulo 7 Evolucin de los equipos y tendenc o as


7.1. Introduccin a IPv6 o

IPv6 es una evolucin de IPv4. Est reglado por la RFC 2460 del IETF. Una de las prino a cipales motivaciones para que apareciera IPv6 fue la escasez de direcciones IP de IPv4, que ya estn casi agotadas en el mundo. a

7.2.

Direccionamiento en IPv6

IPv6 utiliza direcciones IP de 128 bits (16 octetos), en lugar de los 32 bits que usaba IPv4. Recordemos del tema 3, Direccionamiento, que dichas direcciones se representan en hexadecimal, por parejas de octetos separadas por : . Una direccin IPv6 vlida ser o a a: 3F F E : 0501 : 0008 : 0000 : 0260 : 97F F : F E40 : EF AB Adems, se permiten dos simplicaciones para las direcciones: se puede sustituir una a cadena de ceros de cualquier longitud por ::, y adems los ultimos 4 octetos se pueden a representar igual que se representaban las direcciones en IPv4. Aplicando esto al ejemplo anterior, la direccin ser equivalente a poner: o a 3F F E : 0501 : 0008 :: 0260 : 97F F : 254.64.239.171 Es importante tener claro que slo se puede sustituir una cadena de ceros por o

118

Redes de Telecomunicacin o ::. Si hay varias, como en la direccin anterior, lo normal es escoger la ms larga. o a

119

Al igual que en IPv4, existe una serie de direcciones especiales. Antes de explicarlas, vamos a aclarar la notacin que vamos a utilizar para representarlas. En IPv6, un prejo de direccin o o especial se representa como: Direccin IPv6/nmero o u y se interpreta como que todas las direcciones que empiecen por los primeros n meu ro bits de la Direccin IPv6 pertenecen a ese tipo de direcciones. Por ejemplo, si decimos o que la direccin de tipo multicast es F F 00 ::/8, nos referimos a que cualquier direccin cuyos o o primeros 8 bits coincidan con los primeros 8 bits de F F 00 :: es una direccin multicast. En este o caso en particular, estar amos diciendo que una direccin que empiece por 11111111 (FF) es una o direccin multicast. o Hay que tener mucho cuidado con esto, ya que estamos representando las direcciones en hexadecimal y la mscara como n mero de bits. Esto puede llevar a situaciones a u curiosas: por ejemplo, si decimos que una direccin Unique Local Unicast (se ver ms tarde) emo a a pieza por F C00 ::/7, hay que tener una especial precaucin. FC, en binario, equivale a 11111100. o Como tomamos los 7 primeros bits, valdrn tanto las direcciones que empiezan por 11111100 a (FC) como las que empiezan por 11111101 (FD). Por tanto, una direccin que empiece por FD o tambin entra dentro de F C00 :: /7! e

7.3.

Direcciones especiales en IPv6

Unspecied(no especicadas): Son las direcciones ::/128 (todos los bits a 0). Se usan en el campo origen cuando queremos enviar algo y todav no tenemos una direccin asignada. a o Loopback (bucle local): Son las direcciones ::1/128 (todos los bits a 0 y el ultimo a 1). Equivalente a 127.0.0.1 de IPv4. IPv4-mapped (direcciones IPv4 mapeadas): Son las direcciones ::FFFF:0:0/96 (80 bits a 0, 16 bits a 1 y despus cualquier direccin de 4 octetos). Sirven para encapsular direce o ciones IPv4 en IPv6. Multicast (para mltiples destinos): Son las direcciones FF00::/8 (primeros 8 bits a 1). u Existen varias direcciones especiales:

Redes de Telecomunicacin o Direcciones de difucin para nodos: o

120

Difusin para nodos local: Es la direccin FF01::1. Alcanzan todas las entidades o o IP dentro de un mismo nodo. Difusin para nodos en el enlace: Es la direccin FF02::1. Los paquetes llegan a o o todos los nodos alcanzables sin pasar por un router. Direccin de difusin para routers: o o Difusin para routers local: Es la direccin FF01::2. Alcanza al propio nodo que o o la env a. Difusin para routers en el enlace: Es la direccin FF02::2. Los paquetes llegan a o o todos los routers alcanzables sin atravesar un router. Difusin para routers en el site: Es la direccin FF05::2. Los paquetes llegan a o o todos los routers que pertenecen al site, es decir, a los routers que pertenecen a nuestra red interna. El paquete llegar hasta el borde de la red que controlamos a nosotros (hasta el router de salida a Internet). Direccin de difusin de nodo solicitado(solicited-node): o o es una direccin especial, cuyo propsito es sustituir al protocolo ARP (como se o o ver en el estudio de la resolucin de direcciones dentro del apartado ICMPv6). Esta a o direccin est asociada a una direccin unicast, y se construye de la siguiente forma: o a o

Es decir, se toma como prejo la direccin FF02::1:FF00:0/104 (el paquete empieza por o FF02::1:FF) y se ponen a continuacin los ultimos 24 bits de la direccin unicast asociada. o o A nivel de enlace, la direccin MAC destino que se utiliza en Ethernet se crea de esta forma: o esto es, copiamos los ultimos 32 bits de la direccin IPv6 destino como ultimos 32 bits o de la direccin MAC, y lo prejamos con 2 octetos que nos van a indicar que es una direccin de o o difusin: 33 33. Cuando un nodo reciba un paquete con esta direccin de enlace, lo aceptar por o o a empezar por 33 33. Entonces mirar los ultimos 4 octetos de la direccin MAC: si se corresponden a o con los ultimos 4 octetos de su direccin IP multicast solicitada, aceptar el paquete. En caso o a

Redes de Telecomunicacin o

121

contrario, lo descartar. La ventaja de usar este mtodo es que todos los clculos anteriores se a e a pueden programar a nivel hardware, con lo que se consigue una gran velocidad. Existe una pequea probabilidad de que varios nodos tengan iguales los ultimos 32 bits n de la direccin multicast solicitada. Si eso ocurriera y el nodo aceptara el paquete por error, al o pasarlo a su nivel de red se dar cuenta de que la direccin IP destino no es la suya y descartar a o a el paquete entonces. Anycast (cualquier destino de un grupo): Sintcticamente, son como las direcciones a unicast. Sin embargo, al usar este tipo de direcciones, estaremos enviando un paquete a un grupo de mquinas. La diferencia con multicast es que, mientras que un paquete enviado a a una direccin multicast tiene que llegar a todos los destinos, un paquete enviado a una o direccin anycast tiene que llegar a uno y slo a uno de los destinos del grupo, en o o general al ms cercano. a Unicast: Son direcciones que representan a una interfaz (como en IPv4), o bien a un grupo de interfaces (esto es una novedad de IPv6). La utilidad de asignar una misma IP a varias interfaces es, en general, para conseguir un reparto de carga:

Haciendo esto as los paquetes que vayan al router podrn llegar a l por 3 interfaces , a e diferentes, sin necesidad de que los equipos de la LAN lo sepan. Existen tres tipos de direcciones unicast: Link Local Unicast (Direcciones locales al enlace): Son las direcciones FE80::/10 (empiezan por 1111 1110 10). Su ambito de validez es un enlace de IPv6 (en IPv6 se considera un enlace a un conjunto de mquinas unidas por un medio comn, tal que en l las mquinas a u e a se pueden comunicar sin que sus paquetes atraviesen un router). Por tanto, dos nodos a los que se les haya asignado una direccin local al enlace slo pueden comunicarse o o entre s si no hay routers entre ellos. Es un mecanismo parecido al de las direcciones priva das de IPv4: se pueden repetir direcciones en distintas redes privadas. Adems, los nodos a pueden asignar automticamente este tipo de direcciones. a Unique Local Unicast (Direcciones locales unicas): Son las direcciones FC00::/7 (empie zan por 1111 110). Son muy parecidas a las anteriores con la ventaja de que, al ser ms a amplia la parte variable de la direccin, es muy poco probable que dos de estas direcciones o

Redes de Telecomunicacin o

122

coincidan. Por tanto, siempre que no se salga a una red pblica (Internet), la probabilidad u de que dos mquinas puedan comunicarse entre s es alta incluso aunque haya que atravesar a distintos enlaces o incluso sites. Global Unicast (Direcciones globales): Son direcciones unicas en el mundo. En teor cual a, quier direccin que no caiga en ninguno de los rangos de direcciones especiales, es una o direccin global. En la prctica, hasta ahora slo se han asignado las direcciones 2000::/3 o a o (empiezan por 001). En resumen los tipos existentes de direcciones son:

7.4.

Organizacin de las direcciones en IPv6 o

IPv6 sigue la misma losof que introdujo IPv4: las direcciones IP estn formadas por una a a parte de red, comn a todas las interfaces que estn unidas a nivel de enlace (y por tanto u a pueden comunicarse sin atravesar un router), y una parte de host, que combinada con la parte de red identica a cada interfaz de forma un voca. En IPv6, la parte de red se divide a su vez en prejo global e identicador de subred. Las direcciones que no empiecen por 000 (en binario) han de tener obligatoriamente 64 bits de interfaz. Se aconseja que los valores del tamao del prejo global sean n= 48 bits (si se n van a crear subredes) o n= 64 bits(si slo va a haber una red). Sin embargo, en algunos casos o particulares se utilizan prejos globales de n48 bits. Por tanto, la forma de una direccin IPv6 o que no empiece por 000 ser: a

7.5.

Asignacin de direcciones en IPv6 o

La asignacin de direcciones puede ser: o Manual Mediante DHCPv6 (RFC 3315)

Redes de Telecomunicacin o

123

Por autoconguracin: al arrancar, cada nodo genera una direccin local al enlace o una o o direccin global (segn lo especicado por la RFC 2462). En este tipo de asignacin, la o u o parte de red de la direccin generada puede ser: o Si se ha generado una direccin local al enlace, la parte de red ser FE80::/64. o a Para otro tipo de direcciones, la direccin de red se toma de anuncios peridicos que o o hace el router a toda la red. En dichos mensajes, el router anuncia tanto su direccin o (para que los nodos la tomen como direccin de gateway) como el prejo que deben o tener los nodos de la red. Para explicar cmo se genera la parte de host, es necesario conocer las direcciones de nivel o de enlace que existen en la actualidad. Las que se suelen utilizar son dos: Direcciones MAC: Son un estndar del IEEE (rec. 802.1). Son direcciones de 48 bits, a unicas en el mundo. Direcciones EUI-64: Son un estndar ms moderno del IEEE. Son muy parecidas a a a las direcciones MAC, pero su tamao es de 64 bits en lugar de 48. n En ambos casos, los dos ultimos bits del primer octeto de la direccin son bits con un o signicado especial. El bit nmero 7 es el bit global/local. Dicho bit indica si una direccin u o es unica en el mundo (si vale 0) o bien puede estar repetida (si vale 1). El bit de gru po/individual se utiliza para identicar si la direccin destino es una direccin individual o o (si vale 0) o una direccin de grupo (si vale 1). o Una vez conocemos los tipos de direcciones existentes, veamos cmo se usan al generar una o direccin IPv6 por autoconguracin: o o Si tenemos una direccin EUI-64: Se utiliza el llamado formato modicado UEIo 64. Para generar la parte de host, usamos la direccin EUI-64 que tenemos pero con o el bit global/local invertido (por eso se llama modicado). Si tenemos una direccin MAC: Ampliamos la direccin a 64 bits introduciendo o o en el centro de la direccin MAC dos octetos: FF FE. Adems, tambin o a e invertimos el bit global/local.

Redes de Telecomunicacin o

124

No es evidente a primera vista la necesidad de invertir el bit global/local. En principio, una direccin de enlace que tenga un mbito local se podr generar a mano. Lo ms probable o a a a es que la persona que la escriba ponga por comodidad una serie de bits a 0 y al nal un valor (es decir, empezar asignando ::1, despus ::2...). Pero si lo hace as como el bit a e , global/local es de los primeros, lo estar poniendo a cero. Eso signicar que la direccin a a o que se esta escribiendo es unica en el mundo, lo cual no es verdad ya que nos la estamos inventando. Para evitar esta situacin, se decidi que en este tipo de direcciones el bit o o global/local a 0 signicara que la direccin es local, y a 1 que la direccin es unica en el o o mundo (justo lo contrario de lo que deni el IEEE). Por tanto, es necesario invertir el bit o global/local de las direcciones del IEEE para darle el signicado que nosotros queremos.

7.6.

Formato de datagramas IPv6

El formato que siguen los datagramas IPv6 es el siguiente:

Versin: indica la versin del protocolo (en este caso, la 6). o o Clase de trco: marca los datagramas segn el tipo de trco que transportan (sensible a u a a retardos, de baja prioridad, etc.) Etiqueta de ujo (Flow Label): Se asigna la misma etiqueta a paquetes que estn relacioe nados entre s (por ejemplo, a aquellos que pertenezcan a una misma conexin). o Longitud de la carga (o payload): mide lo que hay despus de los 40 octetos de cabecera. e Se mide en octetos. Next Header (siguiente cabecera): En IPv6, los parmetros opcionales se incluyen como a extensiones de la cabecera dentro de la carga. Next Header indica de qu tipo es la primera e cabecera que hay en la carga. Algunos valores son: 6 - TCP

Redes de Telecomunicacin o 17 - UDP 58 - ICMPv6 0 - Hop-by-hop options 60 - Destination options

125

L mite de saltos (Hop Limit): equivale al TTL de IPv4. Dene el nmero mximo de routers u a que puede atravesar el paquete antes de ser descartado. Direccin origen y destino: compuestas por 16 octetos cada una. o

7.7.

Cabeceras de opciones

Cabecera de opciones salto a salto (Hop By Hop Options): Esta cabecera la lee e interpretan todos los routers que atraviese el paquete. Las opciones se codican mediante TLV (Tipo, Longitud, Valor). En este tipo de codicacin, cada opcin estar compuesta de un campo tipo de tamao jo, un campo longitud o o a n de tamao jo y un campo valor de tamao indicado por el campo longitud. El tipo de la n n opcin indica varias cosas: o Si el router puede modicar la opcin. o Si el router no entiende la opcin, indica si tiene que descartar el paquete o no. o Si el router descarta el paquete, si debe avisar al origen con un mensaje ICMP o no. La cabecera Hop-by-Hop tiene que tener un tamao mltiplo de 4 octetos. En caso de n u necesidad, se utiliza relleno. Cabecera de enrutamiento (Routing): permite que el nodo origen del mensaje especique una serie de routers por los cuales el mensaje debe pasar obligatoriamente. Es parecido al source routing de IPv4. Su forma es:

Redes de Telecomunicacin o

126

Segments left (segmentos restantes): Indica cuntas direcciones de las contenidas en a el paquete quedan por atravesar. Inicialmente ser N. a Destinos: son las direcciones IP de los routers que deber atravesar el paquete. a El funcionamiento de esta cabecera es el siguiente: inicialmente, el paquete se crea poniendo como destino en la cabecera IP la IP del primer router por el que debe pasar el mensaje (en condiciones normales, pondr amos la direccin del destino nal, pero este o caso es especial). El destino 1 de la cabecera de routing ser el segundo router por el que a debemos pasar, el destino 2 el tercer router... as hasta llegar al destino N de la cabecera de routing, que ser la direccin IP del destino nal del mensaje. Un ejemplo del a o uso de esta cabecera es el siguiente: Vemos como el paquete del ordenador con IP a router (IP ) como direccin destino en la o cabecera IP. Cuando el paquete llega al router b b, ste lo interpreta y, como el nmero de e u segmentos restantes es 3, cuenta 3 IPs desde el nal de la cabecera de routing y copia la IP que encuenta (IP ) en el campo destino de c la cabecera IP. Al mismo tiempo, pone la que estaba en el destino IP donde estaba IP . c Esto se hace as para que el destino nal sepa por qu routers ha pasado la informacin. Este procedimiento se repite hasta que el e o nmero de segmentos restantes es 0, en cuyo caso la mquina que interpreta el paquete u a sabe que es para ella. Algo a resaltar es que, aunque estemos especicando una serie de routers por los que el paquete debe pasar obligatoriamente, entre ellos puede pasar por routers que no hayamos especicado. Cabecera de opciones de destino (Destination Options): Es una cabecera extremo a extremo (slo la ve el nodo destino, los routers intermedios no pueden interpretarla). Existe un caso o especial, en que se combina con la cabecera de enrutamiento: Si se env un mensaje con estas caracter a sticas, los nodos de la lista de enrutamiento vern a la cabecera de opciones de destino 1 (ya que el paquete marca su IP como destino en la cabecera IP). Sin embargo, la cabecera de opciones de destino 2 slo la ver el nodo nal. o a

Redes de Telecomunicacin o

127

7.8.

Protocolo ICMPv6

Es una evolucin del protocolo ICMP que se usaba en IPv4. En este protocolo se denen o una gran cantidad de mensajes, aunque nosotros slo estudiaremos los mensajes que se usan para o el establecimiento de vecindades. Su cdigo de cabecera (el que tiene que aparecer en el campo o Next Header de la cabecera anterior) es 58. La cabecera ICMPv6 tiene la siguiente forma: donde los campos tienen el siguiente signicado: Tipo (8 bits): indica el tipo de mensaje. Si es un mensaje de error se representa con el bit ms signicativo a 0; un mensaje de informacin se representa con el bit ms signicativo a o a a 1. Cdigo (8 bits): sirve para distinguir los diversos mensajes de cada tipo. Si para un cierto o tipo slo hay un mensaje, vale 0. o Checksum (16 bits): para comprobar la integridad del mensaje. Cuerpo del mensaje: su estructura var segn el mensaje que estemos transmitiendo. a u En establecimiento de vecindades se usan cuatro mensajes ICMPv6 distintos: RS (Router Solicitation, solicitud a router): Este mensaje lo env los nodos a los an routers cuando necesitan conocer algn parmetro de stos. Se env con la direccin u a e an o multicast de routers como destino. RA (Router Advertisement, anuncio de router): los routers env estos mensajes an peridicamente o como respuesta a un RS. SIrve para anunciar varios parmetros: el tao a mao mximo de paquete que soportan (MTU), si son routers de salida de la red o no... n a Entre estos parmetros, el ms importante es el prejo de red. Los nodos deben conocer a a este valor para poder autocongurarse. El mensaje RA se env peridicamente con la dia o reccin destino multicast de nodos. Si se env como respuesta a una peticin RS, se hace o a o con direccin destino multicast solicitada. o NS (Neighbor Solicitation, solicitud a vecino): Se utiliza este tipo de mensajes con tres nes:

Redes de Telecomunicacin o

128

Resolucin de direcciones: en lugar de utilizar el protocolo ARP, para hallar la direco cin de enlace asociada a una direccin IP se env un mensaje NS a la direccin o o a o multicast solicitada correspondiente a la direccin IP que se desea resolver. o El nodo correspondiente recibir el mensaje y responder con un mensaje NA, a a en el que indicar su direccin de nivel de enlace. a o Deteccin de direcciones duplicadas (Duplicate Address Detection): hemos visto que o existen mtodos de conguracin automtica, en los que cada nodo se asigna una e o a direccin. Esto puede provocar una situacin en la que dos nodos se asignen la misma o o direccin. Para evitarlo, antes de comenzar a funcionar cada nodo env un o a mensaje NS para comprobar que su direccin sea unica. En el mensaje NS o intenta resolver su propia IP: si nadie responde, signica que nadie tiene esa IP y puede asignrsela sin problemas. Si alguien responde, tendr que cambiar su IP y a a volver a comprobarla. Por seguridad, los mensajes se retransmiten varias veces. e Sondeo (Probe): comprueba que un nodo est accesible. Esto es util, por ejemplo, si un nodo ha estado comunicndose con otro durante un tiempo, y esa comunicacin ha a o terminado. Para volver a comunicarse con el mismo nodo, primero deber comprobar a si an sigue funcionando con la misma direccin. Para ello, enviar un mensaje probe u o a al nodo. NA (Neighbor Advertisement, anuncio de vecino): Se env como respuesta a un a NS. Tambin se env en caso de que un nodo cambie su direccin de enlace, para anunciar e a o el cambio. REDIR (Redireccin): Al igual que en ISO, se env un mensaje de redireccin para o a o indicarle a un nodo la direccin correcta de nivel de red a la que tiene que asociar una IP. o Como novedad, adems de direccin IP se puede incluir en el mensaje la direccin de nivel a o o de enlace del destino, con lo que el nodo se ahorra una resolucin de direcciones. o

7.9.

IPv6 Mvil o

IPv6 mvil, denido en las RFC 3775 y 3776, es un protocolo que permite que un nodo o (llamado MN, Mobile Node o nodo mvil) se traslade f o sicamente pero siga recibiendo paquetes

Redes de Telecomunicacin o

129

dirigidos a l, independientemente de la red a la que est conectado. Comencemos explicando la e e terminolog que vamos a usar: a El nodo mvil es la mquina que se va a desplazar a travs de la red. Inicialmente, pero a e teneeer a la red del home agent, que es su router por defecto. A lo largo del ejemplo, nos a comunicaremos con otra mquina, perteneciente a otra red, a la que llamaremos CN (Corresa pondent Node, nodo correspondiente). Cuando el nodo mvil est conectado en su red origen, tiene asignada una direccin a la o a o que llamaremos HA (Home Address). En este estado, el nodo se comporta como cualquier nodo normal de la red: un mensaje dirigido al CN llevar como direccin destino la del CN, como a o direccin origen la HA y se enviar al home agent para que lo enrute. o a Si el nodo mvil se conecta a otra red, tendr que cambiar su direccin a una perteneciente o a o a la nueva red. A esta nueva direccin la llamaremos CoA (Care-of Address, literalmente o direccin de cuidado). Para que los mensajes dirigidos a la HA sigan llegando al nodo mvil, lo o o que hace el nodo mvil es establecer un tnel con su home agent. Para ello, env un mensaje o u a BU (Binding Update, actualizacin de enlace) a su home agent, en el que indica su CoA. o El home agent responde con un mensaje BA (Binding Acknowledge, asentimiento de enlace). El tnel que hemos creado consiste en que el home agent acta de repetidor. Cuando recibe u u un mensaje IPv6 con direccin destino la direccin HA, encapsula dicho mensaje dentro de otro o o mensaje IPv6 con direccin destino CoA y lo env Con eso consigue que el traslado del nodo o a. mvil sea transparente a la red. Para optimizar la comunicacin, existe la posibilidad de que el o o nodo mvil env al nodo correspondiente un BU. Si el nodo correspondiente est congurado o e a para entender los BU, se puede establecer comunicacin entre ellos. Se utilizan cabeceras de o enrutamiento para .engaar.a TCP, de modo que vea la direccin CoA como HA. n o

7.10.

Introduccin a IPsec o

IPsec, denido en las RFC 4301-4309, 2403-2405 y 2410-2412, es un mecanismo que sirve para asegurar la condencialidad y la integridad a travs de una red IP. Encripta los mensajes e y permite averiguar si han sido modicados a lo largo del trayecto. IPsec implementa:

Redes de Telecomunicacin o Protocolos de seguridad:

130

AH (Authentication Header, cabecera de autenticacin): sirve para vericar la inteo gridad. ESP (Encapsulating Security Payload, encapsulamiento de la carga de seguridad): sirve para condencialidad y para integridad. Protocolos de gestin de claves (Key Management): o IKEv2 (Internet Key Exchange, intercambio de claves por Internet) Algoritmos a usar, de encriptacin y de hash. o

7.11.

Introduccin a las VPN o

Las VPN (Virtual Private Net, red privada virtual) son redes privadas virtuales que se crean sobre una infraestructura pblica. Es comn usarlas para conectar distintas sucursales de u u una empresa. Es una alternativa barata al alquiler de enlaces punto a punto. Como problemas, presenta la seguridad (puede haber mensajes importantes viajando a traves de una red no n segura) y el consumo de ancho de banda.

Вам также может понравиться