Você está na página 1de 112

Arquitectura de redes y servicios

Tema 3 Arquitectura TCP/IP Jose Angel Vallejo Pinto (vallejo@uniovi.es)


Universidad de Oviedo

Area de Ingeniera Telematica

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

1/112

ndice I

El modelo Internet.
Arquitectura TCP/IP. PDU. TCP/IP vs. OSI.

Familia de protocolos TCP/IP.


IP (Internet Protocol).
Esquemas de direccionamiento IP (classfull vs. classless).

ARP (Address Resolution Protocol). ICMP (Internet Control Message Protocol). Mejoras IPv6. Protocolos de transporte.
UDP (User Datagram Protocol). TCP (Transmission Control Protocol).

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

2/112

Introduccion al modelo Internet


Internet es una red virtual (implementada en software) que interconecta diversas redes fsicas, logrando que la arquitectura que se encuentra por debajo permanezca oculta, proporcionando una abstraccion sobre las caractersticas fsicas particulares de cada red y logrando que la comunicacion sea posible. Orgenes: 1969 DARPA (Defense Advanced Research Projects Agency) inicia un proyecto de investigacion para la creacion de una red experimental denominada ARPANET para la interconexion de ordenadores militares. Se inicia el desarrollo de la familia de protocolos TCP/IP. 1975 ARPANET comienza a ser operativa. Es una red basada en la conmutacion de paquetes. 1983 ARPANET se convierte en Internet y se divide en dos redes: MILNET y ARPANET. 1990 ARPANET desaparece. Internet pasa a ser la red de redes.
Arquitectura de redes y servicios Tema 3 - Arquitectura TCP/IP 3/112

TCP/IP: Arquitectura
Capa Aplicacin Funciones
Intercambio de datos entre aplicaciones. Flujo continuo de datos (TCP). Secuencias de mensajes individuales (UDP). Comunicacin extremo a extremo. conexin (UDP).

Protocolos
SMTP, POP3, IMAP,IRC, NNTP, HTTP, FTP, Telnet, SSH, RPC, NFS, DNS, SNMP, RTP, SIP, TCP, UDP

Transporte Servicio orientado la conexin (TCP) o sin


Encaminamiento entre redes. Implementado en los sistemas finales y los routers.
IP, ICMP, IGMP, ND, RIP, OSPF, EIGRP, ARP, RARP, SLIP, PPP

Internet

Interfaz de Intercambio de datos entre un sistema final y la red. acceso a Provisin de la direccin fsica de destino. red
Interfaz fsica entre el dispositivo de transmisin de datos y el medio de transmisin o red. Caractersticas del medio de transmisin, seal, velocidad de datos, etc.

IEEE 802, Fram e Relay, ATM,

Fsica

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

4/112

TCP/IP: PDU

Aplicacin

Flujos de datos Segmentos (TCP) o mensajes (UDP) Datagramas

Transporte

Internet Interfaz de acceso a red

Tramas

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

5/112

TCP/IP: vs. OSI


OSI
Aplicacin Aplicacin

TCP/IP
DNS, DHCP, BOOTP, SMTP, POP3, IMAP, HTTP, FTP,TFTP, TELNET SMNP, RMON NFS, RPC, XDR, .

Presentacin

Sesin

Transporte
Transporte

origen-destino
Internet

TCP, UDP IP, ICMP, IGMP, ND, Prot. Encaminamiento (RIP, OSFP, BGP, ) ARP, RARP SLIP, PPP

Red

Enlace de datos
Fsica

Acceso a la red

Fsica

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

6/112

TCP/IP: Capas
Sistema final A (origen) Aplicacin
Datos

Sistema final B (destino) Aplicacin

Transporte

Segmento

Transporte

Router intermedio Internet


Datagrama

Internet
Datagrama

Internet

Acceso a red
Trama

Acceso a red

Acceso a red
Trama

Red fsica A

Red fsica B

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

7/112

TCP/IP: Jerarqua de servicios

Servicios de aplicacin
Conceptualmente Internet provee tres tipos de servicios, organizados segun la siguiente jerarqua:

Servicios de transporte fiable Servicios de entrega de paquetes no orientado a la conexin

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

8/112

Protocolo IP (Internet Protocol)

Protocolo de capa 3 sin conexion (datagramas) y no able.


No garantiza la entrega de datos. No notica los posibles errores.

Funcion principal.
Encaminamiento de datos desde el origen hasta el destino.

Versiones:
IPv4.
RFC 791.

IPv6.
1752 Recomendaciones para el protocolo IP Next Generation (IPng). 2460 Especicacion completa. 2373 Direccionamiento.

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

9/112

Caractersticas de IP No orientado a la conexion (datagramas). Cada paquete se encamina hacia el destino de forma independiente al resto. No able (no garantiza la entrega de datos). Alguno de los paquetes se puede perder, duplicar, retrasar o entregar fuera de orden sin que lo notique al emisor. La unidad basica de informacion que se transmite a traves de una red TCP/IP es el datagrama IP. Funciones basicas implementadas en el protocolo IP:
Direccionamiento: las maquinas origen y destino se identican mediante direcciones logicas de 4 bytes (en IPv4). Fragmentacion y reensamblado de datagramas largos si es necesario, para su posterior transmision a traves de la red.
Arquitectura de redes y servicios Tema 3 - Arquitectura TCP/IP 10/112

Direcciones IP Son direcciones logicas.


Facilitan la computacion y la seleccion de la ruta de forma eciente.

IPv4:
Longitud: 4 bytes (32 bits). Formato:
Cuatro numeros expresados en el sistema de numeracion decimal, separados por puntos (x.y.z.v). Cada numero ocupa 8 bits (1byte), y su valor esta comprendido entre 0 y 255.

Ejemplos: 10.10.1.5, 192.168.0.1.

IPv6.
Longitud: 128 bits.

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

11/112

IPv4: Partes conceptuales de una direccion

Conceptualmente, una direccion IP consta de dos partes: Identicador de red (netid): Identica a la red dentro de la cual se encuentra la maquina (host). Todas las maquinas pertenecientes a la misma red tienen el mismo valor en el netid. Identicador de host (hostid): Identica a la maquina (host) dentro de la red. Tiene un valor distinto para cada host dentro de la red.
Arquitectura de redes y servicios Tema 3 - Arquitectura TCP/IP 12/112

IPv4: Esquemas de direccionamiento

Basado en clases (classfull).


5 clases de direcciones (A, B, C, D y E). La clase de direccion viene dada por:
El no de bits que forman parte del identicador de red (netid). El valor binario o decimal del primer byte de la direccion IP.

Poco eciente agotamiento de direcciones. En desuso.

Sin clases (classless).


CIDR (Classless Interdomain Routing). Mas eciente. Es el empleado en la actualidad.

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

13/112

Direccionamiento basado en clases Primer esquema de direccionamiento. Trataba de denir un metodo de direccionamiento universal en Internet.
Cada direccion IP deba ser unica. Se establecio una autoridad central para la asignacion de direcciones.

El espacio de direcciones disponibles se divide en clases:


La asignacion de direcciones se realiza en funcion del tamano de la organizacion.
Cada clase esta destinada a organizaciones de tamano distinto: unas para redes muy grandes, otras para redes mas pequenas.

Algunas clases se utilizan para propositos especiales. Principal inconveniente.


Baja granularidad.

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

14/112

Clases de direcciones I

Clase A B C

Bits netid 8 16 24

Bits hostid 24 16 8 2

N redes 2(8-1) = 128


(16-2)

N hosts 224 = 16.777.216 216 = 65.536 28 = 256


15/112

=16.384

2(24-3) = 2.097.152
Tema 3 - Arquitectura TCP/IP

Arquitectura de redes y servicios

Clases de direcciones II

Solo son asignables a host las direcciones de las clases A, B y C. Las direcciones de clase D se denominan direcciones de multidifusion (multicast). Utilizadas como direccion de destino. No designan a un host en concreto sino a un grupo de ellos. Las direcciones de clase D estan reservadas para funciones especiales. No son asignables a host.

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

16/112

Direcciones IP especiales (no asignables)


Todos los bits del identificador de host tienen el valor 0 Todos los bits del identificador de red tienen el Mscara de subred valor 1 y todos los bits del identificador de host tienen el valor 0. Broadcast de una red Todos los bits del identificador de host tienen el distante (indirecto) valor 1 Direccin de red Broadcast local o directo Host de esta red Este host loopback localhost Todos los bits valen 1 (255.255.255.255) Todos los bits de la parte de red valen 0. 0.0.0.0 Red 127.0.0.0. Direccin de red ficticia local a cada host que se utiliza para pruebas de los protocolos TCP/IP 127.0.0.1. Se refiere al propio host.

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

17/112

Mascara de subred La utilizan los routers para determinar la direccion de la red (o subred) a la que pertenece un determinado host.
Realizando un AND logico entre la mascara de subred y la direccion de un host se obtiene la direccion de la red.

Realizando un AND logico entre la direccion IP y el complemento a 1 de la mascara de subred se obtiene el identicador de host. Ejemplo (mascara=255.255.0.0).

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

18/112

Direccion de broadcast indirecto

Se utiliza para enviar mensajes dirigidos a todas las maquinas conectadas a una red o subred. En un paquete, nunca aparecera como direccion de origen, siempre como destino. Ejemplos: Red 10.0.0.0 (clase A): 10.255.255.255 Red 172.12.0.0 (clase B): 172.12.255.255 Red 192.45.23.0 (clase C): 192.45.23.255

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

19/112

Clasicacion de las direcciones IP

Publicas. Presentes en Internet. Privadas. No estan presentes en Internet. Estaticas. No cambian. Asignadas manualmente. Dinamicas. Cambian en cada conexion. Asignadas por un servidor DHCP o BOOTP.

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

