alvaro.gonzalezsotillo@educa.madrid.org

Arquitecturas de red

Álvaro González Sotillo

Created: 2024-09-08 dom 17:52

1. Introducción

  • Podemos considerar una arquitectura de red como un “plan” cuyo objetivo es establecer los mecanismos a implementar para que dos dispositivos se comuniquen.
  • Veremos que las arquitecturas deben
    • Facilitar la adición de nuevas funcionalidades
    • Facilitar el cambio de tecnologías
    • Facilitar la interoperabilidad entre diferentes proveedores

1.1. Arquitectura monolítica

  • Inicialmente, cada empresa creaba su propia arquitectura sin tener en cuenta otras existentes, de forma que unas eran incompatibles con otras.
  • Se solía crear un sistema único que se enfrentase a las necesidades de la comunicación en red abordando todos los aspectos al mismo tiempo.
  • En entornos sencillos este enfoque funcionaba. En entornos más complejos no.

1.2. Comunicación por niveles

  • Pronto se vió que la arquitectura monolítica no era funcional y se pasó al modelo por capas o niveles.
  • Para hacer más sencilla la comunicación, se divide en varias capas o niveles.
  • Cada capa proporciona servicios que las capas superiores pueden utilizar.

1.3. Comunicación por niveles

1.4. Comunicación por niveles

  • Cada nivel tiene una interfaz. Dos niveles adyacentes utilizan esta interfaz para comunicar entre ellos.
    • Interfaz: normas de comunicación entre dos capas.
  • Cada capa en el host origen comunica (de forma virtual) con la capa homóloga del host destino. En realidad lo hacen a través de las capas inferiores.
  • Cada capa conoce los servicios proporcionados por la capa de abajo y lo que tiene que proporcionar a la capa de arriba.

1.5. Comunicación por niveles

  • El nivel más alto suele llevar la semántica de la comunicación.
    • Los demás niveles sirven solamente para que éste funcione
  • Cada nivel intermedio realiza unas determinadas funciones (presta servicios).
  • El nivel más bajo realiza la comunicación real (transmisión de magnitudes físicas).

1.6. Protocolos y servicios

  • Protocolos (comunicación horizontal): conjunto de reglas que permite la comunicación entre los participantes.
    1. Todos los fabricantes que respeten las normas serán compatibles entre ellos.
    2. Regula aspectos concretos de la comunicación.
    3. Comunicación virtual excepto en el nivel más bajo.

1.7. Protocolos y servicios

  • Servicios (comunicación vertical): funciones proporcionadas entre capas dentro del mismo equipo.
    1. Las capas inferiores proporcionan servicios a las capas superiores.
    2. Cada capa debería usar únicamente los servicios proporcionados por la capa inmediatamente inferior.
    3. Cuando una capa hace uso de los servicios de la siguiente, la petición se realiza a través de los interfaces.

1.7.1. Preguntas

  • ¿Qué ventajas tiene un modelo por capas?
  • ¿Qué diferencia hay entre un protocolo y un servicio?
  • ¿De qué debemos preocuparnos al crear un servicio?

2. Factores a considerar en una comunicación

  • ¿Qué problemas se deben tener en cuenta en la comunicación entre dos ordenadores?

2.1. ¿Qué hace falta?

  • Encaminamiento
  • Direccionamiento
  • Acceso al medio
  • Saturación del receptor
  • Mantenimiento del orden de envío
  • Control de errores
  • Multiplexación
  • Segmentación y ensamblado
  • Privacidad

2.2. Encaminamiento

  • Encaminamiento: buscar un camino entre el host origen y el host destino de la comunicación.

2.3. Direccionamiento

  • Direccionamiento: identificar de forma unívoca los hosts que participan a la comunicación.

2.4. Acceso al medio

  • Acceso al medio: determinar las normas con las que los host pueden tomar el control del medio compartido y comunicar.

2.5. Saturación

  • Saturación del receptor: si el receptor es más lento en procesar la información con respecto al emisor, hay que regular el flujo de información.

2.6. Orden de envío

  • Mantenimiento del orden de envío: es posible que ciertos paquetes enviados por caminos distintos lleguen con un orden diferente al que se enviaron.

2.7. Control de errores

  • Detección de errores: Determinar si la información recibida es correcta, ya que la información enviada por el medio podría verse afectada por factores como el ruido o la atenuación.
  • Corrección de errores: Corregir los errores detectados

2.8. Multiplexación

  • Multiplexación: un único canal puede ser usado en múltiples comunicaciones simultáneamente.

2.9. Segmentación

  • Segmentación: algunos bloques de información pueden ser demasiado grandes para ser enviados y hay que fraccionarlos.
  • Ensamblado: si se ha segmentado la información hay que volver a reconstruirla en el destino.

