U.D. 1: Redes de comunicación de...

31
U.D. 1: Redes de comunicación de datos 1

Transcript of U.D. 1: Redes de comunicación de...

U.D. 1: Redes de comunicación de datos 1

U.D. 1: Redes de comunicación de datos 2

Introducción a la capa de interred La capa de interred, como vimos en el tema 2, se encarga fundamental-mente de la entrega de la información entre redes. Para esta misión deberá utilizarse diversas técnicas que, en el caso de redes TCP/IP, se llevan a cabo mediante el protocolo IP. En otras redes, esta misión es llevada a cabo por otros protocolos. Protoco-los como Apple Talk, IPX o NetBEUI son conocidos al menos por el nombre. En realidad se trata de protocolos con la misma misión que IP pero que ofrecen posibilidades más limitadas. No es extraño que incluso los fabrican-tes de los protocolos mencionados (Apple, Novell Netware y Microsoft/IBM, respectivamente) se hayan adaptado a IP como protocolo base de sus sis-temas de red. IP (Internet Protocol) es un protocolo requerido por Internet que ofrece las siguientes funciones principales:

• Direccionamiento • Fragmentación y reensamblaje de datagramas • Entrega de datagramas a través de redes

De estas funciones, la más importante es el direccionamiento. Además al principio cuesta un poco acostumbrarse al esquema utilizado.

Ilustración 1

Además de IP, son necesarios otros protocolos en esta capa para obtener la función requerida. En este tema se comentarán otros como ARP, protocolos de encaminamiento y protocolos encaminados.

El protocolo de Internet (IP) A continuación vamos a ver las funciones comentadas de IP.

Direccionamiento de IP Diversas razones han hecho que fuera necesario definir un esquema de di-recciones para denominar los hosts que se conectan entre redes. En primer lugar existe una razón histórica: IP es anterior a esquemas de direcciones físicas que se definieron en la capa de acceso a la red. Además

U.D. 1: Redes de comunicación de datos 3

las direcciones físicas no proporcionan información sobre la red en la que se encuentran tanto el host origen como el destino. En este sentido recordemos que Ethernet basa su comunicación en el envío de la información a todos los nodos aunque sólo el destino la estime. Ima-ginemos qué podría suceder si se hiciera lo mismo en Internet… Por otra parte debemos entender que las capas superiores no conocen nada ni de direcciones físicas ni de redes. Así, esta capa deberá de actuar como medio para la comunicación entre host de distintas redes. Por último, imagine que podría suceder al cambiar las direcciones por el cambio de una simple tarjeta. La difusión de este tipo de informaciones en Internet podría llevar al colapso. En este sentido, el cambio de una tarjeta (capa de acceso a la red) no deberá modificar su dirección IP. De la misma forma, el cambio de tecnología de acceso a la red no modificará su direccio-namiento. Como consecuencia de todo esto se estableció un esquema de direcciones que permitiera solucionar estos y otros problemas.

Formato de las direcciones IP Una dirección IP es la forma que tiene IP de denominar a los hosts conec-tados. Las direcciones IP tienen una longitud de 4 octetos (32 bits o 4 by-tes) y constan de dos partes o campos:

• Un campo identificador de red (netid), identifica la red a la que está conectado el host.

• Un campo identificador de host (hostid), asigna un identificador único a cada host conectado a una red específica.

Por ejemplo, si decimos que un ordenador tiene la dirección IP 10.1.2.230, estamos indicando que se encuentra en la red 10 y tiene el identificador 1.2.230. Más adelante veremos el formato y porqué son estos los identifica-dores. De momento es importante ver a partir de este momento que una dirección IP consta de dos partes, red y host, de la misma forma que nues-tro identificador personal (nombre) consta de nombre y apellidos, y que los apellidos definen la familia a la que pertenecemos.

Ilustración 2

En TCP/IP una red es un grupo de host que se comunican sin necesidad de usar un encaminador o router. Todos los hosts que están en la misma red tendrán el mismo identificador. Los hosts con distinto identificador deberán comunicarse a través de un encaminador.

U.D. 1: Redes de comunicación de datos 4

Notación de las direcciones IP Hemos comentado que las direcciones IP se componen de 4 octetos. Cada octeto, debemos recordad, se compone de 8 bits, con valores únicos de 0 ó 1. Por tanto una dirección IP en notación binaria (en bits) sería de la forma:

Ilustración 3

Como resulta lógico, nombrar y tratar estos números por los seres humanos es casi imposible. Por ello, se ha convenido en utilizar base decimal para hacerlo más comprensible. Así, la dirección anterior, pasada a decimal y siendo separados los octetos por el símbolo “.”, sería:

Ilustración 4

Un paréntesis: sistemas de numeración Aunque no es el propósito de este curso, es importante el manejo de las transformaciones entre sistemas de numeración. Si esto le resulta difícil o desagradable, no se preocupe, puede ignorar la siguiente explicación o, me-jor todavía, utilizar la calculadora de Windows en modo científico, o cual-quier otra que permita la conversión entre números binarios a decimales o viceversa. Un número binario está compuesto únicamente por dos símbolos: 0 y 1. Como no tenemos más símbolos, los primeros números serán 0, 1, 10, 11, 100, 101, 110, 111, 1000, … que representan los números decimales 0, 1 , 2, 3, 4, 5, 6, 7, 8, … respectivamente. Para pasar un número binario a decimal, deberá saber que la posición en que se encuentre el 1 binario será igual en decimal a 2 elevado a la posi-ción, es decir:

Ilustración 5

De forma inversa, para pasar de decimal a binario, será preciso dividir el número por 2 tantas veces como sea necesario hasta que el resto ya no sea divisible. Entonces bastará tomar el último cociente junto con los restos pa-ra formar el número binario equivalente:

U.D. 1: Redes de comunicación de datos 5

Ilustración 6

