Redes de Comunicación – 2.º Curso – 1.º Semestre – 2016-2017 – Grupo T-2
– Introducción a las Comunicaciones de Datos y Redes
Modelo de sistema de comunicación de datos
Objetivo — intercambio de información.
ORIGEN → CANAL → DESTINO
M → M′
En los sistemas de comunicación digital, los mensajes están formados por un conjunto finito y discreto de valores (símbolos).
Fundamentos de la Teoría de la Información
Teoría creada por Shannon, en la que se fundamenta la teoría actual de la comunicación y la codificación. Trata sobre la cantidad de información, la capacidad del canal y su proceso de codificación. Establece los límites de máxima velocidad (bits/s) y de cuánto se puede comprimir la información.
La cantidad de información (I) mide la disminución de incertidumbre que aporta el conocimiento de un suceso nuevo. Cuanto menos esperado es un suceso, mayor será la cantidad de información que aporta.
Ejemplos: fuentes discretas sin memoria (moneda, dado, etc.).
La cantidad de información es un valor que depende de la probabilidad de que dicho símbolo sea emitido.
La medida I(Si) debe cumplir:
- Siempre ser mayor o igual que cero.
- Ser función continua y proporcional a la sorpresa del símbolo.
- Ser aditiva (lineal) para eventos independientes.
La entropía de una fuente (H) determina el contenido promedio de información de los símbolos de una fuente. Representa el número de bits necesarios en promedio para codificar los símbolos.
Propiedades de la entropía para fuentes sin memoria:
- Si p(Si) = 1 (un único símbolo), no hay incertidumbre y la entropía es nula.
- Si todos los símbolos son equiprobables, la incertidumbre es máxima y la entropía es máxima.
Codificación de la fuente
En comunicación digital los símbolos se representan en el alfabeto Sb = {0,1}. El proceso de asociar a cada símbolo de la fuente símbolos del alfabeto se llama codificación. El número de bits que codifican los símbolos de la fuente debe ser suficiente para poder realizar la descodificación.
Existen dos tipos de codificación:
- Codificación fija — ejemplo: ASCII de 7 bits.
- Codificación variable — ejemplo: código Morse.
Longitud media: un código será mejor cuanto más se aproxime su longitud media (L) a la entropía de la fuente (H).
Eficiencia: relación entre la entropía y la longitud media del código.
Los códigos prefijos son códigos que permiten asignar palabras de código con longitud variable de bits a los símbolos de una fuente; ninguna palabra de código debe ser prefijo de otra.
Compresión sin pérdida de información: los símbolos descomprimidos son idénticos a los originales — ejemplos: Run-Length, Huffman.
Compresión con pérdida de información: lo descomprimido tiene menos información que el original — ejemplos: JPEG, MP3, MP4.
Introducción a las redes de comunicación
Conceptos
- Red: conjunto de dispositivos conectados entre sí mediante enlaces.
- Nodos: representan los elementos que se interconectan en la red.
- Nodos finales: procesan la información que es transmitida por la red — por ejemplo, PCs.
- Nodos intermedios: se encargan de redirigir la información de la red — por ejemplo, routers.
- Enlaces: vías de comunicación que soportan las conexiones entre los nodos.
- Punto a punto: interconectan 2 nodos.
- Multipunto: interconectan más de 2 nodos.
Clasificación de las redes
Por área: PAN, LAN, MAN, WAN.
- Redes PAN: distancias menores a 10 metros, entorno unipersonal; ejemplos: dispositivos móviles, GPS, Bluetooth e infrarrojos.
- Redes LAN: uno o varios edificios; tecnología de difusión, enlaces multipunto; cableadas e inalámbricas; elementos típicos: routers y switches.
- Redes MAN: una ciudad; ejemplo: redes basadas en TV por cable.
- Redes WAN: un país o varios continentes; nodos intermedios, enlaces punto a punto, tecnologías de difusión y conmutación, subredes; ejemplo: RedIRIS.
Función
- Acceso: permiten la conexión de los usuarios para acceder a los servicios demandados (Wi‑Fi, GSM).
- Transporte: concentran el tráfico de datos de las redes de acceso (ej.: ATM, SDH).
Conceptos generales de protocolos y servicios
- Entidad: elemento activo capaz de enviar y recibir información por iniciativa propia.
- Sistema: objeto físico que contiene una o más entidades — por ejemplo, ordenadores, móviles.
- Protocolo: conjunto de reglas que regulan el intercambio de datos entre dos entidades de una misma capa.
- Interfaz: conjunto de operaciones que definen la forma de comunicación entre capas adyacentes de un mismo sistema.
Ejemplos de arquitecturas:
- TCP/IP — Aplicación, Transporte, Internet, Enlace y Física (5 capas).
- OSI — Aplicación, Presentación, Sesión, Transporte, Red, Enlace y Física (7 capas).
Introducción a los sistemas de conmutación
Conmutación: técnica para establecer un camino de comunicación entre los nodos en una red, usada en redes WAN.
Encaminamiento: los dispositivos de conmutación encaminan la información desde el origen hasta un destino.
Tipos de conmutación
Conmutación de circuitos
Se establece un canal dedicado para la transmisión entre dos nodos de la red. Fases: establecimiento de canal — transferencia de información — desconexión del circuito. Ejemplo: RTC. La asignación dura el tiempo que dura la comunicación; los recursos no son compartidos entre distintas comunicaciones.
Inconvenientes: ineficiente porque todo el canal queda asignado aunque no se transmita, se requiere tiempo para el establecimiento de la conexión. Transferencia inicialmente usada para tráfico de voz (teléfono).
Conmutación de paquetes
Los datos se transmiten en mensajes llamados paquetes, no mayores a 1 kB; cada paquete contiene información de control además de los datos. Cada nodo de conmutación realiza:
- Almacenamiento de cada paquete recibido.
- Decisión sobre el mejor enlace para reenviarlo.
- Retransmisión del paquete.
Circuito virtual: se establece un camino por el que todos los paquetes siguen una comunicación de origen a destino; se envían ordenadamente. Cada nodo intermedio puede gestionar varios circuitos virtuales a la vez.
Datagramas: los paquetes viajan por la red de forma independiente; pueden llegar desordenados; el nodo destino debe detectar pérdidas y recuperar paquetes si procede.
Los enlaces entre nodos se pueden compartir para enviar paquetes a diferentes destinos. Los paquetes se encolan y se transmiten tan rápido como sea posible; cada nodo se conecta a la red a su propia velocidad. Los nodos intermedios pueden almacenar paquetes temporalmente y se pueden asignar prioridades.
Introducción al encaminamiento
Para llevar los paquetes de un origen a un destino hay que realizar diversas funciones:
- Direccionamiento: identificar los nodos conectados a la red.
- Encaminamiento: escoger la trayectoria adecuada para que los paquetes lleguen a su destino.
- Control de congestión: evitar que los nodos intermedios se vean desbordados.
Es tarea fundamental el encaminamiento de paquetes desde el origen al destino. Incluye el establecimiento de vecindades, distribución y recogida de información y cálculo de rutas mediante algoritmos de camino más corto.
Ruta óptima
Factores a considerar: número de nodos intermedios a atravesar, caudal de los enlaces, nivel de ocupación de los enlaces, retardo de los enlaces, fiabilidad de los enlaces.
Introducción al control de congestión
Control de flujo: técnica para regular el intercambio de datos entre un nodo que produce información y otro que la recibe.
Ejemplo: un nodo de gran capacidad puede enviar muchos paquetes/s a un PC, pudiendo desbordarlo. El PC deberá enviar mensajes de control de flujo para que el nodo reduzca su tasa de envío.
El control de congestión incluye técnicas para detectar y corregir problemas cuando no todo el tráfico ofrecido a una red puede ser cursado por los nodos intermedios. Es un concepto más amplio que el control de flujo: involucra a toda la red; el control de flujo es una de las técnicas para combatir la congestión, pero existen otros mecanismos adicionales.
Principales causas de congestión
- Memoria insuficiente de los nodos intermedios: si los paquetes llegan muy deprisa para ser procesados se llenan los buffers de entrada; si hay demasiados paquetes esperando ser transmitidos se llenan los buffers de salida.
- Capacidad de proceso insuficiente en los nodos intermedios: si el nodo es incapaz de procesar toda la información que le llega, se saturan sus colas.
- Velocidad de transmisión de los enlaces de salida insuficiente.
Introducción a la normalización
Es necesario conocer las normativas que regulan la conexión entre dispositivos y redes y la interconexión entre diferentes redes.
Organismos principales:
- ISO (International Organization for Standardization): normativa para la Interconexión de Sistemas Abiertos (OSI) y estándares en sus capas.
- ETSI (European Telecommunications Standards Institute): organismo independiente para la normalización de las telecomunicaciones en Europa.
- ITU (International Telecommunication Union): estandarización de las telecomunicaciones.
- ITU‑R: radiocomunicaciones.
- ITU‑T: normalización de telecomunicaciones.
- ITU‑D: desarrollo.
- IEEE (Institute of Electrical and Electronics Engineers): aportación destacada en las redes LAN.
- EIA (Electronic Industries Association): normas como la serie RS (RS-232-C, etc.).
Organismos relacionados con Internet:
- IAB (Internet Architecture Board): coordinador del diseño, ingeniería y gestión de Internet.
- IETF (Internet Engineering Task Force): propuestas de nuevos estándares y gestión a corto plazo (RFCs).
- IRTF (Internet Research Task Force): planificación, investigación y desarrollo a largo plazo.
– Arquitectura de Protocolos
Arquitectura de comunicaciones o de protocolos
La lógica necesaria para la comunicación se divide en tareas o módulos; la arquitectura define la forma de organización de estas tareas.
Entidades pares
Entidades de una misma capa que se comunican mediante un protocolo. Intercambian unidades de datos de protocolo (PDUs).
Ejemplo de arquitectura de 3 capas
- Capa de aplicación: lógica de comunicación entre las aplicaciones de usuario (correo electrónico, transferencia de archivos, etc.).
- Capa de transporte: asegura que los datos se intercambian de forma segura y en orden entre las aplicaciones.
- Capa de acceso a la red: intercambio entre el computador y la red a la que está conectado.
Funciones a realizar en las arquitecturas de protocolos
Encapsulado / desencapsulado: al transmitir, las PDUs de una capa se encapsulan en las PDUs de la capa inferior. En la recepción se realiza el proceso inverso: desencapsulado.
Cabeceras típicas:
- Cabecera de la capa de aplicación: nombre de fichero, direcciones de correo, etc.
- Cabecera de la capa de transporte: número de secuencia, dirección de aplicación (puerto), etc.
- Cabecera de la capa de acceso a la red: direcciones de red destino y origen, prioridad, etc.
Tipos de PDU
- PDU de datos: encapsula las PDUs de la capa superior y contiene una SDU (Service Data Unit).
- PDU de control: solo tiene información de control (PCI); no encapsula PDU de la capa superior (no tiene SDU).
Direccionamiento
Identificar un origen o un destino es necesario cuando hay muchos interlocutores. Cuando se envía una PDU, ésta debe identificar el origen y el destino.
Nivel de direccionamiento
- Cada sistema final/intermedio debe ser identificado entre los demás de la red.
- Cada aplicación debe ser identificada entre las demás existentes en un mismo sistema.
Una dirección de red para cada sistema, y una dirección para cada entidad de aplicación en un sistema: puerto o SAP (Service Access Point).
Ámbito de direccionamiento
- Dirección global: válida para identificar un origen/destino globalmente (ej.: dirección IP).
- Dirección local: válida localmente (en una subred) — ej.: identificación de un puerto o SAP.
Modo de direccionamiento
- Dirección individual: identifica un único sistema o puerto (unicast).
- Dirección multidestino: identifica múltiples sistemas o puertos (multicast).
- Dirección de difusión: identifica a todos los sistemas o puertos (broadcast).
Control de conexión
Transferencia no orientada a conexión: cada PDU se trata independientemente de las anteriores y/o posteriores (ej.: datagramas en la capa de acceso a la red).
Transferencia orientada a conexión: se establece una asociación lógica o conexión entre las entidades; todas las PDU reciben un mismo tratamiento y se garantiza la entrega ordenada de las PDU de la capa superior (ej.: circuito virtual).
Una conexión es como un tubo no físico creado entre dos entidades de una capa (N), por el que se comunican las entidades de la capa superior (N+1). El tubo no físico existe mientras las entidades de la capa superior intercambian datos a través de él.
Modelo de referencia OSI
Tiene 7 capas o niveles; la función de comunicación se descompone en 7 niveles. Los niveles superiores desconocen los detalles manejados por los inferiores.
La frontera o interfaz entre capas está definida en términos de funciones llamadas primitivas; especifican un servicio ofrecido a un usuario por un proveedor. Para ofrecer un servicio, las entidades de un sistema colaboran con las entidades pares.
Funciones más importantes de las capas
- Capa física: transmisión y recepción de cadenas de bits no estructurados sobre el medio físico.
- Capa de enlace de datos: regula la comunicación en cada salto de la ruta entre dos sistemas a lo largo de la red.
- Capa de red: hace llegar la información desde un origen a un destino buscando la ruta adecuada.
- Capa de transporte: garantiza la comunicación extremo a extremo entre dos sistemas finales en la red.
- Capa de sesión: sincroniza y organiza el diálogo entre las aplicaciones.
- Capa de presentación: define la forma de representación de los datos (sintaxis).
- Capa de aplicación: proporciona acceso a los usuarios (personas o programas) a un conjunto de servicios de información.
Arquitectura TCP/IP
Tiene 5 capas o niveles:
- Nivel de aplicación: comunicación entre procesos y aplicaciones — ejemplos: FTP, HTTP.
- Nivel de transporte: transferencia entre sistemas finales de extremo a extremo.
- TCP: orientado a conexión, comunicación fiable.
- UDP: no orientado a conexión, solo para intercambios puntuales de datos.
- Nivel de Internet: comunicación entre sistemas a través de una o varias redes.
- IP: no orientado a conexión, no garantiza la entrega fiable (datagramas).
- Nivel de enlace: responsable de la comunicación entre el sistema y la red a la que está conectado; protocolos y estándares definidos.
- Nivel físico: interfaz entre el sistema y el medio de transmisión; características del medio, señales, etc.
En ocasiones se agrupan los niveles físico y de enlace formando el nivel de interfaz de red.
Niveles básicos de direccionamiento
- Dirección Internet: identifica un sistema (host) dentro de la red.
- Puerto: identifica una aplicación dentro de un sistema (host).
Comparativa RM-OSI y TCP/IP
El modelo OSI es una especificación general que puede describir otras arquitecturas. El modelo TCP/IP es una descripción de los protocolos usados. TCP/IP se usa de forma mayoritaria debido a su implantación anterior a OSI, es más sencilla y robusta y sus especificaciones son de dominio público.
– Nivel Físico
Introducción al nivel físico
Objetivo — transmisión de bits por un canal de comunicación.
Trata las características eléctricas/electromagnéticas y la temporización de las señales, las características mecánicas de los conectores, etc. Regula el uso eficiente del medio de transmisión.
Protocolos: definen las reglas de comunicación a nivel físico para la transmisión de bits; se les puede llamar interfaces. No son intercambiables sin respetar la especificación.
Transmisión de datos: conceptos y terminología
Régimen binario (R): indica el número de bits transmitidos por unidad de tiempo.
Ejemplo: R = 1/Tb (bits/s), donde Tb es el intervalo de bit. También se denomina velocidad de transmisión.
Tasa de error de bit (Te): frecuencia o probabilidad con que llegan al receptor bits de valor distinto al transmitido.
Ejemplo: Te = Berx / Btx, donde Berx son los bits erróneos recibidos y Btx los bits totales transmitidos.
Causas: ruidos, interferencias, distorsiones.
Capacidad del canal (C): régimen binario máximo con el que se puede transmitir a través de un canal con una tasa de error de bit aceptable.
Fórmula de Shannon: C = W · log2(1 + S/N) (bits/s), donde W es el ancho de banda y S/N la relación señal/ruido.
Modos y técnicas de transmisión
Transmisión en paralelo vs. serie
Difieren en la forma de transmitir los bits que forman parte de una misma unidad de información (word, byte, etc.).
- Paralelo: cada bit de una unidad se transmite por su propio medio; todos los bits se transfieren en el mismo intervalo de tiempo. Forma de transmisión cada vez menos usada.
- Serie: los bits de cada unidad se transmiten uno tras otro por el mismo medio. Ejemplos: interfaz serie EIA-232 y USB.
Transmisión serie asíncrona
Se transmiten grupos de bits llamados caracteres; el receptor los sincroniza al comienzo de cada carácter.
- Bits de comienzo (START): «0».
- Bits de fin (STOP): «1».
Los estados de bits de comienzo y de final son siempre opuestos.
Los bits de cada carácter (hasta 8 bits) se envían comenzando por el bit menos significativo. Se puede enviar un bit de paridad para detectar errores.
Transmisión serie síncrona
Se transmiten secuencias de bits llamados tramas, de mayor longitud que un carácter. Hay que garantizar la sincronización del nivel físico durante la trama, manteniendo la sincronización de bit entre receptor y emisor. Es más eficiente que la transmisión asíncrona en relación con la proporción de bits adicionales transmitidos.
Parámetros de rendimiento de la transmisión
Velocidad de transferencia de datos (Vtd): número de bits de información transmitidos por unidad de tiempo.
Vtd = número de bits de información / tiempo.
Eficiencia o rendimiento (E): aprovechamiento de la transmisión a nivel de la capa física.
E = Vtd / R.
Modos de explotación del canal
- Unidireccional o simplex: transmisión en un único sentido; los errores detectados por el receptor no pueden notificarse al transmisor. Habitual cuando hay un transmisor y múltiples receptores.
TRANSMISOR → CANAL → RECEPTOR - Bidireccional alternado o semidúplex: se alternan en ambos sentidos, no simultáneamente; es posible confirmar lo recibido, aumentando la fiabilidad. Requiere reglas para el uso alternado del canal.
TRANSMISOR ↔ TRANSMISOR
(CONMUTADOR TX/RX → CANAL ← CONMUTADOR TX/RX) - Bidireccional simultáneo o full dúplex: transmisión simultánea en ambos sentidos; dispositivos más complejos actúan simultáneamente como transmisor y receptor.
- Transmisión asimétrica: diferentes velocidades de transmisión (bits/s) en cada sentido.
Interfaces de nivel físico
Interfaz entre DTE y DCE — características que deben regular las normas de especificación de la interfaz.
Características a regular:
- Mecánicas: conectores, pines.
- Eléctricas: niveles de tensión, tiempos de señales.
- Funcionales: tipos de circuitos y su función.
- De procedimiento: secuencia de eventos.
La interfaz EIA-232
Publicada por la EIA para regular la comunicación entre DTE y DCE en modalidad serie. Existen algunas equivalencias con normas de la ITU‑T:
- Características eléctricas: V.28.
- Características funcionales y de procedimiento: V.24.
- Características mecánicas: ISO 2110.
Características eléctricas de la interfaz EIA-232
Equivalente a la recomendación V.28; su régimen binario es de 20 kbits/s y la distancia entre DTE y DCE es de hasta 15 metros. Sus tensiones típicas son +3 V a +25 V para el «0» (ON) y -3 V a -25 V para el «1» (OFF).
Señales no balanceadas: tensiones referidas a una referencia de tensión común a todos los circuitos.
Características mecánicas y funcionales de la interfaz EIA-232
Conector DB25 o DB9. Principales señales/circuitos:
- TXD: transmisión de datos.
- RXD: recepción de datos.
- DTR: Data Terminal Ready.
- DSR: Data Set Ready.
- RTS: Request To Send.
- CTS: Clear To Send.
- RI: Ring Indicator.
- DCD: Data Carrier Detect.
- GND: ground (tierra).
– Nivel de Enlace
Introducción
El nivel de enlace debe proporcionar a la capa de red un servicio de transferencia de datos fiable. Regula la comunicación entre sistemas directamente interconectados a través de un enlace. A la PDU de la capa de enlace se le llama trama. A los sistemas de la capa de enlace se les llama estaciones.
Funciones principales
- Delimitación de la trama: marca el comienzo y final de cada PDU.
- Servicio orientado a conexión.
- Control de flujo: regula el intercambio de datos entre dos nodos.
- Control de errores: detecta y corrige posibles errores producidos en los bits.
- Control de acceso al medio de transmisión: regula quién puede transmitir el canal; es fundamental en las redes LAN.
Control de flujo
Objetivo: regular el intercambio de tramas de datos para que la estación que las envía no desborde a la estación receptora.
El receptor dispone de una memoria temporal y recursos finitos para almacenar y procesar las tramas antes de entregarlas a la capa superior. Se usan mecanismos de retroalimentación.
Técnicas básicas del control de flujo
- Parada y espera (stop-and-wait).
- Ventana deslizante o envío continuo (sliding window).
Control de flujo por parada y espera
Principio de funcionamiento: antes de enviar una nueva trama se debe recibir una trama de reconocimiento (ACK / RR) de la anterior. Es sencillo pero ineficiente por los tiempos de espera.
Control de flujo por ventana deslizante o envío continuo
Principio de funcionamiento: se puede enviar más de una trama sin recibir reconocimiento; se pueden confirmar varias tramas a la vez y se eliminan esperas por cada reconocimiento individual.
Son necesarios números de secuencia para identificar tramas. Las entidades que intercambian necesitan memorias temporales (buffers) para almacenar tramas de datos y listas de números de secuencia.
Ventana de transmisión y de recepción
- Ventana de transmisión (Wt): lista de números de secuencia de tramas que pueden enviarse sin recibir RR del receptor. Wt = número máximo de tramas que el transmisor puede enviar sin recibir RR.
- Ventana de recepción (Wr): lista de números que puede recibirse y almacenarse antes de pasar su SDU a la capa superior. Wr = número máximo de tramas que pueden almacenarse en buffers antes de pasar su contenido a la capa superior.
Reconocimientos acumulativos
Si no hay tiempo en el receptor para enviar RR individuales para cada trama recibida, se puede enviar un RR que confirme varias PDU a la vez.
Envío de reconocimientos
En tramas de reconocimiento (ACK, RR) normalmente se envía un ACK por cada trama recibida sin error. En las tramas de datos se puede usar piggybacking (técnica de transmisión bidireccional en la capa de enlace: en vez de enviar un ACK en un paquete individual, se incluye en el próximo paquete a enviar).
Para un mejor aprovechamiento del canal, la comunicación debe ser full‑dúplex.
Fundamentos de control de errores
ARQ (solicitud automática de repetición): se retransmiten las tramas erróneas; el procesado de tramas es más simple en transmisor y receptor. Requiere menos bits de redundancia cuando la tasa de error de bit es baja.
En ARQ las tramas pueden llegar irrecuperables o reconocibles con errores en bits.
Mecanismos de control de errores en ARQ
- Bits de redundancia añadidos a las tramas para detectar errores.
- Confirmaciones positivas (ACK) enviadas por el receptor al recibir tramas sin error.
- Confirmaciones negativas (NACK / REJ) enviadas por el receptor al detectar errores para solicitar retransmisión.
- Temporizadores y contadores para controlar retransmisiones de tramas no confirmadas.
Control de errores por parada y espera
Uso de temporizadores y contadores: el transmisor arranca un temporizador con un tiempo límite (TIMEOUT) para recibir el ACK. El número máximo de retransmisiones se controla mediante un contador.
Uso de número de secuencia: las tramas deben estar numeradas incluso en parada y espera; si no se numeran, pueden producirse duplicaciones en el receptor.
Control de errores ARQ en ventana deslizante
Mecanismos: bits de redundancia, números de secuencia, confirmaciones positivas (RR) y negativas (REJ), temporizadores (uno por cada trama enviada) y contadores de límite de retransmisiones.
Dos métodos de control de error:
- Rechazo simple — aplicable si Wr = 1.
- Rechazo selectivo — aplicable si Wr > 1.
Rechazo simple
Wr = 1: el receptor dispone de un único buffer para almacenar una trama antes de entregar los datos a la capa superior. Al recibir una trama errónea, el receptor desecha ésta y todas las posteriores. El transmisor deberá retransmitir todas las tramas pendientes de validación.
Rechazo selectivo
Wr > 1: el receptor dispone de buffers para almacenar tramas posteriores a una trama errónea; solo se retransmiten las tramas rechazadas o no confirmadas por el receptor. Es necesaria la capacidad de reordenamiento de tramas: el transmisor debe poder transmitir tramas fuera de orden y el receptor debe reordenar las tramas reenviadas. Normalmente se verifica Wt = Wr.
Límites en los valores de Wt y Wr
Si no se limitan los tamaños máximos de ventana se pueden producir fallos en el protocolo de la capa de enlace. Si se usan n bits para numerar las tramas, los tamaños máximos son:
- Rechazo simple (Wr = 1): Wt ≤ 2^n – 1.
- Rechazo selectivo (Wr ≤ 2^n – 1): Wt ≤ 2^n – 1 (normalmente Wt = Wr).
Control de errores hacia adelante (FEC)
El receptor intenta corregir los errores sin retransmisión; se usa en comunicaciones multicast o si el retardo de propagación es muy elevado.
Fundamentos de los sistemas de detección/corrección de errores
Notación:
- M: mensaje a transmitir, de m bits.
- K: redundancia generada, de k bits.
- Codificador de canal: genera palabras de código N a partir de M.
- N: palabra de código transmitida, de n = m + k bits.
- N’: palabra de código recibida.
- M’: mensaje recibido; K’: redundancia recibida.
- Descodificador de canal: comprueba si hay error en N’.
Si se detecta error se realizan las acciones oportunas (ARQ, FEC).
Objetivos de los sistemas de detección/corrección
- Máxima capacidad de detección: minimizar la probabilidad de que se reciban palabras de código con errores y no se detecten.
- Mínimo número de bits de redundancia (k): añadir el menor número posible de bits redundantes.
- Sencillez de implementación: simplificar hardware/software y minimizar el coste computacional.
- Máxima capacidad de corrección cuando se usa FEC.
Factores que determinan el sistema de codificación a utilizar:
- Magnitud de la tasa de error de bit (Te).
- Técnica de control de error usada: ARQ o FEC.
- Complejidad del código y cantidad de bits de redundancia (k).
- Distribución temporal de los errores: errores aislados o ráfagas (las ráfagas son más frecuentes).
Métodos de codificación para detección/corrección de errores
Códigos de redundancia cíclica (CRC)
Detección fiable de errores, especialmente cuando se producen errores en ráfagas de bits. Los bits de redundancia forman la secuencia de verificación de trama (FCS) o CRC.
Fundamento: tratamiento numérico de la secuencia de bits que forman el mensaje mediante códigos polinómicos. Una secuencia de m bits donde el primer y último bit son 1 representa un polinomio de grado m-1.
Mecanismo de generación de un CRC
El mensaje a transmitir se considera como un polinomio M(x). La redundancia K(x) es el resto R(x) de la división, donde el divisor es un polinomio generador G(x).
Generación del CRC
Aritmética en módulo 2: la suma y la resta se realizan como una OR exclusiva (XOR), sin acarreo. La división en módulo 2 se hace como la división binaria, pero las restas parciales se realizan en módulo 2.
En el transmisor:
- Se añaden g ceros al mensaje M(x) formando M(x) · x^g.
- Se divide M(x) · x^g entre el polinomio generador G(x) en módulo 2. El resto de la división R(x) tendrá grado menor que g y su longitud máxima es k bits (k = g).
- El resto R(x) es la FCS que se suma (XOR) a M(x) · x^g, dando como resultado la palabra de código N(x) a transmitir.
- La palabra N(x) formada es divisible entre el polinomio generador G(x).
En el receptor:
- Se divide la trama recibida N'(x) por el mismo polinomio generador G(x).
- Si no hay errores en la transmisión, N'(x) = N(x) y el resto de la división R'(x) debe ser cero.
Capacidad de detección de errores del CRC
Si hay un error de transmisión se recibe la palabra de código N'(x) distinta de la transmitida. El error se representa como E(x). En el receptor se calculará el resto de la división; se detectarán aquellos errores que hagan distinto de cero el resto R'(x) de la división E(x) / G(x).
No se detectarán los errores cuyo polinomio E(x) tenga como factor a G(x), pues en ese caso el resto R'(x) será cero.
Ejemplo de errores no detectados
M = 1 1 0 1 0
G = 1 1 1
N = 1 1 0 1 0 1 1
Si el error en el canal es E = G = 1 1 1 1, entonces
N’ = 1 1 0 1 1 0 0
El receptor no detecta el error de transmisión producido en este caso.
Propiedades de un polinomio generador G(x) bien elegido
Un polinomio generador G(x) de g+1 bits, convenientemente elegido, detectará:
- El 100% de los errores de 1 bit, si G(x) tiene 2 o más términos.
- El 100% de los errores de 2 bits, si G(x) no es divisible por x y no es divisor de x^n + 1.
- El 100% de los errores con número impar de bits, si G(x) es múltiplo de (x + 1).
- El 100% de las ráfagas de errores de longitud menor o igual a g.
- La práctica totalidad de las ráfagas de errores de longitud igual o mayor que g+1.
La elección de G(x) depende del tamaño del mensaje M y del nivel de protección deseado.
– Redes de Área Local Cableadas (LAN)
(Contenido pendiente de desarrollo en el documento original.)