20/112

Espacio de direcciones privadas Hay ciertas direcciones en cada clase de direccion IP que no estan asignadas:
Clase A: 10.0.0.0 a 10.255.255.255 Clase B: 172.16.0.0 a 172.31.255.255 Clase C: 192.168.0.0 a 192.168.255.255

Estas direcciones se denominan direcciones privadas. Las direcciones privadas pueden utilizarlas los hosts que usan traduccion de direccion de red (NAT; Network Address Translation) o un servidor intermediario (proxy) para conectarse a una red publica, o los hosts que no se conectan a Internet.
Permite conectar muchos hosts a Internet usando pocas direcciones publicas.

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

21/112

Inconvenientes del direccionamiento basado en clases Falta de exibilidad en el direccionamiento interno. No se ajusta a la estructura interna de la organizacion. No permite crear una jerarqua de direcciones interna. Por ejemplo, a una organizacion con 5.000 hosts se le asigna un bloque de clase B. Los routers de Internet lo consideran como una unica red con un unico netID aunque internamente los 5.000 hosts no estuviesen conectados en una sola red fsica. Uso ineciente del espacio de direcciones. Solo existen tres tamanos para los bloques de direcciones (clase A, B o C) se desaprovecha el espacio de direcciones. Explosion de entradas en las tablas de rutas. Para evitar desaprovechar direcciones se asignaban varios bloques de direcciones mas pequenos (p.ej., varias direcciones de clase C, en lugar de una de clase B), lo que produca problemas en el rendimiento de los routers de Internet: al aumentar el numero de entradas en las tablas de rutas aumenta el tiempo necesario para tomar la decision de encaminamiento.
Arquitectura de redes y servicios Tema 3 - Arquitectura TCP/IP 22/112

Division en subredes (subnetting)

RFC 950, ano 1985. Primer enfoque para solucionar los problemas planteados por el esquema de direccionamiento basado en clases. Anade un nivel de jerarqua adicional al modo en que se interpretan las direcciones IP.
netID (identicador de la red). subnetID (identicador de la subred). hostID (identicador de la maquina).

La interconexion entre subredes se realiza mediante routers (dispositivos de capa 3).

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

23/112

Direccionamiento con subredes

RED r bits RED r bits


Nuevo identificador de red (r+ bits) n

HOST h bits SUBRED n bits HOST h-n bits

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

24/112

Metodo para la division en subredes


1

Determinar el numero de bits necesarios para el identicador de subred. K: numero de subredes. n: numero de bits del identicador de subred. Estos n bits se quitan del identicador de la maquina (hostID). Se debe cumplir que 2n 2 K Determinar la nueva mascara de subred. Contendra 1 en los bits asignados a los identicadores de la red y de la subred. Contendra 0 en los bits asignados al identicador de la maquina. Calcular las direcciones de las subredes. Realizar todas las combinaciones binarias posibles con los bits del subnetID eliminando las que contienen todo 0 y todo 1. Calcular las direcciones de las maquinas. Realizar todas las combinaciones binarias posibles con los bits del hostID eliminando las que contienen todo 0 y todo 1.
Tema 3 - Arquitectura TCP/IP 25/112

Arquitectura de redes y servicios

Ejemplo de subredes I

Una organizacion dispone de la red 192.168.22.0 de clase C y desea conectar 3 segmentos Ethernet. No de bits que quitar de la parte de host:
Para K=3 subredes se necesitan n=3 bits, ya que: 22 2 3 23 2

Mascara de subred:
11111111.11111111.11111111.11100000 (255.255.255.224)

Direcciones de las subredes:


11000000.10101000.00010110.00000000 11000000.10101000.00010110.00100000 (192.168.22.32) 11000000.10101000.00010110.01000000 (192.168.22.64) 11000000.10101000.00010110.01100000 (192.168.22.96)

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

26/112

Ejemplo de subredes II

Internet

192.168.22.35

192.168.22.34

150.15.1.75

192.168.22.33 subred 192.168.22.32 192.168.22.36 192.168.22.37

subred 192.168.22.64

192.168.22.68

192.168.22.99

subred 192.168.22.96

192.168.22.65

192.168.22.66

192.168.22.67

192.168.22.97

192.168.22.98
27/112

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

Ventajas de la division en subredes


Adaptacion a la estructura fsica de la red. Los hosts se agrupan en subredes para reejar de un modo mas efectivo la estructura interna de la red. Flexibilidad. Cada organizacion puede decidir el numero de subredes y hosts por subred que desea. La division en subredes solo es visible dentro de la organizacion, pero no desde el exterior (Internet). Solo los routers pertencientes a la organizacion conocen la existencia de las subredes. Para los routers no pertenecientes a la organizacion (Internet) se trata de una unica red. Reduccion del tamano de un dominio de difusion (broadcast). Los mensajes de difusion se envan a todos los hosts de una red o subred. Si el traco de difusiones consume demasiado ancho de banda, es preferible reducir el tamano del dominio de difusion dividiendo la red en varias subredes. La division en subredes limita la cantidad de traco en los demas segmentos de la red. Mejora del nivel de seguridad. Permite aislar mas ecientemente el traco en determinados segmentos de la red.
Arquitectura de redes y servicios Tema 3 - Arquitectura TCP/IP 28/112

Inconvenientes de la division en subredes

Todas las subredes deben emplear la misma mascara de subred.


El subnetID tiene la misma longitud para todas las subredes.

Si las subredes no son de tamano similar, en cuanto al numero de hosts, puede dar lugar a un desaprovechamiento de direcciones.
El tamano del subnetID se elige en funcion de la subred con el mayor numero de hosts. Puede hacer necesario el uso de bloques de direcciones adicionales aunque se desperdicien muchas direcciones en otros bloques.

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

29/112

Inconvenientes de la division en subredes: Ejemplo


Una organizacion dispone de una red de clase C: 201.50.215.0 Desea conectar un total de 196 hosts repartidos en 6 subredes: Subredes R1, R2, R3 y R4: 10 hosts. Subred R5: 56 hosts. Subred R6: 100 hosts. Sin dividir en subredes dispone de direcciones sucientes (una red de clase C permite 254 direcciones). Problema al intentar dividir en subredes: Para formar 6 subredes el subnetID necesita 3 bits. El hostID solo dispondra de 5 bits numero maximo de hosts por subred = 30. Solucion: obtener otro bloque de clase C para alojar las dos subredes mas grandes (R5 y R6) y utilizar el bloque original para las 4 mas pequenas (R1 a R4). Alto coste y desperdicio de direcciones en el bloque original.
Arquitectura de redes y servicios Tema 3 - Arquitectura TCP/IP 30/112

VLSM (Variable Length Subnet Masking)

RFC 1817. Objetivo: ajustar el tamano de las subredes a los requisitos de las redes fsicas. VLSM (Mascara de subred de longitud variable) es una tecnica en la que la division en subredes se realiza varias veces de forma iterativa para permitir la division de la red en una jerarqua de subredes de tamano variable. Obtiene una jerarqua de subredes.
Inicialmente hace una division en subredes grandes. Sucesivamente, subdivide las subredes en otras mas pequenas (sub-subredes) segun las necesidades.

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

31/112

VLSM: Ejemplo I
Para la red de clase C del ejemplo anterior 201.50.215.0/24. Primera division: Quitamos el primer bit del hostID para el subnetID. Quedan 7 bits para el hostID. Obtenemos 2 subredes con un maximo de 126 hosts cada una: 201.50.215.0/25 201.50.215.128/25 Asignamos la primera de ellas a R6 (100 hosts). Segunda division: Dividimos la subred 201.50.215.128/25 en 2 sub-subredes, para lo cual quitamos el primer bit a los 7 bits del hostID, que queda con 6 bits. Obtenemos 2 sub-subredes con un maximo de 62 hosts cada una: 201.50.215.128/26 201.50.215.192/26 Asignamos la primera de ellas a R5 (56 hosts). Tercera division: Dividimos la sub-subred 201.50.215.192/26 en 4 sub-sub-subredes, para lo cual quitamos los 2 primeros bits de los 6 que tena el hostID. Cada una de las 4 sub-sub-subredes podra tener un maximo de 14 hosts. Se asignaran a R1, R2, R3 y R4 respectivamente.
Arquitectura de redes y servicios Tema 3 - Arquitectura TCP/IP 32/112

VLSM: Ejemplo II

201.50.215.0/24 (24 bits netID, 8 bits hostID) 00000000 10000000 201.50.215.0/25 -> R6 201.50.215.128/25

10000000 11000000

201.50.215.128/26 -> R5 201.50.215.192/26 11000000 11010000 11100000 11110000

R1 <- 201.50.215.192/28 R2 <- 201.50.215.208/28 R3 <- 201.50.215.224/28 R4 <- 201.50.215.240/28

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

33/112

VLSM: Requisitos

Los routers deben almacenar para cada ruta la direccion de red y la mascara correspondiente.
Porque cada subred tiene una mascara distinta.

Mayor cuidado en la construccion de las tablas de encaminamiento.


No debe existir ambiguedad al interpretar una direccion de red.

Los protocolos de encaminamiento tambien deben transmitir las mascaras junto con la direccion de red en los mensajes de actualizacion.

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

34/112