2.10. Privacidad

  • Los datos transmitidos no deberían poder ser
    • Vistos por terceras personas
    • Modificados por terceras personas
  • En el caso de saltos intermedios ¿cómo pueden los nodos intermedios pasar la información sin conocer los datos?

3. Modelo OSI

  • Modelo desarrollado por la ISO (International Standardization Organization).
  • Modelo (principalmente teórico) que define 7 capas.
  • Cada capa tiene una función perfectamente definida.
  • Por cada capa se define un protocolo internacionalmente normalizado

unità di dato livelli Dati Dati Dati Segmenti Pacchetti Trame Bit Applicazione dal processo di rete all'applicazione Presentazione rappresentazione dei dati e criptazione Sessione comunicazione inter-host Trasporto connessioni end-to-end e affidabilità Rete determinazione dei percorsi e indirizzamento logico (IP) Collegamento indirizzamento fisico (MAC e LLC) Fisico mezzo, segnale e trasmissione binaria Livelli degli host Livelli dei mezzi unitate de date niveluri Date Date Date Segmente Pachete Cadre Biți Aplicație de la procesulde rețea la'aplicație Prezentare reprezentarea datelor și criptare Sesiune comunicare între hosturi Trasport conexiuni end-to-end și fiabilitate Rețea determinarea rutelor și adresare logică (IP) Legătură de date adresare fizică (MAC și LLC) Fizic mediu, semnal și transmisiune binară Niveluri ale hostului Niveluri are mediului data vrstva Data Data Data Segmenty Pakety Rámce Bity Aplikační síťový proces aplikací Prezentační prezentace dat a šifrování Relační komunikace mezi hostitely Transportní End-to-End spojení a spolehlivost Síťová určování cesty a logické adresování (IP) Spojová fyzické adresování (MAC a LLC) Fyzická médium, signál, binární přenos Vrstvy hostitelů Vrstvy média data skikt Data Data Data Segment Paket Ramar Bitar Applikation nätverksprocess till applikation Presentation dataframställning och kryptering Session mellanvärdslig kommunikationssamordning Transport sändning, mottagning och ankomstkontroll Nätverk navigering och logisk adressering (IP) Datalänk fysisk adressering (MAC och LLC) Fysiskt media, signal och binär överföring Värdskikt Mediumskikt data unit layers Data Data Data Segments Packets Frames Bits Nivel de Aplicación servicios de red a aplicaciones Nivel de Presentación representación de los datos Nivel de Sesión comunicación entre dispositivos de la red Nivel de Transporte conexión extremo-a-extremo y fiabilidad de los datos Nivel de Red determinación de ruta e direccionamiento lógico (IP) Nivel de Enlace de Datos direccionamiento físico (MAC y LLC) Nivel Físico señal y transmisión binaria Host Layers Media Layers dáta vrstva Dáta Dáta Dáta Segmenty Pakety Rámce Bity Aplikačná sieťový proces aplikácii Prezentačná reprezentácia dát a kryptovanie Relačná komunikácia medzi strojmi Transportná End-to-end spojenia a spoľahlivosť Sieťová určovanie cesty a logické adresovanie (IP) Spojová fyzické adresovanie (MAC a LLC) Fyzická médium, signál, binárny prenos Vrstvy stroja Vrstvy média unité de données couches Donnée Donnée Donnée Segment Paquet Trame Bit 7 - Application Point d'accès aux services réseau 6 - Présentation Conversion et chiffrement des données 5 - Session Communication Interhost 4 - Transport Connexion de bout en bout et contrôle de flux (TCP) 3 - Réseau Détermine le parcours et l'adressage logique (IP) 2 - Liaison Adressage physique (MAC et LLC) 1 - Physique Transmission binaire numérique ou analogique Couches hautes Couches matérielles data unit layers Data Data Data Segments Packets Frames Bits Application Network Process to Application Presentation Data Representation and Encryption Session Interhost Communication Transport End-to-End Connections and Reliability Network Path Determination and Logical Addressing (IP) Data Link Physical Addressing (MAC and LLC) Physical Media, Signal and Binary Transmission Host Layers Media Layers

Fuente: wikipedia

3.1. PDU (protocol data unit)

  • Encapsulación de datos.
  • Es la unidad de información que cada protocolo gestiona.
  • Normalmente está compuesta por dos partes:
    1. Cabecera
    2. Datos
  • El protocolo superior envía solo datos
    • Los protocolos inferiores van añadiendo sus cabeceras

3.2. Servicios

  • Cada capa se dedica a prestar servicios a su capa superior
    • Resuelve uno o varios problemas de la comunicación
    • De los que las capas superiores ya no tienen que preocuparse

