Está en la página 1de 28

REDES Y SERVICIOS

TAXONOMA DE REDES Y SU EVOLUCIN

TEMA 13. El MODELO TCP/IP

1. INTRODUCCIN ........................................................................................................................................ 2

2. JERARQUA TCP/IP .................................................................................................................................. 3

3. PROTOCOLO IP ......................................................................................................................................... 6 3.1 3.2 3.3 3.4 3.5 3.6 3.6.1 3.7 3.8 DIRECCIONAMIENTO IP ..........................................................................................................................6 SUBREDES .................................................................................................................................................7 DATAGRAMAS IP .....................................................................................................................................9 ENCAPSULADO .........................................................................................................................................9 INTEGRACIN DE SUBREDES .................................................................................................................10 ENCAMINAMIENTO ................................................................................................................................10 DETERMINAR EL SISTEMA INTERMEDIO ............................................................................................13 ICMP ......................................................................................................................................................14 IPV6.........................................................................................................................................................15

4. NIVEL DE TRANSPORTE....................................................................................................................... 17 4.1 4.2 4.3 DIRECCIONAMIENTO .............................................................................................................................17 UDP ........................................................................................................................................................18 TCP.........................................................................................................................................................19

5. NIVELES ALTOS ...................................................................................................................................... 22 5.1 5.2 5.3 5.3.1 5.3.2 5.3.3 5.4 CONEXIN REMOTA...............................................................................................................................22 TRANSFERENCIA DE FICHEROS .............................................................................................................22 CORREO ELECTRNICO ........................................................................................................................22 FORMATO DE MENSAJES ...................................................................................................................22 SERVICIO DE ENVO DE MENSAJES: SMTP.......................................................................................24 SERVIDORES DE DESCARGA DE MENSAJES: POP E IMAP ................................................................25 SERVICIO DE PGINAS WEB ...................................................................................................................26

2 El modelo TCP/IP

Taxonoma de Redes y evolucin

1.

INTRODUCCIN

Poco antes de la aparicin del modelo OSI, el departamento de defensa de EEUU inicia un proyecto encaminado a proporcionar una red de datos extraordinariamente robusta, capaz de comunicar dos puntos incluso aunque alguna de las partes de la red hubiera sido severamente daada, siguiendo una arquitectura distribuida. Dicha red fue llamada ARPAnet, y creada en 1977-79. En 1983 se dividi en dos subredes: MILNET (fines militares) y ARPAnet (investigacin). Actualmente dicha red se extiende por todo el mundo, con un crecimiento exponencial y se la conoce como Internet. Se basa en la jerarqua o pila de protocolos TCP/IP. Estos protocolos son abiertos, en el sentido de que no pertenecen a ningn fabricante en concreto. Sus especificaciones son pblicas y gratuitas. El conjunto resultante no constituye un modelo de referencia propiamente dicho, ya que no existe ninguna especificacin de ste, por lo que resulta ms adecuado el nombre de jerarqua o familia. Como los protocolos de nivel de transporte TCP (Transport Control Protocol) y de nivel de red IP (Internet Protocol) son los ms conocidos, se suele utilizar el nombre de jerarqua de protocolos TCP/IP para denominar la familia completa.

Redes y Servicios

1 Ingeniero Electrnico

El modelo TCP/IP

Taxonoma de Redes y evolucin 3

2.

JERARQUA TCP/IP

En la jerarqua TCP/IP las funciones correspondientes a las capas de sesin, presentacin y aplicacin de OSI se integran en una nica capa, llamada de aplicacin, como se aprecia en la figura 1. Esta jerarqua tiene menos niveles que el modelo OSI (5 frente a 7), con lo que se gana en sencillez aunque se obtiene un modelo menos completo.

Fig. 1: Modelo de capas TCP/IP vs. OSI En la jerarqua TCP/IP se pueden distinguir los siguientes niveles, mostrados en la figura 1: Fsico o Hardware: equivalente al del modelo OSI visto anteriormente. Subred, o de interfaz de red: Nivel especfico de la subred empleada (ethernet, X.25, ATM, FDDI). Acepta los datagramas IP y los transmite hacia el nivel fsico desacoplando los niveles superiores del tipo de subred usada. Interred: Servicio de transferencia de datagramas entre sistemas finales. Acepta datos de la capa de transporte, los encapsula en paquetes IP, determina mediante un algoritmo de encaminamiento el equipo al que enviarlo y pasa el paquete a la interfaz de red. Transporte: Servicios de comunicacin extremo a extremo entre aplicaciones. Aplicacin: Es el nivel ms alto. Los usuarios utilizan esta capa para acceder a programas o Servicios de aplicacin, como Transferencia de ficheros: FTP (File Transfer Protocol). Correo electrnico: SMTP (Simple Message Transfer Protocolo). Login o acceso remoto: Telnet.

Redes y Servicios

1 Ingeniero Electrnico

4 El modelo TCP/IP

Taxonoma de Redes y evolucin

Acceso a informacin mediante web: HTTP (Hiper Text Transfer Protocol)

Adems es frecuente agrupar estos cinco niveles en dos grandes bloques: servicios de aplicacin y servicios de red, como muestra la figura 2.