Fin del paréntesis de sistemas de numeración En cualquier caso y a pesar que casi siempre nos refiramos a las direcciones IP en formato decimal, es importante conocer su trasfondo decimal para interpretar algunas cosas.

Clases de direcciones IP Cuando se desarrolló el sistema de direcciones IP, se partió de la siguiente base:

• Existirían unas pocas redes que dispondrían de muchos hosts conec-tados a ellas. Se pensaba en grandes corporaciones, universidades o estamentos públicos.

• Habría un número moderado de redes con un número medio de host en ellas.

• La gran mayoría de las redes tendrían pocos host conectados. Con estas premisas se hizo un esquema de direcciones asignando un núme-ro de bits distinto a los identificadores de red de cada clase. Puede ver en el siguiente esquema las distintas clases con sus bits de clase, su netid y su hostid.

Ilustración 7

Como puede apreciarse: • Las clases A comienzan por el bit 0. El primer octeto identifica la red

y los tres últimos el host de esa red. • Las clases B comienzan por los bits 10. Los dos primeros octetos

identifican la red y los dos últimos el host de esa red. • Las clases C comienzan por los bits 110. Los tres primeros octetos

definen la red y sólo el último el host de esa red.

U.D. 1: Redes de comunicación de datos 6

• Las clases D comienzan por los bits 1110. Sólo se utilizan para multi-difusiones.

• Las clases E comienzan por 11110 y su uso es experimental, no co-mercial.

Por consiguiente y teniendo en cuenta los bits de comienzo, los bits usados para red y los usados para host, podemos concluir:

Ilustración 8

La asignación de direcciones IP en Internet corresponde a IANA (Internet Assigned Numbers Authority) aunque ha delegado zonas por áreas terri-toriales. Así, en Europa, es RIPE quien las gestiona. Si una empresa dispo-ne de conexión permanente a Internet deberá contar con un conjunto de direcciones. Estas serán asignadas por su proveedor de acceso o por RIPE si la empresa es sistema autónomo. IANA reservó algunas direcciones de cada clase para lo que se denomina direcciones privadas. Estas direcciones no son encaminables y ningún router las envía. Son utilizadas por la escasez de direcciones IP y se usan en redes locales. Una red local, en general, no necesita direcciones IP públi-cas para todos sus hosts. Solamente es absolutamente necesaria la de su encaminador. Las clases privadas son las siguientes:

• Clase A: de 10.0.0.0 a 10.255.255.255 (una clase A entera) • Clase B: de 172.16.0.0 hasta 172.31.255.255 (16 clases B ente-

ras) • Clase C: de 192.168.0.0 hasta 192.168.255.255 (256 clases C

enteras)

Restricciones en las direcciones IP Algunas cifras de las direcciones IP tienen un significado especial y no son utilizables para denominar un host. Fundamentalmente hay que partir de las siguientes dos premisas:

• Una red se identifica por la primera dirección de su red. Así por ejemplo, la dirección 107.0.0.0 determina la red de clase A 107, sin poderse utilizar por ningún host.

U.D. 1: Redes de comunicación de datos 7

• La última dirección de la red (acabada siempre en 255, valor máximo del octeto), se utiliza para mensajes de difusión, esto es, mensajes a todos los host de la red. Por tanto un mensaje dirigido a la direc-ción 107.255.255.255 llegará a todos los host de la red de clase A 107. Por lo tanto, no se puede utilizar para ningún host.

Además de estas restricciones que afectan a todas las redes de cualquier clase, la dirección que comienza por 127 (de clase A) tiene un uso especial. Esta dirección se denomina de retorno (lookback) y designa al propio inter-faz de red que origina la petición. Es por tanto una dirección utilizada para verificar la configuración de red de un host y los mensajes se reflejan en vez de enviarse.

Modos de transmisión y direcciones IP Existen tres modos de realizar una transmisión IP. Cada uno utiliza un tipo de dirección IP distinto.

• Mensajes de difusión única: proceden de un host y van dirigidos a otro. Estos pueden encaminarse y van de una dirección IP a otra IP.

• Mensajes de difusión (broadcast): éstos son recibidos por todos los host activos de la red desde la que se ha originado. Su utilidad es múltiple y una de las más significativas es para la obtención de la di-rección MAC del destino (protocolo ARP). La dirección destino es la última de la red en que se encuentra el host que la ha originado (por ejemplo, si el host tiene la dirección 192.168.17.230, el mensaje de difusión irá a la dirección 192.168.17.255 que es la última de su red; si tiene la 155.17.254.8, la dirigirá a la 155.17.255.255)

• Mensajes de multidifusión: van dirigidos a grupos de hosts perte-necientes a un segmento de red local o remota. Los identificadores de red de destino multidifusión, recordemos que son las clases D, que comienzan por los bits 1110 (direcciones 224.0.0.0 a 239.255.255.255).

Subredes Cuando tratamos con redes que no tienen conexión a Internet, el uso de direcciones IP privadas hace que prácticamente no tengamos límite en su número. Por ejemplo, el uso de una clase A privada 10.0.0.0 permite dispo-ner de hasta 16.777.000 host distintos en la red, mucho más de lo que la hace operativa. En el caso de redes con conexión a Internet, deberemos utilizar las direc-ciones públicas que se nos otorguen por el proveedor o por el estamento asignador. La escasez de direcciones es tan general que ni siquiera es pro-bable que nos asignen una clase C entera (hasta 254 host en la red). Lo normal es que nos den una parte de esa clase. Pero entonces se plantea el problema de cómo distinguir si dos host están en la misma red cuando ya no podemos confiar en que si se encuentran en la misma clase estén en la misma red. Pongamos un ejemplo: RIPE o nuestro proveedor nos asigna la subclase 195.31.47.128-195.31-47.255, es decir, media clase C. Un host que tenga

U.D. 1: Redes de comunicación de datos 8