Superredes (supernetting)
El principal inconveniente del esquema de direccionamiento basado en clases es su escasa granularidad. P.ej., a una organizacion que necesite conectar 5.000 hosts se le asignara un bloque de clase B, que contiene 65.534 direcciones IP, del que solo va a utilizar un 7,6 %, desperdiciandose el resto. mediano que necesitan Existen muchas organizaciones de tamano mas de las 254 direcciones IP que proporciona un bloque de clase C pero muchas menos de las de un bloque de clase B. Alternativa: Asignar varias redes de clase C en lugar de redes de clase B. Para 5.000 hosts se necesitaran al menos 20 redes de clase C. Implica anadir 20 entradas a cada router de Internet. Solucion: Agregacion de redes (supernetting). RFC 1338. Asignar redes de clase C consecutivas. Agregacion de rutas. Agrupar las redes consecutivas en un solo prejo/mascara. Los routers solo necesitaran almacenar una entrada en su tabla de rutas, debiendo recordar tambien la mascara de la red.
Arquitectura de redes y servicios Tema 3 - Arquitectura TCP/IP 35/112

CIDR (Classless InterDomain Routing) Consiste en adaptar el concepto de division en subredes mediante VLSM a Internet. Las redes se agrupan para formar superredes.
Utilizando una mascara mas corta que la mascara natural correspondiente a la direccion IP se pueden agrupar varias redes. Por ejemplo, el bloque 155.1.140.0/22 agrupa a 4 redes de clase C (155.1.140.0 a 155.1.143.0).

Agregacion de rutas. Las redes contiguas se puede agrupar en sola entrada en la tabla de rutas, ahorrando espacio de almacenamiento en los routers.
En el ejemplo anterior, la ruta para las 4 redes se puede representar mediante una sola entrada.

Documentado en los RFC 1517 a 1520 (principios de los anos 90). Este esquema no esta basado en clases (classless) sino en prejo.
Arquitectura de redes y servicios Tema 3 - Arquitectura TCP/IP 36/112

CIDR: Ventajas Asignacion eciente del espacio de direcciones.


En lugar de asignar bloques de tamano jo, las direcciones CIDR se asignan en tamanos de cualquier multiplo binario. A una organizacion que necesite 5.000 direcciones se le asignara un bloque de 8.190 en lugar de las 65.534 (clase B) que se le asignaran con el esquema basado en clases.

Desaparicion de las clases de direcciones. Reduccion del numero de entradas en la tabla de rutas:
CIDR agrupa o agrega redes. Una agrupacion de redes se puede describir mediante una sola entrada en la tabla de rutas.

No utiliza un metodo diferente para la division en subredes:


CIDR implementa el concepto de division en subredes dentro de la propia Internet. El metodo que utiliza cualquier organizacion para la division en subredes es el mismo.
Arquitectura de redes y servicios Tema 3 - Arquitectura TCP/IP 37/112

CIDR: Notacion
CIDR cambia la forma de interpretar las direcciones IP. Un bloque de direcciones se expresa con el formato a.b.c.d/n, donde: a.b.c.d es la direccion IP mas baja del bloque. n es un numero entero denominado prejo o longitud de prejo, cuyo valor puede oscilar entre 0 y 32. El prejo indica: No de bits que identican a la red = numero de 1 en la mascara de subred. No de bits de la direccion base cuyo valor permanece invariable en todas las direcciones IP contenidas en el bloque CIDR. Si n es el prejo de un bloque CIDR, entonces el numero de direcciones IP agrupadas en el bloque es 232n Los bits que se pueden combinar son los que no pertenecen al prejo (32-n), mientras que el resto deben permanecer jos. Los prejos mas cortos (de menor valor) contienen mayor numero de direcciones IP que los mas largos. Una direccion IP puede encajar en varios bloques CIDR con prejos diferentes.
Arquitectura de redes y servicios Tema 3 - Arquitectura TCP/IP 38/112

CIDR: Ejemplos de notacion y escritura abreviada El bloque CIDR 192.5.48.0/22 agrupa 4 redes de clase C:
192.5.48.0 10000000.00000101.00110000 192.5.49.0 11000000.00000101.00110001 192.5.50.0 11000000.00000101.00110010 192.5.51.0 11000000.00000101.00110011

El bloque CIDR 10.0.0.0/10 agrupa:


64 redes de clase B: de la 10.0.0.0 a la 10.63.0.0. 16.384 (= 64*256) redes de clase C: de la 10.0.0.0 a la 10.63.255.0.

En algunos casos se pueden eliminar los numeros correspondientes a bytes cuyo valor sea cero, siempre y cuando no formen parte del prejo. P.ej.:
15.0.10.0/22 15.0.10/22 192.20.0.0/16 192.20/16 10.0.0.0/10 10.0/10 9.0.0.0/5 9/5
Arquitectura de redes y servicios Tema 3 - Arquitectura TCP/IP 39/112

CIDR: Prejos
Prefijo /13 /14 /15 /16 /17 /18 /19 /20 /21 /22 /23 /24 /25 /26 /27 Mscara 255.248.0.0 255.252.0.0 255.254.0.0 255.255.0.0 255.255.128.0 255.255.192.0 255.255.224.0 255.255.240.0 255.255.248.0 255.255.252.0 255.255.254.0 255.255.255.0 255.255.255.128 255.255.255.192 255.255.255.224 Porcin equivalente de clase C 2048 Clase C (= 8 Clase B) 1024 Clase C (= 4 Clase B) 512 Clase C (= 2 Clase B) 256 Clase C (= 1 Clase B) 128 Clase C 64 Clase C 32 Clase C 16 Clase C 8 Clase C 4 Clase C 2 Clase C 1 Clase C 1/2 de Clase C 1/4 de Clase C 1/8 de Clase C N de direcciones tericas 524.288 262.144 131.072 65.536 32.768 16.384 8.192 4.096 2.048 1.024 512 256 128 64 32

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

40/112

IPv4: Estructura de la cabecera del datagrama


Bit: 0 4 8
Tipo de servicio (TOS)

16

19

31

Versin

IHL

Longitud total

20 octetos

Identificacin TTL Protocolo

Flags

Desplazamiento (fragment offset)

Suma de comprobacin de cabecera

Direccin de origen Direccin de destino Opciones + Relleno

Un datagrama IPv4 consta de una cabecera (20 bytes mn.) y un area de datos de longitud variable.
Arquitectura de redes y servicios Tema 3 - Arquitectura TCP/IP 41/112

IPv4: Cabecera del datagrama I

Version (4 bits). Version del protocolo IP. El valor es 4. IHL; Internet Header Length (4 bits): Longitud de la cabecera del datagrama medida en palabras de 32 bits. Longitud total (16 bits): Longitud total del datagrama (cabecera + area de datos) en bytes. El tamano maximo de un datagrama es de 65.535 bytes (64 Kb).

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

42/112

IPv4: Cabecera del datagrama II: Campo Tipo de servicio


8 bits. Indica como tratar el datagrama. Los 3 primeros bits indican la prioridad o precedencia (de 0 a 7, siendo 0 la menor y 7 la mayor). Los bits siguientes son: Bit D (Delay): Solicitud de bajo retardo. El datagrama debera enviarse tan rapido como sea posible. Bit T (Throughput): Solicitud de caudal alto. Se intentara enviar por el camino de mayor capacidad. Bit R (Reliability): Solicitud de alta abilidad. Se intentara enviar por la lnea mas segura. Bit C (Cost): Solicitud de bajo coste. Se intentara enviar por la lnea de menor coste.
Arquitectura de redes y servicios

Precedencia
Precedencia (prioridad) Precedence (Priority): 111: Network Control 111 Network Control 110: Internetwork Control 110 Internetwork Control 101: Critic/ECP 100: Flash Override 101 Critic/ECP 011: Flash Override 100 Flash 010: Immediate 011 Flash 001: Priority 010 Immediate 000: Routine

D
Bits DTRC: 0000 1000 0100 0010 0001

"0"

D: Delay T: Throughput R: Reliability C: Cost

Servicio normal Retardo mn. Rendimiento mx. Fiabilidad mx. Coste mn.

001 Priority 000 Routiney

Tema 3 - Arquitectura TCP/IP

43/112

IPv4: Cabecera del datagrama III: Campos relacionados con la fragmentacion

Identicacion (16 bits). Identica al datagrama. Mismo valor para todos los fragmentos. Indicadores o ags (3 bits): Los dos bits de orden inferior controlan la fragmentacion. El primero de ellos se denomina DF (Dont Fragment) y, si esta activado, indica que el datagrama no puede fragmentarse. El bit mas bajo se denomina MF (More Fragments). Si esta activado, indica que el fragmento no es el ultimo del datagrama. Necesario porque el campo Longitud total se reere a la longitud del fragmento, no a la del datagrama original antes de ser fragmentado. Desplazamiento (offset) de fragmento (13 bits). Desplazamiento de los datos del fragmento respecto al inicio del datagrama. Se mide en multiplos de 64 bits (8 bytes). Al reensamblar el datagrama se deben reunir todos los fragmentos empezando en el offset 0 hasta el fragmento con mayor offset.
Arquitectura de redes y servicios Tema 3 - Arquitectura TCP/IP 44/112

IPv4: Cabecera del datagrama IV: Tiempo de vida del datagrama

TTL; Time To Live (8 bits).


Cada datagrama se marca con un tiempo de vida, que indica su tiempo (en segundos) de existencia en la red. Es un valor establecido por quien genera el datagrama (generalmente las capas superiores).
El valor maximo es 255.

Similar a una cuenta de saltos.


Cuando un router recibe un datagrama, decrementa su TTL en una unidad antes de retransmitirlo. Cuando llega a 0, el datagrama se descarta (no se retransmite) y se devuelve al origen el mensaje tiempo excedido del protocolo ICMP.

Evita que el datagrama pueda circular indenidamente por la red (p.ej., en caso de bucles).
Consume recursos. El protocolo de transporte depende de la existencia de un lmite superior para la vida del datagrama.
Arquitectura de redes y servicios Tema 3 - Arquitectura TCP/IP 45/112

IPv4: Cabecera del datagrama V


