Publicado el 1 de Julio del 2017
551 visualizaciones desde el 1 de Julio del 2017
1,0 MB
49 paginas
ARQUITECTURA DE REDES, SISTEMAS Y SERVICIOS
Área de Ingeniería Telemática
Transporte fiable
Area de Ingeniería Telemática
http://www.tlm.unavarra.es
Arquitectura de Redes, Sistemas y Servicios
3º Ingeniería de Telecomunicación
,
I
I
S
E
D
E
R
E
D
A
R
U
T
C
E
T
U
Q
R
A
S
O
C
V
R
E
S
Y
S
A
M
E
T
S
S
I
I
a
c
i
t
l
á
m
e
e
T
a
í
r
e
n
e
g
n
i
I
e
d
a
e
r
Á
Temario
• Introducción
• Arquitecturas, protocolos y estándares
• Conmutación de paquetes
• Conmutación de circuitos
• Tecnologías
• Control de acceso al medio en redes de área local
• Servicios de Internet
2
/50
,
I
I
S
E
D
E
R
E
D
A
R
U
T
C
E
T
U
Q
R
A
S
O
C
V
R
E
S
Y
S
A
M
E
T
S
S
I
I
a
c
i
t
l
á
m
e
e
T
a
í
r
e
n
e
g
n
i
I
e
d
a
e
r
Á
Temario
Introducción
1.
2. Arquitecturas, protocolos y estándares
3. Conmutación de paquetes
•
•
Principios
Problemas básicos
•
•
•
•
•
Como funcionan los routers (Nivel de red)
Encaminamiento (Nivel de red)
Transporte fiable (Nivel de transporte en TCP/IP)
Control de flujo (Nivel de transporte en TCP/IP)
Control de congestión (Nivel de transoporte en TCP/IP)
4. Conmutación de circuitos
5. Tecnologías
6. Control de acceso al medio en redes de área local
7. Servicios de Internet
3
/50
Material
Del Capitulo 3 de
Kurose & Ross,
“Computer Networking a top-down approach
featuring the Internet”
Addison Wesley
,
I
I
S
E
D
E
R
E
D
A
R
U
T
C
E
T
U
Q
R
A
S
O
C
V
R
E
S
Y
S
A
M
E
T
S
S
I
I
a
c
i
t
l
á
m
e
e
T
a
í
r
e
n
e
g
n
i
I
e
d
a
e
r
Á
4
/50
,
I
I
S
E
D
E
R
E
D
A
R
U
T
C
E
T
U
Q
R
A
S
O
C
V
R
E
S
Y
S
A
M
E
T
S
S
I
I
a
c
i
t
l
á
m
e
e
T
a
í
r
e
n
e
g
n
i
I
e
d
a
e
r
Á
Objetivos
• ¿Qué es el nivel de transporte?
• ¿Qué problemas resuelve?
– Multiplexación
– Transporte fiable
– Control de flujo
– Control de congestion
• ¿Qué velocidades consigue? ¿Qué
limitaciones tiene?
• Estudio del nivel de transporte en Internet
– Protocolos TCP y UDP
5
/50
Red y transporte
‣ Nivel de red: Comunicación lógica entre hosts
Envía este paquete al nivel de transporte de la dirección IP a.b.c.d
He recibido este paquete de la dirección IP x.y.z.t
No garantiza que todos los paquetes acaben llegando
‣ Nivel de transporte: Comunicación lógica entre procesos
App 1
Transporte
App 1
Transporte
Red
Red
Red
Red
Red
Enlace
Enlace
Enlace
Enlace
Enlace
7 noviembre 2007
Transporte-1
6
/50
Funciones del nivel de transporte
‣ Comunicación lógica entre
aplicaciones
> Puede haber más de una
aplicación en cada dirección IP
> Las aplicaciones quieren que
todo lo que envían llegue
> Las aplicaciones ¿envían
mensajes o establecen
llamadas?
‣ Hay 2 niveles de transporte en
Internet con diferentes servicios/
funciones
Transporte
Red
Enlace
Red
Enlace
Red
Enlace
Canal lógico
Red
Enlace
Red
Enlace
Transporte
Red
Enlace
7 noviembre 2007
Transporte-1
7
/50
Transporte en Internet
‣ Entrega fiable y en orden (TCP)
> Garantiza que los datos llegan y llegan en
orden
> Control de flujo
> Control de congestión
>
Las aplicaciónes ven conexiones/llamadas/
sesiones
‣ Entrega no fiable, sin garantias
de orden (UDP)
> Las aplicaciones envían mensajes
> No se garantiza que lleguen
Transporte
Red
Enlace
Red
Enlace
Red
Enlace
‣ En los dos casos
> No se garantiza tiempo de llegada
> No se garantiza ancho de banda
Red
Enlace
Red
Enlace
Transporte
Red
Enlace
7 noviembre 2007
Transporte-1
8
/50
,
I
I
S
E
D
E
R
E
D
A
R
U
T
C
E
T
U
Q
R
A
S
O
C
V
R
E
S
Y
S
A
M
E
T
S
S
I
I
a
c
i
t
l
á
m
e
e
T
a
í
r
e
n
e
g
n
i
I
e
d
a
e
r
Á
Funciones TCP/UDP
• Función común
Multiplexación/demultiplexación de
aplicaciones
• Funciones sólo UDP
– Envio no orientado a conexión
• Funciones sólo TCP
– Manejo de conexiones
– Transporte fiable de datos
– Control de flujo y de congestión
9
/50
Multiplexación y demultiplexación
‣ Un host con varias aplicaciones/programas/
procesos corriendo
> El nivel de red envia los paquetes al nivel de red del ordenador destino
> El nivel de transporte arbitra la comunicación entre diferentes aplicaciones
> un nivel de red, un nivel de transporte, varias aplicaciones
Aplicación 1
Aplicación 2
Aplicación 3
Aplicación 4
Transporte
Transporte
Red
Red
Emisor:
‣ recoger datos de distintas fuentes
‣ encapsular con información del
origen
Receptor:
‣ entregar a la
aplicación (socket)
correcta
7 noviembre 2007
Transporte-1
10
/50
Multiplexación y demultiplexación
‣ El host recibe datagramas IP
> Cada datagrama IP lleva una
dirección IP de origen y de destino
> Cada datagrama IP lleva un
segmento del nivel de transporte
> Cada segmento del niel de
transporte lleva un puerto origen y
destino (puerto: identificador de
proceso/aplicación)
‣ El nivel de tranporte usa
las direcciónes IP y los
puertos para decidir a
quien entrega los datos
Cabecera IP
...
puerto origen
puerto destino
cabecera de transporte
Datos aplicación
Segmento del nivel
de transporte
7 noviembre 2007
Transporte-1
11
/50
Demultiplexación no orientada a conexión
‣ Se extraen de la cabecera IP
la dirección IP destino y de la
cabecera UDP el puerto
destino
proceso 1
proceso 2
‣ Se entregan los datos al
socket identificado por la
tupla
(dirIP destino, puerto destino)
sockets
‣ Paquetes provenientes de
diferentes direcciónes origen
y puertos origen se entregan
al mismo socket
80
6881
1234
S1
S2
S3
UDP
7 noviembre 2007
Transporte-1
12
/50
Demultiplexación no orientada a conexión
‣ Ejemplo
P2
P3
P1P1
SP: 6428
DP: 9157
SP: 6428
DP: 5775
SP: 9157
DP: 6428
client
IP: A
server
IP: C
SP: 5775
DP: 6428
Client
IP:B
‣ La dirección origen y puerto origen permiten
responder al cliente
7 noviembre 2007
Transporte-1
13
/50
Demultiplexación orientada a conexión
‣ Cuando TCP recibe un paquete puede pertenecer a
varias conexiones establecidas
‣ Varios sockets con el mismo puerto...
proceso 1
23421
S4
TCP
CNX establecida
proceso 2
80
S12y3
TCP
proceso 3
23421
CNX establecida
S5
TCP
‣ Se entrega al socket identificado por la 4-tupla
(dirIP origen, puerto origen, dirIP destino, puerto destino)
7 noviembre 2007
Transporte-1
14
/50
Demultiplexación orientada a conexión
‣ Ejemplo
P1
P4
P5
P6
P2
P1
P3
SP: 5775
DP: 80
S-IP: B
D-IP:C
client
IP: A
SP: 9157
DP: 80
S-IP: A
D-IP:C
server
IP: C
SP: 9157
DP: 80
S-IP: B
D-IP:C
Client
IP:B
7 noviembre 2007
Transporte-1
15
/50
Demultiplexación orientada a conexión
‣ Otro ejemplo
P1
P4
P2
P1
P3
SP: 5775
DP: 80
S-IP: B
D-IP:C
client
IP: A
SP: 9157
DP: 80
S-IP: A
D-IP:C
server
IP: C
SP: 9157
DP: 80
S-IP: B
D-IP:C
Client
IP:B
7 noviembre 2007
Transporte-1
16
/50
UDP: User Datagram Protocol
‣ UDP: User Datagram Protocol (RFC-768)
‣ Proporciona un servicio de transporte para
aplicaciones sobre IP de tipo Best-Effort
> Sin garantizar la entrega
> Sin garantizar el orden de entrega
> Mucho menos con tiempo o con ancho de banda garantizado
> Lo unico que añade a IP es la multiplexación de aplicaciones y
deteccion de errores ??
‣ No orientado a conexión
> No hay establecimiento
> Cada datagrama se trata independientemente (protocolo sin
estado)
7 noviembre 2007
Transporte-1
17
/50
UDP
¿Por qué un protocolo como UDP?
‣ Es rapido: no hay establecimiento
aunque no garantize el retardo no añade retardos
innecesarios
‣ Es simple: no hay estado de conexión
ni en el emisor ni en el receptor
‣ Poco overhead
la cabecera UDP ocupa lo minimo posible
‣ Es eficiente: no hay control de congestión
puede usar todo el ancho de banda que consigas
7 noviembre 2007
Transporte-1
18
/50
UDP: detalles
Formato del paquete
‣ puerto origen
‣ puerto destino
‣ longitud del segmento
UDP
> 8 - 65535 bytes
‣ checksum
sólo 8 bytes de
cabecera !
P
D
U
o
t
n
e
m
g
e
s
32 bits
Cabecera IP
...
puerto origen
puerto destino
longitud
checksum
Datos aplicación
7 noviembre 2007
Transporte-1
19
/50
UDP: checksum
‣ Cálculo del checksum
> Se trata el segmento como serie de
valores de 16 bits
> Suma binaria
en complemento a 1
+ pseudo-cabecera con algunos
campos de la cabecera IP (para
proteger errores en las direcciones
y el protocolo)
+ segmento UDP
32 bits
dirección IP origen
dirección IP destino
0s
proto
longitud UDP
puerto origen
puerto destino
longitud
checksum
Datos aplicación
‣ Es el complemento a uno de la suma binaria en complemento
a 1 en 16 bits del bloque de arriba
‣ De esta forma al hacer la suma binaria en complemento a 1 de
un paquete correcto debe salir 0xFFFF
‣ Detecta errores en todo el segmento UDP (aunque no todos)
‣ Si UDP detecta errores en un paquete recibido no lo entrega
7 noviembre 2007
Transporte-1
20
/50
UDP
En que se usa UDP ?
‣ Aplicaciones de streaming multimedia (audio/
video en tiempo real o audio/video-
conferencia)
> tolerantes a las pédidas y sensibles al ancho de banda
‣ Mensajes de DNS
> bajo retardo y poco overhead
‣ SNMP (monitorización de red), RIP, DHCP...
> poco overhead y protocolo sencillo
‣ Juegos en red
> mínimo retardo posible
7 noviembre 2007
Transporte-1
21
/50
En resumen
‣ El nivel de transporte proporciona
comunicación lógica entre aplicaciones
mejorando los servicios de IP
‣ Dos protocolos de transporte
> TCP orientado a conexión y comunicación fiable con muchas
prestaciones
> UDP orientado a datagramas y con no demasiadas prestaciones
pero gracias a ello
+ Simple de implementar, entrega rápida y más eficiente
‣ Pero ¿cómo se hace transporte fiable si IP
puede perder mensajes?
7 noviembre 2007
Transporte-1
22
/50
,
I
I
S
E
D
E
R
E
D
A
R
U
T
C
E
T
U
Q
R
A
S
O
C
V
R
E
S
Y
S
A
M
E
T
S
S
I
I
a
c
i
t
l
á
m
e
e
T
a
í
r
e
n
e
g
n
i
I
e
d
a
e
r
Á
Transporte fiable
• Si hubiera un “Top ten” prob
Comentarios de: Transporte fiable (0)
No hay comentarios