la dirección 195.31.47.39 no estará en la misma red y sin embargo la clase C es la misma. Por tanto encontramos un límite a la regla general de redes descrita en los apartados anteriores. Debemos precisar algo más sobre identificadores de redes para dar solución a este problema. La solución teórica consiste en tomar algunos bits del Id de host para usarlos como Id de subred (concepto extendido de red). Veamos con el ejemplo anterior el concepto de subred: Nos encontramos ante una subred otorgada con direcciones 195.31.47.128 a la 195.31.47.255. El host 195.31.47.39 se encuentra en otra subred. Po-demos ver los números en binario para comprender la diferencia entre estas subredes:

Ilustración 9

Inicialmente vemos que los tres primeros octetos son iguales, como es lógi-co. En el último, podemos observar que todas las direcciones comprendidas entre la 128 y la 255 tienen el primer bit a 1, mientras que las que son an-teriores a 128 lo tienen a 0. Esto hace pensar que ese primer bit está sir-viendo para identificar la subred en la que se encuentran. Ampliando por tanto el concepto de red a subred, podemos concluir que en el caso de las distintas clases (A, B, C, …) se utiliza un número de bits igual al de octetos:

• En una clase A, se toman los primeros 8 bits (primer octeto) para de-finir la red.

• En una clase B, se toman los primeros 16 bits (dos octetos) para la definición de la red.

• En una clase C, se toman los 24 bits iniciales (tres octetos) para su definición como red.

Pero en el caso del uso de subredes, se tomarán algunos bits del identifica-dor de host para la definición de las subredes y, por tanto, ya no coincidirán con los octetos.

U.D. 1: Redes de comunicación de datos 9

Ilustración 10

Podemos observar en la figura cómo en las clases A, B y C puras, los identi-ficadores están formados por un conjunto de bits que coincide con los octe-tos. Sin embargo en los tres ejemplos siguientes, se observa que:

• En la subred de una clase A, hemos tomado 4 bits del Id. de host pa-ra formar subredes. Así podremos formar 16 subredes (2 símbolos elevado a 4 posiciones) con 1.048.576 host en cada subred (2 símbo-los elevado a 20 posiciones restantes de Id. de host).

• En la subred de una clase B, hemos tomado 5 bits del Id. de host pa-ra formar subredes. Dispondremos de 32 subredes (2 elevado a 5) con 2.048 host en cada subred (2 elevado a 11)

• Por último, en la subrede de clase C, hemos tomado 3 bits del hostid para las subredes. Habrá, por tanto, 8 subredes (2 elevado a 3) con 32 host en cada subred (2 elevado a 5)

Llamaremos en general identificador de subred (subnetid) o, a veces, de forma general identificador de red (netid) a los números binarios to-mados para definir la subred. Así en el caso de la subred de clase A de la figura anterior, diremos que hemos tomado 12 bits para definir la subred, o de otra forma, que el identificador de red/subred consta de 12 bits. De for-ma análoga en la subred de clase B. el netid consta de 21 bits (16 netid+ 5 subnetid)

Máscara de subred Según lo anterior, al referirnos a subredes, deberemos indicar cuántos bits se toman para la definición de redes/subredes. El número binario obtenido al poner un 1 en una posición utilizada para el netid y un 0 en el usado para el hostid, le denominamos máscara de subred.

U.D. 1: Redes de comunicación de datos 10

Ilustración 11

U.D. 1: Redes de comunicación de datos 11

Direccionamiento de redes y subredes Hemos visto hasta ahora cómo denominar a los host en IP. Es importante constatar que la dirección IP marca además del identificador del host, la red (o subred, usando máscaras de subred) en la que se encuentran. La pregunta más importante del tema se plantea ahora: ¿Cómo reconoce un host que el host destino está en su red o fuera de ella? Debemos observar que la forma de actuación en un caso u otro es muy dis-tinta. Si el destino está en su red deberá pasar la información a la capa in-ferior de acceso a la red, que es quien se encarga de comunicar dos nodos que se encuentran en la misma red. En el segundo caso, deberá existir un mecanismo para encaminar el mensaje fuera de la red con destino a la red remota. La respuesta al problema planteado no es compleja: bastará comparar el identificador de red/subred del destino con el identificador de red/subred del origen. Si son iguales, ambos hosts estarán en la misma red/subred. En el caso de clases puras (A, B ó C), basta con mirar el número de octetos adecuados para saberlo. Por ejemplo para una clase B, miraremos los dos primeros octetos que son los que definen la red. Pero en el caso de subre-des, la respuesta no es tan sencilla y deberemos dar una más general ope-rando con la máscara de subred. Cuando un host debe saber si el destino está en su misma red, aplica la máscara de subred a las direcciones origen (la suya) mediante el operador AND (el operador AND entre dos números binarios da como resultado 1 si los dos son 1 y 0 en otro caso). Los resultados serán las subredes origen y destino. Si ambas son iguales, las direcciones de origen y destino están en la misma subred.

Ejemplo 1 Veamos con un ejemplo. El host con dirección IP 161.23.215.80 y máscara de subred 255.255.240.0 quiere comunicar con el host 161.128.40.253. Deberemos responder si el host destino está o no en la misma subred que el origen: En la tabla podemos ver la resolución.

U.D. 1: Redes de comunicación de datos 12

Ilustración 12

Primero pasamos a binario la dirección IP origen, la máscara de subred y la dirección IP destino. Después aplicamos la operación AND entre IP origen y máscara de subred. Análogamente entre IP destino y máscara de subred. Pasamos ambos resultados a decimal y comparamos. En nuestro caso los resultados son 161.23.208.0 es la subred a la que per-tenece la IP origen y 161.128.32.0 es la subred de la IP destino. Como ambas no son iguales, se trata de hostque están en distintas redes por lo que la información será preciso encaminarla.

Ejemplo 2 Comprobar si el host con dirección IP 192.168.15.34 y máscara de subred 255.255.255.248 está en la misma subred que el que tiene la dirección IP 192.168.15.57.

Ilustración 13