3.2.1. Conexión/Confiable

  • Cada servicio puede ser o no orientado a conexión
  • ¿Se establece conexión?:
    1. Orientado a la conexión: crea una conexión, manda los datos, cierra la conexión. Esto garantiza la llegada en orden de los paquetes.
    2. Sin conexión: no crea una conexión, por lo tanto los paquetes pueden llegar desordenados.
  • ¿Se garantiza la entrega?:
    1. Confiable: garantiza que la información llegará al destinatario.
    2. No confiable: la información se podría perder en la red.

4. Capa física

  • Se encarga de la transmisión física de los datos. Indica como utilizar el medio físico para la transmisión de la información y como nos conectaremos a éste desde los equipos.

4.1. Funciones

  • Especifica los medios de transmisión.
  • Tipos de cableado y los conectores que utilizan
  • Distribución y regulación del espectro electromagnético para las comunicaciones sin cable.
  • Tipos de dispositivos y adaptadores de red.
  • Especificaciones y procedimientos en la codificación de la información a señales utilizables en el canal.

5. Capa de enlace

  • Su objetivo es convertir el medio de transmisión proporcionado por la capa física en un canal libre de errores (entre dos dispositivos conectados directamente).
  • Enlace lógico fiable.

5.1. Funciones

  • Sincronización entre el emisor y el receptor.
  • Estructuración de los datos en tramas.
  • Control de errores.
  • Control de flujo.
  • Determina el tamaño máximo y mínimo de trama.
  • Direccionamiento físico.
  • Gestión de control de acceso al medio.

6. Capa de red

  • Define todos los aspectos necesarios para comunicar equipos de redes distintas.
  • Utiliza los enlaces para llegar a ordenadores a más de un salto

6.1. Funciones

  • Direccionamiento lógico
    • ¿Por qué no valen las direcciones de la capa de enlace?
  • Especificación del tamaño máximo de los paquetes, según las capas inferiores.
    • Fragmentación: Si un paquete es demasiado grande, hay que fragmentarlo y reagruparlo en el destino
  • Definir si la comunicación se establece mediante circuitos virtuales o conmutación de paquetes (datagramas).
  • Encaminamiento (enrutamiento): tiene que determinar el mejor camino para que la información llegue al destino.

6.2. Funciones

  • Tratamiento de la congestión de la red: debe intentar reducir al mínimo la congestión de la red evitando caminos que tienen demasiado tráfico.
  • Interconexión de redes heterogéneas: tiene que resolver los problemas que surgen cuando el destino está en otra red que puede ser de tipo distinto a la red origen

6.3. Nodos intermedios

7. Capa de transporte

  • Es la encargada de regular el flujo de información desde el origen hasta el destino de una manera sincronizada y precisa.
  • Es la primera capa que tiene la ilusión de disponer de una comunicación directa entre origen y destino.
  • Permite la interconexión extremo a extremo entre aplicaciones.
    • Origen y destino no son ordenadores, son procesos

7.1. Funciones

  • Establecer, mantener y terminar los circuitos virtuales que se crean durante la transmisión de datos.
  • Proporciona un servicio orientado a la conexión que garantiza que la comunicación está libre de errores, sin pérdidas o duplicados.
  • Control de congestión entre origen y destino
  • Direccionamiento

8. Capa de sesión

  • Es la encargada de establecer, mantener y finalizar las sesiones de usuario entre dos ordenadores.

8.1. Funciones

  • Mejora el servicio proporcionado por la capa de transporte permitiendo la reanudación de la conexión en caso de interrupción.
    • Ejemplo: permite que si en el envío de un fichero en múltiples datagramas, éste se corta. La conexión pueda ser reestablecida a partir del punto en que se paró.
  • En canales half-duplex determina los turnos para controlar el diálogo.

9. Capa de presentación

  • Ofrece servicios para especificar el formato de los datos que se están enviando.

9.1. Funciones

  • Se encarga de la compresión y del cifrado de la información enviada.
  • Se encarga de definir el significado de la información:
    • ¿Qué fecha es 3/11/05?
    • ¿Qué número es 345,241?
  • También puede definir formatos para informaciones más complejas:
    1. Lenguajes de marcas: HTML, XML, …
    2. Formatos de imagen: JPEG, PNG, …
    3. Formatos de audio: MIDI, MP3, …
    4. Formatos de texto: ASCII, …
    5. Formatos de video: MPEG, AVI, …

10. Capa de aplicación

  • Es la razón por la que se monta la red
  • Es la encargada de interactuar con el usuario final y de proporcionarle los servicios en red que éste necesita.
  • Incluye los protocolos específicos de cada aplicación.
  • Ejemplos:
    • Protocolos de transferencia de archivos (FTP)
    • Correo electrónico (SMTP, IMAP, POP)
    • Conexión remota (Telnet, SSH)
    • Gestión de nombres de dominio (DNS)…