Protocolo (8 bits). Protocolo al que corresponden los datos que lleva el datagrama en el area de datos Especica el formato del area de datos del datagrama. P.ej.: 1 = ICMP, 6 = TCP, 17 = UDP. Suma de comprobacion de la cabecera (16 bits). Utilizado para asegurar la integridad de los valores de la cabecera. Direccion de origen (32 bits). Direccion IP de origen. Direccion de destino (32 bits). Direccion IP de destino. Opciones (variable). Permite distintas funciones normalmente utilizadas para comprobar caractersticas de la red. Relleno (variable). Rellena con ceros para conseguir que el tamano de la cabecera del datagrama sea multiplo de 32. Datos (variable, maximo 65.535 bytes - tamano de la cabecera). Datos de usuario que transporta el datagrama.
Arquitectura de redes y servicios Tema 3 - Arquitectura TCP/IP 46/112

Entrega de datagramas IP

Analizando el identicador de red correspondiente a la direccion IP de destino existen dos posibilidades en cuanto a la entrega:
Directa.
Se produce cuando ambas maquinas, origen y destino, pertenecen a la misma red fsica (el identicador de red es el mismo).

Indirecta.
Cuando las maquinas origen y destino no pertenecen a la misma red, por lo que no es posible una entrega directa, el datagrama se entrega al router para que este se ocupe del encaminamiento. El datagrama pasara de router en router hasta que sea posible la entrega directa al destinatario.

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

47/112

Encaminamiento IP
Los sistemas nales y los dispositivos de encaminamiento disponen de una tabla de rutas o tabla de encaminamiento. Cada entrada en la tabla de rutas indica la ruta hacia un destino y contiene los siguientes campos: Destino: red de destino. Siguiente salto: direccion IP del router siguiente en el camino hacia la red de destino. Interfaz de salida. Metrica o coste para la ruta. Para cada destino indica el siguiente salto a lo largo de la ruta, no el camino completo que se debe seguir. En cada salto que realiza un datagrama. No se altera ningun campo de su cabecera a excepcion del campo TTL y la suma de comprobacion. La direccion IP del proximo salto no se almacena en el datagrama IP. Se modican las cabeceras del nivel de enlace que encapsulan el datagrama IP original para reejar la direccion fsica (MAC) correspondiente al proximo salto (protocolo ARP).
Arquitectura de redes y servicios Tema 3 - Arquitectura TCP/IP 48/112

Contenido de la tabla de rutas y determinacion de ruta


La tabla de rutas especica conexiones directas: los routers de salida indicados en la tabla pertenecen a la misma red fsica. En la tabla de rutas de los hosts/routers cada entrada (ruta) identica una red de destino mediante su direccion de red y el prejo. Tambien puede contener direcciones completas de hosts, que se utilizan en casos especiales para obtener un mayor control sobre la red. Puede contener una entrada para la ruta predeterminada, que se utilizara en aquellos casos en los que la direccion IP de destino no coincida con ninguna de las entradas de la tabla. Cuando se recibe un paquete, se busca en la tabla de rutas una entrada (ruta) a la que pueda pertenecer la direccion IP de destino del paquete (teniendo en cuenta el prejo mascara). Si no pertenece a ninguna el paquete se descartara, a menos que exista una ruta predeterminada. Si la direccion IP de destino encaja con una o mas entradas (rutas) se elegira la que tiene el prejo mas largo (mascara con mayor numero de 1) Longest Match Rule.
Arquitectura de redes y servicios Tema 3 - Arquitectura TCP/IP 49/112

Ruta predeterminada La ruta predeterminada (o puerta de enlace predeterminada; default gateway) es la entrada de la tabla de rutas que se elegira cuando la direccion de destino de un paquete no encaje con ninguna de las demas entradas de la tabla.
Direccion de destino 0.0.0.0/0 o 0.0.0.0/0.0.0.0 Siguiente salto default gateway: direccion IP del router conectado a la misma red fsica que la maquina origen del datagrama IP.

Si la tabla de rutas no contiene una ruta predeterminada la comunicacion solo sera posible entre nodos situados dentro de la misma subred.
En este caso, cuando un paquete contenga una direccion de destino que no aparezca en ninguna entrada de la tabla, se descartara.
Arquitectura de redes y servicios Tema 3 - Arquitectura TCP/IP 50/112

IPv4: Fragmentacion de datagramas


Los datagramas IP viajan encapsulados en tramas del nivel de enlace, cuya longitud es variable dependiendo del medio fsico (p.ej., para Ethernet, entre 64 y 1.518 bytes). MTU (Maximum Transfer Unit). Especica el tamano maximo de un datagrama. Cada red dene un valor para la MTU. Si un datagrama debe atravesar una red y su tamano excede la MTU de dicha red sera necesario dividirlo en varios fragmentos. El tamano de cada fragmento no debera exceder la MTU. La fragmentacion la realizan los routers. Un datagrama solo se fragmentara cuando pase de una red con una MTU de mayor tamano a otra de menor. IP representa el desplazamiento de los datos (offset) en multiplos de 8 bytes; por tanto, el tamano del fragmento debe ser multiplo de 8. Se elegira el multiplo de 8 que se encuentre mas cerca de la MTU, por lo que los fragmentos del datagrama pueden no tener todos el mismo tamano. Los fragmentos se reensamblan en el destino para formar el datagrama original antes de pasarlo a la siguiente capa.
Arquitectura de redes y servicios Tema 3 - Arquitectura TCP/IP 51/112

IPv4: Ejemplo de fragmentacion


Datagrama IP original Longitud de datos = 404 octetos Desplazamiento de fragmento = 0; MF = 0
Cabecera Cabecera

IP
(20

TCP
(20

Carga TCP (384 octetos)

octetos) octetos)

Cabecera Cabecera

IP
(20

TCP
(20

Carga TCP parcial (188 octetos)

octetos) octetos)

Primer fragmento Longitud de datos = 208 octetos Desplazamiento de fragmento = 0; MF = 1

Cabecera

IP
(20 octetos)

Carga TCP parcial (196 octetos)

Segundo fragmento Longitud de datos = 196 octetos Desplazamiento de fragmento = 26 unidades de 64 bits (208 octetos); MF = 0

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

52/112

IPv4: Ventajas e inconvenientes de la fragmentacion

Ventajas:
No requiere que los routers intermedios almacenen y reensamblen los datagramas. La fragmentacion permite que cada fragmento se encamine de forma independiente.

Inconvenientes:
Los datagramas no se reensamblan cada vez que cambia la MTU. Por tanto, los fragmentos pequenos se transportaran hasta el destino nal. La fragmentacion incrementa la posibilidad de perdida del datagrama. Si se pierde algun fragmento, el datagrama no se podra reensamblar.

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

53/112

IP: Control de errores y del ujo


IP es un protocolo no able. No garantiza la entrega o distribucion de los datagramas. Los datagramas se pueden descartar si expira el TTL, existe congestion o se detecta un error en la suma de comprobacion de la cabecera IP. Si un router descarta un datagrama, debera intentar informar al origen. El origen podra usar esta informacion para modicar su estrategia de transmision y noticarlo a las capas superiores. Sera necesario algun medio para identicar los datagramas. El protocolo IP no notica errores, lo hace el protocolo ICMP. El control del ujo permite a los routers o estaciones receptoras limitar la velocidad a la que reciben los datos. IP ofrece un servicio no orientado a la conexion. Mecanismos de control de ujo limitados. Mediante envo de paquetes de obstruccion a los dispositivos de encaminamiento y a las estaciones origen. Mensaje source quench (ralentizacion del origen) de ICMP.
Arquitectura de redes y servicios Tema 3 - Arquitectura TCP/IP 54/112

Protocolo ARP (Address Resolution Protocol)


Protocolo de resolucion de direcciones (RFC 826). Las maquinas conectadas a una red fsica pueden comunicarse solo si conocen sus respectivas direcciones fsicas (direcciones MAC). ARP se utiliza para encontrar la direccion MAC (direccion fsica) que corresponde a una direccion IP (direccion logica). Cuando una maquina A va a enviar un datagrama IP a una maquina B debe obtener: La direccion MAC de B, si A y B pertenecen a la misma red. La direccion MAC del router (default gateway ), si A y B no pertenecen a la misma red. Cada nodo (sistema nal o router) tiene una tabla o cache ARP. Cada entrada en la cache ARP contiene una direccion IP y su correspondiente direccion MAC. Los mensajes ARP viajan encapsulados en tramas del nivel de enlace.

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

55/112

ARP: Funcionamiento
Origen y destino pertenecen a la misma red fsica (entrega directa). El origen busca la direccion MAC del destino en su cache ARP. Si la encuentra construira la trama en la que viajara el datagrama. Si no encuentra una entrada para la direccion IP de destino, enviara un mensaje de multidifusion (destino ff:ff:ff:ff:ff:ff) con la direccion IP para la cual solicita la direccion MAC (peticion ARP). Solo respondera la maquina que tiene esa direccion IP enviando su direccion MAC (respuesta ARP). Origen y destino estan en distintas redes fsicas (entrega indirecta). Se enviara una peticion ARP con la direccion de la puerta de enlace predeterminada en caso de que su direccion MAC no este en la cache ARP del origen. Las direcciones MAC cambian en cada salto que hace el datagrama IP. ARP actua en cada salto que efectua un datagrama en su camino hacia el destino.

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

56/112

ARP: Formato de los mensajes I


0 8 Tipo de hardware HAL PAL 15 16 24 Tipo de protocolo Operacin 31

Direccin hardware del emisor (octetos 0-3) Dir. hard. emisor (oct. 4-5) Dir. IP emisor (oct. 2-3) Dir. IP emisor (oct. 0-1) Dir. hard. receptor (oct. 0-1)

Direccin hardware del receptor (octetos 2-5) Direccin IP del receptor (octetos 0-3)

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

57/112