Tal y como se aprecia en la imagen las subredes resultantes al aplicar la máscara de subred a las direcciones IP dadas son 192.168.15.32 y 192.168.15.56 que al no ser iguales, podemos concluir que esos hosts no

U.D. 1: Redes de comunicación de datos 13

se encuentran en la misma subred. Por tanto la comunicación deberá enca-minarse.

El protocolo de resolución de direcciones (ARP) Llegados a este punto ya disponemos de un mecanismo que nos permita conocer si el host destino se encuentra en la misma red o subred que el ori-gen. Como hemos visto, sólo se admiten dos respuestas:

• Sí, se encuentran en la misma red/subred • No, se encuentran en distintas redes/subredes

En este apartado vamos a estudiar qué sucede en el primer caso. El segun-do caso será tratado más adelante cuando estudiemos los protocolos de en-caminamiento. La descripción de la situación es simple: dado un host con una IP, por ejemplo, de 192.168.200.17 y máscara de subred 255.255.255.0 (clase C entera, por simplificar) desea transferir información al host de IP 192.168.200.197. Al encontrarse dentro de la misma red, el problema se debe transferir a la capa de acceso a la red, ya que por definición permite la comunicación en-tre nodos de la misma red. Pero aún nos falta un paso por resolver antes de transferir la misión a la capa 1. La capa de acceso a la red permite la comunicación si conoce la di-rección física del nodo origen y la del nodo destino. Hasta ahora y con la información planteada sólo se conocen las direcciones IP de ambos pero no su dirección MAC. A este respecto es conveniente recordar que la comunicación en Ethernet entre dos nodos se establece enviando la trama a todos los nodos de la red, informando de la dirección origen y destino de la trama. Todos los nodos leen la información pero solo el destino la recoge. Por tanto sólo necesitamos un mecanismo que nos permita en la LAN obte-ner la dirección física o MAC de un host conocida su dirección lógica IP. De esta importante misión se encarga el protocolo de resolución de direc-ciones (ARP – Address Resolution Protocol). IP llama a ARP utilizando la dirección IP del host destino y ARP devuelve la dirección física correspon-diente. ARP funciona de una forma muy simple: 1. Cuando un host desea saber la dirección MAC de otro cuya dirección IP

conoce, envía un mensaje a todos los hosts de su red (mensaje de difu-sión o broadcast) con las siguientes cabeceras (observe que incluimos las cabeceras de la capa de acceso y de la capa de interred):

Ilustración 14

2. Este mensaje al ir dirigido al nodo FF-FF-FF-FF-FF-FF supone un mensa-je a todos. Todos los nodos lo recibirán pero al leerlo únicamente contes-

U.D. 1: Redes de comunicación de datos 14

tará aquel cuya dirección IP coincida con la enviada como destino en el encabezado IP.

3. ARP le entrega la trama de respuesta al origen quien pasará la informa-ción a IP para poder conformar un paquete Ethernet.

Ilustración 15

Con el fin de evitar este tipo de mensajes de forma continua, todos los hosts mantienen una tabla interna temporal (caché) con las últimas peticio-nes atendidas. De esta forma si el host tiene que volver a comunicar con el mismo destino ya conocerá la dirección física de este. Puede consultar su tabla caché ARP mediante la instrucción de línea de co-mando ARP –a (en equipos Windows) o arp (en Linux)

Ilustración 16

Ilustración 17

Aunque menos utilizado existe un protocolo inverso a ARP, denominado RARP (Reverse Address Resolution Protocol – Protocolo inverso de resolución de direcciones) que permite conocer la dirección IP destino si se sabe su dirección MAC. Éste es utilizado por un importante protocolo que veremos en la segunda parte denominado DHCP.

Últimos comentarios sobre IP Antes de pasar al encaminamiento vamos a dedicar esta sección a algunos temas no tratados sobre IP anteriormente. Además del direccionamiento, IP se encarga de otras misiones, entre las que destacan:

• Fragmentación y reensamblaje de los datagramas: el tamaño de un datagrama IP (paquete de datos en IP) puede alcanzar los 65.535 octetos. Es evidente que la capa de acceso al medio rara vez

U.D. 1: Redes de comunicación de datos 15

puede soportar este tamaño. Por tanto, IP también se encarga de la fragmentación de los datagramas en el tamaño adecuado al protocolo de acceso al medio que corresponda (por ejemplo, 1.500 en Ether-net).

• Es importante la información que se encuentra en las cabeceras IP fundamentalmente las referidas a origen y destino. Más adelante co-mentaremos una importante función de estas cabeceras.

Ilustración 18

• Hemos comentado la escasez existente de direcciones IP en la actua-lidad. El reparto llevado a cabo por clases A, B y C, fomenta que sean desaprovechadas muchas en clases A y B, y sin embargo existan muy pocas para clases pequeñas. Incluso se ha tenido que recurrir a fragmentar clases A para obtener clases C gracias a las máscaras de subred. A esto hay que añadir el aumento de conexiones fundamen-talmente permanentes debido a la Internet de Banda Ancha. Para pa-liar esta situación se ha desarrollado la versión 6 del protocolo IP (IPv6), la actual es IPv4. En ella se utilizan direcciones IP de 128 bits frente a los 32 actuales. Se supone que con ese incremento no se producirá mayor escasez. No obstante la complejidad de la migra-ción de versión hace que se vaya desarrollando desde hace tiempo sin una perspectiva clara de implantación global.

• Por último es preciso mencionar que IP también se ocupa del enca-minamiento, aunque para situaciones más complejas se recurra a otros protocolos más especializados. Este punto es el que se va a tra-tar en lo que queda de tema.

Encaminamiento IP Para estudiar como IP encamina los datagramas entre redes hasta su desti-no hemos optado por hacerlo de una forma gradual, de mayor sencillez a mayor complejidad. Por ello, inicialmente veremos el encaminamiento entre redes adyacentes e iremos aumentado la dificultad hasta llegar a protocolos más específicos.

U.D. 1: Redes de comunicación de datos 16