11. Aceptación del modelo ISO/OSI

  • El modelo OSI es un gran modelo teórico
  • Se desarrolló con fines comerciales, pero
    • Era caro
    • Tenía bastanes errores
    • Demasiado corporativo
  • No pudo competir con TCP/IP porque
    • Era más barato (gratis)
    • Llegó antes
    • Corrigió errores antes
    • Tenía mayor libertad (en teoría)

11.1. Estándar de iure y de facto

  • De iure: Reconocido por una autoridad competente
  • De facto: Lo que realmente es aceptado por los usuarios

12. Arquitectura Internet

  • La gran difusión de Internet, ha permitido que este modelo sea hoy en día un estándar de hecho. OSI ha quedado como arquitectura para el estudio teórico.
  • Se apoya sobre un modelo de red de conmutación de paquetes.

12.1. TCP-IP Vs OSI

  • OSI asignaba un protocolo por cada capa.
  • TCP/IP plantea más de un protocolo por cada capa.
  • En OSI cada capa puede usar SOLO los servicios de la capa inmediatamente inferior.
  • En TCP/IP una capa puede utilizar servicios de capas inferiores no adyacentes.

12.2. Capas en el modelo Internet

  • La capa de acceso al medio recoge las especificaciones de las capas física y de enlace
    • Por ejemplo, IEEE 802
    • Pero puede usar otras
  • TCP/IP cubre las de
    • Red
    • Transporte de OSI.
  • La capa de aplicación implementa las capas de sesión, presentación y aplicación de OSI.

12.3. Niveles TCP-IP

12.4. Protocolos TCP-IP

12.5. TCP vs UDP

  TCP UDP
Conexión  
Confiable  
Control de congestión  
Velocidad   Mayor

13. Otros ejemplos de arquitectura

13.1. Arquitectura RTC

  • RTC (Red Telefónica Conmutada)
  • Transmisión de voz por corriente eléctrica.
  • Conmutación de circuitos
  • Puede transmitir datos de ordenadores usando modulación.
  • Protocolo PPP a nivel físico de TCP/IP

13.2. Iberpac

  • Red de datos extendida por toda España.
  • Se basa sobre el estándar X.25
  • Transmisión lenta. Redunda el control de errores.
  • Usada para bancos.

13.3. RDSI o ISDN

  • Tiene su propio cableado y sus adaptadores específicos.
  • Ofrece voz y datos a través de canales multiplexados.
  • Un cliente puede contratar más canales si necesita más ancho de banda.
  • Este tipo de red no es compatible con terminales analógicos.

13.4. DSL (Digital Subcriber Line)

  • Permite alta velocidad en cableado de baja calidad.
  • Utiliza frecuencias que no se utilizan en la comunicación vocal
    • ADSL (Asymetric): el canal de bajada es mayor del canal de subida
    • SDSL (Symetric): los canales tienen el mismo ancho de banda

14. Sistemas de interconexión

Nivel Sistema de interconexión
Transporte y superior Pasarela (proxy)
Red Enrutador (router)
Enlace Puente (bridge), conmutador (switch), concentrador (hub)
Físico Repetidor

14.1. Repetidor

  • Conecta 2 segmentos de cable.
  • Una señal que aparece en uno de ellos es amplificada y enviada al otro.
  • Los repetidores no distinguen entre tramas, paquetes o encabezados. Manejan voltios.

14.2. Concentrador

  • Un repetidor con más de dos conexiones
  • Un concentrador tiene numerosos puertos de entrada que une de manera eléctrica.
    • Sin retransmisión: Las tramas que llegan al mismo tiempo chocarán, provocando una colisión.
    • Con retransmisión: Se almacena la trama completa antes de reenviarla
  • Al igual que los repetidores, los concentradores no examinan ni las direcciones de las tramas ni ningún otro de campo de ellas

14.3. Puente

  • Un puente conecta 2 redes de área local.
  • Cuando llega una trama, el software del puente extrae la dirección de destino del encabezado y la busca en una tabla para averiguar a donde se debe enviar.
  • Un puente podría tener entradas de diferentes tipos de red y velocidades.

14.4. Conmutador

  • Un puente de más de dos conexiones
  • Examinan la dirección de destino.
  • Aprenden las máquinas que están conectadas en cada boca.
  • Redireccionan tramas, evitando gran parte de las colisiones.
  • Pueden implementar caches de memoria, mejorando el flujo de comunicación entre dispositivos.

14.5. Enrutador

  • Enrutador: cuando un paquete llega a un enrutador el encabezado y el terminador de la trama se eliminan y el paquete contenido en el campo de datos de la trama se pasan al software de enrutamiento.

14.6. Pasarela

  • Pasarela de transporte y pasarela de aplicación.
    • Permiten la traducción de información en los niveles superiores.

15. Referencias