Escolar Documentos
Profissional Documentos
Cultura Documentos
1/112
ndice I
El modelo Internet.
Arquitectura TCP/IP. PDU. TCP/IP vs. OSI.
ARP (Address Resolution Protocol). ICMP (Internet Control Message Protocol). Mejoras IPv6. Protocolos de transporte.
UDP (User Datagram Protocol). TCP (Transmission Control Protocol).
2/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
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.
Fsica
4/112
TCP/IP: PDU
Aplicacin
Transporte
Tramas
5/112
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
6/112
TCP/IP: Capas
Sistema final A (origen) Aplicacin
Datos
Transporte
Segmento
Transporte
Internet
Datagrama
Internet
Acceso a red
Trama
Acceso a red
Acceso a red
Trama
Red fsica A
Red fsica B
7/112
Servicios de aplicacin
Conceptualmente Internet provee tres tipos de servicios, organizados segun la siguiente jerarqua:
8/112
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.
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
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.
IPv6.
Longitud: 128 bits.
11/112
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
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.
14/112
Clases de direcciones I
Clase A B C
Bits netid 8 16 24
Bits hostid 24 16 8 2
=16.384
2(24-3) = 2.097.152
Tema 3 - Arquitectura TCP/IP
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.
16/112
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).
18/112
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
19/112
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.
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.
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
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).
23/112
24/112
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
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)
26/112
Ejemplo de subredes II
Internet
192.168.22.35
192.168.22.34
150.15.1.75
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
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.
29/112
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.
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
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.
Los protocolos de encaminamiento tambien deben transmitir las mascaras junto con la direccion de red en los mensajes de actualizacion.
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
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.
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
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
40/112
16
19
31
Versin
IHL
Longitud total
20 octetos
Flags
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
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).
42/112
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"
Servicio normal Retardo mn. Rendimiento mx. Fiabilidad mx. Coste mn.
43/112
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
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
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.
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
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
IP
(20
TCP
(20
octetos) octetos)
Cabecera Cabecera
IP
(20
TCP
(20
octetos) octetos)
Cabecera
IP
(20 octetos)
Segundo fragmento Longitud de datos = 196 octetos Desplazamiento de fragmento = 26 unidades de 64 bits (208 octetos); MF = 0
52/112
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.
53/112
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.
56/112
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)
57/112
Procesamiento IP y ARP
Recibe datagrama Enviar peticin ARP
Descartar paquete No
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
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.
60/112
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.
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
16 Checksum
31
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
64/112
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.
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
IPv6: Mejoras I
Autoconguracion de direcciones.
Proporciona asignacion dinamica de direcciones.
68/112
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
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
V ariable
Datos de aplicacin
V ariable
72/112
DS
ECN
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
Encaminamiento.
Proporciona un encaminamiento ampliado.
Fragmentacion.
Informacion de fragmentacion y reensamblado.
Autenticacion.
Permite vericar la identidad del emisor.
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.
77/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.
Tabla hash.
Tamano moderado. A cada ujo se le asigna una entrada en la tabla mediante una funcion hash.
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.
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.
TSAP 1836
Capa de red
NSAP
Capa de enlace
Capa fsica
82/112
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).
83/112
Numeros de puerto
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.
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.
85/112
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.
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.
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
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.
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.
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
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.
93/112
95/112
96/112
An no enviados Datos enviados de los Datos enviados de los que se ha recibido que no se ha recibido confirmacin confirmacin
Ventana
97/112
An no recibidos Datos recibidos de los Datos recibidos de los que se ha enviado que no se ha enviado confirmacin confirmacin
Ventana
98/112
Entidad de transporte B
...1000 1001
2400 2401...
...1000 1001
2400 2401...
...1000 1001
1601
2401...
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...
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
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
99/112
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.
101/112
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
Bit:
10
16 Puerto destino
31
Reservado
U A P R S F R C S S Y I G K H T N N
Suma de comprobacin
Opciones + Relleno
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
105/112
106/112
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.
107/112
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
Tiempo
TCP: Estados
111/112
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
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)
112/112