Encaminamiento IP simple Denominamos encaminamiento simple al proceso de envío de información entre dos redes que son adyacentes. Observe la siguiente figura:

Disponemos de dos redes Ethernet con IP 192.168.1.0 y 192.168.200.0. Deseamos enviar información desde el PC con dirección IP 192.168.1.50 al PC con dirección 192.168.200.198. Al no encontrarse en la misma red, el PC C recurrirá a lo único que puede hacer: enviar la información a su puerta de enlace predeterminada. En las redes, los equipos que no encaminan únicamente poseen información de su puerta de salida. Esta configuración le será bien conocida cuando ac-cede a las propiedades de su tarjeta de red.

Ilustración 20

Ilustración 19

U.D. 1: Redes de comunicación de datos 17

Estos hosts no poseen información de enrutamiento y, por tanto, cuando desean conectar con otro equipo que no se encuentra en su red, encaminan el datagrama a su puerta de enlace predeterminada o gateway. Normal-mente éste es un router o dispositivo que sí puede encaminar el tráfico con alguno de los métodos que veremos más adelante. Por tanto PC C crea un datagrama en el que coloca como direcciones IP de origen la suya, direcciones IP destino la del PC remoto y conformando la trama de capa de acceso de red, colocará la MAC suya como origen y la MAC del gateway como destino. Observe el datagrama conformado que va dirigido por las flechas rojas. Es lógico actuar así. En la capa de acceso se conocen las comunicaciones a través de las direcciones MAC. Por tanto, para PC C la comunicación dentro de su red irá desde su MAC a la MAC del gateway. Sin embargo, para la ca-pa de red, el datagrama seguirá teniendo como origen la IP de PC C y como destino la IP de PC Z. Como conclusión: al atravesar un datagrama distintas redes, mantie-ne como origen y destino las direcciones IP conformadas en el ori-gen de la comunicación, mientras que las cabeceras de las tramas de capa de acceso se modifican en cada salto. Llegado el datagrama al encaminador, modificará la trama al pasarla a la siguiente red, colocando como MAC de origen su propia MAC y como MAC de destino la del equipo PC Z (que posiblemente deberá hallar mediante ARP). Este datagrama lo podemos observar por las líneas fucsia. Por fin, el datagrama llega a su destino. La misión del encaminador en este caso ha sido simple. Al ver que la direc-ción IP destino del datagrama le era conocida por ser de la misma red que una de sus interfaces, ha recurrido a la entrega directa con el host. Este caso no siempre es así. Muchas veces las redes se agregan y los encamina-dores deben tomar decisiones en base a reglas y protocolos que comenta-mos a continuación.

U.D. 1: Redes de comunicación de datos 18

Encaminamiento IP complejo Cuando la red destino no es adyacente al encaminador del origen, el plan-teamiento anterior es insuficiente. Observe la siguiente figura:

Ilustración 21

El PC A desea enviar un mensaje al PC Z. Observemos que ambos se en-cuentran en distinta red pero que además éstas no son adyacentes (PC A está en la red 192.168.1.0 y PC Z está en 192.168.2.0, pero se debe atra-vesar la red 192.168.101.0) Como podríamos esperar, PC A conforma un datagrama con destino PC Z, indicando en la trama su MAC origen y la MAC de su router R1 como desti-no. Hasta ahora no ha cambiado nada con respecto al ejemplo anterior. Cuando llega el datagrama a router R1 sucede que, en principio, R1 no conoce nada sobre la red 192.168.2.0 ya que no está conectada a ella. Sal-vo que tuviera como puerta de enlace predeterminada el router R2, no sa-

U.D. 1: Redes de comunicación de datos 19

bría qué hacer con el datagrama y contestaría a PC A el consabido “host de destino inaccesible”. Aun cuando su puerta de enlace predeterminada fuera la comentada el pro-blema no se resuelve en otros casos. Se hace necesario por tanto algún mecanismo que informe al router qué hacer con los datagramas que vayan a otras redes no adyacentes. Para resolver el problema se recurre a las denominadas tablas de enca-minamiento o enrutamiento que disponen todos los equipos conectados a una red TCP/IP. Puede observar la tabla de encaminamiento de su PC eje-cutando la instrucción ROUTER PRINT (para Windows) o simplemente route en Linux.

Ilustración 22

Ilustración 23

Existen dos tipos de tablas de encamintamiento: • Tablas estáticas. Son mantenidas por el administrador de la red. • Tablas dinámicas. Se mantienen automáticamente por un protoco-

lo de encaminamiento.

Tablas de encaminamiento estáticas Las tablas de encaminamiento estáticas son las más antiguas y suponen una solución para redes simples. Deben ser actualizadas manualmente en base a la información de rutas a redes que se tenga en cada momento y esta información no siempre es sencilla, ni siquiera en los casos más sim-ples. En el ejemplo anterior podríamos haber agregado una ruta estática a nues-tro encaminador R1, indicando que para alcanzar la red 192.168.2.0 debería encaminar al router R2. Con esto el problema se hubiera solucionado. Todos los equipos, PC, servidores o routers, poseen formas de agregar ma-nualmente rutas a las tablas estáticas. Por ejemplo en Windows se puede realizar mediante la instrucción

U.D. 1: Redes de comunicación de datos 20

ROUTE ADD IP_DESTINO MASK MÁSCARA GATEWAY METRIC N IF INTERFAZ

Donde se ha colocado en cursiva los elementos a rellenar. En otros sistemas se realiza de forma análoga. Es evidente que el mantenimiento de estas tablas es complejo y tedioso, por lo que se han elaborado diversos mecanismos que permiten una admi-nistración automática de estas tablas de encaminamiento.

Protocolos de encaminamiento

