PDF de programación - Clase 17 TCP: Carácterísticas Establecimiento y finalización de conexiones

Imágen de pdf Clase 17 TCP: Carácterísticas Establecimiento y finalización de conexiones

Clase 17 TCP: Carácterísticas Establecimiento y finalización de conexionesgráfica de visualizaciones

Publicado el 14 de Enero del 2017
667 visualizaciones desde el 14 de Enero del 2017
1,1 MB
26 paginas
Creado hace 18a (11/10/2005)
Clase 17
TCP: Carácterísticas
Establecimiento y finalización de conexiones
Tema 5.- Nivel de transporte en Internet

Dr. Daniel Morató
Redes de Ordenadores
Ingeniero Técnico de Telecomunicación Especialidad en
Sonido e Imagen, 3º curso

Temario

1.- Introducción
2.- Nivel de enlace en LANs
3.- Interconexión de redes IP
4.- Enrutamiento con IP
5.- Nivel de transporte en Internet
6.- Nivel de aplicación en Internet
7.- Ampliación de temas

TCP

1/25

Temario

1.- Introducción
2.- Nivel de enlace en LANs
3.- Interconexión de redes IP
4.- Enrutamiento con IP
5.- Nivel de transporte en Internet




6.- Nivel de aplicación en Internet
7.- Ampliación de temas

Nivel de transporte: UDP
TCP: Características. Establecimiento y finalización de
conexiones
Control de flujo en TCP

TCP

2/25

Objetivos
 Ver las carácterísticas de TCP
 Especialmente qué quiere decir que

sea “orientado a conexión”

TCP

3/25

Contenido
 Introducción
 Demultiplexación en TCP
 Gestión de conexiones

TCP

4/25

Contenido
 Introducción
 Demultiplexación en TCP
 Gestión de conexiones

TCP

5/25

TCP

 Transmission Control Protocol
 Nivel de transporte
 RFCs 793, 1122, 1323, 2018,

2581

 Orientado a conexión
 Flujo de datos:

– Stream de bytes
– Fiable
– Ordenado
– Full duplex

Transporte

UDP TCP

 Control de flujo

– Evitar congestionar al receptor

 Control de congestión

– Evitar congestionar la red

AS 2

AS 1

AS 3

Red
Red
Enlace
Físico

IP

ICMP

Protocolo= 6

Segmento TCP

ARP

Paquete IP

TCP

6/25

Demultiplexación con conexión

 Conexión

identificada

por

2

sockets

 Cada socket

identificado por:

Dirección IP y Puerto TCP

 Es decir,

la conexión viene

identificada por:
– Dirección IP (1), Puerto TCP (1)
– Dirección IP (2), Puerto TCP (2)

 El receptor emplea la cuaterna

para demultiplexar

AS 2

AS 1

AS 3

 Cada host soporta múltiples

conexiones TCP simultáneas

 Con que uno de los 4 valores
sea diferente la conexión ya es
diferente

 Well-known ports, registrados,

efímeros, igual que para UDP

32 bits

puerto origen

puerto dest.

otros campos de
otros campos de

la cabecera
la cabecera
datos de la
aplicación
(mensaje)

TCP

7/25

Demultiplexación: Ejemplo

App 1

Transporte

Red
Enlace
Físico

IP: A

S-IP: A
D-IP: C
SP: 9157
DP: 80

App 4

App 5

App 6

Transporte

Red
Enlace
Físico

IP: C

S-IP: B
D-IP: C
SP: 5775
DP: 80

App 2

App 3

Transporte

Red
Enlace
Físico

S-IP: B
D-IP: C
SP: 9157
DP: 80

IP: B

TCP

8/25

Demultiplexación: otro ejemplo

App 1

Transporte

Red
Enlace
Físico

IP: A

S-IP: A
D-IP: C
SP: 9157
DP: 80

App 4

Transporte

Red
Enlace
Físico

IP: C

S-IP: B
D-IP: C
SP: 5775
DP: 80

App 2

App 3

Transporte

Red
Enlace
Físico

S-IP: B
D-IP: C
SP: 9157
DP: 80

IP: B

TCP

9/25

Contenido
 Introducción
 Demultiplexación en TCP
 Gestión de conexiones

TCP

10/25

Gestión de conexiones

Estableciendo una conexión:
 Three way handshake
Paso 1:
 El extremo cliente envía un
solicitando una

