Upload
vocong
View
229
Download
5
Embed Size (px)
Citation preview
4.4. TCP/IPParte 1
SIRL
Arquitectura TCP/IP
Antes del modelo OSI
Proyecto encaminado a proporcionar una red de datos robusta de arquitectura distribuida.
Nace 77‐79 ARPA Net (Advanced Research Projects Agency Network)
Defensa
de EEUU y se incorporan
universidades y entidades públicas.
En 83 se divide en 2 redes
MilNet
fines militares
ARPA Net para propósitos de investigación
Arquitectura TCP/IP
Internet
Se apoya en una serie de protocolos abiertos conocidos
como TCP/IP
Popularidad de TCP/IP debido a:
Abierto y soportados por todo tipo de sistemas
Desarrollados independientemente del hardware y
SSOO
Funciona sobre cualquier medio
Emplea un esquema de direccionamiento que asigna a
cada equipo conectado una dirección única en la red
Arquitectura TCP/IP
Realmente no existe un modelo de red dividido en niveles
Comparativa de modelo OSI y arquitectura TCP/IP
Modelo de capas simplificado
1.‐
La primera capa (capa
física), se encarga de detalles como los tipos de cables, tipos de señales, codificación, etc.2.‐
La segunda capa (capa
de enlace), se encarga del procedimiento de acceso a los datos y de la corrección de
errores.3.‐
La tercera capa (capa
de red), se encarga de la transmisión de datos a distancia. Esta capa asegura que los datos
encuentren el camino al destinatario a través de diversas redes.4.‐
La cuarta capa (capa
de transporte), recibe los datos de las aplicaciones en un orden, y asegura su envío, y
orden para componer el mensaje original correctamente. Evita la perdida de paquetes.5.‐
La quinta capa representa finalmente el procesamiento de datos por parte de la aplicación.
Arquitectura TCP/IP
No hay diferencia entre niveles físico y de enlace
Protocolos TCP/IP comienzan en nivel 3
Libertad para creación y evolución de subredes distintas tecnologías
Ha permitido la expansión de la arquitectura TCP/IP
El grueso de la arquitectura está
en los niveles red y
transporte, a partir de ahí, todo pertenece al nivel de aplicación
Arquitectura TCP/IP ‐
Nivel de RedSe encarga de la transmisión de datos a distancia. Esta capa asegura
que los datos encuentren el camino al destinatario a través de diversas redes.
Protocolo IP: El protocolo IP y sus protocolos de enrutamiento asociados son
posiblemente la parte más significativa del conjunto TCP/IP. Se encarga de:
Direcciones IP: Las convenciones de direcciones IP forman parte del protocolo IP.
Comunicaciones de host
a host: El protocolo IP determina la ruta que debe utilizar un paquete, basándose en la dirección IP del sistema
receptor.
Formato
de paquetes: el protocolo IP agrupa paquetes en unidades conocidas como
datagramas.
Fragmentación: Si un paquete es demasiado grande para su transmisión a través del medio de red, el protocolo IP del sistema de envío divide el
paquete en fragmentos de menor tamaño. A continuación, el protocolo IP del sistema receptor reconstruye los fragmentos y crea el paquete original.
Otro protocolos
ARP, RARP
ICMP
Arquitectura TCP/IP ‐
Nivel de Red
Cuando equipo quiere enviar datos a otro equipo dentro de la red
local, el emisor debe
generar el datagrama
y estos deben pasar al nivel inferior (enlace), para generar las
tramas en el nivel de enlace (Ethernet) también es necesario conocer la MAC.
Protocolo ARP vs
RARP
El protocolo ARP es un protocolo de apoyo al nivel de red que efectúa la resolución
de la dirección IP (de 32 bits de longitud) a la dirección física (dirección MAC en
LAN de 48 bits de longitud). ARP hace un trabajo de mantenimiento de la tabla de
direcciones MAC, esta tabla se conoce como tabla ARP
ARP: Cuando una máquina (que conoce la dirección IP de otra máquina) desea
conocer la dirección física de la otra máquina, difunde una trama, que contiene
un paquete ARP Request, a todas las máquina conectadas a esa red (broadcast).
Con este paquete se solicita a la máquina con dirección IP que responda
indicando su dirección física.
El protocolo RARP es un protocolo de
apoyo al nivel de red que efectúa la
resolución de la dirección física a la
dirección IP.
Arquitectura TCP/IP ‐
Nivel de Red
El Protocolo de Mensajes de Control de Internet (ICMP) detecta
y registra las condiciones de error de la red (ICMP no permite corregir los errores ). ICMP registra:
Paquetes soltados: Paquetes que llegan demasiado rápido para poder procesarse.
Fallo de conectividad: No se puede alcanzar un sistema de destino.
Redirección: Redirige un sistema de envío para utilizar otro enrutador.
Por ejemplo, cuando intentas acceder a una dirección que no
existe, normalmente se te notificará
con un mensaje ICMP. Además hay también una serie de aplicaciones (Ping o
Traceroute) que utilizan ICMP. ICMP es usado por todos los routers para indicar un error (llamado un
problema
de entrega).
Arquitectura TCP/IP ‐
Nivel de Red
ICMP es considerado un protocolo del nivel de red, sin embargo, los mensajes ICMP van encapsulados en datagramas
IP.
Arquitectura TCP/IP ‐
Nivel de Red
IGMP
significa Protocolo de Administración de Grupos de Internet.
Es un método que utilizan los routers para comunicarse unos con otros al enviar y recibir datos a través de Internet. Cuando te conectas a Internet
con un router, el router busca e identifica otros routers cerca de la zona en función de sus direcciones IP. Esto hace que sea más fácil enviar y
recibir datos a través de Internet, ya que IGMP ayuda a encontrar el camino más corto posible entre la red de routers
Una de las funciones importantes implementadas en el nivel de transporte es la definición de los puertos del protocolo,
llamados simplementes
puertos, que ofrecen un mecanismo para identificar la comunicación de un proceso individual
dentro de un host. En la arquitectura TCP/IP los puertos son números de 16 bits, es decir, el rango de puertos válidos es de
0 a 65.535
Arquitectura TCP/IP ‐
Nivel de Transporte
El protocolo UDP (Protocolo de Datagrama
de Usuario) es un protocolo no orientado a conexión de la
capa de transporte del modelo TCP/IP.
Lo que hace UDP es envolver el paquete con una pequeña cabecera
que añade la información necesaria, en este caso los puertos. El trabajo de UDP ya ha terminado y tiene que pasar el paquete a otro
protocolo para que se encargue del resto de la comunicación.
Cuando se usa UDP deben los protocolos del nivel de aplicación
los que se encarguen del control de errores.
Arquitectura TCP/IP ‐
Nivel de Transporte
TCP
(que
significa
Protocolo
de Control de Transmisión)
El objetivo de TCP
Con el uso del protocolo TCP, las aplicaciones pueden comunicarse en forma
segura
(gracias al sistema de acuse de recibo del protocolo TCP)
independientemente de las capas inferiores. Esto significa que los routers
(que funcionan en la capa de Internet) sólo tienen que enviar los datos en
forma de datagramas, sin preocuparse con el monitoreo [evitar saturación
de red] de datos
porque esta función la cumple la capa de transporte (o más
específicamente el protocolo TCP).
Está
orientado a la conexión: Durante una comunicación usando el protocolo
TCP, las dos máquinas deben establecer una conexión.
Para posibilitar la comunicación y que funcionen bien todos los controles que
la acompañan, los datos se agrupan; es decir, que se agrega un encabezado a
los paquetes de datos que permitirán sincronizar las transmisiones y
garantizar su recepción.
Otra función del TCP es la capacidad de controlar la velocidad de los datos
usando su capacidad para emitir mensajes de tamaño variable. Estos
mensajes se llaman
segmentos.
Arquitectura TCP/IP ‐
Nivel de Transporte
TCP
(que
significa
Protocolo
de Control de Transmisión)
Un segmento TCP está
formado de la siguiente manera:
Arquitectura TCP/IP ‐
Nivel de Transporte
Arquitectura TCP/IP ‐
Nivel de Transporte
Se definen algunos protocolos como:
Transferencia de correo electrónico
SMTP
Transferencia de ficheros FTP
Transferencia de hipertexto HTTP
Terminal remoto TELNET
Arquitectura TCP/IP ‐
Nivel de Aplicación
Protocolo de red IP
El protocolo IP es el principal protocolo que utiliza la
arquitectura TCP/IP
BASADO EN DATAGRAMAS
La información a transmitir se divide en fragmentos
Cada paquete o fragmento de información que transporta IP es llamado datagrama
NO ORIENTADO A CONEXIÓN
No se establece camino previamente, con lo cual cada datagrama viaja de forma independiente pudiendo llegar al destino fuera de secuencia o duplicado
NO FIABLE
No ofrece comprobaciones ni seguimientos
Intenta que los datos lleguen al destino lo mejor que pueda pero
sin ofrecer garantías
La unidad básica de información en el nivel 2 (n ivel
de enlace) se denomina trama, en el nivel 3 (nivel de red) se denomina datagrama
Protocolo de red IP
Comparación de IP con el servicio de correos
Envío normal no seguimiento de la carta
En el servicio de correos, cuando queremos fiabilidad
en la entrega se utiliza envío postal con acuse de recibo. A IP si es necesario una comunicación fiable, se añade
otro protocolo que de fiabilidad a la transmisión, este es TCP.
Protocolo de red IP ‐ Versiones
Versión implantada IPv4
(Ipv5 experimental, no comercial)
Algunas limitaciones llevaron al desarrollo del IPv6
(IPng)
Por ahora IPv6
es poco utilizado, aunque el agotamiento de las
direcciones de IPv4
está
obligando a empezar a utilizar IPv6
de forma mas másiva
Datagrama
IPv4•Cabecera con info
de
control y los Datos• Longitud del datagrama
variable • Tamaño máximo 65535
bytes
Datagrama IPv4
Aunque la longitud máxima que admite protocolo IP
es de 65535 bytes, en la práctica el tamaño es bastante inferior y depende de la tecnología de red empleada
en niveles inferiores
Esto es así
para evitar fragmentaciones del datagrama,
lo ocasionaría pérdida de rendimiento
El tamaño máximo se adapta a la MTU (Maximum
Transfer Unit) del nivel de enlace. El tamaño máximo del datagrama
IP suele adaptarse a la MTU del nivel
de enlace.
Ejemplo Ethernet
Tamaño máximo trama 1518 bytes
Tamaño datagrama
IP 1500 bytes
Direccionamiento IPv4
Una de las principales funciones del nivel de red es el
llamado direccionamiento lógico.
DIRECCIONAMIENTO LÓGICO
Se utiliza para definir un identificador para cada
dispositivo de red pero teniendo en cuenta la jerarquía necesaria en la arquitectura de redes
Por tanto, en el protocolo IP cada dispositivo debe tener asignada una dirección lógica, conocida como
DIRECCIÓN DE RED ó
DIRECCIÓN IP
Formada por 32 bits (4 bytes)
Consta de 3 campos: Clase, Identificador de red e
Identificador de host
Se define notación más práctica (notación punto‐
decimal)
Direccionamiento IPv4
Direccionamiento IPv4
CLASE
Las clases
se definieron en el protocolo IP para
optimizar el uso de enrutamiento de los datagramas, ya que no usar clases hubiera supuesto que los routers
deberían almacenar una gran cantidad de información en sus tablas de encaminamiento, lo
cual hubiera sido negativo para el funcionamiento de las redes.
Varias tipos de redes –clases‐
para cubrir necesidades
Cada clase permite un máximo nº
de direcciones IP en
cada red
Direccionamiento IPv4CLASES Características
A Bit
más significativo 07 bits para identificar la red24 para identificar el host
B 2 primeros bits 1014 bits para identificar la red16 bits para identificar el host
C 3 primeros bits 11021 bits para identificar la red8 bits para identificar el host
D 4 primero bits 1110Para direcciones de multienvío
(permite distribuir un mismo
mensaje a un grupo de equipos dispersos por una red. Consiste en
utilizar
una dirección clase D, la cual especifica el grupo de dispositivos que
recibirán el paquete. Es un tipo de broadcast)
E 4 primero bits 1111Reservado para uso futuro/experimental.
Direccionamiento IPv4
Direccionamiento IPv4Ejercicio: ¿A qué
clase de red pertenecen estas direcciones IP?
Direccionamiento IPv4Ejercicio: Identificación de Red y Host
Rodeo con un círculo la parte de red de cada IP
Rodeo con un círculo la parte de host
de cada IP
177.100.18.4 10.15.123.50
119.18.45.0 171.2.199.31
209.240.80.78 198.125.87.177
199.155.77.56 223.250.200.222
117.89.56.45 17.45.222.45
215.45.45.0 126.201.54.231
158.98.80.0 123.102.45.254
33.0.0.0 192.15.155.2
95.0.21.90 155.25.169.227
192.200.15.0 191.41.35.112
Direccionamiento IPv4
–
Rango de las clases
Capacidades teóricas de cada una de las clases:• Puede haber un máximo de 128 (27) redes de clase A. Cada red de clase A puede
contener un máximo de 16.777.216 (234
) hosts.• Puede haber un máximo de 16.384 (214) redes de clase B. Cada red de clase B puede
contener un máximo de 65.536 (216
) hosts.• Puede haber un máximo de 2.097.152 (221) redes de clase C. Cada red de clase C puede
contener un máximo de 256 (28
) hosts.
Subredes
Las direcciones IP incluyen 2 niveles jerárquicos
Parte para identificar la red
Parte para identificar equipo o host
dentro de la red
IP permite un 3er nivel nivel de subred
Para organizar de forma interna (organización) un rango de
direcciones asignadas
Subredes
Enmascaramiento: Proceso para obtener la dirección de
red o subred de una dirección IP dada.
Para utilizar la técnica se usa MASCARA DE RED
ó
MASCARA
Nº
de 32 bits que define que bits de una dirección IP se utiliza para identificar una red o subred y cuales para identificar el host
La máscara está
condicionada por la clase
Los 1 para los bits que identifican la red
Los 0 para los bits que identifican el equipo
Subredes
Enmascaramiento
Las máscaras para redes que no usan subredes están acordes con las
clases
Los bits que identifican la red o subred toman el valor 1 en la máscara. Los bits que identifican el equipo toman el valor 0 en la máscara.
Métodos para expresar la máscara:Clase A 255.0.0.0 o /8 Clase B 255.255.0.0 o /16Clase C 255.255.255.0 o /24
Ejemplo: 172.16.23.45/16 es 172.16.23.45 255.255.0.0
Subredes
Para obtener la dirección de subred a partir de una dirección
de red y una máscara se sigue el siguiente procedimiento
Los bytes de la dirección IP que corresponden con 255 en la
máscara se repiten en la dirección de subred
Los bytes de la dirección IP que se corresponden con 0 en la
máscara se cambian por 0 en la dirección de subred
Los bytes diferentes de 0 y 255 se aplica el operador AND entre el
byte de la IP y el byte de la máscara
Broadcast: En toda red existe un mecanismo para enviar un mensaje o paquete
que
reciben todas las computadoras de la red. Este mecanismo se llama broadcast. Por
ejemplo, si enviamos un mensaje con dirección 172.17.255.255, lo recibirán todos
dispositivos de la red 172.17.0.0. La dirección de broadcast
es especial y no puede
usarse para un equipo.
SubredesPara obtener la dirección de subred
Lo que tienes: 192.100.10.33Lo que debes deducir:
•Clase C•Parte de red: 192.100.10.‐‐‐•Parte de host
: ‐‐‐.‐‐‐.‐‐‐.33
Para obtener la misma información a la que has llegado, el ordenador debe operar en binario con un AND entre la dirección de red y la máscara de subred:
Subredes
Completa la siguiente tabla:
IP Máscara Clase de la IP Dir. subred Dir. red
79.199.217.111 255.255.0.0 Clase A 79.199.0.0 79.0.0.0
133.210.51.8 255.255.255.0
200.45.67.77 255.255.255.192
180.30.45.2 255.255.255.128
192.168.30.2 255.255.255.224
148.17.9.1 255.255.255.0
158.98.40.3 255.255.128.0
219.21.45.6 255.255.255.192
119.18.23.45 255.255.255.0
Subredes
Caso práctico:
Supongamos que nuestro proveedor de Internet nos asigna la red 192.168.55.0 y que necesitamos al menos 10
subredes, una para cada departamento de nuestra empresa.
Primero determinemos cuántos bits tenemos que tomar prestado de la dirección de dispositivo. Según la tabla de la derecha.
Puedes comprobar que necesitamos 4 bits, lo cual nos proporciona 14 subredes (recordemos que perdemos
dos subredes).Viendo el valor del primer byte de la dirección, 192, es una
red clase C, por tanto disponemos de 8 bits para identificar los dispositivos. Tomando 4 bits de los 8 nos
quedan 8 ‐
4 = 4 bits para direcciones de dispositivos, o sea, 2 ^ 4 ‐
2 = 16 ‐
2 = 14 dispositivos (la primera
dirección corresponde a la dirección de subred y la última corresponde a la dirección de broadcast, por tanto tenemos que restar estas dos direcciones
especiales).
Subredes
Continuación caso práctico:
Las subredes que obtenemos son
Subredes… si eliminamos la primera y la última subredes obtenemos finalmente
Subredes
Ejercicio: Una empresa tiene reservada para su uso la dirección
IP 180.30.0.0 de clase B. Esto le permite utilizar hasta 65.534 direcciones de hosts
diferentes. Al ser un número elevado de
direcciones, y por razones de organización, puede crear subredes. El número máximo de subredes que se pueden crear
depende de la máscara elegida y debe ser potencia de dos, es decir, 2, 4, 8, 16, 32. Se decide utilizar una máscara que permita
crear hasta 8 subredes. ¿Cómo lo haríamos?
Sigue el siguiente proceso:
¿Cuál es la máscara original para clase B?
¿Qué
modificación a la máscara original debemos hacer para crear 8 subredes?
(poner en binario y luego pasar a formato decimal)
¿Cuáles serían las 8 subredes? ¿Cuál sería el primer equipo y el último de cada
subred? ¿cuál sería la broadcast
de cada subred?
Realiza una tabla con todos los resultados
Subredes
Subredes
Direccionamiento IPv4Direcciones reservadas y direcciones de difusión broadcast
Broadcast: En toda red existe un mecanismo para enviar un mensaje o paquete
que reciben todas las
computadoras de la red. Este mecanismo se llama broadcast. Por ejemplo, si enviamos un mensaje con
dirección 172.17.255.255, lo recibirán todos dispositivos de la red 172.17.0.0. La dirección de broadcast
es
especial y no puede usarse para un equipo.
Direccionamiento IPv40.0.0.0 y 127.0.0.1Es muy común en Informática utilizar el cero como un valor que indica una condición
especial. Internet no es la excepción. La dirección 0.0.0.0
significa "este dispositivo" y
solamente se utiliza cuando se está
iniciando el sistema y no se conoce todavía la
dirección asignada al dispositivo. No está
permitido su uso como dirección de destino.
En cambio, la dirección 127.0.0.1, que también significa "este mismo dispositivo", sí
se
puede usar como dirección de destino y el efecto es que los mensajes que se le envíen
"rebotan" y vuelven a ser recibidos por el mismo dispositivo. Esto es muy útil para
propósitos de pruebas. Por ejemplo, podemos correr un servidor Web en
la misma
computadora donde estemos haciendo páginas .html
dinámicas; cuando queramos ver
cómo lucen, podemos correr el navegador con el URL "http://127.0.0.1/index.html". Esta
dirección también se llama "loopback
address".
Realmente todas las direcciones del rango 127.0.0.0 ‐
127.255.255.255 se comportan de
la misma manera, pero en la práctica se usa solamente 127.0.0.1.Un detalle importante es que las direcciones 127.0.0.0 a 127.255.255.255 no deben
aparecer nunca fuera de la computadora o dispositivo de red. Ni siquiera en la red local.
El sistema operativo debería encargarse de esto. Si los ve en su red, es señal de que algo
anda mal, muy posiblemente una intrusión.
Arquitectura IP
Direccionamiento IP permite disponer de rangos de
direcciones asignados a diferentes redes interconectadas entre sí
Para poder interconectar 2 ó + redes router o encaminador
ROUTER
Dispositivo capaz de transmitir datagramas
IP de una red a
otra con el objetivo de encaminar datagramas
a la red final donde está
conectado el dispositivo receptor de los datos.
Los router están conectados a dos o más redes lógicas
diferentes, por tanto, debe tener una interfaz por cada red a la que está
conectado y cada una de las interfaces de red del
router deberá
tener asignada una dirección IP válida en cada una de las redes.
Arquitectura IPInterconexionado
de redes IP mediante routers
IP Pública y Privada
Al principio: todos los dispositivos utilizaban IP públicas
Si 1 empresa quería conectar su red a Internet solicitaba
bloque de direcciones
Se asignaba un rango completo de una clase (A, B ó C)
Un organismo llamado IANA (Internet Assigned
Numbers
Authority) se encargaba de asignarlas
No era viable en vista del rápido crecimiento de Internet
Objetivo: Optimizar uso de IP públicas
¿CÓMO?
Mediante direcciones privadas
IP Pública y Privada
DIRECCIONES PRIVADAS
Solo son válidas en una red privada, y no se pueden utilizar
para la conexión a otras redes
No es posible encaminar fuera de las redes privadas
datagramas
que utilicen este tipo de direccionamiento, por ello reciben el nombre de direcciones no enrutables
Primer Rango Último Rango Total Rangos Máscara Descripción
10.0.0.0 1 255.0.0.0 IPs
privadas ‐
Clase A
172.16.0.0 172.31.0.0 16 255.255.0.0 IPs
privadas – Clase B
192.168.0.0 192.168.255.0 256 255.255.255.0 IPs
privadas – Clase C
IP Pública y Privada
Para dar Internet a direcciones privadas se utilizó
una técnica
NAPT (Network Address
Port Traslation) una variantes de NAT (Network Address
Traslation)
Permite compartir una dirección IP pública entre varios dispositivos
conectados a la misma red privada
En la actualidad, lo más frecuente es encontrar redes locales que
utilizan direccionamiento privado dentro de la propia red y solo los routers tienen direccionamiento publico.
Asignación IP Privadas
IP privadas
Uso: redes locales
Todos los dispositivos conectados necesitan una dirección
IP para intercambiar datos
Necesita conectividad física y lógica
CONECTIVIDAD FÍSICA
Infraestructura física
Camino físico por el que intercambiar los datos
(Ethernet, Wi‐Fi)
CONECTIVIDAD LÓGICA
Parámetros de configuración del nivel de red permiten intercambio de información
Necesaria la conectividad física
(Dirección IP, máscara de subred)
Asignación IP Privadas
Asignación IP Privadas
En algunos casos, además, se puede organizar el
direccionamiento de la red en subredes. El uso de subredes se conoce con el término subnetting.
SUBNETTING
Se usa principalmente para separar el tráfico de la red
generado por diferentes áreas donde está
implementada la red
Si hay diferentes subredes
no habrá
“visibilidad”
entre los equipos de distintas subredes
Si hay conectividad física
Para tener conectividad lógica ROUTER
TCP
(que
significa
Protocolo
de Control de Transmisión)
Un segmento TCP está
formado de la siguiente manera:
Arquitectura TCP/IP
Arquitectura TCP/IP
Procedimiento para establecer conexión
3 pasos1.
El origen de la conexión envía
un segmento TCP1.
Número de secuencia inicial N2.
Indicador SYN activo
2.
El destinatario responde con
un segmento TCP1.
Número de secuencia M2.
Indicador SYN activo3.
ACK activo con un número de
confirmación N+1
3.
El origen da paso a otro
segmento TCP1.
Número de secuencia N+12.
Indicador ACK activo y número
de confirmación M+1
Procedimiento para finalizar una conexión
4 pasos1.
El proceso que desea terminar la
conexión envía un segmento TCP1.
Indicador FIN activo2.
Número de secuencia inicial N2.
El proceso en el otro extremo
envía un segmento TCP1.
Número de secuencia inicial M2.
Indicador ACK activo con número
de confirmación N+13.
Este último proceso envía otro
segmento TCP 1.
Indicador FIN activo2.
Número de secuencia M+14.
El primer proceso cuando recibe
los segmentos anteriores genera un segmento TCP
1.
Número de secuencia N+12.
Indicador ACK activo con número
de confirmación M+2
Estados que definen su comportamiento