Protocolo de información de rutas (RIP) El protocolo RIP (Routing Information Protocol – Protocolo de infor-mación de rutas) es uno de los más utilizados para mantener las tablas de encaminamiento en TCP/IP. RIP es un protocolo de encaminamiento de vector distancia. Este método consiste en calcular la ruta a un destino en base a costes, que se corres-ponden al número de saltos de redes que se deben atravesar para llegar al destino. Al número de saltos para alcanzar un destino se le denomina mé-trica y, según RIP, se elegirá la ruta de las posibles que tenga menor mé-trica. Observe de nuevo otra figura:

Ilustración 24

Para comunicar el router A con el X existen diversas rutas. Preste atención a la trayectoria marcada en color rojo. Evidentemente es una ruta válida pues los datagramas alcanzarán su destino. Su métrica es 6 (saltos AB, BC, CE, EF, FD y DX). Ahora veamos la trayectoria marcaza en azul. Es obvio que también se trata de una ruta válida. Contemos ahora los saltos: AF, FG, GH y HX. Vemos que su métrica es 4. Esta será la ruta elegida por RIP. Para que los routers sepan las distintas rutas hacia un mismo destino, se comunican informándose de los destinos y sus métricas, incrementando en 1 a cada salto que se produce de alejamiento. Para entender esto, veamos una vez más otra figura con un esquema sim-ple:

U.D. 1: Redes de comunicación de datos 21

Ilustración 25

Vemos que tenemos cinco redes unidas por cuatro enrutadores. Cuando encendemos A, sólo sabe que está a un salto de RED 1 y de RED 2. Entonces difunde esa información mediante un paquete RIP a su router próximo. B asume su propia información junto con la remitida por A. De esta forma B sabe que esta a 1 salto de RED 2 y de RED 3. Como A le ha informado de sus rutas, B añade la información de que para llegar a RED 1 puede hacerlo a través de A con métrica 2 (añade 1 a la métrica informada por A). A también le informa que puede alcanzar RED 2 por él, pero B lo descarta pues ya dispone de información sobre RED 2 con una métrica me-nor (RED 2 tiene métrica 1 para B, mientras que A le informa con métrica 2, ya que se añade 1 a lo comunicado por A) Siguiendo con este esquema B pasa su información a C. C sabe que tiene métrica 1 con RED 3 y RED 4. Añade la información proporcionada por B: puede llegar a RED 2 con métrica 2 a través de B y a RED 1 con métrica 3 a través de B. Descarta la información proporcionada por B sobre RED 3 ya que tiene una métrica mayor. Y así sucesivamente y, evidentemente con retorno, ya que cuando se com-plete hacia D, D informará de su tabla a C, éste a B y por último a A. A este fenómeno de comunicación de rutas inicial se le denomina conver-gencia de rutas. Pese a ser un protocolo efectivo, presenta algunos inconvenientes que hace optar en muchos casos por otros más avanzados y complejos: Algunos de estos problemas son:

• RIP sólo admite como máximo métrica 15, por lo que no son alcanza-bles los destinos que esté a más de 15 saltos.

• RIP basa su información en el número de saltos sin tener en cuenta que a veces un camino más corto no es el más rápido. Si en el ejem-plo inicial sobre RIP uno de los enlaces fuera un módem analógico a 56 kbps, mientras que todos los de la ruta más larga fueran ATM a 155 Mbps, está claro que el camino deseado sería el más largo.

• Cuando una conexión cae, es posible que no se actualice la informa-ción.

• En algunos casos se puede producir un efecto de cuenta infinita de-bido a la entrada en bucles. Para solucionar esto se recurre a técnicas de horizonte dividido y retorno envenenado.

Además RIP v1 no trabaja con subredes. Sí lo hace la versión 2 de RIP.

U.D. 1: Redes de comunicación de datos 22

IGRP y EIGRP Son protocolos similares a RIP (son protocolos de vector distancia) pero al-go más avanzados. Presentan como consideración importante que son pro-pietarios de Cisco Systems y, por tanto, sólo utilizables en esta marca de routers. Los avances más importantes de estos protocolos son las caracterizaciones del vector distancia, en las que se tiene en cuenta factores como el ancho de banda, la carga, el retardo y la confiabilidad. Estos factores pueden ser administrados para dar más o menos importancia. EIGRP es una versión avanzada de IGRP, con mayor eficacia.

OSPF OSPF significa abrir la ruta más corta en primer lugar. Utiliza un algoritmo basado en el estado de los enlaces, manteniendo una base de datos con la descripción de la topología del grupo de encaminadores de su sistema au-tónomo. La estructura de la base de datos es en forma de árbol. Los criterios utilizados para el cálculo de métricas son los costos, quedando determinados por elementos como la velocidad, tráfico, confiabilidad y se-guridad de la ruta. OSPF es un protocolo complejo de implantar pero eficaz para grandes redes.

Protocolos de encaminamiento exterior Los protocolos descritos anteriormente se denominan usualmente protoco-los de encaminamiento interior ya que están diseñados para su uso dentro de los sistemas autónomos. Un sistema autónomo es un grupo de encaminadores que comparten un mismo protocolo de encaminaminento. En algún punto, no obstante, los sistemas autónomos deberán intercambiar su tráfico y, por tanto, será necesario protocolos que permitan conocer las rutas de un sistema autónomo a otro. Esto sucede con los ISP y operadores de datos. Usualmente son dos los protocolos de encaminamiento exterior: EGP y BGP. EGP (Exterior Gateway Protocol – Protocolo de gateway exterior) establece las redes disponibles a través de la información de un encamina-dor exterior vecino. Asimismo EGP anuncia sus propias rutas disponibles. La información únicamente se limita a destinos disponibles. Por ello, no es po-sible un equilibrio de carga para optimizar rutas. BGP (Border Gateway Protocol – Protocolo de gateway limítrofe) usa un método más elaborado para anunciar rutas completas e otros encamina-dores BGP. Con esta información, que contiene señalizaciones y penaliza-ciones, se elaboran las rutas óptimas entre dos sistemas autónomos.

U.D. 1: Redes de comunicación de datos 23