segmento
conexión al servidor

 El segmento no tiene datos,

solo cabecera

 SYN

cliente

servidor

SYN

TCP

11/25

Gestión de conexiones

Paso 2:
 El extremo servidor envía un
segmento al cliente confirmando
(acknowledgement) la recepción
del SYN

 En el mismo segmento el
indica su deseo de

servidor
establecer la conexión (SYN)

 El segmento no tiene datos,

solo cabecera

cliente

servidor

SYN

A C K

S Y N ,

TCP

12/25

Gestión de conexiones

Paso 3:
 El extremo cliente envía una
confirmación al SYN del servidor
 El segmento no tiene datos,

solo cabecera

 Conexión establecida

cliente

servidor

SYN

A C K

S Y N ,

ACK

conectado

Transferencia de datos…

conectado

TCP

13/25

Gestión de conexiones

Cerrando una conexión
Paso 1:
 Un

extremo

segmento
cierre de la conexión

envía
solicitando

un
el

FIN

 El segmento no tiene datos,

solo cabecera

 FIN

TCP

14/25

Gestión de conexiones

Paso 2:
 El otro extremo confirma (ACK)

la recepción del FIN

 El extremo que ha enviado el
FIN ya no puede enviar más
datos nuevos

 Cierre solo de un sentido de la

comunicación

FIN

A C K

TCP

15/25

Gestión de conexiones

Paso 3:
 El otro extremo envía un
segmento solicitando el cierre
de la conexión

 El segmento no tiene datos, solo

cabecera

FIN

A C K
F I N

TCP

16/25

Gestión de conexiones

Paso 4:
 Confirmación de ese segundo

FIN

 Por si ese último ACK se pierde,
el que lo envió espera un tiempo
(podría
tener que volverlo a
enviar)

 Conexión cerrada

ait
e w
tim

cerrada

FIN

A C K
F I N

ACK

cerrada

TCP

17/25

Diagrama de estados

CLOSED

SYN SENT

ESTABLISHED

SYN
SYN, ACK

ACK

CLOSED
LISTEN

SYN RCVD

ESTABLISHED

Open activo, snd SYN

CLOSED

Open pasivo

Close

Close

LISTEN

snd SYN

rcv SYN / snd ACK

rcv SYN /
snd SYN,ACK
SYN
RCVD

rcv ACK

Close, snd FIN

SYN
SENT

rcv SYN, ACK / snd ACK

ESTABLISHED

rcv FIN / snd ACK

Close, snd FIN

FIN

WAIT-1

rcv ACK

rcv FIN /
snd ACK

CLOSING

rcv FIN, ACK /
snd ACK

CLOSE
WAIT

Close, snd FIN

rcv ACK

LASTACK

rcv ACK

FIN

WAIT-2

TCP

TIMEWAIT

rcv FIN /snd ACK

Timeout
2xMSL

CLOSED

18/25

Diagrama de estados

CLOSED

SYN SENT

ESTABLISHED

SYN
SYN, ACK

ACK

CLOSED
LISTEN

SYN RCVD

ESTABLISHED

Datos
ACK .
.

Open activo, snd SYN

CLOSED

Open pasivo

Close

Close

LISTEN

snd SYN

rcv SYN / snd ACK

rcv SYN /
snd SYN,ACK
SYN
RCVD

rcv ACK

Close, snd FIN

SYN
SENT

rcv SYN, ACK / snd ACK

ESTABLISHED

rcv FIN / snd ACK

Close, snd FIN

CLOSE
WAIT

Close, snd FIN

rcv ACK

LASTACK

rcv ACK

FIN

WAIT-1

rcv ACK

rcv FIN /
snd ACK

CLOSING

rcv FIN, ACK /
snd ACK

FIN

WAIT-2

TCP

TIMEWAIT

rcv FIN /snd ACK

Timeout
2xMSL

CLOSED

19/25

Diagrama de estados

CLOSED

SYN SENT

ESTABLISHED

SYN
SYN, ACK

ACK

CLOSED
LISTEN

SYN RCVD

ESTABLISHED

Datos
ACK .
.
FIN
ACK
FIN
ACK

CLOSE WAIT

LAST ACK

CLOSED

FIN WAIT-1

FIN WAIT-2

TIMEWAIT
CLOSED

Open activo, snd SYN

CLOSED

Open pasivo

Close

Close

LISTEN

snd SYN

rcv SYN / snd ACK

