tcp_ip

131

Upload: hugo-arriagada-albarran

Post on 19-Jun-2015

403 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: TCP_IP
Page 2: TCP_IP

Introducción al TCP/IP•Historia de TCP/IP•InterNet Enginnering Task Force IETF•Internet Research Task Force IRTF•Internet Assigned Number Authority IANA•Request for Coments (RFC’s)•Modelo de referncia OSI•TCP/IPSuite de protocolos TCP/IP•Internet Protocol (IP)•Direccionamiento IP•Resolución de Nombres•Protocolos de resolución de direccionamiento (ARP)•Protocolo de control de mensajería (ICMP)•Protocolo de control de transmisión (TCP)•BOOTP/DHCP•IPv6

Agenda

Page 3: TCP_IP

Agenda

Protocolos de aplicación.•Ejecución remota de comandos (Telnet)•Transferencia Remota de Archivos (FTP)•Servicios de correo electrónico•Sistema de archivos en red (NFS)•Protocolo de trsnferencia de hipertexto (HTTP)

Page 4: TCP_IP

Introducción al TCP/IPHistoria de TCP/IP

•1969 : ARPANET entra en operación cuatro nodos de conmutación de paquetes en tres diferentes lugares Conectados todos via circuitos de 56 kbps Usan NCP (Network Control Protocol) fundado por el Departamento de Defensa de USA.

1974 : TCP/IP diseñado por Vinton Cerf y Robert Khan

1979 : Se documenta la IP versión 4. (Aún vigente).

Page 5: TCP_IP

Introducción al TCP/IPHistoria de TCP/IP

•1979 : Se forma la oficina de configuración y control de InterNet (ICCB)

•1979 : Unix BSD con TCP/IP se entrega a las Universidades

•1980 : ARPA comienza a convertir sus máquinas a TCP/IP

•1983 : se emite un mandato que obliga a todos los computadores conectados a ARPANET usen TCP/IP

•1983 : ARPANET se divide en dos redes:ARPANET para investigaciónMILNET para uso militar.

Page 6: TCP_IP

Introducción al TCP/IPHistoria de TCP/IP

•1985 : ARPANET comenzó a usarse intensamente y se congestionó

•1986 : se desarrolla NSFNET para reemplazar a ARPANET•Universidades y centros de investigación se conectan en redes regionales•Las redes regionales se conectan a un circuito central•Los enlaces originales sonde 56 kbps.

•1988 : los enlaces se mejoran a T1 (1544 kbps)

•1991 : NSF decide mover el backbone a compañías privadas

•1993 : Nuevos backbone Internet, ANSNET con enlaces T3 (45 Mbps)

•1993 : Finaliza intervención de NFS.

Page 7: TCP_IP

Introducción al TCP/IPInternet hoy día.

•Arquitectura distribuída operada por Proveedores de servicios de red comerciales (NSP’s)•Todos se conectan en Network Access Point (NAP’s)

•Conmutador de alta velocidad al cuasl se pueden conectar un número importante de routers con propósito de intercambio de tráfico•Permitir el tráfico Internet de clientes de un proveedor para alcanzar los clientes de otro proveedor.

•ISP proveen servicios a clientes finales.•Puntos de conección entre un cliente y un ISP son llamadso punto de presencia (POP)•Las redes de los ISP intercambian informacióncon cada uno de los demás por conección a través de NSP’s que se conectan a NAP’s o por la conección directa a NAP’s

Page 8: TCP_IP

Mapa del Backbone de la red vBNS (backbone Network Service)

Introducción al TCP/IP

Page 9: TCP_IP

Organización de la junta de Arquitectura de InterNet

Junta de IAB

IRTF IETF

IRSG IESG

Grupos de investigación Grupos de trabajo

Introducción al TCP/IP

Page 10: TCP_IP

Actividades de los grupos de trabajo IETF•Aplicaciones•Intenet•Operación y mantenimiento•Enrutamiento•Seguridad•Transporte•Servicios de usuarios•General

Introducción al TCP/IP

Page 11: TCP_IP

Actividades de los grupos de investigación IRTF

•End-to-end•Arquitectura de infraestructura de información•Descubrimiento de recursos en Internet•Administración de red•Multidifusión confiable•Enrutamiento•Multidifusión •Administración de servicios

Introducción al TCP/IP

Page 12: TCP_IP

Autoridad de Internet para la asignación de numeración IANA

ARINAmericanRegistry forInternet Numbers

RIPEReseauxIPEuropean

APNICAsiaPacificNetworkInformation Center

IANA

Introducción al TCP/IP

Page 13: TCP_IP

Proceso de desarrollo de las Normas RFC

Borrador

Espectativas de laRFC

IESG recomienda promoción a propuestade norma. Se publica como RFC; de otraforma, se devuelve al IETF

Norma propuestaImplementación y pruebapor al menos 6 meses

Borrador de la normaEvaluación de implementación por unmínimo de 4 meses

Norma

Revisión del IETF i ESGen períodos no superioresa dos años

Introducción al TCP/IP

Page 14: TCP_IP

RFC’s importantes

STDNumber

RFCNumber

Nombre

1

2

3

4

2500

1700

11221123

1812

Internet Official Protocols Standard

Numeros asignados

Requerimientos para hosts en InterNet

Requerimientos para routers en IP versión 4

www.rfc-editor.org/rfd.html

Introducción al TCP/IP

Page 15: TCP_IP

Modelo de referencia OSI

CAPA ELEMENTOS ASOCIADOS

FISICO

ENLACE

TRANSPORTE

SESION

PRESENTACION

APLICACION

Transmite/recibe en el medio físico de la red.

Transfiere unidades de información al otro terminal delenlace físico

Conmuta y rutea información al dispositivo de red apropiado.

Provee integridad de datos entre puntos finales ycalidad de servicio

Coordina interacción entre procesos de aplicación end-to-end

Porvee códigos de conversión y reformateo de datos

Interfaces directamente conectadas con aplicacionescorriendo en dispositivos

RED

Introducción al TCP/IP

Page 16: TCP_IP

Modelo de referencia OSI

DATA

DATA

DATA

DATA

DATA

DATA

DATA

DATA

DATA

DATA

DATA

DATA

A A

P P

S S

T T

R R

E

101011101101011101110011100011 101011101101011101110011100011

E

Repetidor

Bridge/Switch

Router

Dispositivos de interconexión

Introducción al TCP/IP

Page 17: TCP_IP

Modelo de referencia OSI y la suite de protocolos IP

FISICO

ENLACE

RED

TRANSPORTE

SESION

PRESENTACION

APLICACIONAPLICACION

(FTP, TELNET, SNMPDNS,SMTP)

TRANSPORTE(TCP O UDP)

INTERNET PROTOCOL(IP)

ICMP, IGMP

ARP, RARP

INTERFACE DE RED(LAN-ETH, TR, FDDI)

(WAN - Serial Lines, FR, ATM)

Introducción al TCP/IP

Page 18: TCP_IP

Protocolos TCP/IP basado en flujo de datos

Telnet, FTP, TFTP, HTTP, SNMP, SMTP.

BGPPort Number

RIP

TCP UDPOSPF EGP ICMP IGMP

ARP RARPIP

Número Protocolo

Tipo de código

Ehternet, TokenRing, PPP, etc.

Introducción al TCP/IP

Page 19: TCP_IP

Suite de protocolos TCP/IP

Protocolo Internet

•Entrega direcciones lógicas de red de 32 bit•Enruta paquetes de datos•Protocolo no orientado a conexión (sin establecer sesión)•Mejor esfuerzo en la entrega de paquetes•Confiabilidad se entrega a protocolos de capas superiores•Fragmentación y reemsamblaje de paquetes

Page 20: TCP_IP

Suite de protocolos TCP/IP

Protocolo Internet

Confiabilidad ySecuenciamiento

IP

Interface de red Interface de red

Confiabilidad ySecuenciamiento

Router

IP IPRutea si

es posible

PAQUETEPaquetes fragmentados

Page 21: TCP_IP

Suite de protocolos TCP/IP

Estructura del paquete IP32 bits (4 bytes)

versión IHL Typo Serv Largo total

identificación flagsGrado de fragmentación

Tiempo de vida Protocolo Valor de chequeo encabezado

Dirección origen

Dirección destino

Opcional (variable)

DATA (variable)

Page 22: TCP_IP

Suite de protocolos TCP/IP

Tipo de servicio TOS

3 11 1 2

Precedencia D T R No utilizado

D = Retardo

T = Desempeño

R = Confiabilidad

Page 23: TCP_IP

Suite de protocolos TCP/IP

Fragmentación

Encabezado IP Area de datos original del paquete IP

Encab. IP 1 Encab. IP 2

Encab. IP 3

Data 1 Data 2

Data 3

Router 1

Router 2

FDDI

FDDI

MTU = 4500 bytes

MTU=1500

MTU = 4500 bytes

Page 24: TCP_IP

Suite de protocolos TCP/IP

Direccionamiento IP

193.160.1.5

193.160.2.83

193.160.1.1 193.160.2.1

193160.2.0

193.160.1.0

Formato BinarioNotación con punto decimal

11000001 10100000 000000001 00000101

193.160.1.5

Page 25: TCP_IP

Suite de protocolos TCP/IP

Conversión de binario a Decimal

11111111

1248163264128

Si todos los bits están puestos en 1 el valor decimal es 2551+2+4+8+16+32+64+128

2021222324252627

Page 26: TCP_IP

Suite de protocolos TCP/IPClases de direcciones IP tradicionales

Clase A

Clase B

Clase C

0

1 0

1 1 0

Id Red

Id Red

Id Red

Id Host

Id Host

Id Host

Clase A

Clase B

Clase C

# Redes Host/Red1er Octeto

126

16384

2097152

16777214

65534

254

1-126

128-191

192-223

Page 27: TCP_IP

Suite de protocolos TCP/IPClases de direcciones IP tradicionales

• Clase D•Usada para grupo de multicast

1 1 1 0

• Clase E•Reservada para uso futuro. Los primeros cinco bits están puestos en 11110

Page 28: TCP_IP

Suite de protocolos TCP/IPPautas de direccionamiento

•Los identificadores de red no pueden ser 127.0.0.0•El identificador 127 está reservado para la función de loop-back en host

•El identificador de red y host no puede ser 255 (todos los bits en 1)

•255 es una dirección de broadcast

•El identificador de red y host no puedes er 0 (todos los bits en 0)

•0 significa esto es una una red solamente.

•El identificador de host debe ser único en la red

Page 29: TCP_IP

Suite de protocolos TCP/IPEspacio de direccionamiento privado

10.0.0.0 - 10.255.255.255 1 red clase A

172.16.0.0 - 172.31.255.255 16 redes clase B

192.168.0.0- 192.168.255.255 256 redes clase C

Page 30: TCP_IP

Suite de protocolos TCP/IPMáscara de subred

•Característica indicadora de la porción de dirección que corresponde a la identificación de hosts

•Especifica si la dirección IP de destino está localizada en una red local o en una red remota.

•Al combinar bit a bit con la operación AND las direcciones IP de origen con la máscara correspondiente y la de destino con su máscara correspondiente y el resultado es la misma red, ambos hosts pertenecen a la misma red. Sino, están en redes distintas.

Page 31: TCP_IP

Suite de protocolos TCP/IPEjemplo de Máscara de subred

•Por ejemplo 160.30.20.10 está en la misma subred que 160.30.20.100 si la máscara es 255.255.255.0

Ip Address 160.30.20.10

10100000 00011110 00010100 00001010

Máscara de red 255.255.255.011111111 11111111 11111111 00000000

Resultado 160.30.20.0 10100000 00011110 00010100 00000000

Ip Address

Máscara de red

Resultado

160.30.20.100

255.255.255.0

160.30.20.0

10100000 00011110 00010100 01100100

11111111 11111111 11111111 00000000

10100000 00011110 00010100 00000000

Page 32: TCP_IP

Suite de protocolos TCP/IPEnmascaramiento

Red privada

160.30.0.0/24160.30.1.0/24160.30.2.0/24 . . .160.30.254.0/24160.30.255.0/24

INTERNET

Anuncio de ruteo160.30.0.0/16

Antes de subdividir : 1 red con 65534 hostsDespués de subdividir : 256 redes con 254 hosts

Page 33: TCP_IP

Suite de protocolos TCP/IPEjemplo: Red enmascarada

Espacio de direccionamiento 160.30.0.0/16

Máscara de 3 bytes 255.255.255.0 8 bits disponibles para subredes y para hosts

255 255 255 0 1111 1111 1111 1111 1111 1111 0000 0000

Num De Subredes Red Host160.30.0.x 1010 000 0001 1110 0000 0000 xxxx xxxx

160.30.255.x 1010 000 0001 1110 1111 1111 xxxx xxxxMáximo de 256 subredes

Page 34: TCP_IP

Suite de protocolos TCP/IPEjemplo: Red enmascarada (continuación)

Espacio de direccionamiento 160.30.0.0/16

Máscara de 3 bytes 255.255.255.0 8 bits disponibles para subredes y para hosts

255 255 255 0 1111 1111 1111 1111 1111 1111 0000 0000

Num De Hosts Red Host160.30.x.1 1010 000 0001 1110 xxxx xxxx 0000 0001

160.30.x.254 1010 000 0001 1110 xxxx xxxx 1111 1110Máximo de 254 hosts

Page 35: TCP_IP

Suite de protocolos TCP/IPEjemplo de subredes

Dirección de red200.200.200.0

Máscara de subred255.255.255.0 Espacio de

dirección de red200.200.200.0/24200.200.200.64

200.200.200.192 200.200.200.128200.200.200.0

Máscara de subred para cada red : 255.255.255.192

Page 36: TCP_IP

Suite de protocolos TCP/IPEjemplo de subredes con Variable Length Subnet Mask

200.200.200.0/26(máx 62 hosts)200.200.200.64/26(máx 62 hosts)

200.200.200.192/28

200.200.200.128/28

200.200.200.0 200.200.200.144/28200.200.200.160/28200.200.200.176/28

200.200.200.208/28200.200.200.224/28200.200.200.240/28

(máx 14 hosts)

(máx 14 hosts)

Espacio de direccionamiento 200.200.200.0/24Se requieren 2 subredes con 50 hosts y 8 subredes con 10 hosts

Page 37: TCP_IP

Suite de protocolos TCP/IPEjemplo de subredes con Variable Length Subnet Mask

160.40.156.0255.255.255.0

160.40.152.0255.255.252.0

160.40.140.0255.255.252.0

160.40.157.12255.255.255.252

