|
Redes
locales
Capitulo 11 Tcp / Ip
Introducción
Cuando un usuario, desde su ordenador se conectada a Internet a través de una línea
telefónica o una red local , visita alguna página de Web o envía un mensaje
de correo electrónico, se realizan un sinnúmero de pequeños procesos que
tienen como objetivo conjunto transferir la información deseada y asegurar que
dicha transmisión se realice libre de errores.
Durante tal transmisión se utilizan varios protocolos.
Al conjunto de estos protocolos se les conoce como Conjunto de Protocolos TCP/IP(donde
TCP e IP significan, respectivamente, Transmission Control Protocol e Internet
Protocol) osea Protocolo de Control para la Transmision y Protocolo de Internet.
TCP/IP agrupa docenas de protocolos, que implementan
funciones a todos los niveles de las capas OSI excepto el físico.
Estructura
El modelo de comunicaciones de OSI define 7 capas. En cambio, TCP/IP utiliza 4.
Dichas capas son:
* Aplicación
* Transporte
* Red
* Enlace
Algunos prefieren llamar capa Internet a la capa de red y capa de acceso a la
red a la capa de enlace. La correspondencia entre las capas de TCP/IP y las
capas OSI es la siguiente:
la capa de aplicación de TCP/IP corresponde a las
capas de aplicación, presentación y sesión de las capas OSI, la capa de
transporte de TCP/IP corresponde a la capa de transporte de OSI; la capa red de
TCP/IP corresponde a la capa de red y también se intersecta con la capa de
enlace de OSI, por último, la capa enlace de TCP/IP corresponde a las capas de
enlace y física de OSI.
Supóngase que un usuario desea visitar la página http://www.netscape.com/home.html
y así se lo indica a Netscape (que corre en la capa de aplicación). Netscape
le pedirá a la capa de transporte que cree una conexión de punto a punto con
el servidor de Web en la computadora www.netscape.com, la que utilizará para
solicitar y recibir la página home.html.A su vez, la capa de transporte
utilizará los servicios de la capa de red (que se encarga principalmente de
enviar y recibir paquetes de información como se verá más adelante). A su
vez, la capa de red utilizará los servicios de la capa de enlace, que se
encarga de enviar a través de la red local o un ruteador la información de una
computadora a otra. Cada capa tiene funciones bien especificadas que permiten
que el proceso completo se lleve a cabo.
Capa de Enlace
La capa de enlace está implementada en el device driver del sistema operativo y
en la tarjeta de interfaz que conecta a la computadora con la red. Esta capa
tiene a su cargo los detalles de la comunicación en la parte física (hardware)
así como garantizar la confiabilidad de ésta. La capa de red le entrega a la
capa de enlace paquetes de información llamados datagramas. Cada datagrama
contiene el número IP (o dirección IP, el cual es un número de 32 bits) de su
destino. La capa de enlace tiene las funciones principales siguientes:
* Convertir los datagramas en tramas ( frames). Esto
se debe a que las tarjetas de red requiren que la información que éstas envíen
esté encapsulada en forma de tramas.
* Convertir el número IP del destinatario en su
dirección física. Cuando una computadora desea enviar una trama de una
computadora a otra es necesario que conozca la dirección física de la
computadora destinatario (cada tarjeta de red tiene una dirección única, a
la que llamaremos dirección física); esto se debe a que a ese nivel, las
direcciones IP no son significativas. La traducción de número IP a dirección
física se realiza mediante el Protocolo de Resolución de
* Direcciones ( ARP – Address Resolution Protocol).
Mediante ARP se evita que las capas superiores requieran conocer direcciones físicas.
Enviar la información a esta computadora, utilizando el protocolo que la red
local especifique o los protocolos SLIP( Serial Line Internet Protocol,
Protocolo Internet de Línea Serial), CSLIP( Compressed SLIP, SLIP Comprimido)
o PPP ( Point to Point Protocol, Protocolo de Punto a Punto) si se trata de
una línea telefónica.
* Y convertir de regreso las tramas recibidas en
datagramas para entregarlas a la capa de enlace en el lado del receptor.
Capa de Red
Esta capa es el corazón de Internet. Su función principal es la entrega de
paquetes (llamados datagramas) de una computadora fuente a otra destino.
Implementa algoritmos para ruteo, para evitar congestionamientos y para
interconexión de redes ( puertas y ruteadores). Los servicios que provee son no
orientados a conexión.
Toda la información que se transmite a través de
Internet son datagramas IP. Esta capa no es confiable, es decir, no se encarga
de verificar que un datagrama haya sido recibido o de volverlo a mandar en caso
de existir algún error.
El protocolo central de esta capa es el IP y realiza las siguientes tareas:
* Recibe de la capa de transporte la información a
enviar (en paquetes llamados segmentos) que incluyen la dirección IP del
destinatario.
* Encapsula dichos segmentos en datagramas.
* Determina cuál es la ruta que debe seguirse para
entregar cada datagrama. IP sólo es capaz de entregar paquetes a computadoras
físicamente conectadas en la misma red local. Así, si se desea enviar un
datagrama a otra red, será necesario que IP determine cuál es el ruteador o
gateway al que deberá enviarle la información. Una vez determinada la
dirección de la siguiente computadora a contactar, le entrega a la capa de
enlace el datagrama (que incluye la dirección
IP de destino).
* Cuando la computara recibe un datagrama, verifica si está destinado para
ella. Si es así, lo reensambla en segmentos y lo pasa a la capa de
transporte. Si no está destinado para ella, realiza nuevamente la operación
descrita en el punto anterior.
Otro protocolo importante de esta capa es el Protocolo
de Mensajes de Control de Internet ( ICMP Internet Control Message Protocol) que
se encarga de realizar las siguientes funciones:
* Control de flujo.
* Detección de errores en las rutas que siguen los datagramas.
* Verificación de que una computadora esté conectada y su capa de red
funcionando correctamente.
Capa de Transporte
La función principal de esta capa es permitir la comunicación directa del
remitente a los destinatarios. Consta de dos protocolos: TCP, cuya función
principal es permitir comunicación libre de errores tipo orientada a conexión;
y UDP ( User Datagram Protocol, Protocolo de Datagramas de Usuario), cuya función
principal es permitir el uso directo de datagramas IP. Las funciones de TCP son,
principalmente:
* Dividir la información que recibe de la capa de
aplicación en segmentos que pasarán a la capa de red.
* Al enviar un segmento inicializa un reloj, en
espera de una contraseña (indicando que el mensaje se recibió); si el reloj
expira antes que esta última se reciba, reenvía el segmento suponiendo que
el segmento se ha perdido.
* Cuando TCP recibe un mensaje, envía al remitente
una contraseña confirmando la recepción.
* Implementa algoritmos para verificar que la
información recibida fue la misma que la enviada; en caso de que el segmento
llegue dañado a su destino, se indica al remitente del hecho y este último
lo reenvía. Puesto que IP no garantiza el orden de llegada de los segmentos
que envía, TCP debe reordenarlos si es necesario.
* Implementa algoritmos de control de flujo.
* Da la impresión a una aplicación de tener una línea
directa en ambos sentidos ( full duplex) a través de la cual se realiza la
comunicación.
TCP otorga a la capa de aplicación una comunicación
libre de errores punto a punto (de fuente a destino) que aparenta ser orientada
a conexión (aun cuando siempre se implemente mediante servicios no orientados a
conexión); a esta conexión se le conoce como conexión TCP.
TCP define un nivel de direccionamiento, llamado
puerto, que permite distinguir entre diferentes conexiones que se estén
realizando simultáneamente. Cada puerto es identificado con un número de 16
bits. Su uso es claramente ejemplificado por el modelo cliente-servidor. Para
que el cliente pueda conectarse con el servidor, es necesario que el primero
sepa dónde encontrar al segundo; para resolver este problema, varios números
de puertos están reservados para algunas aplicaciones (correo electrónico,
telnet, ftp, web, etc.)
Los números de puerto son asignados por IANA (
Internet Assigned Number Authority, Autoridad Asignadora de Números en
Internet).
Esta agencia reserva números a los servicios que puede
ofrecer un servidor.
El número de puerto del servicio ftp es el 21, el de
telnet es 23, el de Web es el 80. En general, los números de puerto entre 1 y
255 los asigna la IANA. Un cliente de Web sabe que para conectarse con un
servidor (también de Web), debe establecer una conexión TCP al puerto 80 de la
máquina en cuestión.
Capa de Aplicación
La capa de aplicación, como su nombre lo dice, es donde se encuentran las
aplicaciones utilizadas por el usuario. Algunas aplicaciones son tan comunes que
se decidió estandarizarlas, entre ellas se encuentran acceso remoto (telnet y
rlogin), transferencia de archivos (ftp), correo electrónico (SMTP), Web
(HTTP), etc.
Direcciones IP
El número IP o dirección IP es una dirección empleada, principalmente, para
distinguir de manera única a una computadora en Internet.
Los números IP constan de 32 bits, normalmente expresados con cuatro números
decimales separados por puntos, representación conocida como notación de punto
decimal. Cada uno de estos números representa un byte del número IP; por
ejemplo: el número IP en notación punto decimal 255.97.58.1, representa al número
IP 11111111 01100001 00111010 0000001 en notación binaria. Un número IP está
compuesto de 3 partes: un identificador del tipo de clase, número de la red
local y número de computadora dentro de la red local.
Tipo de Clase
El tipo de clase permite identificar cuántos bits se utilizarán para el número
de red local y cuántos para identificar a la computadora. Si la dirección
empieza con un cero, entonces se trata de una dirección de clase tipo A, que
reserva 7 bits para el número de red y 24 para el de computadora; si inicia con
los primeros dos bits igual a 10, entonces se trata de una dirección de clase
B, con 14 y 16 bits, respectivamente, para número de red y de computadora; y
finalmente, si inicia con los tres primeros bits igual a 110, se trata de una
red tipo C que reserva 21 bits para el número de red y 8 para el de
computadora.
Red Clase A
7 bits 24 bits
0 identificador de red identificador de computadora
Red Clase B
14 bits 16 bits
10 identificador de red identificador de computadora
Red Clase C
21 bits 8 bits
110 identificador de red identificador de computadora
La clase A es para redes que pueden tener hasta 16,777,214 computadoras; las
redes de clase B pueden tener hasta 65,534 computadoras y las redes de clase C
tienen menos de 254 computadoras. Todo número IP debe pertenecer a alguna de
estas clases. El rango de los números IP que pertenecen a cada clase es:
Clase A 0.0.0.0 – 127.255.255.255
Clase B 128.0.0.0 – 191.255.255.255
Clase C 192.0.0.0 – 255.255.255.255
Número de Red Local
Cada red local debe tener un número diferente al del resto de las redes
conectadas a Internet; para garantizar que así sea, su asignación está a
cargo del Centro de Información de la Red Internet ( Internet Network
Information Center), conocido como InterNIC.
Número de Computadora en la Red Local
Cada computadora debe tener un número único dentro de la red local, tarea de
la que se encarga el administrador de la misma. Dependiendo del tipo de clase,
el número será de 8, 16 ó 24 bits. Ninguna computadora podrá utilizar el número
cero (todos los bits apagados), ni el último número (todos los bits
prendidos). Esto se debe a que el número cero está reservado para identificar
a la red como un conjunto. El último número es utilizado para identificar a
todas las computadoras de una red.
La dirección 129.97.0.0, es una dirección tipo B, con 16 bits para número de
computadora en la red local. Puesto que estos 16 bits están todos en cero, esta
dirección representa a la red completa. En cambio, 129.97.0.1 identifica a la
computadora número 1 de la red 129.97.0.0. La dirección 204.191.103.131
identifica a la computadora 131 de la red 204.191.103.0 que es clase C.
Subredes
Una vez que una organización ha obtenido una dirección
(tipo A, B o C), puede a su vez particionarla como mejor le convenga. La partición
se realizará para adaptarla a la topología de las diversas redes locales que
compongan la red de la organización. Cada una de estas redes locales que
conforman una red conectada a Internet se le conoce como subred.
La parte del número IP que correspondería al
identificador de computadora en la red local se utiliza para identificar a la
subred y la computadora dentro de esta subred. En el datagrama IP una bandera
indica si la red local está formada por subredes y de esta manera el software
correspondiente sabe cómo proceder. Para esto es necesario saber cuántos bits
del número de computadora son utilizados para identificar a una subred y cuántos
son designados para el identificador de la computadora en si. Supóngase, por
ejemplo, que se tiene una red local tipo C, y por lo tanto el identificador de
computadora en la red local consta de 8 bits, que a su vez se dividirá en un
identificador de subred y un identificador local de computadora en la subred.
El identificador local de subred puede constar desde 2
hasta 6 bits. Si se deciden utilizar n bits para el identificador de la subred,
se podrán definir hasta 2n-2 redes (esto se debe a que ni la subred 0, ni la
que tiene todos los bits prendidos son direcciones de subred válidas). Los bits
restantes se utilizarán en la misma forma en que ya se definió antes para el número
de computadora en la red local.
Si tenemos la red local (tipo C) 203.191.105.0, y
deseamos dividirla en dos subredes, deberemos utilizar 2 bits para el
identificador de la subred. Así, tendremos las direcciones de subredes
203.191.105.64, y 204.191.105.128 (204.191.105.0 y 204.191.105.192 son
direcciones de subred inválidas).
Cada una de estas redes puede a su vez tener de 1 hasta
62 computadoras (la dirección con todos ceros es de nuevo el identificador de
la subred, y la que tiene todos unos es la que identifica a todas las
computadoras en la subred).
Cuando se configura una computadora conectada a Internet, se utiliza la máscara
de subred( subnet mask), que es un número de 32 bits en los cuales se indica
con unos la parte que corresponde al identificador de la red y de la subred, y
con ceros la parte que corresponde al identificador de la computadora en la
subred.
En nuestro caso, puesto que sólo 6 bits son utilizados
para el identificador de computadora en la subred, la máscara de subred será:
11111111 11111111 11111111 11000000, que en notación de punto decimal
corresponde a 255.255.255.192.
|