ARP: Formato de los mensajes II


Tipo de hardware: Tipo de hardware utilizado por la red local que transmite el mensaje ARP. Tambien especica el tipo de direccion hardware. Su valor puede ser: 1 (Ethernet 10Mb), 6 (IEEE 802), 7 (ARCNET), 15 (Frame Relay), 16 y 19 (ATM), . . . Tipo de protocolo: Tipo de direcciones de capa 3. Para IPv4 su valor es 2.048 (0800 hex). HAL (Hardware Address Length): Longitud en bytes de las direcciones hardware especicadas en el mensaje. Su valor para IEEE 802 es 6. PAL (Protocol Addresss Length): Longitud en bytes de las direcciones del protocolo de capa 3. Para IPv4 su valor es 4. Operacion: Tipo de mensaje ARP. Su valor es: 1 (peticion ARP), 2 (respuesta ARP), . . . Dir. hard. del emisor: Direccion hardware (capa 2) del dispositivo que enva el mensaje. Dir. IP del emisor: Direccion IP del dispositivo que enva el mensaje. Dir. hard. del receptor: Direccion hardware (capa 2) del dispositivo al que se enva el mensaje. Dir. IP del receptor: Direccion IP del dispositivo al que se enva el mensaje.
Arquitectura de redes y servicios Tema 3 - Arquitectura TCP/IP 58/112

Procesamiento IP y ARP
Recibe datagrama Enviar peticin ARP

Descartar paquete No

Cabecera y checksum vlidos? S

Se recibi la respuesta ARP? S

No

Enviar mensaje ICMP No al origen No Existe una ruta predeterminada? S No

Decrementar TTL TTL >= 0? S IP red destino en la tabla de rutas? S Direccin MAC en tabla ARP? S Construir nueva trama y enviar datagrama sobre ella

Insertar dir. MAC y dir. IP en cach ARP

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

59/112

Proxy ARP

Variante del protocolo ARP. Un router que ejecute el protocolo ARP proxy capturara peticiones ARP. Si la direccion IP para la cual se solicita la MAC no pertenece a la subred local, el router respondera enviando su propia direccion. En los envos de informacion subsiguientes el router hara de intermediario (proxy), recibiendo los paquetes y reenviandolos al destinatario.

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

60/112

RARP (Reverse Address Resolution Protocol)


Las maquinas que no almacenan su direccion IP (por ejemplo, maquinas sin disco), deben contactar con un servidor que les indique su direccion IP cada vez que se arrancan. El protocolo que se utiliza para obtener la direccion IP dada la direccion MAC es el RARP. Al igual que el mensaje ARP, el mensaje RARP se enva desde una maquina a las demas encapsulado en una trama del nivel de enlace. El funcionamiento de RARP es similar al de ARP: La maquina que desea conocer su direccion IP enva un mensaje de peticion RARP, con su direccion MAC. Todas las maquinas conectadas a la red reciben el mensaje, pero solo aquellas autorizadas procesan la peticion y contestan. Estas maquinas se conocen con el nombre de servidores RARP. Los servidores contestan con un mensaje denominado respuesta RARP que contendra la direccion IP correspondiente. RARP ha sido superado por el protocolo BOOTP y su version mejorada: DHCP.
Arquitectura de redes y servicios Tema 3 - Arquitectura TCP/IP 61/112

Protocolo ICMP (Internet Control Message Protocol)

RFC 792 (ICMPv4). Protocolo para transferencia de mensajes de control desde un dispositivo de encaminamiento (router) o un sistema nal a un sistema nal.
P.ej., cuando el datagrama no puede alcanzar su destino o cuando el router no tiene memoria para almacenar y reenviar el datagrama.

ICMP es usuario de IP.


Los mensajes viajan encapsulados en datagramas IP. Por tanto, la entrega del mensaje ICMP no esta garantizada (ICMP no es un protocolo seguro).

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

62/112

ICMP: Formato de los mensajes I Distintos formatos dependiendo del tipo de mensaje ICMP. En todos los formatos, un mensaje comienza con una cabecera de 64 bits con los siguientes campos:
Tipo (8 bits): Tipo de mensaje ICMP. Codigo (8 bits): Parametros del mensaje que se pueden codicar en uno o unos pocos bits. Suma de comprobacion o checksum (16 bits). Parametros (32 bits): Parametros mas largos.

Los mensajes ICMP que se reeren a un datagrama incluyen, en el campo de informacion, la cabecera IP entera mas los primeros 64 bits del campo de datos del datagrama original.
Esto permite al protocolo IP determinar que protocolo o protocolos del nivel superior estaban implicados. Los primeros 64 bits incluiran una porcion de la cabecera del protocolo de transporte (TCP u otro).
Arquitectura de redes y servicios Tema 3 - Arquitectura TCP/IP 63/112

ICMP: Formato de los mensajes II


0 Tipo 8 Cdigo No usado Cabecera IP + 64 bits del datagrama original (a) Destino inalcanzable; Tiempo excedido; Ralentizacin del origen 0 Tipo Puntero 8 Cdigo 16 Checksum No usado 31 0 Tipo 8 Cdigo 16 Checksum 31 0 Tipo 8 Cdigo 16 Checksum 31 N de secuencia Identificador Marca de tiempo original (e) Marca de tiempo

16 Checksum

31

Cabecera IP + 64 bits del datagrama original (b) Problema de parmetro

N de secuencia Identificador Marca de tiempo original Marca de tiempo recibida Marca de tiempo transmitida 31 (f) Respuesta a marca de tiempo

0 Tipo

8 Cdigo

16 Checksum

Direccin de pasarela Internet Cabecera IP + 64 bits del datagrama original (c) Redireccin

0 Tipo

8 Cdigo Identificador

16 Checksum N de secuencia

31

(g) Peticin de mscara de direccin 0 Tipo 8 Cdigo Identificador 16 Checksum N de secuencia 31 0 Tipo 8 Cdigo 16 Checksum 31

Datos opcionales (d) Eco, Respuesta a eco

N de secuencia Identificador Mscara de direccin (h) Respuesta a mscara de direccin

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

64/112

ICMP: Mensajes I Destino inalcanzable.


Enviado por un router cuando:
No sabe como alcanzar la red de destino. Un datagrama debe ser fragmentado y esta activado el indicador de no fragmentacion (bit DF).

Tiempo excedido.
Enviado por un router si el tiempo de vida del datagrama (TTL) ha expirado. Tambien lo enviara un computador cuando no pueda completar el reensamblaje en un tiempo determinado.

Ralentizacion del origen.


Mecanismo rudimentario de control del ujo y de la congestion. Enviado por un router o un computador destino a un computador origen para que reduzca la velocidad a la que enva sus datos al destino Internet.
Arquitectura de redes y servicios Tema 3 - Arquitectura TCP/IP 65/112

ICMP: Mensajes II
Problema de parametro: Enviado por un router o un computador cuando detecta un error sintactico o semantico en la cabecera del datagrama (p.ej., un argumento incorrecto en una opcion). El campo parametro de la respuesta contiene un puntero al octeto de la cabecera original donde se detecto el error. Redireccion: Enviado por un router a un computador conectado directamente, para informarle de una ruta mejor para un destino particular. Eco y respuesta a eco. Proporcionan un mecanismo para comprobar que la comunicacion entre dos entidades es posible. El receptor de un mensaje de eco esta obligado a devolver el mensaje de respuesta a eco. Al mensaje de eco se le asocia un identicador y un numero de secuencia que coinciden con los del paquete respuesta a eco. El identicador se puede utilizar como un punto de acceso al servicio para identicar una sesion particular, y el numero de secuencia se puede incrementar en cada peticion de eco enviada.
Arquitectura de redes y servicios Tema 3 - Arquitectura TCP/IP 66/112

ICMP: Mensajes III


Marca de tiempo y respuesta a marca de tiempo. Mecanismo para muestrear las caractersticas de retardo del conjunto de redes. Marca de tiempo. El emisor de este mensaje incluye el instante en que envio el mensaje, y puede incluir un identicador y un numero de secuencia como parametros. Respuesta a marca de tiempo. En la respuesta, el receptor registra el instante en que recibio el mensaje marca de tiempo y el instante en que transmitio el mensaje de respuesta. Peticion de mascara de direccion y respuesta a mascara de direccion. Estos mensajes son utiles en entornos que usan subredes. Permiten a un computador conocer la mascara de direccion usada en la LAN a la que esta conectado. El computador emite por difusion un mensaje de peticion de mascara de direccion en la LAN. El router en la LAN responde con un mensaje de respuesta a mascara de direccion que contiene dicha mascara.
Arquitectura de redes y servicios Tema 3 - Arquitectura TCP/IP 67/112

IPv6: Mejoras I

Aumento del espacio de direcciones.


Direcciones de 128 bits (6x1023 por m2 ).

Mecanismo de opciones mejorado.


Las opciones se denen mediante cabeceras de extension situadas entre la cabecera obligatoria IPv6 y la cabecera de la capa de transporte. Los routers intermedios no examinan ni procesan la mayora de las cabeceras de extension.
Acelera y simplica el procesamiento de las cabeceras en los routers. Facilidad para incorporar opciones adicionales.

Autoconguracion de direcciones.
Proporciona asignacion dinamica de direcciones.

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

68/112

IPv6: Mejoras II Aumento de la exibilidad en el direccionamiento.


Incluye el concepto de direccion anycast (monodistribucion) que permite entregar un datagrama solo a un nodo seleccionado de entre un conjunto. Mejora la escalabilidad en el encaminamiento multicast (multidistribucion) al incorporar un campo de ambito a las direcciones multicast.

Facilidad para la asignacion de recursos.