rcv SYN /
snd SYN,ACK
SYN
RCVD

rcv ACK

Close, snd FIN

SYN
SENT

rcv SYN, ACK / snd ACK

ESTABLISHED

rcv FIN / snd ACK

Close, snd FIN

FIN

WAIT-1

rcv ACK

rcv FIN /
snd ACK

CLOSING

rcv FIN, ACK /
snd ACK

CLOSE
WAIT

Close, snd FIN

rcv ACK

LASTACK

rcv ACK

FIN

WAIT-2

TCP

TIMEWAIT

rcv FIN /snd ACK

Timeout
2xMSL

CLOSED

20/25

Servidor

Cliente

Open activo, snd SYN

Open activo, snd SYN

CLOSED

Open pasivo

Close

Close

CLOSED

Open pasivo

Close

Close

LISTEN

snd SYN
rcv SYN / snd ACK

rcv SYN /
snd SYN,ACK
SYN
RCVD

rcv ACK

Close, snd FIN

SYN
SENT

LISTEN

snd SYN
rcv SYN / snd ACK

rcv SYN /
snd SYN,ACK
SYN
RCVD

rcv ACK

Close, snd FIN

SYN
SENT

ESTABLISHED

rcv FIN / snd ACK

Close, snd FIN

ESTABLISHED

rcv FIN / snd ACK

Close, snd FIN

FIN

WAIT-1
rcv ACK

FIN

WAIT-2

rcv FIN /
snd ACK

CLOSING

rcv FIN, ACK /
snd ACK

CLOSE
WAIT
Close, snd FIN

rcv ACK

LASTACK

rcv ACK

TIMEWAIT

rcv FIN /snd ACK

CLOSED

Timeout
2xMSL

FIN

WAIT-1
rcv ACK

FIN

WAIT-2

rcv FIN /
snd ACK

CLOSING

rcv FIN, ACK /
snd ACK

CLOSE
WAIT
Close, snd FIN

rcv ACK

LASTACK

rcv ACK

TIMEWAIT

rcv FIN /snd ACK

CLOSED

Timeout
2xMSL

TCP

21/25

Ejemplo

$ tcpdump -ttnlS tcp and host 10.1.11.1
Kernel filter, protocol ALL, datagram packet socket
tcpdump: listening on all devices
54.171 1.1.1.12.1798 > 10.1.11.1.telnet: S 3462181145:3462181145(0)
54.175 10.1.11.1.telnet > 1.1.1.12.1798: S 1997882026:1997882026(0) ack 3462181146
54.175 1.1.1.12.1798 > 10.1.11.1.telnet: . 3462181146:3462181146(0) ack 1997882027

54.177 1.1.1.12.1798 > 10.1.11.1.telnet: P 3462181146:3462181173(27) ack 1997882027
54.178 10.1.11.1.telnet > 1.1.1.12.1798: . 1997882027:1997882027(0) ack 3462181173
...

66.816 10.1.11.1.telnet > 1.1.1.12.1798: FP 1997882551:1997882559(8) ack 3462181333
66.816 1.1.1.12.1798 > 10.1.11.1.telnet: . 3462181333:3462181333(0) ack 1997882560
66.817 1.1.1.12.1798 > 10.1.11.1.telnet: F 3462181333:3462181333(0) ack 1997882560
66.818 10.1.11.1.telnet > 1.1.1.12.1798: . 1997882560:1997882560(0) ack 3462181334

TCP

22/25

Resumen
 Fiable, mantiene el orden, flujo en stream…
 TCP emplea el concepto de conexión
 (IP_1, puerto_1, IP_2, puerto_2)
 Mantiene estado

TCP

23/25

Temario

1.- Introducción
2.- Nivel de enlace en LANs
3.- Interconexión de redes IP
4.- Enrutamiento con IP
5.- Nivel de transporte en Internet




6.- Nivel de aplicación en Internet
7.- Ampliación de temas

Nivel de transporte: UDP
TCP: Características. Establecimiento y finalización de
conexiones
Control de flujo en TCP

TCP

24/25

Próxima clase

Control de flujo en TCP

 Lecturas recomendadas:

– [Forouzan03] 12-12.4, 12.9
– 14 páginas

TCP

25/25
  • Links de descarga
http://lwp-l.com/pdf844

Comentarios de: Clase 17 TCP: Carácterísticas Establecimiento y finalización de conexiones (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad