Fundamentos de Internet

27
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

description

Introduccio a las redes

Transcript of Fundamentos de Internet

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

FIN DE LA CLASEFIN DE LA CLASE

Preguntas ?

27