160.40.157.4255.255.255.252

160.40.144.0255.255.252.0

160.40.148.0255.255.252.0

160.40.156.1

160.40.140.1

160.40.152.1

160.40.157.5

160.40.157.13

160.40.157.14

160.40.157.6

160.40.148.1

160.40.144.1

LAN 1

LAN 2

LAN 3

Site C

Site A

Page 38: TCP_IP

Suite de protocolos TCP/IP

Variable Length Subnet de 1 a 16

CIDR Mascara # de direcciones # de tipos de Prefix/length individuales redes

/1 128.0.0.0 2048 M 128 A /2 192.0.0.0 1024 M 64 A /3 224.0.0.0 512 M 32 A /4 240.0.0.0 256 M 16 A /5 248.0.0.0 128 M 8 A /6 252.0.0.0 64 M 4 A /7 254.0.0.0 32 M 2 A /8 255.0.0.0 16 M 1 A o 256 B /9 255.128.0.0 8 M 128 B /10 255.192.0.0 4 M 64 B /11 255.224.0.0 2 M 32 B /12 255.240.0.0 1 M 16 B /13 255.248.0.0 524286 8 B /14 255.252.0.0 262142 4 B /15 255.254.0.0 131070 2 B /16 255.255.0.0 65534 1 B o 256 C

Page 39: TCP_IP

Suite de protocolos TCP/IP

Variable Length Subnet de 17 a 30

Prefix/length individuales redes /17 128.0.0.0 2048 M 128 A /18 192.0.0.0 1024 M 64 A /19 224.0.0.0 512 M 32 A /20 240.0.0.0 256 M 16 A /21 248.0.0.0 128 M 8 A /22 252.0.0.0 64 M 4 A /23 254.0.0.0 32 M 2 A /24 255.0.0.0 16 M 1 A o 256 B/25 255.128.0.0 8 M 128 B /25 255.192.0.0 4 M 64 B /26 255.224.0.0 2 M 32 B/27 255.240.0.0 1 M 16 B /28 255.248.0.0 524286 8 B /29 255.252.0.0 262142 4 B/29 255.254.0.0 131070 2 B /30 255.255.0.0 65534 1 B o 256 C

Page 40: TCP_IP

Suite de protocolos TCP/IPClassless Inter Domain Routing Agregación de

rutasISP

InterNet200.25.0.0/16

200.25.16.0/21

200.25.24.0/22200.25.28.0/23

200.25.30.0/23

200.25.16.0/24

200.25.17.0/24

200.25.23.0/24

200.25.24.0/24

200.25.27.0/24

200.25.28.0/24

200.25.29.0/24

200.25.30.0/24

200.25.31.0/24

Compañía ACompañía B

Compañía C

Compañía D

Page 41: TCP_IP

Suite de protocolos TCP/IPTablas de subredes

N° de Bits Mascara de Identificación de lasen máscara subred Subredes

16 255.255.0.0 017 255.255.128.0 0, 12818 255.255.192.0 0, 64, 128, 19219 255.255.224.0 0, 32, 64, 96, 128, 160, 192 , 22420 255.255.240.0 0, 16, 32, 48, 64, 80, 96, 112, 128, 144, 160, 176, 192, 208, 224, 24021 255.255.248.0 0, 8, 16, 24, 32, 40, 48,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,216, 224, 232, 240, 24822 255.2552.252.0 0,4,8,12,16,20,24,28,32,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, 236,240,244,248,25223 255.255.254.0 0,2,4,6,8,10,12,14,16,18,,,,,,,,,,,,,,,,,,,,,,,,,,,,246,248,250,252,254,25524 255.255.255.0 0,1,2,3,4,5,6,7,8,9,10,11,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,251,252,253,254,25525 255.255.255.128 0, 12826 255.255.255.192 0, 64, 128, 19227 255.255.255.224 0, 32, 64, 96, 128, 160, 192 , 22428 255.255.255.240 0, 16, 32, 48, 64, 80, 96, 112, 128, 144, 160, 176, 192, 208, 224, 24029 255.255.255.248 0, 8, 16, 24, 32, 40, 48,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,216, 224, 232, 240, 24830 255.255.255.252 0,4,8,12,16,20,24,28,32,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, 236,240,244,248,252

Page 42: TCP_IP

Suite de protocolos TCP/IPDNS Domain Name Server

Las direcciones de InterNet son difíciles de recordar para los humanos

Fácil para un protocolo de softwareNombres simbólicos son más naturales para los humanos

Difícil para un protocolo de software

Page 43: TCP_IP

Suite de protocolos TCP/IPEspacio de nombres de dominio InterNet

Genericos Países

Int com edu gov mil org net de uk jp br ar cl

telsur

cnt

IAB

IRTF IETF

Page 44: TCP_IP

Suite de protocolos TCP/IPResolución de Nombres de Dominio

com

Cisco ericcson ACC

eng sales research

Page 45: TCP_IP

Suite de protocolos TCP/IPResolución de Nombres de Dominio

Servidor de Nombre Raíz

Servidor de Nombres Local

Cliente DNS

Servidor de nombres .com

Ericcson.com

Eng.ericsson.com1

23

4

56

78

910

Page 46: TCP_IP

Suite de protocolos TCP/IPDNS Caching

•Los DNS de IntereNet usan caching de nombre para reducir el tráfico en la internet y mejorar el desempeño•Los servidores entregan información guardada en cache, pero lo marcan como un vínculo no autoritativo•Si la eficiencia es importante, el cliente escogerá para contactar la autoridad y verificar que el vínculo entre nombre y dirección es aún válido.•Cuando una respuesta autoritativa a una consulta, incluye un valor TTL en la respuesta que esopecirfica cuan larga es la garantía de mantener el vínculo.

Page 47: TCP_IP

Suite de protocolos TCP/IPProtocolo de Resolución de direccionamiento (ARP)

•Una fuente debe conocer una dirección de destino de hardware antes que pueda enviar un paquete IP directamente a ella•ARP es el mecanismo que mapea IP a direcciones de hardware•ARP usa una difusión local para obtener las direcciones MAC dinámicamente•ARP almacena los mapas en cachje para uso futuro.•Las entradas estáticas puede ser ingresadas manualmente en el cache ARP.

Page 48: TCP_IP

Suite de protocolos TCP/IPProtocolo de Resolución de direccionamiento (ARP)

IBM Compatible Tower box IBM Compatible

Tower box

Broadcast

Unicast

Redes remotas

Fuente:160.30.100.20

00-AA-00-12-34-56

Destino:160.30.100.0

00-A0-C9-78-9A-BC

Si su IP es 160.30.100.10 por favor envíeme una respuesta que contenga su dirección MAC

Este soy yo y mi MAC es 00-A0-C9-78-9A-BC

Page 49: TCP_IP

Suite de protocolos TCP/IPEstructura del paquete ARP

Tipo de Hardaware Tipo de protocolo

HLEN PLEN Código de operación

Dirección de harwware del origen (bytes delk 0 – 3)

Origen HA (Bytes 4-5) Origen IP (Bytes 0-1)

Origen IP (Bytes 2-3) Destino HA (Bytes 0-1)

Destino HA (Bytes 2 – 5)

Destino IP (Bytes 0 – 3)

Page 50: TCP_IP

Suite de protocolos TCP/IPProtocolo de Resolución de Direcciones Inverso RARP