Sustituye el campo Tipo de servicio de IPv4 por el campo Etiqueta de ujo. Permite el etiquetado de paquetes como pertenecientes a un ujo de traco particular para el que el emisor solicita un tratamiento especial.
Ayuda al tratamiento del traco especializado como el de vdeo en tiempo real.

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

69/112

IPv6: Direcciones
Longitud: 128 bits. Una interfaz puede tener varias direcciones. Permite a un usuario con varios proveedores de acceso a traves de la misma interfaz tener direcciones distintas agrupadas bajo el espacio de direcciones de cada proveedor. Tres tipos de direcciones: Unicast (unidistribucion o unidifusion). Identica a una sola interfaz. Un paquete enviado a una direccion unicast se entrega a la interfaz identicada por dicha direccion. Anycast (monodistribucion). Identica a un conjunto de interfaces, normalmente pertenecientes a diferentes nodos. Un paquete enviado a una direccion anycast se entregara solo a una de las interfaces identicadas por esa direccion (la mas cercana de acuerdo a la medida de distancia del protocolo de encaminamiento). Multicast (multidistribucion). Identica a un conjunto de interfaces, normalmente pertenecientes a diferentes nodos. Un paquete enviado a una direccion multicast, se entregara a todas y cada una de las interfaces identicadas por esa direccion.
Arquitectura de redes y servicios Tema 3 - Arquitectura TCP/IP 70/112

IPv6: Formato de las direcciones Varios formatos de representacion. Generalmente como 8 grupos de 16 bits expresados en hexadecimal (4 cifras) separados por caracteres :. P.ej.:
8000:0000:0000:0000:0123:4567:89AB:CDEF

La escritura se puede abreviar suprimiendo los ceros segun las siguientes reglas:
Omitiendo los ceros a la izquierda dentro de un grupo.
P.ej., 0123 se puede escribir como 123.

Uno o mas grupos contiguos de 16 bits de valor cero se pueden escribir como :: (solo puede aparecer una vez).
P.ej., 8000::123:4567:89AB:CDEF

Las direcciones IPv4 se escriben de la siguiente forma:


En nodos que soportan IPv4 e IPv6, como :: y a continuacion la direccion IPv4, p.ej., ::192.31.20.46 En nodos que solo soportan IPv4 en la transicion hacia IPv6, como ::FFFF: y a continuacion la direccion IPv4, p.ej., ::FFFF:192.31.20.46
Arquitectura de redes y servicios Tema 3 - Arquitectura TCP/IP 71/112

IPv6: Estructura de un datagrama

Octetos: Cabecera obligatoria

Cabecera IPv6 Cabecera de opciones salto a salto Cabecera de encaminamiento


Cabecera de fragmentacin

40

Un datagrama IPv6 consta de una cabecera y un area de datos. Existe una cabecera obligatoria de 40 bytes.
Opcionalmente, puede ir seguida de una o varias cabeceras de extension (0 o mas bytes).

V ariable

V ariable 8

Cabeceras de extensin

Cabecera de opciones para el destino Cabecera TCP


rea de datos del datagrama IPv6

V ariable

20 (parte opcional variable)

Datos de aplicacin

V ariable

= Campo cabecera siguiente

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

72/112

IPv6: Cabecera obligatoria I


Bit: 0 Versin 4 10 12 16 Etiqueta de flujo Cabecera siguiente Lmite de saltos 24 31

DS

ECN

Longitud de carga til

10 x 32 bits = 40 octetos

Direccin de origen

Direccin de destino

DS = Differenciated Services (Servicios diferenciados) ECN = Explicit Congestion Notification (Notificacin explcita de congestin)
Arquitectura de redes y servicios Tema 3 - Arquitectura TCP/IP 73/112

IPv6: Cabecera obligatoria II


Version (4 bits): Version del protocolo IP. El valor es 6. Clase de traco (8 bits): Compuesto por los campos DS y ECN. El nodo origen y los routers lo utilizan para distinguir entre diferentes clases o prioridades de paquete IPv6. Etiqueta de ujo (20 bits): El origen puede utilizarla para etiquetar los paquetes que requieren un tratamiento especial, en cuanto a calidad de servicio (QoS), en los routers a lo largo del trayecto hacia el destino. Longitud de carga util (16 bits): Longitud total del datagrama (en bytes) excluyendo la cabecera obligatoria. El tamano maximo es de 65.536 bytes (64 Kb), igual que en IPv4. Cabecera siguiente (8 bits): Indica el tipo de cabecera que sigue (puede ser una cabecera de extension o la cabecera de la capa superior, p.ej., TCP o UDP). Lmite de saltos (8 bits): Indica el numero restante de saltos permitidos, establecido por el origen, para este paquete. Se decrementa en 1 en cada nodo que reenva el paquete, de forma que si llega a cero el paquete se descarta. Equivale al campo TTL de IPv4. Direccion origen (128 bits) y Direccion destino (128 bits): direcciones IP de origen y destino.
Arquitectura de redes y servicios Tema 3 - Arquitectura TCP/IP 74/112

IPv6: Cabeceras de extension Opciones salto-a-salto.


Dene opciones especiales que requieren procesamiento en cada salto.

Opciones para el destino.


Contiene informacion que debe examinar el destino.

Encaminamiento.
Proporciona un encaminamiento ampliado.

Fragmentacion.
Informacion de fragmentacion y reensamblado.

Autenticacion.
Permite vericar la identidad del emisor.

Encapsulado de seguridad de la carga (Encrypted Security Payload; ESP).


Informacion sobre el contenido cifrado.
Arquitectura de redes y servicios Tema 3 - Arquitectura TCP/IP 75/112

IPv6: Formato de las cabeceras de extension

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

76/112

IPv6: Cabecera de fragmentacion La fragmentacion solo se realiza en el origen, no en los routers intermedios El origen debe realizar un descubrimiento de ruta para averiguar el valor de la MTU mas pequena de las redes intermedias.
Despues, fragmenta el datagrama en trozos que no excedan el valor de dicha MTU. IPv6 establece un valor para la MTU mnima de 1.280 bytes (RFC 2403).

El reensamblado se realiza en el destino, igual que en IPv4. Si el origen tiene que fragmentar un datagrama, cada fragmento contendra una cabecera de extension de fragmentacion.

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

77/112

IPv6: Etiqueta de ujo


Un ujo es una secuencia de paquetes generados por un origen determinado con un destino determinado (unicast o multicast) para los que el origen desea un tratamiento especial por parte de los routers. Se identica unvocamente por la combinacion de la direccion origen, la direccion destino y la etiqueta de ujo de 20 bits (distinta de cero). Desde el punto de vista del origen: Secuencia de paquetes generados por una unica aplicacion con los mismos requisitos de servicio. Una aplicacion puede generar uno o varios ujos. P.ej., una conferencia multimedia puede tener un ujo para audio y otro para ventanas gracas con diferentes requisitos de transmision en cuanto a la velocidad de datos, retardo, etc. Desde el punto de vista de los routers: Secuencia de paquetes que comparten atributos que afectan al tratamiento que deben recibir. Camino, asignacion de recursos, requisitos sobre como descartar paquetes, contabilidad de paquetes transmitidos, seguridad. La etiqueta de ujo no tiene un signicado especial. El tratamiento especial que se debe dar a los paquetes hay que declararlo de forma anticipada (mediante un protocolo de control) o en el momento de la transmision (mediante las cabeceras de extension).
Arquitectura de redes y servicios Tema 3 - Arquitectura TCP/IP 78/112

IPv6: Reglas para la etiqueta de ujo


Los computadores y los routers que no soportan la etiqueta de ujo. Pondran ceros en este campo cuando generen datagramas. No cambiaran el valor del campo cuando reenven el paquete y lo ignoraran cuando reciban un paquete. Todos los paquetes producidos en un origen con una etiqueta de ujo distinta de cero deben tener la misma direccion destino, direccion origen y el mismo contenido en las cabeceras de opciones de salto a salto y de encaminamiento (si estan presentes) El router decidira como encaminar el paquete simplemente buscando la etiqueta de ujo en una tabla, sin examinar el resto de la cabecera. El origen asigna a cada ujo una etiqueta de ujo. Las etiquetas de ujo nuevas se eligen (pseudo)aleatoriamente y uniformemente en el rango 1 a 220 1. El origen no puede reutilizar una etiqueta de ujo para un ujo nuevo durante el tiempo de vida del ujo existente. La etiqueta de ujo cero se reserva para indicar que no se utiliza el etiquetado de ujo.
Arquitectura de redes y servicios Tema 3 - Arquitectura TCP/IP 79/112

IPv6: Seleccion de la etiqueta de ujo El router mantiene en alguna tabla informacion sobre las caractersticas de los ujos activos. La busqueda en la tabla debe ser eciente. Alternativas:
Una tabla con 220 (aprox. un millon) de entradas.
Problema: capacidad de memoria.

Una entrada por cada ujo activo (etiquetado).


El router debe buscar en la tabla cada vez que recibe un paquete. Problema: carga de procesamiento.

Tabla hash.
Tamano moderado. A cada ujo se le asigna una entrada en la tabla mediante una funcion hash.

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

80/112

Nivel de transporte: Protocolos Realiza una conexion logica o virtual entre dos extremos de la red (aplicaciones). Divide en segmentos los datos de las aplicaciones de capas superiores y los coloca en un ujo de datos para enviarlos al receptor. Por su parte, el receptor debe reensamblar los segmentos. TCP (Transmission Control Protocol).
Orientado a la conexion. Transporte de datos able extremo a extremo. RFC 793, 1122.

UDP (User Datagram Protocol).


Sin conexion. Transporte de datos no able de extremo a extremo. RFC 768.
Arquitectura de redes y servicios Tema 3 - Arquitectura TCP/IP 81/112

TSAP Direccionamiento en la capa de transporte I 1522 NSAP NSAP