Fig. 2: Modelo de capas TCP/IP Podemos enumerar algunas caractersticas de esta jerarqua: Independencia de la tecnologa de red subayacente (local, extensa, punto a punto...). Conexin universal entre dos nodos (no importa el lugar). Estndares de protocolos de aplicacin creados partir de: Abundante software preexistente. Numerosas herramientas de uso.

Dentro de los elementos conectados a una red TCP/IP distinguiremos: Sistemas finales (host), normalmente conectados a una nica subred. Sistemas Intermedios (SI) o encaminadores (routers): interconectan dos o ms redes.

En la figura 3 se muestran los niveles TCP/IP, y algunos de los protocolos que se definen para esos niveles.

Redes y Servicios

1 Ingeniero Electrnico

El modelo TCP/IP

Taxonoma de Redes y evolucin 5

Fig. 3: Pila TCP/IP y protocolos

Redes y Servicios

1 Ingeniero Electrnico

6 El modelo TCP/IP

Taxonoma de Redes y evolucin

3.

PROTOCOLO IP

Es el protocolo de interred utilizado en Internet: Internet Protocol. J. Postel. Sep-01-1981. RFC 791 (Request For Commment). Nos ofrece un servicio de interred no orientado a conexin y no confirmado, es decir, la red hace lo que puede (best effort) para entregar los datos al destino. Los datagramas pueden perderse, duplicarse o desordenarse y la red no detecta esos hechos, ni informa de ellos. Se necesitan, por tanto, mecanismos adicionales para superar estos problemas.

3.1

Direccionamiento IP

Cada sistema en una red tiene asignada una direccin de 32 bits, 4 octetos. Conceptualmente se pueden distinguir en estos 32 bits un identificador de red, y un identificador de sistema final. Todos los equipos en la misma subred comparten el mismo identificador de red. Por lo tanto, una direccin IP identifica a una subred y a un sistema conectado a dicha subred (host). Para hacer ms flexible este mecanismo el identificador de subred puede ser de varios tipos. Como podemos apreciar en la figura 3, existen 5 tipos de direcciones IP (A,B,C,D y E), que se muestran en la figura 4. Las dos ltimas estn reservadas para multicast y para uso futuro. Las tres primeras, A, B y C sirven para configura redes de distintos tamaos, ya que el nmero de bits dedicados a la parte de identificador de host (host-id) es distinta. Por ejemplo, las direcciones de tipo C permiten formar redes donde el identificador de sistema tiene 8 bits, es decir, hasta 256 equipos distintos. Como se reserva una de estas 256 direcciones para la direccin de subred (0), y otra para difusin (255), nos quedan 254 direcciones de red. Existen adems otras direcciones especiales, como la denominada bucle local (loopback, 127.0.0.0), usada, para comunicar dos procesos en el mismo sistema.

0 A B C D E 0 10 110 1110 1111 net-id

16 host-id

24

net-id net-id multicast reservadas


Fig. 4: Clases de direcciones IP

host-id host-id

Redes y Servicios

1 Ingeniero Electrnico

El modelo TCP/IP

Taxonoma de Redes y evolucin 7

Como trabajar con secuencias de 32 bits es incmodo para los usuarios se utiliza una notacin decimal, consistente en representar con un entero cada uno de los octetos que forman la direccin IP. Cada uno de estos enteros tendr un valor que oscila entre 0 y 255. Para formar la direccin se separan los enteros por puntos. Esta notacin decimal puede resultar familiar, nos encontraremos direcciones del tipo: 128.10.2.30 62.143.168.92 Esta notacin (utilizada previamente por ejemplo al mencionar la direccin del bucle local, loopback) es la que se utiliza en la figura 6, donde se aprecian varias redes interconectadas mediante encaminadores (R, routers). Para facilitar el manejo de las direcciones IP a cada direccin se le asocia un nombre. Por ejemplo, a la direccin 193.168.157.20 se le asocia el nombre esixl.esi.us.es La asignacin de nombres se realiza de forma jerrquica, separando los distintos dominios de menor a mayor de izquierda a derecha: Sistema_final.subsubdominio.subdominio.dominio Esix. esi. us. es Existe una aplicacin distribuida, DNS (Domain Name System) que permite resolver las asociaciones entre nombres y direcciones IP, y devolver a las aplicaciones de usuario la direccin IP que corresponde a un nombre de sistema final.

3.2

Subredes

Dentro de cualquiera de estos tipos de direcciones es posible aplicar subredes (subnetting): a partir de una nica direccin de red podemos tener varias redes fsicas, como se muestra en la figura 5. Recordemos que la direccin IP tiene un identificador de red y un identificador de sistema final. Para aplicar subredes interpretamos que la parte de identificador de sistema final est dividida en un identificador de subred y un identificador de equipo en esa subred. Esto se aprecia en la figura 5 aplicado a una direccin del tipo B.

Redes y Servicios

1 Ingeniero Electrnico

8 El modelo TCP/IP

Taxonoma de Redes y evolucin

0 B 10

8 net-id

16

24 host-id

10

net-id

subnet-id

host-id

Figura 5: Direccionamiento y Subredes En la figura 6 se muestra la red 138.4.0.0. En este ejemplo se divide dicha red en varias subredes fsicas, para lo que usamos el tercer octeto de la direccin IP, y obtenemos las subredes 138.4.x.0