•Reverse ARP es el mecanismo que mapea las direcciones MAC a direcciones IP.

•El protocolo RARP permite una máquenia recien arrancada difunda su dirección MAC

•El servidor RARP vee sus consultas y devuelve la correspondiente dirección IP.

Page 51: TCP_IP

Suite de protocolos TCP/IPProtocolo de Control de Mensajes de Internet ICMP

•Informa errores y envía mensajes de control en medio de IP•Los mensajes ICMP son encapsulados dentro de paquetes IP•Uno de los usos mas frecuentes de ICMP es depuración•El formato de un mensaje ICMP:

Encabezado IP

Tipo Código Valor de chequeo

Identificador Número de secuencia

Data opcional

Page 52: TCP_IP

Suite de protocolos TCP/IPTipos de mensajes ICMP

Tipo de campo Tipos de mensajes ICMP0 Eco de respuesta3 Destino inalcanzable4 Fuente apagada5 Redireccionado (cambia una ruta)8 Eco de consulta11 Tiempo excedido para un paquete12 Problemas de parámetros en un paquete13 Consulta de sincronismo14 Respuesta de sincronismo15 Consulta de información16 Respuesta de información17 consulta de máscara de dirección18 Respuesta de máscara de dirección

Page 53: TCP_IP

Suite de protocolos TCP/IPFormato de mensaje de eco de consulta y respuesta

Encabezado IP

Tipo= 8 Código = 0 Valor de chequeo

Identificador Número de secuencia

Data opcional

Este mensaje prueba si un destino es alcanzable y responde, enviando un echo ICMP y recibiendo rerspuestas a ese eco.Esta prueba es implementada en el comando PING

Page 54: TCP_IP

Suite de protocolos TCP/IPInformes de destino inalcanzable

Tipo de campo Tipos de mensajes ICMP0 Red inalcanzable1 Host inalcanzable2 Protocolo inalcanzable3 Puerta inalcanzable4 Fragmentación necesaria5 Falla en ruta original6 Red destino desconocida7 Host destino desconocido8 Host origen aislado9 Comunicación con red destino

Administrativamente prohibida10 Comunicación con host destino

Administrativamente prohibida11 Red inalcanzable para tipo de servicio12 Host inalcanzable para tipo de servicio

Page 55: TCP_IP

Suite de protocolos TCP/IPTraceroute

•Traceroute usa ICMP y el TTL en el encabezado IP, para dejarnos ver la ruta que los paquetes IP siguen desde un host a otro•El origen envía paquetes seteado en TTL igual 1•El primer router envía el mensaje “tiempo excedido”•El origen incrementa el TTL en 1•El segundo router en el camino envía el mensaje “tiempo excedido”•El proceso continúa hasta que el último destino devuelve el mensaje “puerto inalcanzable”•El origen usa esta respuesta para desplegar la ruta de destino.

Page 56: TCP_IP

Suite de protocolos TCP/IPTransmision Control Protocol TCP

•Orientado a la conección

•Provee conecciones lógicas entre un par de procesos:•Los procesos son identificados como únicos usando sockets•Socket = Dirección IP & número de puerto.

•Entrega confiable entre puntos terminales

•Implementa control de flujo

Page 57: TCP_IP

Suite de protocolos TCP/IPTransmision Control Protocol TCP

•Las unidades de dato trnsferidas entre dos dispositivos con TCP se llaman segmentos

•Los segmentos se intercambian para hacer lo siguiente:•Establecer una conección•Aceptar el tamaño de la ventana•Transferir datos•Enviar reconocimientos•Cerrar conecciones

Page 58: TCP_IP

Suite de protocolos TCP/IPEstructura del paquete TCP

32 bits (4 bytes)

Puerto destino

Número de secuencia

OFFSET Reserved Ventana

Valor de chequeo

Opciones

DATA (variable)

Puerto fuente

Flags

Puntero de urgencia

relleno

Page 59: TCP_IP

Suite de protocolos TCP/IPNúmeros de puertos más conocidos

Puerto Número Descripción7 Eco20 FTP (datos)21 FTP (control)23 Telnet25 Simple Mail Transfer Protocol (SMTP)53 Domain Name Server (DNS)79 Finger80 World Wide Web (WWW)

104 X400 Mail sending139 NetBIOS service session

160-223 Reservado

Page 60: TCP_IP

Suite de protocolos TCP/IPEstablecimiento de una conección TCP

Cliente ServidorSYN

SEQ # 1000Window 8760 bytesMax, segmento 1460

SYNSEQ # 3000ACK # 1001Window 8760 bytesMax Segmento 1460 bytes

ACKSEQ # 3001ACK # 1001

Page 61: TCP_IP

Suite de protocolos TCP/IPReconocimiento positivo con retransmisión

Eventos en el lado origen Enventos en el lado receptor

Paquete perdidoEnvía paquete 1Parte el reloj

ACK Debería arrivar normalmente en este tiempo Paquete debería arrivar

ACK debería ser enviado

Retransmisión del paquete 1Parte el reloj

Mensajes de la red

El tiempo expira

Paquete 1 recibidoSe envía ACK 2

ACK 2 recibidoSe cancela reloj

Page 62: TCP_IP

Suite de protocolos TCP/IPProtocolo de ventana deslizante

Ventana inicial

1 2 3 4 5 6 7 8 9 10

Segmentos 1,2 y 3 con reconocimiento

1 2 3 4 5 6 7 8 9 10

Desplazamiento de la ventana

Page 63: TCP_IP

Suite de protocolos TCP/IPProtocolo de ventana deslizante

Envía sgmto 1

Envía sgmto 2

Envía sgmto 3

Data,SEQ#2000 laggo=100

Data,SEQ#2100 laggo=100

Data,SEQ#2000 laggo=100

ACK#2200

ACK#2300

Recibe segmto

Recibe segmt2

Recibe segmto 3

Envía ACK 3 para sigte sgmto esperado

Envía ACK4 para sigte sgmto esperado

Page 64: TCP_IP

Suite de protocolos TCP/IPAlgoritmo de partida lenta

•La partida lenta agrega otras ventanas al dispositivo TCP origen: la ventana de congestión, llamda “cwnd”•Cuando se establece una nueva coneccióncon un host u otra red, la ventana de congestión se inicializa en un segmento•Cada vez que se recibe un ACK, la ventana de congestión aumenta en un segmento•El origen puede seguir transmitiendo hasta el mínimo de la ventana de congestión y de la ventana de advertencia.•La partida lenta entrega un aumento exponencial (envía un segmento, luego dos, luego tres etc).•La ventana de congestión es un control de flujo impuesto por el origen, mientras que la venta de advertencia es un control de flujo impuesto por el receptor.

Page 65: TCP_IP

Suite de protocolos TCP/IP

Algoritmo de partida lenta y eludimiento de congestión.

•La inicialización para una conexión dada coloca la cwnd a un segmento y el umbral de partida lenta a 65536 bytes.•La rutina de salida de TCP nunca envía mas que el mínimo de la cwnd y de la ventena de advertencia del receptor.•Cuando ocurre congestión (indica por un tiempo de espera o la recepción de ACK’s duplicados), la mitad de la ventana actual se almacenada en ssthersh. Adicionalmente, si la congestión se indica por un tiempo de espera. Cwnd se coloca a un segmento (es decir, a partida lenta)•Cuando un nuevo dato es reconocido por el final, se incrmente cwnd