Host 1
Proceso de aplicacin TSAP 1208 Capa de aplicacin

Host 2
Servidor 1 Servidor 2

NSAP: Punto de acceso al servicio de la capa de red. TSAP: Punto de acceso al servicio de la capa de transporte.

Conexin de Transporte NSAP

Capa de transporte TSAP 1522

TSAP 1836

Capa de red

NSAP

Capa de enlace

Capa fsica

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

82/112

Direccionamiento en la capa de transporte II

La identicacion de los usuarios (extremos) se realiza mediante: Direccion IP del host + numero de puerto. TCP denomina socket a esta combinacion. Un puerto representa un usuario particular del servicio de transporte. El no de puerto ocupa 16 bits en la cabecera del protocolo (valor entre 1 y 65.536).

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

83/112

Numeros de puerto

Los numeros de puerto tienen los siguientes intervalos asignados:


Los numeros inferiores a 255 corresponden a aplicaciones publicas. Los numeros entre 255 y 1.023 se asignan a empresas para aplicaciones comercializables. Los numeros superiores a 1.023 no estan regulados.

Los sistemas nales utilizan numeros de puerto para seleccionar la aplicacion adecuada. El host origen asigna dinamicamente los numeros de puerto origen, que por lo general seran numeros mayores que 1.023.

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

84/112

Numeros de puerto bien conocidos La RFC 1700 dene los llamados numeros de puerto bien conocidos que corresponden a aplicaciones estandar, algunos de los cuales son los siguientes:
20 ftp (datos). 21 ftp (comandos). 22 ssh. 23 telnet. 25 smtp (correo entrante). 53 dns (nombres del dominio). 69 tftp. 79 nger. 80 http (web). 110 pop3 (correo saliente). 119 nntp.

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

85/112

UDP (User Datagram Protocol)


Bit:
8 octetos

0 Puerto origen Longitud de segmento

16 Puerto destino Suma de comprobacin

31

Sin conexion.
No able: aunque tiene la responsabilidad de transmitir mensajes, no verica la entrega de segmentos. Los paquetes pueden llegar desordenados o duplicados.

Ventaja:
Velocidad: como no suministra acuses de recibo, se enva de la red, lo que agiliza la menos cantidad de traco a traves transferencia.
Arquitectura de redes y servicios Tema 3 - Arquitectura TCP/IP 86/112

UDP: Aplicaciones

Se utiliza en casos en los que la sobrecarga del establecimiento y cierre de la conexion no esta justicado.
Recoleccion de datos de entrada: muestreo de datos de sensores, informes de autocomprobacion de seguridad de equipos o componentes de red. Diseminacion de datos de salida: difusion de mensajes a los usuarios de la red, anuncio de un nuevo nodo, cambio de la direccion de un servicio, distribucion de valores de reloj en tiempo real. Peticion/respuesta: un servidor comun proporciona un servicio de transaccion a varios usuarios distribuidos. Aplicaciones en tiempo real.

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

87/112

TCP: Caractersticas

Orientado a conexion. Orientado a ujo. Fiabilidad. Buffering. Full-duplex. Transmision eciente y control del ujo extremo a extremo. Control del ujo por ventana deslizante.

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

88/112

TCP: Conexiones
TCP establece una conexion logica o virtual entre ambos extremos (aplicaciones = sockets). No tiene en cuenta los sistemas intermedios. La conexion entre un par de sockets solo se establecera si: No existe una conexion actual entre ambos. TCP dispone de recursos internos sucientes (p.ej., buffers sucientes). Ambos usuarios aceptan la conexion. Realiza multiplexacion de conexiones. Tres fases. Establecimiento, mantenimiento y liberacion de la conexion. El mantenimiento de la conexion proporciona transporte de los datos y servicios especiales. La terminacion de la conexion puede ser abrupta o de gracia. Si es abrupta puede implicar perdida de datos. Si es de gracia evitara que ambos extremos cierren la conexion antes de transmitir todos los datos pendientes.
Arquitectura de redes y servicios Tema 3 - Arquitectura TCP/IP 89/112

TCP: Multiplexacion de conexiones

Multiplexacion de los servicios de transporte. Varios usuarios (procesos) utilizan simultaneamente el servicio de transporte. TCP distingue a cada proceso mediante el numero de puerto.

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

90/112

TCP: Flujos TCP esta orientado a ujo (stream). Desde el punto de vista logico, ambos extremos intercambian ujos de bytes que TCP divide en segmentos para la transmision. TCP acumula bytes de usuario hasta que el segmento tenga la longitud suciente o los datos esten marcados con el bit PSH (push). El usuario puede marcar los datos como urgentes. Un segmento consta de una cabecera y un area de datos que contendra una porcion de los datos de usuario.
Los segmentos pueden ser de diferentes tamanos. Algunos segmentos no llevan datos.
Se utilizan para establecer la conexion.

Un segmento TCP viaja sobre un datagrama IP.


Arquitectura de redes y servicios Tema 3 - Arquitectura TCP/IP 91/112

TCP: Fiabilidad
Garantiza la entrega de datos mediante acuses de recibo (ACK) y numeros de secuencia. Los datos se transmiten en orden. El receptor solo enviara un ACK si los datos han llegado en buen estado. Existe un temporizador asociado a cada segmento en espera de la llegada del ACK. Si el ACK no llega en ese tiempo se producira la retransmision. TCP retransmitira los datos si un segmento se pierde o si resulta danado durante el camino (aunque llegue al destino). Los ACK hacen referencia al ujo de bytes recibidos y no a segmentos individuales. El esquema de ACK se denomina acumulativo, porque especica que cantidad del ujo de datos de envo se encuentra acumulada. Los ACK perdidos no fuerzan la retransmision. El emisor no tiene informacion sobre las transmisiones de segmentos que han tenido exito; solo conoce la posicion dentro del ujo de bytes que han sido recibidos de forma contigua.
Arquitectura de redes y servicios Tema 3 - Arquitectura TCP/IP 92/112

TCP: Buffering de datos

El buffering hace la transferencia mas eciente y minimiza el traco de la red. TCP guarda una copia de cada segmento transmitido hasta que se reciba el ACK.
Debido a que los segmentos podran perderse, y en caso de perdida TCP los retransmite.

La entidad TCP origen recibe los datos de usuario y los almacena en un buffer hasta formar un segmento. A continuacion los transmite. La entidad TCP destino elimina la cabecera TCP, situa los datos en el buffer de recepcion y notica al usuario del servicio de que hay datos disponibles.

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

93/112

TCP: Transporte de datos


Full-duplex. Transferencia de datos en ambas direcciones. Dos ujos de datos independientes de direcciones contrarias. Transferencia de informacion de control junto con datos de usuario (superposicion). Reduce el traco de la red. Los datos se transmiten en el mismo orden en que se envan. Temporizacion. Asocia un temporizador a los datos a transmitir. Si los datos no se envan en este intervalo de tiempo, informa al usuario de que se ha producido un fallo en el servicio y la conexion termina abruptamente. Etiquetado. Establece la conexion solo si se cumplen las especicaciones de seguridad. Si los niveles de prioridad no concuerdan, se deja a los niveles superiores. Control del ujo. Control de errores. Suma de comprobacion. Entrega los datos sin errores, dentro de la probabilidad de error que ofrece la suma de comprobacion.
Arquitectura de redes y servicios Tema 3 - Arquitectura TCP/IP 94/112

TCP: Control del ujo I

Control del ujo mediante ventana deslizante de tamano variable.


Permite que el destino limite el ujo de datos que enva la fuente hasta disponer de suciente espacio para tratar mas datos. Dado que la comunicacion TCP es full-duplex, existiran dos en cada maquina. ventanas para cada conexion

La ventana TCP se divide en bytes no en segmentos.


Los bytes en la secuencia de datos se numeran. El tamano de la ventana del emisor indica el numero de bytes que puede enviar sin recibir conrmacion. El tamano de la ventana del receptor indica el numero de bytes que esta dispuesto a aceptar (credito).

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

95/112

TCP: Control del ujo II

El tamano de ventana TCP es variable.


Para controlar el ujo de datos, el receptor puede disminuir el tamano de la ventana emisora cuando se encuentra saturado. Cada ACK que enva el receptor especica cuantos bytes ha recibido y el tamano de la ventana receptora, es decir, cuantos bytes esta dispuesto a recibir.
Si el tamano de la ventana aumenta, el emisor podra incrementar su ventana y enviar mas bytes. Si disminuye, el emisor decrementara el tamano de su ventana y no enviara datos mas alla del lmite impuesto.

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

96/112

TCP: Ventana emisora


La maquina origen mantiene tres punteros asociados a cada conexion para la ventana emisora: Uno que apunta al comienzo de la ventana y separa los bytes enviados y conrmados de los enviados aun no conrmados. Uno que apunta al nal de la ventana, y que indica el byte mas alto que puede enviarse sin que llegue un acuse de recibo. Uno, dentro de la ventana, que separa los bytes enviados de los aun no enviados.
Direccin de desplazamiento de la ventana

Datos que an no se pueden enviar


1 2 3 4 5 6 7 8 9 10 11 12 13

An no enviados Datos enviados de los Datos enviados de los que se ha recibido que no se ha recibido confirmacin confirmacin
Ventana

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

97/112

TCP: Ventana receptora


La ventana del receptor dispone de: Un puntero que marca el comienzo de la ventana y, por tanto, los datos que se han recibido. Un puntero que delimita el nal de la ventana; mas alla se encontraran los datos que no se podran recibir, por no existir espacio suciente en el buffer.
Direccin de desplazamiento de la ventana

Datos que an no se pueden recibir


1 2 3 4 5 6 7 8 9 10 11 12 13

An no recibidos Datos recibidos de los Datos recibidos de los que se ha enviado que no se ha enviado confirmacin confirmacin
Ventana

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

98/112

TCP: Uso de las ventanas


Entidad de transporte A

En cada segmento se envan 200 bytes


SN = 100 1 SN = 120 1 SN = 140 1

Entidad de transporte B

...1000 1001

2400 2401...

...1000 1001

2400 2401...

A puede enviar 1400 bytes

B est preparado para recibir 1400 bytes, comenzando en el 1001

...1000 1001

1601

2401...

A desplaza su ventana con cada transmisin

AN
...1000 1001 2001 2401...

1,W 160

000 =1

...1600 1601

2601...

SN =1 601 SN =1 801

B confirma 3 segmentos (600 bytes), pero slo est preparado para recibir 200 bytes ms fuera de su presupuesto inicial (B aceptar los bytes 1601 a 2600)

...1600 1601

2001

2601...

A ajusta su ventana con cada crdito

SN = 20 01 SN = 22 01 SN = 24 01
2601,W

...1600 1601

2001

2601...

...1600 1601

2600 2601...

A agota su crdito

AN =
4000 4001...

= 1400

...2600 2601

4000 4001...

...2600 2601

B confirma 5 segmentos (1000 bytes) y restaura la cantidad original de crditos

A recibe un crdito nuevo

SN = n de secuencia del primer byte del segmento AN = n de acuse de recibo (ACK) W = tamao de la ventana

Un acuse de recibo contiene AN = i, W = j: - Confirma todos los bytes hasta SN = i - 1 - Permite enviar W = j bytes ms - Desde el byte i hasta el i + j - 1

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

99/112

TCP: Poltica de asignacion de credito

El receptor debe establecer una poltica para determinar cuanto credito debe conceder al emisor. Enfoque conservador. Garantizar credito hasta el lmite del espacio disponible en el buffer (memoria temporal). Puede limitar el rendimiento cuando el retardo es alto. Enfoque optimista. Garantizar credito en funcion de la expectativa de liberar espacio antes de que lleguen los datos.
Arquitectura de redes y servicios Tema 3 - Arquitectura TCP/IP 100/112

TCP: Control de la congestion Se produce congestion cuando hay una sobrecarga de datagramas en alguno de los puntos de la conexion.
Se traduce en elevados tiempos de retraso de llegada de los datagramas. Provoca la retransmision de los datagramas.

Las retransmisiones aumentan la congestion. Solucion:


Disminuir el numero de datagramas enviados. Dos estrategias:
Arranque lento: empieza la transmision con un tamano de ventana pequeno, para no inundar la red con segmentos antes de empezar a recibir conrmaciones; el tamano de la ventana se va expandiendo de forma gradual. Crecimiento exponencial binario del temporizador de retransmision (como en CSMA/CD).

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

101/112

TCP: Caractersticas especiales Forzado del ujo de datos (PUSH).


Normalmente TCP decide cuando se han acumulado sucientes datos para formar un segmento para su transmision. El usuario TCP puede forzar a que TCP transmita inmediatamente todos los datos pendientes marcandolos con el bit PSH. El extremo receptor entregara los datos al usuario de la misma forma.

Senalizacion de datos urgentes (URG).


Indica al usuario destino que el ujo de datos contiene datos urgentes. El destino decide que hacer.

Noticacion de errores.
TCP informa de los fallos en el servicio debidos a las condiciones de la interconexion cuando TCP no puede solucionarlo.
Arquitectura de redes y servicios Tema 3 - Arquitectura TCP/IP 102/112

TCP: Estructura de la cabecera

Bit:

10

16 Puerto destino

31

Puerto origen 20 octetos

Nmero de secuencia Nmero de ACK


Longitud cabecera

Reservado

U A P R S F R C S S Y I G K H T N N

Ventana Puntero urgente

Suma de comprobacin

Opciones + Relleno

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

103/112

TCP: Cabecera I
Puerto origen y Puerto destino (16 bits cada uno). Numero de puerto que identica a los programas de aplicacion que hay en los extremos de cada conexion. Numero de secuencia (32 bits). Numero de secuencia del primer byte de datos que se transmite en el segmento, excepto cuando esta activo el bit SYN. Si esta activo SYN, especica el numero de secuencia inicial (ISN) y el primer byte de datos sera ISN+1. Numero de ACK (32 bits). Numero de secuencia del siguiente byte que se espera recibir. Ventana (16 bits). Numero de bytes que el receptor esta dispuesto a aceptar. Longitud de cabecera (4 bits). Longitud de la cabecera medida en multiplos de 32 bits. Reservado (6 bits). Reservado para usos futuros. Se establece a 0.
Arquitectura de redes y servicios Tema 3 - Arquitectura TCP/IP 104/112

TCP: Cabecera II - Campo Flags Flags (6 bits).


Indican el contenido de algunos de los otros campos del segmento. De izquierda a derecha son:
URG (Urgent). Si vale 1 indica que el campo Puntero urgente esta activo. ACK (Acknowledgement). Si vale 1 indica que el segmento sirve como conrmacion de otro segmento. PSH (Push). Fuerza la entrega inmediata de los datos a la capa de nivel superior. RST (Reset). Si vale 1 indica que reiniciara la conexion. Las causas podran ser la cada de un host, que se han recibido mensajes SYN duplicados o que exceden el timeout. SYN (Synchronize). Utilizado durante el establecimiento de la conexion para sincronizar los numeros de secuencia. FIN. Indica cierre de la conexion (el emisor no enviara mas datos).

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

105/112

TCP: Cabecera III Suma de comprobacion (16 bits).


Se utiliza para vericar la integridad del segmento (area de datos y una pseudocabecera formada por los campos direccion origen y destino, el campo protocolo de la cabecera IP y un campo longitud del segmento). Proteccion frente a errores en los datos de usuario y la informacion de direccionamiento IP.
Permite detectar errores en la entrega IP.

Puntero urgente (16 bits).


Sumado al numero de secuencia del segmento, indica el ultimo byte de la secuencia de datos urgentes. Permite al receptor conocer la cantidad de datos urgentes que llegan. Solo se interpretara en los segmentos con el bit URG activo.

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

106/112

TCP: Cabecera IV - Campo Opciones

Ocupa 0 o 32 bits. Especica entre otras cosas: El tamano maximo del segmento (MSS; Maximum Segment Size). El factor de escala de la ventana. Una marca de tiempo. Este campo se rellena con ceros a la derecha para que se formen multiplos de 32 bits entre los campos opciones del segmento TCP y relleno del datagrama IP.

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

107/112

TCP: Tamano maximo del segmento (MSS; Maximum Segment Size)

Se negocia durante el establecimiento de la conexion y viaja en el campo Opciones de la cabecera del segmento TCP. Si las dos maquinas que establecen la conexion:
Se encuentran en la misma red fsica entonces el tamano maximo del segmento coincide con la MTU de la red. No se encuentran en la misma red, pueden intentar encontrar la MTU mnima a lo largo de la ruta a recorrer entre ellas o escoger un tamano maximo de segmento de 536 (tamano predeterminado de un datagrama IP = 576 - tamano estandar de las cabeceras IP y TCP).

Un MSS de gran tamano provoca la creacion de datagramas IP grandes, lo que puede dar lugar a que sea necesaria una mayor fragmentacion, ralentizando la transmision.
Arquitectura de redes y servicios Tema 3 - Arquitectura TCP/IP 108/112

TCP: Establecimiento y liberacion de la conexion Establecimiento mediante negociacion en tres pasos. La conexion se establece entre un par de puertos.
Un puerto puede conectarse con varios destinos.

Cada una de las maquinas establece los valores iniciales de los numeros de secuencia. TCP no usa el no de secuencia 1 al iniciar una conexion. los segmentos Durante el establecimiento de la conexion pueden contener informacion; en este caso TCP debe mantener los datos hasta que nalice la conexion. Cuando una aplicacion no tiene mas datos se lo comunica a TCP, que se debe encargar de cerrar la conexion. Cerrar la conexion signica que no hay mas datos para mandar, no que no se vayan a recibir mas.
Se debe continuar aceptando datos recibidos mientras se este cerrando la conexion. Hasta que no este totalmente cerrada la comunicacion no se eliminara el registro de conexion.
Arquitectura de redes y servicios Tema 3 - Arquitectura TCP/IP 109/112

TCP: Negociacion en tres pasos

(a) Caso normal (b) Colision de llamadas


Arquitectura de redes y servicios Tema 3 - Arquitectura TCP/IP 110/112

Tiempo

TCP: Estados

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

111/112

TCP: Maquina de estados nitos


(Start) CLOSED CLOSE/ LISTEN/ SYN/SYN + ACK CLOSE/ CONNECT/SYN (Step 1 of the 3-way handshake)

La lnea continua mas gruesa representa el camino normal. La lnea discontinua mas gruesa representa el camino normal para un servidor. Las lneas nas representan eventos inusuales. Cada transicion esta etiquetada mediante el evento que la causo y la accion resultante separados por un /.

(Step 2

of the 3-way handshake) RST/ SYN/SYN + ACK

LISTEN SEND/SYN (simultaneous open)

SYN RCVD

SYN SENT

(Data transfer state) ACK/ CLOSE/FIN CLOSE/FIN (Active close) FIN WAIT 1 ACK/ FIN WAIT 2 FIN + ACK/ACK FIN/ACK FIN/ACK CLOSING ACK/ TIME WAIT (Timeout/) CLOSED (Go back to start) ACK/ FIN/ACK (Passive close) CLOSE WAIT CLOSE/FIN LAST ACK ESTABLISHED SYN + ACK/ACK (Step 3 of the 3-way handshake)

Arquitectura de redes y servicios

Tema 3 - Arquitectura TCP/IP

112/112

Você também pode gostar