Protocolo de mensajes de control de Internet (ICMP) No debemos deslumbrarnos por el título del protocolo. Nos estamos refi-riendo a algo tan conocido como el comando ping. IP no tiene como criterio principal la fiabilidad y puede presentar abundantes problemas. ICMP dota a IP de capacidad de mensajería y forma parte de IP de forma integral. Algunos de los mensajes que aporta ICMP son los siguientes:

• Destino inalcanzable. Informan cuando un host, red, puerto o pro-tocolo no son alcanzables.

• Exceso de tiempo. Notifican al origen si no es posible entregar el datagrama en el tiempo establecido como TTL (time to live – tiempo de vida)

• Problema de parámetro. Indican un problema de parámetro seña-lando el octeto que ha provocado el error.

• Eliminación de origen. Mensajes originados en los encaminadores cuando deben descartar un paquete por limitación de memoria inter-media o por que no se puede procesar.

• Redirección. Mensajes recibidos cuando un encaminador decide que existe una manera más directa de hacer llegar un paquete. Informa del encaminador apropiado para enviar el datagrama.

• Mensaje de solicitud y de respuesta de eco. Intercambian datos entre terminales.

• Solicitud y respuesta timestamp. Intercambian datos de tipo mar-ca de tiempo entre terminales.

• Solicitud y respuesta de información. Permiten que un host des-cubra la red a la que está conectado.

Ilustración 26

En la figura se pueden ver dos ejemplos de uso de protocolo ICMP: ping (respuesta desde un host remoto, con estadísticas de tiempo y enlace) y tracert (camino seguido por un paquete hasta su destino con estadísticas de tiempo – traceroute en sistemas Unix)

U.D. 1: Redes de comunicación de datos 24

Anexo: configuración IP en Windows Aunque es de todos conocidos, estimamos interesante una vez conocidos los grandes conceptos de redes, ver y comentar la configuración del proto-colo de Internet en un equipo Windows XP. Accedemos a Panel de Control – Conexiones de red. Mostramos la conexión solicitada (por ejemplo, una conexión de área local)

Ilustración 27

Pulsamos el botón propiedades y buscamos el elemento Protocolo Internet (TCP/IP) dentro de elementos de la conexión.

Ilustración 28

Pulsamos propiedades y se muestran los valores más importantes de IP:

U.D. 1: Redes de comunicación de datos 25

Ilustración 29

La configuración permite la obtención automática de una dirección IP a par-tir de un servidor DHCP (veáse tema 11) o asignada manualmente. Obser-vemos los valores de dirección IP, máscara de subred y puerta de enlace predeterminada. Los valores de servidores DNS se comprenderán mejor con la información de los temas 7 y 11.

U.D. 1: Redes de comunicación de datos 26

Resumen El capítulo que acaba de terminar debemos calificarlo como muy importante aunque haya resultado complicado. Hemos visto la parte más importante de la comunicación de datos que mantiene un administrador de red: el proto-colo IP. Inicialmente se ha presentado el escenario de necesidades para definir un direccionamiento. El esquema de direcciones IP no es evidente, sobre todo tras haber estudiado su tratamiento con máscaras de subred. Pero era necesario para resolver la primera gran pregunta: ¿está el host destino en mi red o fuera de ella? Si se encuentra dentro de mi red deberemos pasar la información a la capa de acceso a la red, no sin antes averiguar qué dirección MAC tiene en base a su dirección IP. Para esto utilizamos ARP. Cuando el destino no está dentro de nuestra red debemos encaminarlo, ini-cialmente a nuestra puerta de enlace predeterminada y, a partir de ella, con sistemas de tablas de encaminamiento. Hemos visto también cómo se pueden mantener esas tablas: manualmente (direccionamiento estático en manos del propio IP) o automáticamente (con protocolos de encaminamiento dinámico: RIP, IGRP, OSPF o los exteriores EGP y BGP) Al final del capítulo se ha presentado ICMP como protocolo de control utili-zado por herramientas de diagnóstico de red como ping.

En el siguiente capítulo… Vamos avanzando. El siguiente tema trata del siguiente nivel de la pila de protocolos TCP/IP: la capa de host a host. En esta capa estudiaremos los dos protocolos fundamentales: TCP y UDP. Sobre TCP comentaremos más: hablaremos de conexiones, comunicación fiable, ventanas, etc. UDP presenta no fiabilidad útil en algunos casos de comunicación ligera. Será especialmente importante en este tema el concepto de puerto de co-municación. Este concepto junto con el de socket permiten una comunica-ción y al mismo tiempo pueden establecer seguridad, pues son las bases de los cortafuegos o firewalls.

U.D. 1: Redes de comunicación de datos 27

Ejercicios propuestos Ejercicio 1

Comprobar si el host con dirección IP 192.168.115.114 y máscara de sub-red 255.255.255.224 está en la misma subred que el que tiene la dirección IP 192.168.115.57. Explique según la respuesta qué se debería hacer a continuación.

Ejercicio 2 Comprobar si el host con dirección IP 10.1.1.114 y máscara de subred 255.248.0.0 está en la misma subred que el que tiene la dirección IP 10.191.8.251. . Explique según la respuesta qué se debería hacer a conti-nuación.

Ejercicio 3 Explique brevemente en un documento que enviará a su tutor el funciona-miento del protocolo de resolución de direcciones y su relación entre Ether-net e IP.

Ejercicio 4 Hemos comentado en el capítulo que cuando los datagramas viajan por las distintas redes mantienen las direcciones IP de origen y destino, mientras que van modificando las MAC de origen y destino de las tramas en cada sal-to. Esto permite conocer siempre origen y destino aunque atraviesen diver-sas redes. Sin embargo también sabemos que si un equipo está en una LAN segura-mente va a tener direcciones IP privadas que, según lo expuesto, no son enrutables en Internet. Esto produce una contradicción y un problema. Por un lado debemos con-servar la IP origen pero si la conservamos el datagrama no se encaminará. Evidentemente esto tiene una solución simple y elegante. Se denomina NAT (Network Address Translation – Traducción de dirección de red). Le pedimos en este ejercicio que investigue en qué consiste este procedi-miento que, por otra parte, es casi absolutamente obligatorio en todos los routers. Por darle una orientación puede consultar la Wikipedia: http://es.wikipedia.org/wiki/NAT

Práctica 1 Practique un poco con el direccionamiento IP contestando a las siguientes cuestiones: 1) Direccionamiento básico. Responda a las siguientes preguntas:

a) ¿Cuál es el intervalo decimal y binario del primer octeto de todas las direcciones de clase B posibles?

b) ¿Qué octeto u octetos representan la parte que corresponde a la red de una dirección IP clase C?

U.D. 1: Redes de comunicación de datos 28

c) ¿Qué octeto u octetos representan la parte que corresponde a la red de una dirección IP clas A?

2) Determinar la parte de host y red (hostid y netid): a) Completar la siguiente tabla:

Ilustración 30

b) Dada la dirección IP 142.226.0.15 i) ¿Cuál es el equivalente binario del segundo octeto? ii) ¿Cuál es la clase de la dirección? iii) ¿Cuál es la dirección de red de esta IP? iv) ¿Es ésta una dirección de host válida?¿Por qué?

c) ¿Cuál es la cantidad máxima de hosts que se pueden tener en una red clase C?

d) ¿Cuántas redes de clase B hay? e) ¿Cuántos octetos hay en una dirección IP? ¿Cuántos bits hay en un

octeto? 3) Determinación de IP válidas en direcciones diversas

a) Complete la siguiente tabla:

Ilustración 31

Práctica 2 El desarrollo de subredes es complejo por el cálculo de direcciones y másca-ras de subred. Para ello es útil el manejo de alguna calculadora IP que se puede encontrar en Internet. Hay innumerables. Dentro del material del curso hemos colocado dos. Use la que mejor se adapte a la siguiente práctica. La empresa Industrias Enormes S.A. tiene una dirección de Clase C 192.168.150.0. Desea subdividir la red en subredes (A, B y C) utilizando un

U.D. 1: Redes de comunicación de datos 29

router como se indica en la imagen. Necesitará al menos 20 hosts por sub-red. Responda a las siguientes preguntas: 1) ¿Cuál es el equivalente en binario de la dirección de clase C

192.168.150.0 de esta red? 2) ¿Cuál(es) es(son) el(los) octeto(s) que representa(n) la porción de red y

cuál(es) es(son) el(los) que representa(n) la porción de host de esta di-rección de red de Clase C?

3) ¿Cuántos bits se deben pedir prestados a la porción de host de la direc-ción de red para poder suministrar por lo menos 3 subredes y 20 hosts por subred?

4) ¿Cuál es la máscara de subred (utilizando la notación decimal punteada) basándose en la cantidad que se pidieron prestados en el paso anterior?

5) ¿Cuál es el equivalente en números binarios de la máscara de subred a la que se hace referencia anteriormente?

Ilustración 32

Asegúrese de especificar cuáles son los cuatro octetos para la dirección de subred y la máscara de subred. Se debe utilizar la misma máscara de sub-red para todos los hosts, interfaces del router y subredes. Si tiene una más-

U.D. 1: Redes de comunicación de datos 30

cara de subred común, esto le permitirá a los hosts y routers determinar cuál es la subred hacia la que se envía el paquete IP. Generalmente, las in-terfaces del router se numeran primero al asignar las direcciones IP y a los hosts se les asignarán números más altos. 6) Completa la siguiente tabla para cada una de las posibles subredes que

se pueden crear pidiendo prestados 3 bits para subredes al cuarto octeto (octeto de host). Identifica la dirección de red, la máscara de subred, el intervalo de direcciones IP de host posibles para cada subred, la direc-ción de broadcast para cada subred y también indique si la subred se puede utilizar o no. Para este ejercicio, utilizarás solamente 3 de estas subredes

Ilustración 33

7) Asigna una dirección IP y una máscara de subred a la interfaz del router A y escríbela

8) Asigna una dirección IP y una máscara de subred a la interfaz del router B y escríbela

9) Asigna una dirección IP y una máscara de subred a la interfaz del router C y escríbela

10) Asigna una Dirección IP de host al Host X de la Subred A y asigna una dirección IP al Host Z de la Subred C (las respuestas pueden variar). Describe los pasos (utilizando AND) del proceso que se utiliza para en-viar un paquete IP desde el Host X hacia el host Z a través del router. Recuerde, cuando se realiza un AND de dos unos juntos, el resultado es un 1, si se realiza un AND de cualquier otra combinación (1 y 0, 0 y 1 ó 0 y 0) esto da como resultado cero (0). Del mismo modo, cuando se rea-liza un AND de dos direcciones IP de red, el resultado de este proceso de AND es la dirección de red (o subred) de la dirección IP destino del pa-quete. Use la información del diagrama anterior y de la práctica de labo-ratorio anterior para ayudar a asignar direcciones y máscaras de subred IP.

11) ¿Cuál es el resultado del proceso de AND para el Host X? 12) ¿Cuál es el resultado del proceso de AND para el Host Z? 13) El resultado de AND en decimales para la pregunta 7 es la red/subred

en la que se encuentra el Host X. El resultado para la pregunta 8 es la red/subred en la que se encuentra el Host Z. ¿El Host X y el Host Z es-tán ubicados en la misma red/subred?

U.D. 1: Redes de comunicación de datos 31

14) ¿Qué es lo que hará ahora el Host X con el paquete? 15) Completa los espacios en blanco en el diagrama inicial con las direc-

ciones IP, de red y máscara de subred de cada uno

Práctica 3 Tranquilo, la última práctica es corta y sencilla. Le pedimos que mida su conectividad y su ruta para alcanzar distintos des-tinos. Para ello utilice los comandos ping y tracert, y rellene la siguiente tabla:

Ilustración 34