Page 66: TCP_IP

Suite de protocolos TCP/IP

Algoritmo de partida lenta y eludimiento de congestión.

•La forma que cwnd se aumenta depende si TCP es ejecutado por partida lenta o por eludimiento de congestión.•Si cwnd es menor o igual que ssthersh, TCP está en partida lenta; de otra forma, TCP es ejecutado por eludimiento de congestión.•La partida lenta continúa hasta que TCP está a medio camino de donde ocurrió la congestión, y entonces ocurre el eludimiento de congestión.•La partida lenta envía un segmento, luego dos, luego cuatro, etc.•El eludimiento de congestión dicta que cwnd sea incrementado por tamaño_de_segmento*tamaño_de_segment/cwnd cada vez que se recibe un ACK•Esto es un aumento lineal de cwnd, comparado al de partida lenta que es exponencial.

Page 67: TCP_IP

Suite de protocolos TCP/IP

Retransmisión rápida.

•TCP puede generar un ACK inmediato (un ACK duplicado) cuandose recibe un segmento fuera de servicio.•El propósito de este ACK duplicado es dejar que el otro lado sepa que un segmento se recibió malo, y decirle que número de secuencia se espera.•Ya que TCP no sabe si un ACK duplicado es causado por un segmento perdido o sólo por el reordenamiento de segmentos, el espera recibir unos pocos CAK’s duplicados.•Si tres o más ACK’s duplicados se reciben en una fila, es un alto índice que el segmento se perdió.•Entonces TCP ejecuta retransmisión del que parece ser un segmento perdido, sin esperar que el reloj de retransmisión expire.

Page 68: TCP_IP

Suite de protocolos TCP/IP

Algoritmo de recuperación rápida.

•Después una retransmisión rápida envía el segmento que parece estar perdido, se ejecuta el eludimiento de congestión, pero no la partida rápida.•La razónpara no ejecutar la partida rápida en este caso es que el recptor del ACK duplicado le dice a TCP que aún hay datos fluyendo entre los terminales.•TCP puede entonces evitar la reducción del flujo abruptamente por no ir en partida lenta.•Los algoritmos de restransmisión rápida y de recuperación rápida se implementan generalmente juntos.

Page 69: TCP_IP

Suite de protocolos TCP/IP

Protocolo de datagrama de usuario UDP

•No orientado a la conección•No se establecen sesiones

•No garantiza la entrega•No existen números de secuencia•No existen reconocimientos

•La confiabilidad es responsabilidad de la aplicación

•Usa números de puertos como puntos finales de comunicación.

Page 70: TCP_IP

Suite de protocolos TCP/IP

Protocolo de datagrama de usuario UDP

Puerta origen Puerta destino

Largo Valor de chequeo

DATA

Formato del paquete UDP

Page 71: TCP_IP

Suite de protocolos TCP/IP

Protocolo de BOOTstrap BOOTP

Formato del paquete UDP

•Un dispositivo recién booteado puede usar BOOTP para obtener una dirección IP, un archivo de arranque e información de configuración

•El cliente inicia una consulta BOOTP con un broadcast a todas las estaciones en la red local.•El monitor del server BOOTP recoge la consulta (en UDP port 67)•El servidor busca una IP para asignar y la coloca en el mensaje de respuesta•También agrega el nombre del servidor de BOOTP y el nombre del archivo de carga apropiadoque puede ejecutarse.•También agrega otros parámetros de configuración tales como la máscara de subred y el gateway por defecto•El cliente recibe la respuesta (en UDP port 68)•Usa esta información suministrada por el servidor para iniciar la obtención de un mensaje TFTP al servidor específico•La respuesta es un archivo ejecutable.

•DHCP es una versión mejorada de BOOTP.

Page 72: TCP_IP

Suite de protocolos TCP/IPFormato del mensaje de BOOTP

0 8 16 24 31

OP HTYPE HLEN HOPS

Ident. Transacción

Segundos Inutil

Dir IP Cliente

Su dir IP

Dir IP servidor

Dir IP Router

Dir MAC Cliente

Nombre Servidor (64 bytes)

Nombre archivo de arranque (128 bytes)

Area específica del fabricante (64 bytes)

Page 73: TCP_IP

Suite de protocolos TCP/IP

Protocolo dinámico de configuración de estaciones DHCP

INo cliente DHCP Cliente DHCP

Servidor DHCP

Cliente DHCP

Encuentre un servidor DHCP

Ofrezce una dirección

Acepta la dirección

Confirmación

Dir IP 1

Dir IP 2

Base de datos DHCP

Dir IP 1Dir IP 2Dir IP 3

Page 74: TCP_IP

Suite de protocolos TCP/IP

Protocolo dinámico de configuración de estaciones DHCP

•DHCP soporta tres mecanismos para localización de direcciones IP:

•Localización manual

•Localización automática

•Localización dinámica

Page 75: TCP_IP

Suite de protocolos TCP/IP

Protocolo dinámico de configuración de estaciones DHCP

INo cliente DHCP

Servidor DHCP

Descubrimiento DHCPIP fuente : 0.0.0.0Ip destino : 255.255.255.255Dir MAC : 00-80-37-12-34-56

Oferta DHCPIP fuente : 160.30.20.10Ip destino : 255.255.255.255IP ofrecida :160.30.20.150Dir MAC cliente :00-80-37-12-34-56Máscara subred: 255.255.255.0Tiempo de oferta: 72 horasIdentificador del servidor 160.30.20.10

Page 76: TCP_IP

Suite de protocolos TCP/IP

Protocolo dinámico de configuración de estaciones DHCP

INo cliente DHCP

Servidor DHCP

Consulta DHCPIP fuente : 0.0.0.0Ip destino : 255.255.255.255Dir MAC : 00-80-37-12-34-56Ip Requerida : 160.30.20.150Ip Servidor : 160.30.20.10

Actualización tabla DHCPIP fuente : 160.30.20.10Ip destino : 255.255.255.255IP ofrecida :160.30.20.150Dir MAC cliente :00-80-37-12-34-56Máscara subred: 255.255.255.0Tiempo de oferta: 72 horasIdentificador del servidor 160.30.20.10DHCP option : router: 160.30.20.1

Page 77: TCP_IP

Suite de protocolos TCP/IP

Interacción de DHCP a través de routers

INo cliente DHCP Servidor DHCP

Descubrimiento DHCP

Oferta DHCPSolicitud DHCP

DHCP ACK

Page 78: TCP_IP

Suite de protocolos TCP/IPFormato del mensaje DHCP

0 16

OP HTYPE HLEN HOPS

Ident. Transacción

Segundos FLAGS

Dir IP Cliente

Su dir IP

Dir IP servidor

Dir IP Router

Dir MAC Cliente

Nombre Servidor (64 bytes)

Nombre archivo de arranque (128 bytes)

Options (Variable)

8 24 31

Page 79: TCP_IP

Suite de protocolos TCP/IPIPv4 e IPv6

•Si IPv4 trabaja tan bien ¿Porqué cambiar?

•Aumento drmático de la ocupación de números IP

•Entrega un mejor soporte para aplicaciones en tiempo real

•Características de seguridad

Page 80: TCP_IP

Suite de protocolos TCP/IP

Nuevas características de IPv6

•Tamaño de la dirección•128 bit de direccionamiento

•Mejora mecanismos de opción•Simplifica y apura el procesamiento de paquetes IPv6 en routers

•Autroconfiguración de direcciones•Asignación dinámica de direcciones

•Soporte para localización de recursos•Etiquetamiento de paquetes para manejar tráfico específico

•Capacidades de segurización•Autentificación y privacidad

Page 81: TCP_IP

Suite de protocolos TCP/IP

El formato del paquete IPv6

40 bytes Opcional

Encabez. Base

Encabez. Ext. 1

Encabez. Ext n

Area de datos

Page 82: TCP_IP

Suite de protocolos TCP/IP

El formato del paquete IPv4

32 bits (4 bytes)

versión IHL Typo Serv Largo total

identificación flagsGrado de fragmentación

Tiempo de vida Protocolo Valor de chequeo encabezado

Dirección origen

Dirección destino

Opcional (variable)

DATA (variable)

Page 83: TCP_IP

Suite de protocolos TCP/IP

El formato encabezado base IPv6

0 4 8 16 24 32

Version Prioridad Etiqueta de flujo

Largo del Payload Siguiente encabezado Limite de hop

Dirección origen

Dirección de destino 10

*32

bit

s =

40

oc t

et o

s

Page 84: TCP_IP

Suite de protocolos TCP/IP

El formato encabezado de extensión

Encabezado de Extensión DescripciónOpciones de hop-by-hop Información miscelánea para routersOpciones de destino -1 Información para primer destinoRouting Ruta parcial o total a seguirFragmentación Administración de fragmentos de datgaramasAutentificación Verificación de la identidad de la fuenteSeguridad de carga útil encriptada Información acerca de contenidos encriptadosOpciones de destino -2 Información adicional sólo para el destino final

Page 85: TCP_IP

Suite de protocolos TCP/IPEncabezados de Opciones de hop-by-hop y opciones de destino

•Encabezado de opciones de hop-by-hop•Leido por todos los routers a través de la ruta•Útil para transmitir la administración de la información o comandos de depuración a routers

•Encabezados de opciones de encabezado•2 tipos: uno para 1er destino• una para el destino final

Page 86: TCP_IP

Suite de protocolos TCP/IP

Encabezados de Routing

•Especifica una lista de direcciones IP que dictan que camino un paquete atravesará

•Los encabezados de routing tipo zero indican como nodos intermedios pueden desviar un paquete a la siguiente dirección en el encabezado de routing

•Desvío estricto, paquetes que solo visitan routers listados en el encabezado de routing•Desvío perdido, que significa que los router no listados no pueden ser visitados por el paquete

Page 87: TCP_IP

Suite de protocolos TCP/IP

Formato de Encabezados de Routing

Sigte Encabezado Tipo

Numero de direcciones Sgte dirección

Reservado Mapa de bits Estricto/perdido

1 – 24 direcciones

Page 88: TCP_IP

Suite de protocolos TCP/IP

Fragmento de Encabezado

32

Identificación

Sgte encabez Reservado Offset de fragmentos Res M

8 8 13 2 1

Page 89: TCP_IP

Suite de protocolos TCP/IP

Encabezado de autentificación

El encabezado de autentificación provee autentificación e integridad

La extensión del encabezado de extensión a IPv6 asegura que un paquete está actualmente viniendo desde el host indicado en su dirección fuente

Page 90: TCP_IP

Suite de protocolos TCP/IP

ESP Seguridad de la carga util encriptada

Encabezado IPv6

Encabezado deExtensión

Encabezado ESP

Encabezado de transporteY carga útil

No encriptado encriptado

Modo Transporte

Encabezado IPv6

Encabezado deExtensión

Encabezado ESP

Encabezado de transporteY carga útil

No encriptado encriptado

Modo Tunel

EncabezIPv6

Encbezado deExtension

Page 91: TCP_IP

Suite de protocolos TCP/IP

Direccionamiento IPv6

•Tal como IPv4, IPv6 asigna una única dirección para cada conección entre un computador y una red física

•Hay tres tipos de direcciones IPv6:

•Unicast

•Multicast

•Anycast

Page 92: TCP_IP

Suite de protocolos TCP/IPNotación hexadecimal con dos puntos (:) para IPv6

•Considere un número de 128 bit escrito en notación con punto decimal:•105.220.136.100.255.255.255.255.0.018.128.140.10.255.255

•Este número escrito en notación hexadecimal es•69DC:8864:FFFF:FFFF:0:1280:8C0A:FFFF

•Los ceros no significactivos se pueden omitir

•Uno o más grupos de 16 zeros pueden ser reemplazados por un par de :

•FF0C:0:0:0:0:0:0:B1 puede escribirse •FF0C::B1

Page 93: TCP_IP

Suite de protocolos TCP/IP

Transición a IPv6

•Tunnelig•Configurado

•Configuración manual de mapas IPv6/IPv4•Llenar las direcciones IPv6con espacios para ser usadas

•Automático•Espacio de direccionamiento compatible•No aprovechar la ventaja de la extensión del espacio de direccionamiento

Page 94: TCP_IP

Protocolos de Aplicación

Telnet

•Protocolo de terminal remoto que permite a un usuario en un sitio establecer una conección TCP al servidor de login de otro sitio.

•El username y password son transferido en forma insegura (texto plano) a través de la red.

•Define un terminal de red virtual que provee una interface normalizada al systema remoto

•Incluye un mecanismo que permite que cliente y servidor negocien.

•Trata ambos puntos terminales como una conección simétrica

Page 95: TCP_IP

Protocolos de Aplicación

Telnet

Cliente Telnet

Servidor

Cliente conectado localmente

Login remoto

Login local

Page 96: TCP_IP

Protocolos de Aplicación

Network Virtual Terminal

Cliente Telnet Servidor

ClienteTelnet

ServidorTelnet

Conección TCP

Formato usado por elsistema del cliente

Formato NVT Formato usado por elsistema del servidor

Codigo de Valor Significado asignadoControl ASCII Decimal

