Date post: | 11-Jan-2016 |
Category: |
Documents |
Upload: | antonio-jesus-gutierrez |
View: | 212 times |
Download: | 0 times |
Fundamentos de Internet: Resumen
(basado en el material original de la asignatura)
Fundamentos de Internet: Resumen
(basado en el material original de la asignatura)
Rafael Estepa Alonso
Antonio Lara Villén
Universidad de Sevilla
Interconexión Simple: nivel enlace/físicoInterconexión Simple: nivel enlace/físico
Proceso
aplicación
Proceso
aplicación
ENVIA(“A=10,B=20”)
Protocolo
LEE
cabecera
Entrega datos a
la aplicacón
Genera ACK
(si procede)
A=10,B=20FISICO
ENLACE
APLICACIÓN
datos
� Protocolo: Añade a los datos información de control para ofrecer su servicio
� Ejemplo:
2
Protocolo
Nivel enlace
SN=1, CRC=23 A=10,B=20
Protocolo
Nivel enlace
SN=1, CRC=23 A=10,B=20
ACK=2
Cabecera
del protocolo
datos
� Limitaciones: distancia (longitud del cable -supone €- o el radioenlace), sólo válido para dos equipos.
NIC NIC
¿varios equipos? acceso compartido¿varios equipos? acceso compartido
� Enlace de acceso múltiple (Multiple access)
� Posibilidad de colisión en el medio compartido
– Mecanismo de arbitraje de acceso al medio (MAC)
� Identificación de cada nodo en el enlace
– Cada NIC tiene una dirección propia.
� Protocolos de Nivel de enlace
– Ethernet (IEEE 802.3), Wifi (IEEE 802.11), etc…
3
� Limitaciones en
� Capacidad (Ancho de banda compartido)
� Número de nodos (escalabilidad)
� Distancia entre nodos y total
� ¡Conexión directa!
3
…………
¿Cómo ampliar el número de nodos y la distancia?¿Cómo ampliar el número de nodos y la distancia?
� Mediante sistemas intermedios de Interconexión: ¡reenvían!
� Nivel de Enlace (N2): Puentes Transparentes o Conmutadores Eth.
� Extienden el número de equipos (ancho de banda) y el alcance en una red IP.
– ¿Cómo reenviar ? Next Hop =tabla(MAC destino)
………… …………
MACMACMACMAC12121212 MACMACMACMAC22222222
MACMACMACMAC1111 MACMACMACMAC2222
� A Nivel de Red IP (N3): Routers o Encaminadores
� Interconectan distintas Redes IP (cada una con distinto identificador de Red).
� ¿Cómo reenviar? Next Hop=tabla(IP destino) –sistema postal-
� InterNet!
4
NIC origen: MAC1NIC origen: MAC1NIC origen: MAC1NIC origen: MAC1NIC destino: MACNIC destino: MACNIC destino: MACNIC destino: MAC 22222222
RED IP: 178.16.45.0 / 24RED IP: 178.16.45.0 / 24RED IP: 178.16.45.0 / 24RED IP: 178.16.45.0 / 24
RED IP: 178.13.45.0 / 24RED IP: 178.13.45.0 / 24RED IP: 178.13.45.0 / 24RED IP: 178.13.45.0 / 24
IP origen: 178.16.45.1IP origen: 178.16.45.1IP origen: 178.16.45.1IP origen: 178.16.45.1IP destino: 178.13.45.3IP destino: 178.13.45.3IP destino: 178.13.45.3IP destino: 178.13.45.3
Como se organiza todo… Modelos de Capas (OSI)Como se organiza todo… Modelos de Capas (OSI)
� Cada sistema de comunicaciones se estructura en niveles o capas.
� Cada capa utiliza los servicios de comunicaciones de la capa
inmediatamente inferior y ofrece servicios a la capa inmediatamente
superior� Aplicación: distribuida para usuarios (Ejemplo: transferencia ficheros, email, web, …)
� Presentación y Sesión: interpretar la información y control del diálogo entre aplicaciones
� Transporte: identificar la aplicación en el Sist. Final, control de errores, flujo y congestión
� Red: encaminamiento (direcciones red), reenvío y (opt) fragmentación y reensamblado.
� Enlace: transferencia entre 2 equipos conectados directamente (direcciones enl, control � Enlace: transferencia entre 2 equipos conectados directamente (direcciones enl, control
de flujo, errores, acceso medio compartido)
� Físico: transmisión (características físicas,
mecánicas y eléctricas –modulación,…-)
¿por qué se parecen enlace y transporte?
5
1
2
3
4
5
6
7
Comunicación entre capas: modelo OSIComunicación entre capas: modelo OSI
� Para ofrecer un servicio, las entidades de una capa colaboran con
las entidades “pares” residentes en otros sistemas.� El conjunto de reglas que rigen la colaboración se denomina protocolo, que se lleva a cabo
mediante el intercambio de mensajes o unidades de datos del protocolo (PDUs, Protocol
Data Units)
� Encapsulación de las PDUs: en el sistema origen cada capa añade
información de control a los datos que recibe, en el destino, cada
capa analiza y quita la información de control
� N-PDU (información intercambiada entre entidades pares de la capa N)
6
Modelo de Internet v.s. Modelo OSIModelo de Internet v.s. Modelo OSI
� Modelo de Internet podemos verlo como un conjunto de protocolos
inter-relacionados que se prestan servicios especializados (
resuelven uno o varios problemas en la comunicación)
� Podemos ordenarlos (clasificarlos) según el servicio que prestan
� El protocolo que sirve se encuentra abajo del servido (torre de
protocolos)
� Cada protocolo suele encapsular los datos del protocolo superior
añadiéndoles información de control para poder realizar su trabajoañadiéndoles información de control para poder realizar su trabajo
7
IP
WiFi /Ether
IP
WiFi /Ether
TCP / UDP
HTTP /FTP…
TCP /UDP
HTTP/FTP…mensaje
segmento
datagama
trama
Usuario A Usuario B
AplicaciónAplicaciónAplicaciónAplicación
TransporteTransporteTransporteTransporte
RedRedRedRedEnlaceEnlaceEnlaceEnlaceFísicoFísicoFísicoFísico
IETF (TCP/IP)
IEEE 802 (LAN, WLAN), ITU-T (WAN),...
Fund.
Internet
Arquitecturas de RedArquitecturas de Red
� Torre /Pila de protocolos: el conjunto de protocolos implementados
en un sistema ordenados según su posición en el modelo OSI
� Definen las entidades que se comunican y al nivel qué lo hacen.
ppp EthernetWiFi
HTTPHTTPHTTPHTTPTCPTCPTCPTCPIP
HTTPHTTPHTTPHTTPTCPTCPTCPTCPIPIP IP IP IP
R R
8
IP802.11Fisico1
IP802.3Fisico3
IP802.11Fisico1
IPpppFísico2
IPpppFisico2
IP802.3Físico3
Ethernet
1Gb/s
Ethernet
100Mb/s
Ethernet
10 Mb/sR
HTTPHTTPHTTPHTTPTCPTCPTCPTCP??802.11Fis. 10Mb/s
????????????????????????IP???Fis. 100Mb/s
802.3Fisi. (10)
802.3Físico (1G)
IP??????
??802.3????
División en Capas: Torres de protocolosDivisión en Capas: Torres de protocolos
� Ejemplo: Torres de Protocolos de ejemplo en el plano de datos
� Cada entidad par utiliza un protocolo (HTTP,TCP,IP,…)
Capa Aplicación
Capa Transporte
Prot. HTTP
Prot.TCP
GET Index.html
Port80Port80 GET| Index.html
9
Capa Red
Capa Enlace-Físico
Prot. IP Prot. IP
Prot. Ethernet Prot. Ethernet
FCS=crcFCS=crc
1.1.1.2|61.1.1.2|6 80|GET| Index.html
1.1.1.2|80|GET| Index.html
80|GET| Index.html
FCS=crcFCS=crc 1.1.1.2|80|GET| Index.html
EVENT: llega un paquete {
If
routing
BAJAR a la Interfaz adecuada }
}
EVENT: llega un paquete {
If IP destino=myIP then SUBIR a Protocol
Else { Buscar Interfaz en Tabla routing
BAJAR a la Interfaz adecuada }
}
1.1.1.21.1.1.2
Destination Mask Gateway Interfaz
1.1.1.0 255.255.255.0 * Eth0
2.2.2.0 255.255.255.0 Eth1
Entidad IPEntidad IP
1.1.1.2|61.1.1.2|6
66
ProtocolProtocolIP destinoIP destino
División en Capas: Ejemplo de Plano de DatosDivisión en Capas: Ejemplo de Plano de Datos
� Ejemplo: Torres de Protocolos de ejemplo en el plano de datos
HTTP
TCP
Capa Aplicación
Capa Transporte
10
IP
Ether 11 0022
IP IP IP
Ether
Ether
Ether
Ether
Destination Mask Gateway Interfaz
1.1.1.0 255.255.255.0 * Eth0
2.2.2.0 255.255.255.0 * Eth1
3.3.3.0 255.255.255.0 * Eth2
Capa Red
Capa Enlace-Físico
Redes de Acceso: EjemplosRedes de Acceso: Ejemplos
� En empresas: Conmutación Ethernet
100 Mbps
100 Mbps
100 Mbps
1 Gbps
servidor
Ethernet
switch
Router
institucional Al ISP que
Sirve a
la institución
� Residenciales: ADSL
11
100 Mbpsservidor
Red telefónica
DSL
modem
PC
teléfono
Internet
Service
Provider
DSLAM
Línea telefónica pre-existente:0-4KHz teléfono; 4-50KHz datos ascendentes; 50KHz-1MHz datos descendente
splitter
central
telefónica
El corazón de Internet: Protocolo IPEl corazón de Internet: Protocolo IP
� Servicio Básico: Hace llegar los ‘segmentos’ de la capa de
transporte (TCP/UDP) hasta el equipo destino. (correo postal)
� Identificación de los equipos: direcciones IP
� Encaminaniento: crear de forma automática una tabla con el mejor
camino hasta cada destino (protocolos)
� Reenvío: determinar el enlace de salida
� (next hop) en función de la tabla de reenvío.
12
Direccionamiento IP (I)Direccionamiento IP (I)
� Una dirección IP identifica a un equipo conectado a una red
� Dirección IPv4:
� Parte id. red y parte al host
� A (<127), B(129-191),
� C(129-223), D(224-239)
13
Direccionamiento IP (II)Direccionamiento IP (II)
� Problema con las direcciones IPv4: agotamiento
� División jerárquica estricta (una red con 259 equipo necesita clase B,
desperdiciando el 99% de las direcciones asignadas)
� Solución Definitiva: direccionamiento IPv6 (16 octetos)
� Solución Temporal: direccionamiento sin clases (CIDR) y NAT
� CIDR: división entre la red y el host mediante una máscara (AND)
14
Asignación Automática de direcciones a los HostAsignación Automática de direcciones a los Host
� Protocolo DHCP (Dynamic Host Control Protocol, RFC 2131)
� DHCP es un protocolo cliente/servidor
� Cliente: suele ser un host que acaba de iniciarse y desea obtener la
configuración necesaria para la red/Internet (incluyendo su propia IP).
� Servidor: atiende las peticiones de los clientes DHCP. En el caso mas simple,
cada subred tendrá su servidor DHCP, si no, es necesario un agente de reenvío
(p.e. router) que conozca la dirección IP del servidor DHCP (67/UDP)
�Modos de reserva de direcciones:
– dinámico (préstamo),
– automático o manual (MAC)
15
Reenvío IPReenvío IP
� Basado en la información de la Tabla de Reenvío
� Cada fila: dirección destino, máscara, siguiente salto y métrica
� Las entradas se crean:� De forma directa: al asignar una dirección IP en un interface
� De forma manual: se añade una entrada a la tabla
� De forma automática: mediante protocolos de encaminamiento ejecutados entre routers (lo veremos este año).
� Entrada ‘especial’: 0.0.0.0/0 (significa: para cualquier otro destino)
� El siguiente salto puede ser:� Otro sistema Intermedio (router): encaminamiento indirecto (se indica la dirección IP del siguiente salto, que debe tener
conexión directa por algún interfaz)conexión directa por algún interfaz)
� El sistema final destino : encaminamiento directo (se indica el nombre de la interfaz física de salida)
16
Reenvío IP (II)Reenvío IP (II)
� El algoritmo de reenvío ejecutado en cada nodo (sistema final o
intermedio) por el protocolo IP, es el siguiente:
17
Reenvío IP (III)Reenvío IP (III)
� Envío directo:
� averiguar la dirección física destino del destino final: IP dest (ARP?)
� Encapsular el datagrama en una trama de enlace (Ethernet) y enviarlo
� Envío indirecto
� averiguar la dirección física del siguiente salto: NextHop (ARP?)
� Encapsular el datagrama en una trama de enlace (Ethernet) y enviarlo� Los host almacenan temporalmente la asociación entre direcciones IP y direcciones física (arp /a)
18
El nivel de transporteEl nivel de transporte
� Capa de Aplicación � sirve al usuario (email, web, etc..)
� Las entidades de aplicación (procesos de usuario) Necesitan intercambiar
mensajes (protocolos de nivel de aplicación). Un host puede ejecutar varias
aplicaciones (S.O. Multitarea)
� Capa de (inter-red)� Servicio no fiable de envío de datagramas entre hosts
� Objetivo de la capa de transporte ??? (se implementa en el host)
� Como mínimo: identificar a la aplicación dentro del host (otra dirección: el puerto)
19
CAPA DE
APLICACIÓN
GET URLGET URLGET URLGET URLCliente Web
Servidor Web Servidor Email
IPIPIPIP15151515 IPIPIPIP20202020CAPA DE
INTER_RED
GET URLGET URLGET URLGET URL
GET URLGET URLGET URLGET URLIP20
GET URLGET URLGET URLGET URL
?
Protocolo de Transporte en InternetProtocolo de Transporte en Internet
� Se ofrecen dos protocolos de transporte a las aplicaciones
� Las aplicaciones eligen en función de sus necesidades
� UDP servicio no fiable y no orientado a conexión (solo identifica app)
� TCP ofrece un servicio fiable orientado a conexión: identifica app +…
� Conexión: fases apertura y cierre
� Fiabilidad
� Control de flujo
� Control de congestión
20
� Control de congestión
ACKsBuffer
recepción
TCP TCP
Proceso
aplicaciónProceso
aplicación
SN
Buffer
envío
¿congestión?
UDP (RFC 768)UDP (RFC 768)
� Las aplicaciones utilizan UDP mediante sockets datagram, que se
identifican por una dirección IP y un número de puerto.
� Campos: port origen (2 B), port destino (2 B), Long(2B), Check(2B)
� Cliente: port > 1024 (asignado por S.O.)
� Servidor: port well known (IANA). Invierte los puertos en la respuesta.
Proceso deAplicación 1
Proceso deAplicación 2
Proceso deAplicación 3
21
Aplicación 2
UDP
socket1
(IP,pto 1)
socket2
(IP,pto 2)
socket3
(IP,pto3)
Llegan paquetesa IP (host)
TCP (I)TCP (I)
� Protocolo orientado a conexión (apertura, transferencia y cierre)
� Multiplexión y desmultiplexión
� TCP: sockets identificados mediante host_destino, puerto_destino,
host_origen, puerto_origen. 2 Socket: bienvenida y conexión.
IPIPIPIP IPIPIPIP
Proceso ClienteSocket
Proceso Servidor
Socket ConexiónTCPTCPTCPTCP TCP buffers, variables,
(controlado por el S.O)TCPTCPTCPTCP
Socket bienvenida
3-way handshake
� TCP: flujo ordenado de datos. Límite máximo de datos que puede
enviar en un segmento: MSS (maximum Segment Size)[RFC 1191]
�MTU 1.500 octetos (ethernet) � MSS = MTU – 20(TCP) – 20(IP)
� SN = número de 1er byte
– Del segmento (0,1000,…)
� Transferencia fiable: ACK
– Acumulativos del SN
22
3-way handshake
0 1 ... 10002 1001 ... 1999 ... 4999
Datos 2º segmento
Fichero (500.000 bytes)
Datos 1º segmento
TCP (II)TCP (II)
� Transferencia fiable
� Los bytes no se pierden
� Se reciben en orden
� Uso de mecanismos y recursos
� Temporizadores
– Al expirar se considera pérdida
� Buffers (ventana, envío contínuo)
� Números de secuencia
� asentimientos
rdt_send()Protocolo de
Transf. Fiable
(lado emisor)
deliver_data()Protocolo de
Transf. Fiable
(lado recept.)
udt_send()
Aplicación
Transporte
Red
Proceso que
envía
Proceso que
recibe
� asentimientos
� Full duplex
23
base nextseqnum
Ventana tamaño N
Ya asentidos
(ACK’d)
Enviados pero
Todavía no asentidos
disponibles, todavía
No enviados
No disponibles
TCP TCP
aplicaciónaplicación
ACKs
SN
Buffer
envío
Buffer
recepción
RedRetardos Variables
(potencialmente altos)
RTT
TCP (III)TCP (III)
� Control de Flujo:� Entre aplicaciones
� Si el RX se queda
� Sin espacio, lo indica
� El TX espera.
http://wps.aw.com/aw_kurose_network_3/21/5493/1406348.cw/index.html
� Control de Congestión en la Red
� Idea Base:� Si hay congestión, bajar la tasa de envío (abrupto -div 2-)
� Si no hay congestión, subir la tasa de envío (lineal)
� Cómo averiguar si hay o no congestión� Debe ser ‘intuida’ por los sistemas finales
� En base a las pérdidas de paquetes o los retardos sufridos
24
R/2
Retardo
Slow start
0
5
10
15
20
1 2 3 4 5
t (RTT)
Cong_win (MSS)
0
5
10
15
20
1 3 5 7 9 11 13 15 17 19
tiempo (aprox RTT)
CongWin (MSS)
RESUMEN DEL RESUMENRESUMEN DEL RESUMEN
� Para ampliar la capacidad y alcance de las redes: nodos
intermedios de almacenamiento y reenvío (retardo y pérdidas)
� Router (nivel IP): siguiente salto ? Tabla reenío (dirección IP destino)
� Tabla de encaminamiento (automática –protocolos routing-, manual)
� Conmutadores (nivel enlace): ethernet (siguiente salto? Tabla reenío (MAC des))
� Tabla de reenvío(automática/). Transparente a los equipos finales.
� Equipos Intermedios: torres de protocolos (ni generan ni consumen datos)
� El nivel de red IP: servicio de envío de paquetes (servicio postal) a nivel mundial.� El nivel de red IP: servicio de envío de paquetes (servicio postal) a nivel mundial.� Direccionamiento (direcciones IP) y reenvío (algoritmo). ¿Encaminamiento?
� Utiliza el nivel de enlace para comunicarse entre 2 nodos.
� Equipos finales:
� Protocolos de aplicación y transporte (TCP/UDP): generan y consumen datos
� TCP: control de flujo, de errores, de congestión, orientado a conexión
� También implementan protocolos de enlace y red (¿Ethernet?, IP)
� Este Curso:
� Nivel de Enlace (Ethernet y Wifi), Nivel de Red (protocolos de routing).
25
EjercicioEjercicio
� Debería ser capaz de resolverlo antes de comenzar la asignatura
� Dibuje las torres de protocolo, tablas de reenvío IP y las PDU
intercambiadas en el siguiente escenario
� A= 192.14.15.0/24, B=10.10.10.0/24, C=29.45.23.0/24
A.1 C.3R
B.2A.2A.1> ping C.3
0.0.0.0 A.2
B.3
0.0.0.0 B.2
R
C.2B.4
0.0.0.0 B.4 0.0.0.0 C.20.0.0.0 A.1
26
B.2A.2A.1> ping C.3 B.3 C.2B.4