Fig. 6: Ejemplo de uso de subredes Como se dijo anteriormente la direccin de red se especifica con un identificador de host cero. Una direccin IP identifica a una red y a un sistema conectado a dicha red. Por tanto si un sistema est conectado a dos redes tendr dos direcciones IP. Es el caso de los encaminadores de la figura previa que tendrn una direccin IP para cada interfaz en cada subred.

Redes y Servicios

1 Ingeniero Electrnico

El modelo TCP/IP

Taxonoma de Redes y evolucin 9

3.3

Datagramas IP

Los datagramas IP, o comnmente, paquetes IP (PDUs de nivel interred), son la unidad bsica de transferencia en Internet. El datagrama IP tiene dos partes: la cabecera y los datos. En la cabecera viaja, entre otra informacin, la direccin IP del equipo origen y destino, la longitud del datagrama, el tiempo de vida.... El formato detallado se muestra en la figura 7.

0 VERS

4 LONG

8 TIPO SERV.

16

19

24 LONG. TOTAL

31

IDENTIFICACION T. VIDA PROTOCOLO

FLAGS

OFFSET REDUNDANCIA CABECERA

DIRECCION IP DESTINO DIRECCION IP ORIGEN OPCIONES (OPCIONAL) DATOS ...................... RELLENO

Fig. 7: Formato datagrama IP Podemos destacar algunos campos, como la versin del protocolo, 4 bits que permiten que convivan en la red distintas versiones del protocolo IP. Lo primero que deber hacer un equipo en la red es verificar dicho campo antes de procesar el resto del paquete. El campo LONG (longitud de la cabecera) especifica el nmero de palabras de 32 bits que posee la cabecera). Como el campo OPCIONES es opcional y de tamao variable a veces ser necesario aadir un relleno en la parte final de la cabecera, antes del campo datos del paquete, ya que la cabecera siempre debe ser un mltiplo de 4 octetos. Si la cabecera no tiene campos opcionales su tamao ser de 20 octetos. En el paquete se especifican tambin la direccin IP del sistema que genera el paquete, y la direccin IP del equipo destinatario de dicho paquete. Adems existe en la cabecera un campo de redundancia cclico para detectar errores en la cabecera durante la transmisin. El campo Longitud Total, de 16 bits, especifica el tamao total del datagrama en octetos. Si deseamos conocer la longitud de los datos basta restarle la longitud de la cabecera. 3.4 Encapsulado

El datagrama IP debe ser transmitido dentro de una trama de subred, una trama fsica, como se muestra en la figura 8. A esto se le conoce como encapsulado, el datagrama IP viajar en el rea de datos de la trama. Ser necesario que en la cabecera de la trama se especifique de alguna forma el tipo de datos que est transportando. Por ejemplo, Ethernet utiliza el valor 0x0800 para especificar que transporta un datagrama IP.

Redes y Servicios

1 Ingeniero Electrnico

10 El modelo TCP/IP

Taxonoma de Redes y evolucin

Datagrama IP
cabecera datos

Cabecera trama

Datos trama

Trama Subred
Figura 8: Encapsulado de datagramas IP 3.5 Integracin de subredes

El protocolo IP funciona como protocolo de interred, integrando las diferentes subredes existentes. Se necesitar un mecanismo que permita asociar direcciones fsicas o de subred con direcciones de red. (p.e. IP sobre Ethernet, IP sobre RDSI, etc.). En la figura 9 se aprecia como son necesarias capas de adaptacin diferentes para cada subred. En el caso concreto de IP sobre X.25, la RFC 1356 especifica la forma de encapsular IP (y otros protocolos de nivel de red) sobre redes X.25.

IP RFC FDDI RFC X25 RFC 802

IP RFC-1356 X.25 LAPB Canal B Sobre X.25

Fig. 9: IP sobre distintos tipos de redes

3.6

Encaminamiento Hay dos tipos de encaminamiento, directo e indirecto, que se muestran en la figura 10.

Redes y Servicios

1 Ingeniero Electrnico

El modelo TCP/IP

Taxonoma de Redes y evolucin 11

A Directo

Indirecto

SI

Fig.10: Tipos de encaminamiento Directo: Se da entre mquinas conectadas a la misma subred fsica. No participan sistemas intermedios (routers). El remitente deber: 1. Construir el paquete IP con las direcciones IP origen y IP destino final. 2. Hallar la direccin fsica correspondiente a la direccin IP destino. Para ello utiliza un protocolo que se ejecuta de forma dinmica y que independiza las direcciones IP de las fsicas. Este es el protocolo ARP (Address Resolution Protocol) , cuyo funcionamiento se muestra en la figura 11. El equipo origen, mediante un mensaje de difusin (ARPrequest), solicita en la red la direccin fsica del equipo destino. El equipo destino deber contestar (ARP-reply con su direccin fsica, que en este caso ser su direccin MAC. Los equipos en la red tienen una memoria intermedia en la que almacenan estas correspondencias entre direcciones IP y direcciones fsicas para evitar los mensajes de difusin. Adems en la peticin inicial el equipo enva su direccin IP y su direccin MAC, con lo que todos los equipos pueden capturar esa informacin para su uso posterior.

Redes y Servicios

1 Ingeniero Electrnico

12 El modelo TCP/IP

Taxonoma de Redes y evolucin

ARP request: (IP-a, IP-c, MAC-a, ???) A B C D

ARP reply: (MAC c)

Fig.11: Protocolo ARP 3. Encapsular el datagrama IP en la trama 4. Enviar la trama resultante al destinatario final. Indirecto: El destino y el origen no estn conectados a la misma subred fsica. El origen deber utilizar un sistema intermedio para que reenve su mensaje. El remitente deber identificar el SI al que enviar el datagrama, utilizando para ello tablas de encaminamiento. Dicho SI se encargar de encaminar el datagrama hacia el sistema destino. Los pasos son similares a los del encaminamiento directo, excepto la determinacin de la direccin fsica, que no ser la del equipo final sino la del equipo intermedio. Por lo tanto, la principal diferencia con los 4 pasos previos est en el paso 2. 1. Construir el paquete IP con las direcciones IP origen e IP destino. 2. Obtener la direccin fsica del Sistema intermedio. Para ello Determinar el sistema intermedio. Obtener la direccin fsica del SI.

3. Encapsular el datagrama IP en la trama 4. Enviar la trama resultante al sistema intermedio. A su vez el SI repetir los pasos 2-4 para alcanzar el destino final o el siguiente SI. La direccin IP destino en el datagrama es la del destino final, no la de los sistemas intermedios por los que pase..

Redes y Servicios

1 Ingeniero Electrnico

El modelo TCP/IP

Taxonoma de Redes y evolucin 13

3.6.1 Determinar el sistema intermedio


Por lo tanto, antes de enviar un paquete, lo primero ser saber si la mquina destino pertenece a la misma subred o no. Para ello se debe comprobar si el identificador de subred es el mismo o no para los dos equipos. Si no ser necesario, en funcin de la direccin destino, determinar el sistema intermedio (en el caso de que haya ms de uno) que debe recibir el paquete IP para su posterior reenvo.. Para determinar si el destino est en la misma red, y para determinar el sistema intermedio a utilizar, se utiliza el concepto de mscara. Es necesario saber qu bits de la direccin IP corresponden a la parte de red fsica, y esto se especifica con una secuencia de 32 bits, la mscara de red. Si el AND lgico de la direccin IP destino con esta mscara coincide con el AND de la direccin IP origen es que pertenecen a la misma subred. La direccin IP de un equipo en una subred se compone de la direccin IP y de la mscara de esa subred. En la figura 12 se muestra una mscara de red donde todos los bits son 1 excepto los 6 ltimos (mscara:255.255.255.192). Todos los equipos que coincidan en los primeros 26 bits pertenecen a la misma subred.

id .de red

id. subred

id. sistema

direccin mscara

111111111111

11111111111111

000000

Fig.12: Mscara de red En la figura 13 se muestra una red compuesta de 4 subredes y la tabla de encaminamiento del encaminador G2. En ella se aprecia que si el destino final est en las redes 20.0.0.0 o 30.0.0.0 el encaminamiento es directo. En cambio, para las redes 10.0.0.0 40.0.0.0 es indirecto, y debe usar los encaminadores G1 y G3 respectivamente. Podemos observar tambin que los encaminadores tiene direcciones IP distintas en cada interfaz. G2 tiene dos direcciones IP: 20.0.0.6 en la subred 20.0.0.0 y 30.0.0.6 en la subred 30.0.0.0.

Redes y Servicios

1 Ingeniero Electrnico

14 El modelo TCP/IP

Taxonoma de Redes y evolucin

10.0.0.0 10.0.0.5

G1 20.0.0.5

20.0.0.0

R 20.0.0.0 30.0.0.0 10.0.0.0 40.0.0.0

G directo directo 20.0.0.5 20.0.0.7 30.0.0.6 20.0.0.6 G2

40.0.0.7 40.0.0.0 G3

30.0.0.7 30.0.0.0

Fig. 13: Subredes y tablas de encaminamiento El mecanismo bsico de encaminamiento en este caso consiste en: 3.7 Si la direccin IP destino del datagrama es directamente encaminable, encapsular y enviar. Si es un prefijo que viene en la tabla: Enviar al SI que indique la tabla. Si no viene en la tabla: Enviar al SI por defecto

ICMP

El nivel de red est basado en software, y el hardware de red no informa sobre condiciones excepcionales. Por lo tanto necesitamos mecanismos para suministrar informacin sobre errores. Estos mecanismos son proporcionados por el protocolo ICMP (Internet Control Message Protocol). Este protocolo nicamente informa de errores o da informacin de control, as que ser un protocolo de nivel superior, p.e. TCP, el que se encargue de solucionar los problemas. Dichos mensajes viajan como datos en los datagramas IP, como muestra la figura 14, y permiten a los encaminadores mandar mensajes de error o de control a otros sistemas intermedios o finales. Si un sistema intermedio detecta un error al procesar un datagrama IP slo podr reportarlo a la fuente de dicho datagrama, puesto que es la direccin IP que viaja en el datagrama y no la de los sistemas intermedios recorridos. Ejemplos de mensajes que define este protocolo: Destino inalcanzable, tiempo de vida excedido, redireccin, congestin, problemas en los parmetros, etc.

Redes y Servicios

1 Ingeniero Electrnico

El modelo TCP/IP

Taxonoma de Redes y evolucin 15

Mensaje ICMP

cabecera Datos ICMP

Datagrama IP

cabecera

datos

Cabecera trama

Datos trama

Trama Subred
Figura 14: Encapsulado de mensajes ICMP en datagramas IP Hay herramientas de gestin que utilizan este protocolo, como el comando ping. Este comando sondea un destino final utilizando para ello el mensaje ICMP Solicitud de eco y esperando del destino final una mensaje ICMP del tipo Respuesta de eco. El recibir una respuesta significa que todos los sistemas intermedios encaminan correctamente, y que el sistema final est encendido, y funcionan sus protocolos IP e ICMP. 3.8 Ipv6

Ya existe una nueva versin del protocolo IP, IPv6 (frente a Ipv4). Ipv6 viene a resolver algunos de los problemas de Ipv4: Aumentar el espacio de direcciones. Frente a los 32 bits de Ipv4 Ipv6 ofrece direcciones ms largas, de 128 bits. Simplificar la cabecera del paquete IP: Longitud fija (40octetos) sin campos opcionales, con 6 campos y dos direcciones. Soporte de nuevas aplicaciones (sonido, vdeo) en tiempo real con mecanismos que aseguren el control de retardos. Incluir mecanismos de seguridad en el propio protocolo. Mecanismos que faciliten la extensin del protocolo en el futuro. Mecanismos de auto- configuracin.

Esta nueva versin debe reemplazar gradualmente a Ipv4 pero tendr que coexistir con la versin previa durante el periodo de transicin. La especificacin base se puede encontrar en la RFC 2460, Internet Protocol, Version 6 (IPv6).

Redes y Servicios

1 Ingeniero Electrnico

16 El modelo TCP/IP

Taxonoma de Redes y evolucin

Redes y Servicios

1 Ingeniero Electrnico

El modelo TCP/IP

Taxonoma de Redes y evolucin 17

4.

NIVEL DE TRANSPORTE

El objeto del nivel de transporte es comunicar las aplicaciones entre si (comunicacin extremo a extremo). Utiliza el servicio de red no orientado a conexin proporcionado por el protocolo IP. Existen dos mecanismos de transporte en la jerarqua TCP/IP (ver figura 3): 4.1 TCP (Transmision Control Protocol) descrito en la recomendacin RFC793. UCP (User Datagram Protocol) descrito en la recomendacin RFC 768. Direccionamiento

Es necesaria la extensin del direccionamiento de red para permitir la comunicacin entre dos procesos de aplicacin. Surge el concepto de puerto. Existen dos enfoques: Universal, en el que una entidad central asigna los nmeros de puerto a determinados servicios. Estos puertos reservados se conocen como asignaciones bien conocidas de puerto (well-known). En general se reservan los puertos bajos, de rango inferior a 1024, aunque este lmite puede ser superado. Dinmica, en el que solicitan cuando hacen falta. Se utilizan puertos altos, por encima de 1024.

En la figura 15 se muestra como las aplicaciones utilizan distintos puertos (p1, p2, p3,..) sobre la capa de transporte, y como en los sistemas intermedios no existe capa de transporte. La capa de transporte es la primera capa extremo a extremo.

telnet ftp p2 p1 Transporte IP

... p3

telnet ftp p2 p1 Transporte IP IP

... p3

Fig. 15: Comunicacin extremo a extremo y puertos

Redes y Servicios

1 Ingeniero Electrnico

18 El modelo TCP/IP

Taxonoma de Redes y evolucin

4.2

UDP

Proporciona un servicio de transporte de datos entre aplicaciones no orientado a conexin: los mensajes pueden perderse, duplicarse o llegar desordenados. UDP toma los datos de las aplicaciones, aade una cabecera y luego se envan dentro de un datagrama IP, como se muestra en la figura 16.

Mensaje UDP

cabecera

Datos

Datagrama IP

cabecera

datos

Cabecera trama

Datos trama

Trama Subred

Fig. 16: Encapsulando UDP sobre IP El formato se muestra en la figura 17:

0 Puerto UDP origen Longitud mensaje UDP

31 Puerto UDP destino Redundancia UDP

Datos ...
Fig. 17: Formato datagrama UDP

Redes y Servicios

1 Ingeniero Electrnico

El modelo TCP/IP

Taxonoma de Redes y evolucin 19

Los puertos Origen y Destino identifican los puertos de comunicacin, y permiten distinguir varios destinos o aplicaciones en los sistemas origen y destino. La longitud se calcula sobre todo el mensaje UDP, y el clculo de la redundancia es opcional.

4.3

TCP

Frente a UDP, TCP ofrece un servicio de transporte de datos entre aplicaciones dplex, fiable (chequeo y recuperacin de errores), y orientado a conexin. Proporciona un flujo de octetos. Los datos de usuario se dividen en segmentos que suelen ser transmitidos como datagramas IP. Este protocolo tiene mecanismos para el control de flujo. Antes de la transmisin de datos es necesario el establecimiento de una conexin, que se produce entre un par (IP, puerto) origen y destino. La conexin se establece en tres pasos, como se muestra en la figura 18:

Primitivas (hacia/desde el nivel superior) TCP1 T_CON_REQUEST

T-PDUs

Primitivas (hacia/desde el nivel superior)

TCP2 SYN SYN T_CON_INDICATION T_CON_RESPONSE

T_CON_CONFIRM

ACK

TX datos

Fig. 18: Establecimiento conexin TCP El hecho de que la conexin se defina entre origen y destino mediante el par IP y puerto permite que un sistema pueda recibir distintas conexiones sobre un mismo puerto, siendo distinto el equipo origen o el puerto origen.

Redes y Servicios

1 Ingeniero Electrnico

20 El modelo TCP/IP

Taxonoma de Redes y evolucin

Para que la entrega de mensajes sea fiable se utiliza una tcnica conocida como acuse de recibo positivo con retransmisin. Cada vez que se enva un mensaje, el origen espera confirmacin del destino de que el mensaje lleg correctamente, como se muestra en la figura 19.

Emisor Envo paquete 1

Mensajes

Receptor

Recepcin mensaje 1 Envio acuse recibo 1 Recepcin acuse recibo 1 Envo paquete 2 Recepcin mensaje 2 Envio acuse recibo 2 Recepcin acuse recibo 2

Fig. 19: Acuse de recibo Para mejorar el rendimiento de esta tcnica (observe que el emisor debe esperar sin trasmitir hasta que recibe el asentimiento o ACK, acknowledged), se introduce el concepto de ventana deslizante: el emisor puede enviar ms de un mensaje (hasta el tamao de la ventana) sin esperar asentimiento. El emisor deber mantener informacin sobre qu mensajes estn pendientes de confirmar pero aprovecha mejor el ancho de banda. En la figura 20 se observa que el emisor enva el segundo mensaje antes de recibir el ACK del primero.

Redes y Servicios

1 Ingeniero Electrnico

El modelo TCP/IP

Taxonoma de Redes y evolucin 21

Emisor

Mensajes

Receptor

Envo paquete 1 Envo paquete 2 Recepcin acuse recibo 1 Recepcin acuse recibo 2 Recepcin mensaje 1 Envio acuse recibo 1 Recepcin mensaje 2 Envio acuse recibo 2

Fig. 20: Uso de ventanas deslizantes Como es de esperar, el formato del mensaje TCP es ms complejo, y se detalla en la figura 21. A la unidad de transferencia se le conoce como segmento. Como en niveles previos, el segmento se divide en cabecera y datos. El nmero de secuencia identifica los datos del segmento dentro del flujo de datos entre puerto origen y destino. El campo HLEN identifica el nmero de palabras de 32 bits de la cabecera, ya que el tamao de sta es variable debido al campo opciones. El campo code bits determina el propsito y contenido del segmento, y qu campos del mismo tienen validez o no.

10 PUERTO ORIGEN

16

19

24 PUERTO DESTINO

31

NMERO SECUENCIA NMERO ACUSE RECIBO HLEN RESERVADO REDUNDANCIA OPCIONES (OPCIONAL) DATOS ...... CODE BITS VENTANA PUNTERO URGENCIA RELLENO

Fig. 21: Formato segmento TCP

Redes y Servicios

1 Ingeniero Electrnico

22 El modelo TCP/IP

Taxonoma de Redes y evolucin

5.

NIVELES ALTOS

En esta apartado presentamos una introduccin de los principales servicios de los niveles altos de la jerarqua TCP/IP: conexin remota, transferencia de ficheros, correo electrnico, servicios web, etc. 5.1 Conexin remota

El servicio de conexin remota permite acceder a un equipo remoto y ejecutar comandos en ese sistema remoto. Esto permite compartir recursos, e independizar la localizacin fsica del servidor, normalmente un equipo ms potente, de los terminales de acceso. En la jerarqua TCP/IP el protocolo que define el acceso remoto se denomina Telnet, y est definido principalmente en las recomendaciones RFC 854 y RFC 855. Para acceder al servicio telnet hay que especificar la direccin IP del sistema remoto, y el acceso se hace por defecto en el puerto 23. Es necesario tambin identificarse con un cdigo de usuario (login) y clave (password). Existen servicios similares en sistemas UNIX, como el rlogin (login remoto) o la ejecucin remota (rsh). Destacar que el envo del cdigo y la clave se hace en texto claro, por lo que esa informacin podra ser capturada en su recorrido por la red. Existe una versin ms segura de acceso remoto, Secure Shell (ssh), que cifra el intercambio de datos entre terminal y servidor. 5.2 Transferencia de ficheros

El servicio de transferencia de ficheros remoto permite la manipulacin del sistema de ficheros de un sistema remoto, para aadir ficheros, borrarlos, o leerlos y modificarlos. El protocolo FTP (File Transfer Protocol) est definido en la recomendacin RFC 959, y est basado en TCP, que le proporciona fiabilidad. Adems, para el control de las conexiones utiliza una versin reducida del protocolo Telnet. El protocolo permite su uso desde programas o mediante una interfaz interactiva, y permite al usuario especificar el formato de los datos que se transfieren. Adems incorpora mecanismos de autenticacin del usuario, aunque es frecuente habilitar un usuario con permisos restringidos de lectura, el usuario annimo (anonymous). El servicio se ofrece sobre el puerto 21 (conexin de control), y puerto 20 (conexiones de datos). 5.3 Correo electrnico

El servicio de correo electrnico es uno de los ms usados en Internet. La especificacin se divide actualmente en varias: una que define el formato de los mensajes (RFC 822), otra que define el intercambio de mensajes, la RFC 821 SMTP (Simple Message Transfer Protocol), otros que define la descarga de mensajes del servidor a un cliente (POP3, o IMAP), o la que define el envo de datos no textuales sobre SMTP, MIME (RFCs 2045-2049).

5.3.1 Formato de mensajes

Redes y Servicios

1 Ingeniero Electrnico

El modelo TCP/IP

Taxonoma de Redes y evolucin 23

El formato de los mensajes de correo electrnico est definido en la RFC 822, y consiste en texto claro o plano, agrupado en cabecera (uno o ms campos de cabecera) y cuerpo del mensaje, separados por una lnea en blanco. Los campos de cabecera consisten en un nombre de campo y un valor de campo, separados por el carcter dos puntos. Nombre_campo: valor_del_campo

Los principales campos que nos podemos encontrar son: To: especifica la direccin del destinatario. CC: especifica direcciones de destinatario secundarias. From: especifica la direccin del usuario que origina el mensaje. Subjetc: Resumen corto del mensaje para ser presentado en una lnea. Date: fecha y hora de envo del mensaje Etc.

Observe este ejemplo de mensaje: Date: Thu, 29 Apr 2004 19:25:56 +0200 From: Antonio Lopez alopez@trajano.us.es To: Jose Ruiz jruiz@trajano.us.es Subject: enunciado de la parte optativa del TFC2004 Os envo la primera versin de la parte optativa. Plis, revisadla y lo comentamos en una reunin el mircoles por la tarde. A las 4:30??. Indicad las horas a las que sera imposible asistir a la reunin. Gracias.

Posteriormente este formato se ampla con extensiones multipropsito. La idea fundamental de estas extensiones es seguir utilizando el formato de la RFC 822, pero agregando al cuerpo del mensaje una estructura que permita el envo de mensajes binarios. Esto permite seguir usando los mismo protocolos de envo y recepcin, y slo hay que modificar los clientes de correo (si se quieren usar estas extensiones). En el cuerpo del mensaje se especifica el tipo de contenido, y si es binario, que codificacin se ha utilizado para transformar el fichero binario a texto claro. En el siguiente ejemplo se muestra en el cuerpo, resaltado en negrita, como se especifica que es un mensaje MIME (Mime-Version:1.0), los distintos tipos de contenido (Content-Type ) en el mensaje (text/plain, image/gif ,etc..) y los tipos de codificacin (Content-Transfer-Encoding: quoted-printable, base64). Date: Tue, 19 Nov 2002 13:46:41 +0100 To: fango@giga.us.es From: joangoar@tenter.es
Redes y Servicios 1 Ingeniero Electrnico

24 El modelo TCP/IP

Taxonoma de Redes y evolucin

Subject: Envio fichero gif.. Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=====================_21481415==_" Status: O --=====================_21481415==_ Content-Type: text/plain; charset="iso-8859-1"; format=flowed Content-Transfer-Encoding: quoted-printable Hola a todos: Esto es una prueba de env=EDo de fichero gr=E1fico con MIME. Saludos, JA --=====================_21481415==_ Content-Type: image/gif; name="teacher.gif"; x-mac-type="47494666"; x-mac-creator="4A565752" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="teacher.gif" R0lGODlhIAAhAPcAAAAAAIAAAACAAICAAAAAgIAAgACAgMDAwMDcwKT . 0xIA//zzzz///NMSQgCUVdZCAJRVVlkAlFVWWWVRRBFFFAUEADs= --=====================_21481415==_--

5.3.2 Servicio de envo de mensajes: SMTP


Para enviar un mensaje desde el remitente al destinatario se usa el protocolo SMTP. Para ello la mquina origen establece una sesin TCP con el puerto 25 de la mquina remota. El servidor contesta con su identificacin e indica si est dispuesto o no a recibir mensajes. Si est preparado, el cliente enva un mensaje de inicio (HELO), indica el origen del mensaje (MAIL FROM) y el destinatario (RCPT TO), y enva el cuerpo del mensaje (DATA), terminando el mismo con un punto entre caracteres de retorno. El servidor responde entonces con un acuse de recibo. Este proceso se muestra a continuacin:

Redes y Servicios

1 Ingeniero Electrnico

El modelo TCP/IP

Taxonoma de Redes y evolucin 25

[49]pts/1-gamo:~> telnet trajano.us.es 25 Trying 193.147.162.130... Connected to trajano.us.es. Escape character is '^]'. 220 trajano.us.es ESMTP Sendmail 8.10.0/8.10.0; Wed, 20 Nov 2002 16:03:01 +0100 (CET) HELO 501 5.0.0 HELO requires domain address HELO US.ES 250 trajano.us.es Hello gamo.us.es [193.147.162.131], pleased to meet you MAIL FROM: <nose@us.es> 250 2.1.0 <nose@us.es>... Sender ok RCPT TO: joangoar@terra.es 250 2.1.5 joangoar@terra.es... Recipient ok DATA 354 Enter mail, end with "." on a line by itself Esta es la primera lnea, y al acabar pulso RC Y esta es la segunda Y esta la tercera Adios JA . 250 2.0.0 gAKF3ZL20151 Message accepted for delivery TURN 502 5.5.1 Command not implemented: "TURN" QUIT 221 2.0.0 trajano.us.es closing connection Connection closed by foreign host. [50]pts/1-gamo:~>

5.3.3 Servidores de descarga de mensajes: POP e IMAP


En general no es prctico mantener un servidor SMTP en una mquina local o PC, principalmente por la falta de capacidad de procesamiento y el no estar operativa 24 horas. Lo ms frecuente es delegar la gestin del correo en un servidor, y que este ofrezca algn servicio de recuperacin de los mensajes de correo de cada usuario. Los protocolos ms utilizados para este servicio son : POP3: Post Office Protocol, versin 3- RFC 1225. IMAP4: Interactive Mail Protocol, vers. 4, RFC 1730.

Por ello lo habitual en los clientes de correo (Outlook, Eudora, Pegasus, Netscape Mail, Evolution, etc.) es especificar un servidor para enviar el correo (servidor de correo saliente), que utiliza el protocolo SMTP, y otro para descargar los mensajes de correo para su lectura (servidor de correo entrante), que sigue el protocolo POP3 o IMAP. Por ejemplo, el protocolo POP3 se ofrece sobre TCP, en el puerto 110. En el siguiente ejemplo se muestra una sesin POP3 y algunos de los comandos utilizados, que por supuesto quedarn ocultos en el caso de usar la interfaz grfica de un cliente de correo.

Redes y Servicios

1 Ingeniero Electrnico

26 El modelo TCP/IP

Taxonoma de Redes y evolucin

[55]pts/1-gamo:~> telnet pop3.terra.es 110 Trying 213.4.129.129... Connected to pop3.terra.es. Escape character is '^]'. +OK Bienvenido al servidor POP3 de TERRA USER joangoar.terra.es +OK password required for user joangoar.terra.es PASS ********* // Sustituida por motivos evidentes.. +OK Maildrop ready LIST +OK scan listing follows 1 7157 2 791 . RETR 2 +OK 791 octets Return-Path: <nose@us.es> Received: from tsmtp1.mail.isp ([10.10.21.10]) by mb0.terra.es (terra.es) with ESMTP id H5VR8F00.SB7 for <joangoar@terra.es>; Wed, 20 Nov 2002 16:05:03 +0100 Received: from trajano.us.es ([193.147.162.130]) by tsmtp1.mail.isp (terra.es) with ESMTP id H5VR8E00.V4P for <joangoar@terra.es>; Wed, 20 Nov 2002 16:05:02 +0100 Received: from US.ES (gamo.us.es [193.147.162.131]) by trajano.us.es (8.10.0/8.10.0) with SMTP id gAKF3ZL20151 for joangoar@terra.es; Wed, 20 Nov 2002 16:04:10 +0100 (CET) Date: Wed, 20 Nov 2002 16:04:10 +0100 (CET) From: nose@us.es Message-Id: <200211201504.gAKF3ZL20151@trajano.us.es> Esta es la primera lnea, y al acabar pulso RC Y esta es la segunda Y esta la tercera Adios JA . NOOP +OK LIST +OK scan listing follows 1 7157 2 791 . QUIT +OK goodbye Connection closed by foreign host. [57]pts/1-gamo:~>

5.4

Servicio de pginas web

El servicio de pginas web es uno de lo ms populares de Internet. Este servicio, del nivel de aplicacin, sigue el modelo cliente-servidor: el cliente, normalmente un navegador web, solicita un

Redes y Servicios

1 Ingeniero Electrnico

El modelo TCP/IP

Taxonoma de Redes y evolucin 27

recurso o pgina, y el servidor contesta con un mensaje que incluye el recurso solicitado. El cliente a continuacin muestra al usuario el recurso solicitado. El protocolo que regula este intercambio de mensajes (solicitudes y respuestas) y el formato de esos mensajes es el protocolo HTTP (HipeText Transfer Protocol), definido en la RFC 3616. Utiliza el protocolo TCP, y se ofrece por defecto en el puerto 80. El formato de los mensajes es: Una lnea de comienzo, que en el caso de la solicitud incluye la operacin solicitada y el recurso, y en la respuesta un cdigo de estado. Cabeceras, similares a las de correo electrnico. Una lnea en blanco. El cuerpo del mensaje (si lo hay).

Este es el formato de una solicitud: GET / HTTP/1.1 Host: www.cica.es If-Modified-Since: Fri, 29 Nov 2002 13:29:00 GMT

Y este el de su respuesta, que incluye en el cuerpo la pgina web (en cdigo HTML) que debe mostrar el navegador.

HTTP/1.1 200 OK Date: Fri, 29 Nov 2002 15:21:12 GMT Last-Modified: Fri, 29 Nov 2002 13:30:07 GMT Accept-Ranges: bytes Content-Length: 8853 Content-Type: text/html Content-Language: es <html> <!doctype html public "-//W30//DTD W3 HTML 3.0//ES"> <head> <title>Bienvenido al Servidor Web del CICA</title> <!-- Meta caracteres --> <meta name="robots" content="noindex, nofollow"> <meta name="keywords" content="cica"> <meta name="description" content="CICA"> <style type="text/css"><!--A {text-decoration: ></style> </head> <body bgcolor="ffffff" link="004400" vlink="006600"> <!-- Cabecera del CICA --> <!-- Comienzo del cuerpo de la pagina -->
Redes y Servicios 1 Ingeniero Electrnico

none}--

28 El modelo TCP/IP

Taxonoma de Redes y evolucin

... </body> </html> Como ya hemos indicado, el servicio de pginas web es uno de lo ms populares de Internet, e incluso servicios previos como la transferencia de ficheros o el correo electrnico se ofrecen en muchos caso como pginas web. La gran ventaja de ofrecer servicios sobre pginas web es que el usuario slo debe tener instalado un navegador web.

Redes y Servicios

1 Ingeniero Electrnico

También podría gustarte