NUL 0 Sin operación (no tiene efecto en la salidaBEL 7 Señal audibleBS 8 Mueve un carácter hacia la izquierdaHT 9 Mueve hacia la derecha hasta la siguiente parada de tabulaciónLF 10 Mueve hacia abajo siguiente lineaVT 11 Mueve abajo hasta siguiente parada de Tab verticalFF 12 Mueve al principio siguiente paginaCR 13 Mueve hacia el margen izquierdo de la siguiente linea

Page 97: TCP_IP

Protocolos de Aplicación

Codigos de comandos de Telnet

Comando Valor decimalSignificado asignadoSE 240 Fin de la opción de subnegociaciónNOP 241 Sin operaciónDM 242 Marca datoBRK 243 QuiebreIP 244 Proceso de interrupciónAO 245 Aborta salidaAYT 246 Esta Ud. ahí?EC 247 Borra carácterEL 248 Borra líneaGA 249 Vamos adelanteSB 250 Comienzo de subnegociaciónWILL 251 Emisor requiere opción habilitanteWONT 252 Emisor rechaza opción habilitanteDO 253 Emisor requiere opción habilitante en el otro ladoDONT 254 Emisor rechaza opción habilitante en el otro ladoIAC 255 Interpreta siguiente octeto como un comando

Page 98: TCP_IP

Protocolos de Aplicación

Opciones de Telnet

Nombre Código RFC Significado asignadoTransmite binario 0 856 Cambia transmisión a 8 bit binarioEco 1 857 Permite eco en un lado de los datos que recibeSuprime-GA 3 858 Suprime señal de "vamos adelante" despues del datosEstado 5 859 Consulta de status de una opción Telnet desde el lado remotoMarca de reloj 6 860 Consulta por la marca de relojpara ser insertada en el mensaje de respuestaTipo de terminal 24 884 Intercambio de información acerca del tipo de terminal en usoFin del registro 25 885 Término del envío de datos con código EORMode de linea 34 1116 Envía línea completa en vez de un acracter individual

Page 99: TCP_IP

Protocolos de Aplicación

Rlogin

•Rlogin es la implementación más flexible de Telnet para UNIX•Rsh invoca un intérprete de comando en una máquina UNIX remota y pasa el comando de argumento de línea al intérprete de comandos•El formato de la invocación de un comando usando rsh es:

•Rsh <maquina> <comando>•Rsh unixserver 1 ps

•Rlogin entiende las nociones UNIX de la entrada standard, salida standard y error standard, y usa TCP para conectarse a una máquina remota

•Rsh unixserver1 ps > filename

Page 100: TCP_IP

Protocolos de Aplicación

File Transfer Protocol FTP

•FTP es el standard de Internet para transferir archivos

•FTP se usa para copiar un archivo completo desde un sistema a otro sistema.

•FTP también ofrece facilidades adicionales a sólo transferir archivos:

•Acceso interactivo•Especificación de formato•Control de autentificación

Page 101: TCP_IP

Protocolos de Aplicación

File Transfer Protocol FTP

Cliente FTP Servidor

FTP Control (port 21)

FTP Datal (port 20)

Page 102: TCP_IP

Protocolos de Aplicación

Comandos FTP

Comando Descripciónopen Concta a FTP remotodisconnect Termina sesión FTPuser Envía nueva información de usuariocuando está conectado todavíacd Cambia directorio de trabajo remotolcd Cambia directorio de trabajo localpwd Imprime directorio de trabajo en máquina remotaget/mget Recibe archivo/recibe múltiples archivosput/mput Senvía archivo/ envía múltiples archivosbinary Coloca modo de transferencia en binarioascii Coloca modo de transferencia en ASCIIdir/ls Lista contenidos de directorio remotohelp Obtiene ayudadelete Borra un archivo en el directorio remotobye Termina sesión FTP

Page 103: TCP_IP

Protocolos de Aplicación

Ejemplo de FTP

>ftp rs.internoc.netConnected to rs.internic.net220 ***** Welcome to the InterNic Registration Host ************ Login with username "anonymous" ******* You may change directories to the following:policy -registration policytemplates - registration templatesnetinfo - Nic information filesdomain - Root domain Zone files200 and more!User (rs.internic.net:(none)): anonymous331 Guesto login ok, send your complete e_mail address as passwordPassword: xxxxxxxxxxxxx230 Guest login Ok, access restrictions applyftp> cd rfc250 CWD command succesfulftp> get rfc 1878,txt200 PORT command successful150 Opening ASCII mode data connection for rfc1878.txt (19414 bytes)226 Transfer completeftp: 19865 bytes received in 85.02 seconds 0.23 Kbytes/sec.

Page 104: TCP_IP

Protocolos de Aplicación

Ejemplo de FTP

CLiente Servidor

USER

PASSanonymous

guest

TYPE ASCII

MODE STREAM

STRU FILE

RETR

QUIT

230 user logged

200 Command ok

200 Command ok

200 Command ok

200 Port Command ok

150 Opening data conn

226 transfer complete

Page 105: TCP_IP

Protocolos de AplicaciónTFP protocolo de transferencia de archivos trivial

•TFTP es protocolo extremadamente simple para transferir archivos

•La comunicación entre un cliente TFTP y eol servidor usa UDP (port 69) y no TCP.

•TFTP no tiene autorización

•TFTP siempre envía bloques de datos de 512 bytes

Page 106: TCP_IP

Protocolos de Aplicación

Proceso TFTPServidor TFTPCliente TFTP

WRQ(WRQ)

ACK(ACK)

(DATA)DATA

DATA

(ACK)ACK

(DATA)

ACK

(ACK)

Page 107: TCP_IP

Protocolos de Aplicación

Formato de Mensajes TFTP2 octetos

2 octetos

2 octetos

2 octetos

2 octetos

2 octetos

2 octetos

2 octetos

n octetos

n octetos

n octetos

n octetos

n octetos

1 octeto

1 octeto

1 octeto

1 octeto

1 octeto

Hasta 512 octetos

Sol read

Sol write

Data

ACK

Error

Nombre_Archivo

Nombre_Archivo

N°bloque

N°Bloque

ErrCode

Data

Modo

Modo

Mensaje de error

0 0

0 0

0

Page 108: TCP_IP

Protocolos de Aplicación

Llamada remota de procedimientos RPC

• RPC ejecuta procedimientos (tareas, subrutinas y subprocedimientos) remotamente.• El cliente obtiene control y forma mensajes al servidor que

contiene los argumentos para el procedimiento remoto• El servidor desempaqueta los argumentos, ejecuta el

procedimiento, empaqueta el resultado en un mensaje y lo devuelve al cliente

• El cliente desempaqueta el mensaje y devuelve el control al programa de llamada

• RPC es un protocolo de capa de sesion que puede usar UDP o TCP

• El encabezado contiene la identificación de la transacción, el identificador de la dirección de transferencia, el numero de versión del protocolo, el número de programa, el número de procedimiento y la autorización.

Page 109: TCP_IP

Protocolos de Aplicación

Simple Mail Transfer Protocolo SMTP

• SMTP es el protocolo standard de Internet para correo electrónico

• Use la port 25 de TCP

SMTP

TCP

IP

NIC (enlace y físico)

Page 110: TCP_IP

Protocolos de Aplicación

Proceso SMTP

• Usuario• Crea un mensaje interactivamente

• Agente de usuario• Acepta el mensaje y su formato• Construye la lista de destinaciones• Envía la lista y el mensaje a una cola para el cliente

• Cliente• Establece una conección TCP con el servidor SMTP remoto• Envia direcciones a los servidores relevantes• Envía copias únicas del mensaje a cada servidor

• Servidor• Construye un encabezado (el cual incluye un puntero para

textos de usuario) para cada dirección• Coloca el encabezado en la cola de la casilla apropiada

Page 111: TCP_IP

Protocolos de Aplicación

Proceso SMTP

terminal usuario A

TCP/IP Internet

terminal usuario A terminal usuario b

SMTP cliente

SMTPServer

SMTP server

SMTP client

Sistema SMTP 1 Sistema SMTP 2

Port 25

Page 112: TCP_IP

Protocolos de Aplicación

Comandos y respuestas SMTP

HELO

MAIL

DATA

QUIT

RCPT

SEND

Inicializa conección

Termina la conección

Page 113: TCP_IP

Protocolos de Aplicación

Comandos y respuestas SMTP

•HELO•Enviado por un agente SMTP para inicializar una conección e identificar el cliente SMTP•Formato: HELO(SP)^[somain host name](CRLF)

•MAIL•Identifica el origen•Formato:MAIL(SP)<reverse path>(CRLF)

•RCPT•Identifica el recipiente•Formato:RCPT(SP)TO:<forward path>(CRLF)

Page 114: TCP_IP

Protocolos de Aplicación

Comandos y respuestas SMTP

•DATA•Informa al SMTP server que la fase de caminos alternativos de envío esta completa•Implica que la siguiente comunicación es dato•Format:DATA(CRLF)

•SEND•Identifica como un terminal individual para recibir el mail•Formato:SEND(SP)TO:>reverse path>(CRLF

•QUIT•Advierte al SMTP server que el cliente SMTP finalizó•Formato:QUIT(CRLF)

Page 115: TCP_IP

Protocolos de Aplicación

Códigos de respuestaCódigoRespuesta Significado

211 Estado del sistema214 Información de cómo usar el SMTP220 Servicio <dominio> está listo221 Servicio <dominio> cerrando el canal250 Acción de mail requerida está terminada251 usuario no local, desviando a camino de desvío354 Comienzo de entrada de correo, finaliza con >CRLF>.<CRLF>421 Servicio <dominio> no disponible450 Acción requerida es abortada: casilla no disponible451 Acción requerida es abortada: error en procesamiento452 Acción requerida es abortada : almacenamiento insuficiente500 Error de sintaxis: comando irreconocible501 Error de sintaxis: en parámetros o argumentos502 Comando no impelmentado503 Numero de secuencia inválido504 Parámetro del comando no implementado550 No se tomó acción solicitada: casilla no disponible551 No se tomó acción solicitada: error en procesamiento552 usuario no local, por favor intente por <camino de desvío>553 No se tomó acción solicitada: nombre de casilla no permitido554 Falló transacción

Page 116: TCP_IP

Protocolos de Aplicación

Ejemplo del protocolo SMTP

Número Cliente/servidor Código de respuesta 1 Servidor 220 {Nombre servidor B}Servicio Transfrencia de correo listo2 Cliente HELO {Nombre máquina A}3 Servidor 250 {Nombre servicio B}4 Cliente MAIL FROM:<[email protected]>5 Servidor Ok6 Cliente RCPT TO:<[email protected]>7 Servidor 250 Ok

Page 117: TCP_IP

Protocolos de Aplicación

Ejemplo del protocolo SMTP (cont)

Número Cliente/servidor Código de respuesta 8 Cliente RCPT TO:<[email protected]>9 Servidor 550 No existe tal usuario aquí

10 Cliente RCPT TO:<[email protected]>11 Servidor 250 Ok12 Cliente DATA13 Servidor 354 Comienza ingreso de correo,; fin con <CRLF>.<CRLF>14 Cliente {Texto en ASCII}15 Cliente <CRLF>.<CRLF>16 Servidor 250 Ok17 Cliente Quit18 Servidor 221 {Nombre máquina B} Servicio cerrando el canal

Page 118: TCP_IP

Protocolos de Aplicación

Protocolo de Oficina de correo versión 3 (POP3)

terminal usuario A

TCP/IP Internet

terminal usuario A

SMTP cliente

SMTPServer

SMTP server

SMTP client

Sistema SMTP 1 Sistema SMTP 2

Port 25

Cliente POP3 Cliente POP3

Servidor POP3 Servidor POP3Puerto 110Puerto 110

Page 119: TCP_IP

Protocolos de Aplicación

Operación básica POP3

Cliente POP3 Servidor POP3

Conección TCP a port 110

Aceptación

Page 120: TCP_IP

Protocolos de Aplicación

Operación básica POP3 (Cont)

Cliente POP3 Servidor POP3

Comandos

Respuestas

1. Estado de autorización2. Estado de transacción3. Estado de actualización

Page 121: TCP_IP

Protocolos de Aplicación

Comandos POP3

•Válido en el estado de autorización

•Nombre de usuario (USER name)

•Cadena de paso (PASS string)

•Salida (QUIT)

Page 122: TCP_IP

Protocolos de Aplicación

Comandos POP3

•Válido en el estado de Transacción

•Estado (STAT)•Listar mensaje (LIST [msg])•Tetransmitir mensaje (RETR msg)•Borrar mensaje (DELE msg)•NOOP•Restaura mensajes borrados (RSET)•QUIT

Page 123: TCP_IP

Protocolos de AplicaciónProtocolo de acceso a mensajes en InterNet IMAP v.4

tCliente IMAP4

TCP/IP Internet

Cliente IMAP4

SMTP cliente

SMTPServer

SMTP server

SMTP client

Sistema SMTP 1 Sistema SMTP 2

Port 25

Servidor IMAP4Servidor IMAP4

Puerto 143 Puerto 143

Page 124: TCP_IP

Protocolos de Aplicación

Protocolo de Sistema de archivos en red NFS

ProcesoUsuario

Acceso a archivo local

Cliente NFS

TCP/UDP IP

TCP/UDP IP

ServidorNFS

Acceso a archivo local

Disco Local

Disco Local

Page 125: TCP_IP

Protocolos de Aplicación

Procedimientos NFS

•GETATTR•Devuelve los atributos de un archivo

•SETATTR•Coloca los atributos a un archivo

•STAFS•Devuelve el estado de un sistema de archivos

•LOOKUP•Inspecciona un archivo

•READ•Lee datos desde un archivo

•WRITE•Graba datos aun archivo

•CREATE•Crea un archivo

Page 126: TCP_IP

Protocolos de Aplicación

Procedimientos NFS (cont)

•REMOVE•Borra un archivo

•RENAME•Cambia nombre de un archivo

•SYMLINK•Crea un enlace simbólico a un archivo

•READLINK•Lee un enlace simbólico

•MKDIR•Crea un directorio

•RMDIR•Borra un directorio

•READDIR•Lee un directorio

Page 127: TCP_IP

Protocolos de Aplicación

Ejemplo NFS

Cliente SUN UNIX1

Sun% cd /nfs/unix1/usr/smith

Sun% mkdir Mail Fuente Comando1 sun 104 getattr2 Unix1 Reply ok 963 sun 104 getattr4 Unix1 reply Ok 965 sun 104 getattr6 Unix1 Reply ok 967 sun 112 lookup "Mail"8 Unix1 Reply ok 289 sun 1144 mkdir "Mail"

10 Unix1 Reply ok 128

Page 128: TCP_IP

Protocolos de Aplicación

Protocolo de transferencia de hipertexto

•El protocolo normalizado de comunicaciones entre servidores de WEB es HyperText Transfer Protocolo (HTTP)

•El lenguaje normalizado para escribir dopcumentos WEB es el HyperText Markup Language (HTML)

•Cada página Web tiene asignada una única URL (Uniform Resource Locator), por ejemplo:

•http://www.surnet.com

Page 129: TCP_IP

Protocolos de Aplicación

Formato del mensaje HTTP

GET http://server.name/path/file.type

command URL

ProtocoloServidor HTTPNombre dominio Nombre camino Nombre tipo

GET http://www.surnet.com/cnt/clientes

Page 130: TCP_IP

Protocolos de Aplicación

HTTP/1.0 Consulta completa

Method(SP)http://server.name/path/file.type(SP)HTTP/1.0(CR)(LF)General-header (CR)(LF)Request-header (CR)(LF)Entity-header (CR)(LF)(CR)(LF)Body

Page 131: TCP_IP

Protocolos de Aplicación

Ejemplo de operación WEB

Servidor WEBDisco

Servidor WEBDisco

Cliente HTTP

INTERNET

www.w3.org Xyz.com

Hipervínculo a Xyz.com

Hipervínculo a www-w3-org

Programa Browser

HTTP usado sobre esta conección TCP