viernes, 4 de abril de 2014

ABUELA ARRUGADA MENSA

MODELO OSI

El modelo de Interconexión de Sistemas Abiertos (OSI, Open System Interconection) lanzado en 1984 fue el modelo de red descriptivo creado por ISO. Proporcionó a los fabricantes un conjunto de estándares que aseguraron una mayor compatibilidad e interoperabilidad entre los distintos tipos de tecnología de red producidos por las empresas a nivel mundial.

Siguiendo el esquema de este modelo se crearon numerosos protocolos que durante muchos años ocuparon el centro de la escena de las comunicaciones informáticas. El advenimiento de protocolos más flexibles, donde las capas no están tan demarcadas y la correspondencia con los niveles no es tan clara, puso a este esquema en un segundo plano. Sin embargo sigue siendo muy usado en la enseñanza como una manera de mostrar como puede estructurarse una "pila" de protocolos de comunicaciones.

El modelo en sí mismo no puede ser considerado una arquitectura, ya que no especifica el protocolo que debe ser usado en cada capa, sino que suele hablarse de modelo de referencia. Este modelo está dividido en siete niveles


  • QUE SON LOS SIGUIENTES  



Historia
Redes informáticas/Modelo OSI de ISO/Historia
A principios de la década de 1980 el desarrollo de redes fue desordenado. Se produjo un enorme crecimiento en la cantidad y el tamaño de las redes. A medida que las empresas tomaron conciencia de las ventajas de usar tecnologías de conexión, las redes se agregaban o expandían a casi la misma velocidad a la que se introducían las nuevas tecnologías de red.

Para mediados de la década de 1980, estas empresas comenzaron a sufrir las consecuencias de la rápida expansión. De la misma forma en que las personas que no hablan un mismo idioma tienen dificultades para comunicarse, las redes que utilizaban diferentes especificaciones e implementaciones tenían dificultades para intercambiar información. El mismo problema surgía con las empresas que desarrollaban tecnologías de conexiones privadas o propietarias. "Propietario" significa que una sola empresa o un pequeño grupo de empresas controlan todo uso de la tecnología. Las tecnologías de conexión que respetaban reglas propietarias en forma estricta no podían comunicarse con tecnologías que usaban reglas propietarias diferentes.

Para enfrentar el problema de incompatibilidad de redes, la Organización Internacional para la Estandarización (ISO) investigó modelos de conexión como la red de Digital Equipment Corporation (DECnet), la Arquitectura de Sistemas de Red (SNA) y TCP/IP a fin de encontrar un conjunto de reglas aplicables de forma general a todas las redes. Con base en esta investigación, la ISO desarrolló un modelo de red que ayuda a los fabricantes a crear redes que sean compatibles con otras redes.

NIVEL DE APLICACION

Provee servicios de red comunicaciones) a las aplicaciones del usuario Realiza el intercambio de “datos”

Ofrece a las aplicaciones (de usuario o no) la posibilidad de acceder a los servicios de las demás capas y define los protocolos que utilizan las aplicaciones para intercambiar datos, como correo electrónico (POP y SMTP), gestores de bases de datos y protocolos de transferencia de archivos (FTP)

Cabe aclarar que el usuario normalmente no interactúa directamente con el nivel de aplicación. Suele interactuar con programas que a su vez interactúan con el nivel de aplicación pero ocultando la complejidad subyacente. Así por ejemplo un usuario no manda una petición "HTTP/1.0 GET index.html" para conseguir una página en html, ni lee directamente el código html/xml. O cuando chateamos con el Messenger, no es necesario que codifiquemos la información y los datos del destinatario para entregarla a la capa de Presentación (capa 6) para que realice el envío del paquete.

En esta capa aparecen diferentes protocolos:


  • FTP (File Transfer Protocol - Protocolo de Transferencia de Archivos) para transferencia de archivos.
  • DNS (Domain Name Service - Servicio de Nombres de Dominio)
  • DHCP (Dynamic Host Configuration Protocol - Protocolo de Configuración Dinámica de Anfitrión)
  • HTTP (HyperText Transfer Protocol) para acceso a páginas de internet.
  • NAT (Network Address Translation - Traducción de Dirección de Red)
  • POP (Post Office Protocol) para correo electrónico.
  • SMTP (Simple Mail Transport Protocol).
  • SSH (Secure SHell)
  • TELNET para acceder a equipos remotos
  • TFTP (Trival File Transfer Protocol).


NIVEL DE PRESENTACIÓN

El objetivo de la capa de presentación es encargarse de la representación de la información, de manera que aunque distintos equipos puedan tener diferentes representaciones internas de caracteres (ASCII, Unicode, EBCDIC números (little-endian tipo Intel, big-endian tipo Motorola), sonido o imágenes, los datos lleguen de manera reconocible.

Esta capa es la primera en trabajar más el contenido de la comunicación que cómo se establece la misma. En ella se tratan aspectos tales como la semántica y la sintaxis de los datos transmitidos, ya que distintas computadoras pueden tener diferentes formas de manejarlas.

Por lo tanto, podemos resumir definiendo a esta capa como la encargada de manejar las estructuras de datos abstractas y realizar las conversiones de representación de datos necesarias para la correcta interpretación de los mismos.

Esta capa también permite cifrar los datos y comprimirlos. Actúa como traductor.


NIVEL DE SESIÓN

Es el quinto nivel del modelo OSI , que proporciona los mecanismos para controlar el diálogo entre las aplicaciones de los sistemas finales. En muchos casos, los servicios de la capa de sesión son parcialmente, o incluso, totalmente prescindibles. No obstante en algunas aplicaciones su utilización es ineludible.

La capa de sesión proporciona los siguientes servicios:

Control del Diálogo: Éste puede ser simultáneo en los dos sentidos (full-duplex) o alternado en ambos sentidos (half-duplex).

Agrupamiento: El flujo de datos se puede marcar para definir grupos de datos.

Recuperación: La capa de sesión puede proporcionar un procedimiento de puntos de comprobación, de forma que si ocurre algún tipo de fallo entre puntos de comprobación, la entidad de sesión puede retransmitir todos los datos desde el último punto de comprobación y no desde el principio.

Todas estas capacidades se podrían incorporar en las aplicaciones de la capa 7. Sin embargo ya que todas estas herramientas para el control del diálogo son ampliamente aplicables, parece lógico organizarlas en una capa separada, denominada capa de sesión.

La capa de sesión surge como una necesidad de organizar y sincronizar el diálogo y controlar el intercambio de datos.

La capa de sesión permite a los usuarios de máquinas diferentes establecer sesiones entre ellos. Una sesión permite el transporte ordinario de datos, como lo hace la capa de transporte, pero también proporciona servicios mejorados que son útiles en algunas aplicaciones. Se podría usar una sesión para que el usuario se conecte a un sistema remoto de tiempo compartido o para transferir un archivo entre dos máquinas.




NIVEL DE TRANSPORTE


a capa de transporte es el cuarto nivel del modelo OSI encargado de la transferencia libre de errores de los datos entre el emisor y el receptor, aunque no estén directamente conectados, así como de mantener el flujo de la red. Es la base de toda la jerarquía de protocolo. La tarea de esta capa es proporcionar un transporte de datos confiable y económico de la máquina de origen a la máquina destino, independientemente de la red de redes física en uno. Sin la capa transporte, el concepto total de los protocolos en capas tendría poco sentido.
Objetivo
El objetivo de la capa transporte es proporcionar un servicio eficiente, confiable y económico a sus usuarios, que normalmente son procesos de la capa aplicación. Para lograr este objetivo, la capa transporte utiliza los servicios proporcionados por la capa de red. El hardware o software de la capa transporte que se encarga del trabajo se llama entidad de transporte, la cual puede estar en el núcleo del sistema operativo, en un proceso independiente, en un paquete de biblioteca o en la tarjeta de red.
Servicios
Hay dos tipos de servicio en la capa transporte, orientado y no orientado a la conexión. En el servicio orientado a la conexión consta de tres partes: establecimiento, transferencia de datos, y liberación. En el servicio no orientado a la conexión se tratan los paquetes de forma individual.
Es la primera capa que lleva a cabo la comunicaciòn extremo a extremo, y esta condición ya se mantendrá en las capas superiores.
Para permitir que los usuarios accedan al servicio de transporte, la capa de transporte debe proporcionar algunas operaciones a los programas de aplicación, es decir, una interfaz del servicio de transporte. Cada servicio de transporte tiene su propia interfaz. Con el propósito de ver los aspectos básicos, en esta sección examinaremos primero un servicio de transporte sencillo y su interfaz.
El servicio de transporte es parecido al servicio en red, pero hay algunas diferencias importantes. La principal, es que, el propósito del servicio de red es modelar el servicio ofrecido por las redes reales, con todos sus problemas. Las redes reales pueden perder paquetes, por lo que generalmente el servicio no es confiable. En cambio, el servicio de transporte(orientado a la conexión) si es confiable. Claro que las redes reales no están libres de errores, pero ése es precisamente el propósito de la capa de transporte: ofrecer un servicio confiable en una red no confiable.
Otra diferencia entre la capa transporte y la de red es a quien van dirigidos sus servicios. El servicio de red lo usan únicamente las entidades de transporte. Pocos usuarios escriben sus entidades de transporte y pocos usuarios o programas llegan a ver los aspectos internos del servicio de red. En cambio, muchos programas ven primitivas de transporte. En consecuencia el servicio de transporte debe ser adecuado y fácil de usar.
Primitivas
Las primitivas de un transporte sencillo serían:
- LISTEN: Se bloquea hasta que algún proceso intenta el contacto.
- CONNECT: Intenta activamente establecer una conexión.
- SEND: Envia información.
- RECEIVE: Se bloque hasta que llegue una TPDU de DATOS.
- DISCONNECT: Este lado quiere liberar la conexión.
Y con estas primitivas podemos hacer un esquema sencillo de manejo de conexiones. Las transiciones escritas en cursiva son causadas por llegadas de paquetes. Las líneas continuas muestran la secuencia de estados del cliente y las líneas punteadas muestran la secuencia del servidor.
Implementación
El servicio de transporte se implementa mediante un protocolo de transporte entre dos entidades de transporte. En ciertos aspectos, los protocolos de transporte se parecen a los protocolos de red. Ambos se encargan del control de errores, la secuenciación y el control del flujo.
Pero también existen diferencias importantes entre ambas, como los entornos en que operan, la capa transporte necesita el direccionamiento explícito de los destinos, mientras que la capa de red no, otra diferencia es la cantidad de datos, mucho mayor en la capa de transporte que en la de enlace de datos.
Cuando un proceso desea establecer una conexión con un proceso de aplicación remoto, debe especificar a cuál se conectará. (¿a quién mandó el mensaje?) El método que normalmente se emplea es definir direcciones de transporte en las que los procesos pueden estar a la escucha de solicitudes de conexión. En Internet, estos puntos terminales se denominan puertos, pero usaremos el término genérico de TSAP (Punto de Acceso al Servicio de Transporte). Los puntos terminales análogos de la capa de red se llaman NSAP (Punto de Acceso al Servicio de Red). Las direcciones IP son ejemplos de NSAPs.
Establecimiento de una conexión
El establecimiento de una conexión parece fácil, pero en realidad es sorprendentemente difícil. A primera vista, parecería que es suficiente con mandar una TPDU (Unidad de Datos del Protocolo de Transporte) con la petición de conexión y esperar a que el otro acepte la conexión. El problema viene cuando la red puede perder, almacenar, o duplicar paquetes. El principal problema es la existencia de duplicados retrasados. Esto puede solucionarse de varias maneras (ninguna es muy satisfactoria). Una es utilizar direcciones de transporte desechables. En este enfoque cada vez que necesitemos una dirección la creamos. Al liberarse la conexión descartamos la dirección y no se vuelve a utilizar. O también asignar una secuencia dentro de los datos transmitidos, pero estos plantean los problemas de que si se pierde la conexión perdemos el orden del identificador y ya no funciona. Pero la solución seria más fácil si los paquetes viejos se eliminaran de la subred cada cierto tiempo de vida. Para ello podemos utilizar las siguientes técnicas: Un diseño de subred Restringido. Colocar un contador de saltos en cada paquete. Marcar el tiempo de cada paquete. Pero en la práctica no vale solo con hacer esto sino que tenemos que garantizar que todas las confirmaciones de los paquetes también se eliminan.
Liberación de una conexión
La liberación de una conexión es más fácil que su establecimiento. No obstante, hay más escollos de los que uno podría imaginar. Hay dos estilos de terminación de una conexión: liberación asimétrica y liberación simétrica. La liberación asimétrica es la manera en que funciona el mecanismo telefónico: cuando una parte cuelga, se interrumpe la conexión. La liberación simétrica trata la conexión como dos conexiones unidireccionales distintas, y requiere que cada una se libere por separado. La liberación asimétrica es abrupta y puede resultar en la perdida de datos. Por lo que es obvio que se requiere un protocolo de liberación más refinado para evitar la perdida de datos. Una posibilidad es usar la liberación simétrica, en la que cada dirección se libera independientemente de la otra. Aquí, un host puede continuar recibiendo datos aun tras haber enviado una TPDU de desconexión.
La liberación simétrica es ideal cuando un proceso tiene una cantidad fija de datos por enviar y sabe con certidumbre cuándo los ha enviado. En otras situaciones, la determinación de si se ha efectuado o no todo el trabajo y se debe terminarse o no la conexión no es tan obvia. Podríamos pensar en un protocolo en el que el host 1 diga:”Ya termine, ¿Terminaste también?”. Si el host 2 responde “Ya termine también. Adiós”, la conexión puede liberarse con seguridad.
Pero no es tan fiable por el problema de que siempre tendremos que esperar la confirmación de los mensajes recibidos y si esta confirmación no llega no libera la conexión y después puede que necesite la confirmación de que llego la confirmación y entraríamos en un bucle del que no podemos salir.
Podemos hacer que al host 1 si no le llega la confirmación después de N intentos (es que quiere la desconexión), se libere. Esto produce una conexión semiabierta en la que el host 1 está desconectado pero el host 2 no como no le llega la confirmación no se desconecta nunca. Para solucionar esto creamos una regla por la cual si al host 2 no le llega ninguna TPDU durante cierta cantidad de segundos, se libera automáticamente.
Manejo de una conexión
Ya examinamos la conexión y la desconexión, veamos la manera en que se manejan las conexiones mientras están en uso. Uno de los aspectos clave es el control de flujo. Necesitamos un esquema para evitar que un emisor rápido desborde a un receptor lento. La diferencia principal es que un enrutador por lo regular tiene relativamente pocas líneas, y un host puede tener numerosas conexiones. Esta diferencia hace poco practico emplear la implementación que se hace en la capa red.
En esta capa lo que se hace es, si el servicio de red no es confiable, el emisor debe almacenar en un buffer todas las TPDUs enviadas, igual que en la capa enlace de datos. Sin embargo, con un servicio de red confiable son posibles otros arreglos. En particular, si el emisor sabe que el receptor siempre tiene espacio de buffer, no necesita tener copias de las TPDUs que envía. Sin embargo, si el receptor no garantiza que se aceptará cada TPDU que llegue, el emisor tendrá que usar buffers de todas maneras. En el último caso, el emisor no puede confiar en la confirmación de recepción de la capa red porque esto sólo significa que ha llegado la TPDU, no que ha sido aceptada.
Los Buffers pueden ser de tres tipos, y usaremos cada uno de ellos cuando más nos convenga.
El equilibrio óptimo entre el almacenamiento del buffer en el origen y en el destino depende del tipo de trafico transportado por la conexión.
Multiplexión de conversaciones
La multiplexión de varias conversaciones en conexiones, circuitos virtuales o enlaces físicos desempeña un papel importante en diferentes capas de la arquitectura de red. En la capa de transporte puede surgir la necesidad de multiplexión por varias razones. Por ejemplo, si en un host sólo se dispone de una dirección de red, todas la conexiones de transporte de esa maquina tendrán que utilizarla. Cuando llega una TPDU, se necesita algún mecanismo para saber a cuál proceso asignarla. Esta situación se conoce como multiplexión hacia arriba.
La multiplexión también puede ser útil en la capa transporte para la utilización de circuitos virtuales, que dan más ancho de banda cuando se reasigna a cada circuito una tasa máxima de datos. La solución es abrir múltiples conexiones de red y distribuir el tráfico entre ellas. Esto se denomina multiplexión hacia abajo.
Recuperación ante caídas
Si los hosts y los enrutadores están sujetos a caídas, la recuperación es fundamental. Si la entidad de transporte está por entero dentro de los hosts, la recuperación de caídas de red y de enrutadores es sencilla. Si la capa de red proporciona servicio de datagramas, las entidades de transporte esperan pérdida de algunas TPDUs todo el tiempo, y saben cómo manejarla. Si la capa de red proporciona servicio orientado a la conexión, entonces la pérdida de un circuito virtual se maneja estableciendo otro nuevo y sondeando la entidad de transporte remota para saber cuales TPDUs ha recibido y cuales no.
Un problema más complicado es la manera de recuperarse de caídas del host. Al reactivarse, sus tablas están en el estado inicial y no sabe con precisión donde estaba.
En un intento por recuperar su estado previo, el servidor podría enviar una TPDU de difusión a todos los demás host, anunciando que se acaba de caer y solicitando a todos sus clientes que le informen el estado de todas la conexiones abiertas.
Internet tiene dos protocolos principales en la capa de transporte, uno orientado a la conexión y otro no orientado a la conexión. El protocolo no orientado a la conexión es el UDP y el orientado es el TCP. El conjunto de protocolos de Internet soporta un protocolo de transporte no orientado a la conexión UDP (protocolo de datagramas de usuario). Este protocolo proporciona una forma para que las aplicaciones envíen datagramas IP encapsulados sin tener una conexión.
TCP (protocolo de control de transmisión) se diseñó específicamente para proporcionar un flujo de bytes confiable de extremo a extremo a través de una interred no confiable. Una interred difiere de una sola red debido a que diversas partes podrían tener diferentes topologías, anchos de banda, retardos, tamaños de paquete… TCP tiene un diseño que se adapta de manera dinámica a las propiedades de la interred y que se sobrepone a muchos tipos de situaciones.




NIVEL DE RED


La capa de red, según la normalización OSI, es una capa que proporciona conectividad y selección de ruta entre dos sistemas de nodos que pueden estar ubicados en redes geográficamente distintas. Es el tercer nivel del modelo OSI y su misión es conseguir que los datos lleguen desde el origen al destino aunque no tengan conexión directa. Ofrece servicios al nivel superior (nivel de transporte) y se apoya en el nivel de enlace, es decir, utiliza sus funciones.

Funciones y mecanismos
Para la consecución de su tarea, puede asignar direcciones de red únicas, interconectar subredes distintas, encaminar paquetes y utilizar un control de congestión. Hay dos formas en las que el nivel de red puede funcionar internamente, pero independientemente de que la red funcione internamente con datagramas o con circuitos virtuales puede dar hacia el nivel de transporte un servicio orientado a conexión:

Datagramas: Cada paquete se encamina independientemente, sin que el origen y el destino tengan que pasar por un establecimiento de comunicación previo.
Circuitos virtuales: En una red de circuitos virtuales dos equipos que quieran comunicarse tienen que empezar por establecer una conexión. Durante este establecimiento de conexión, todos los routers que hayan por el camino elegido reservarán recursos para ese circuito virtual específico.
Hay dos tipos de servicio:

Servicios Orientados: Sólo el primer paquete de cada mensaje tiene que llevar la dirección destino. Con este paquete se establece la ruta que deberán seguir todos los paquetes pertenecientes a esta conexión. Cuando llega un paquete que no es el primero se identifica a que conexión pertenece y se envía por el enlace de salida adecuado, según la información que se generó con el primer paquete y que permanece almacenada en cada conmutador o nodo.
Servicios no orientados: Cada paquete debe llevar la dirección destino, y con cada uno, los nodos de la red deciden el camino que se debe seguir. Existen muchas técnicas para realizar esta decisión, como por ejemplo comparar el retardo que sufriría en ese momento el paquete que se pretende transmitir según el enlace que se escoja.
Técnicas de encaminamiento
Las técnicas de encaminamiento suelen basarse en el estado de la red, que es dinámico, por lo que las decisiones tomadas respecto a los paquetes de la misma conexión pueden variar según el instante de manera que éstos pueden seguir distintas rutas. El problema, sin embargo, consiste en encontrar un camino óptimo entre un origen y un destino. La bondad de este camino puede tener diferentes criterios: velocidad, retardo, seguridad, regularidad, distancia, longitud media de las colas, costos de comunicación, etc.

Los equipos encargados de esta labor se denominan encaminadores (router en inglés), aunque también realizan labores de encaminamiento los conmutadores (switch en inglés) "multicapa" o "de nivel 3", si bien estos últimos realizan también labores de nivel de enlace. Cuando en una red un nodo recibe más tráfico del que puede cursar se puede dar una congestión. El problema es que una vez que se da congestión en un nodo el problema tiende a extenderse por el resto de la red. Por ello hay técnicas de prevención y control que se pueden y deben aplicar en el nivel de red.

Algunos protocolos de la capa de red son:

IP (IPv4, IPv6, IPsec)
OSPF
IS-IS
BGP
ARP, RARP
RIP
ICMP, ICMPv6
IGMP
DHCP



El nivel de enlace de datos, como el resto de los niveles intermedios, funciona en dos sentidos, vinculando el nivel de red con el nivel físico. La capa de enlace de datos es responsable de la transferencia fiable de información a través de un circuito de transmisión de datos.
El nivel de enlace (del inglés data link level) es el segundo nivel del modelo OSI. Recibe peticiones del nivel de red y utiliza los servicios del nivel físico.
Objetivo
El objetivo del nivel de enlace es conseguir que la información fluya, libre de errores, entre dos máquinas que estén conectadas directamente (servicio orientado a conexión).
Para lograr este objetivo tiene que montar bloques de información (llamados tramas en este nivel), dotarles de una dirección de nivel de enlace, gestionar la detección o corrección de errores, y ocuparse del control de flujo entre equipos (para evitar que un equipo más rápido desborde a uno más lento).
Cuando el medio de comunicación está compartido entre más de dos equipos es necesario arbitrar el uso del mismo. Esta tarea se realiza en el subnivel de acceso al medio.
Ubicación dentro de las normas IEEE 802
Dentro del grupo de normas IEEE 802, el subnivel de enlace lógico se recoge en la norma IEEE 802.2 y es común para todos los demás tipos de redes (Ethernet o IEEE 802.3, IEEE 802.11 o Wi-Fi, IEEE 802.16 o WiMAX, etc.); todas ellas especifican un subnivel de acceso al medio así como un nivel físico distintos.
En la práctica el subnivel de acceso al medio suele formar parte de la propia tarjeta de comunicaciones, mientras que el subnivel de enlace lógico estaría en el programa adaptador de la tarjeta (driver en inglés). En la capa de enlace, los datos se organizan en unidades llamadas tramas. Cada trama tiene una cabecera que incluye una dirección e información de control y una cola que se usa para la detección de errores. Otro tipo de protocolos de nivel de enlace serían PPP (Point to point protocol o protocolo punto a punto), HDLC (High level data link control o protocolo de enlace de alto nivel), por citar dos.
La cabecera de una trama de red de área local (LAN) contiene las direcciones físicas del origen y el destino de la LAN. La cabecera de una trama que se transmite por una red de área extensa (WAN) contiene un identificador de circuito en su campo de dirección.
Recuerde que un enlace es una red de área local, una línea punto a punto o alguna otra facilidad de área extensa por la que se pueden comunicar los sistemas mediante un protocolo de la capa de enlace de datos.
Funciones de la capa de enlace
La capa de enlace de datos es responsable de la transferencia fiable de información a través de un Circuito eléctrico de transmisión de datos. La transmisión de datos lo realiza mediante tramas que son las unidades de información con sentido lógico para el intercambio de datos en la capa de enlace. También hay que tener en cuenta que en el modelo TCP/IP se corresponde a la segunda capa
Sus principales funciones son:
  1. Iniciación, terminación e identificación.
  2. Segmentación y bloqueo.
  3. Sincronización de octeto y carácter.
  4. Delimitación de trama y transparencia.
  5. Control de errores.
  6. Control de flujo.
  7. Recuperación de fallos.
  8. Gestión y coordinación de la comunicación.
La función de iniciación comprende los procesos necesarios para activar el enlace e implica el intercambio de tramas de control con el fin de establecer la disponibilidad de las estaciones para transmitir y recibir información.
Las funciones de terminación son de liberar los recursos ocupados hasta la recepción/envío de la última trama. También de usar tramas de control. La identificación es para saber a que terminal se debe de enviar una trama o para conocer quien envía la trama. Se lleva a cabo mediante la dirección del nivel de enlace.
Segmentación
La segmentación surge por la longitud de las tramas ya que si es muy extensa, se debe de realizar tramas más pequeñas con la información de esa trama excesivamente larga.
Si estas tramas son excesivamente cortas, se ha de implementar unas técnicas de bloque que mejoran la eficiencia y que consiste en concatenar varios mensajes cortos de nivel superior en una única trama de nivel de enlace más larga.
En las transferencias de información en el nivel de enlace es necesario identificar los bits y saber que posición les corresponde en cada carácter u octeto dentro de una serie de bits recibidos.
Función de sincronización
Esta función de sincronización comprende los procesos necesarios para adquirir, mantener y recuperar la sincronización de carácter u octeto. Es decir, poner en fase los mecanismos de codificación del emisor con los mecanismos de decodificación del receptor.
La capa de enlace debe ocuparse de la delimitación y sincronización de la trama. Para la sincronización puede usar 3 métodos:
  • El primero de ellos es "Principio y fin" (carácteres especificos para identificar el principio o el fin de cada trama).
  • También puede usar "Principio y cuenta" (Utiliza un carácter para indicar comienzo y seguido por un contador que indica su longitud).
  • Por último puede usar el "Guión" (se emplea una agrupación especifica de bits para identificar el principio y fin mediante banderas/flags).
La transparencia se realiza mediante la inserción de bits. Consta de ir contando los unos consecutivos y cuando se encuentra con 5 unos seguidos y consecutivos introduce el bit 0 después del quinto uno. Ejemplo: Las banderas/flag suelen ser 01111110, y al aplicar la transparencia pasa a ser 011111010.
Es opcional en esta capa, la encargada de realizar esta funcion es la capa de transporte , en una WAN es muy problable que la verificacion, la realiza la capa de enlace
Identificación de las tramas y detección de errores
Para la Identificación de tramas puede usar distintas técnicas como:
  • Contador de caracteres
  • Caracteres de inicio y final con caracteres de relleno
  • Secuencia de bits indicadora de inicio y final, con bits de relleno
El control de flujo es necesario para no 'agobiar' al receptor. Se realiza normalmente a nivel de transporte, también a veces a nivel de enlace. Utiliza mecanismos de retroalimentación. Suele ir unido a la corrección de errores y no debe limitar la eficiencia del canal.
Los métodos de control de errores son básicamente 2:
  • FEC o corrección de errores por anticipado y no tiene control de flujo.
  • ARQ: Posee control de flujo mediante parada y espera, o/y ventana deslizante.
Las posibles implementaciones son:
  • Parada y espera simple: Emisor envía trama y espera una señal del receptor para enviar la siguiente o la que acaba de enviar en caso de error.
  • Envío continuo y rechazo simple: Emisor envía continuamente tramas y el receptor las va validando. Si encuentra una errónea, elimina todas las posteriores y pide al emisor que envíe a partir de la trama errónea.
  • Envío continuo y rechazo selectivo: transmisión continua salvo que sólo retransmite la trama defectuosa.
La detección de errores la realiza mediante diversos tipos de códigos del que hay que resaltar:
  • CRC (control de redundancia cíclica)
  • Simple paridad
  • Paridad cruzada (Paridad horizontal y vertical)
  • Suma de verificación
La corrección de errores están basados en Código Hamming, por repetición, verificación de paridad cruzada, Reed-Solomon y de goyle.
También cabe destacar los protocolos HDLC que es un control de enlace de datos a alto nivel, orientado a bit y obedece a una ARQ de ventana deslizante o continuo. También existen protocolos orientados a carácter. El control de flujo es necesario para no 'agobiar' al receptor. Se realiza normalmente a nivel de transporte, también a veces a nivel de enlace. Utiliza mecanismos de retroalimentación. Suele ir unido a la corrección de errores y no debe limitar la eficiencia del canal. El control de flujo conlleva dos acciones importantísimas que son la detección de errores y la corrección de errores.
La detección de errores se utiliza para detectar errores a la hora de enviar tramas al receptor e intentar solucionarlos. Se realiza mediante diversos tipos de códigos del que hay que resaltar el CRC (códigos de redundancia cíclica), simple paridad (puede ser par, números de 1´s par, o impar) paridad cruzada (Paridad horizontal y vertical) y Suma de verificación
La corrección de errores surge a partir de la detección para corregir errores detectados y necesitan añadir a la información útil un número de bits redundantes bastante superior al necesario para detectar y retransmitir. Sus técnicas son variadas. El Código Hamming, Repetición, que cada bit se repite 3 veces y en caso de fallo se toma el bit que más se repite; También puede hacerse mediante verificación de paridad cruzada, Reed-Solomon y de goyle.
También cabe destacar los protocolos HDLC que es un control de enlace de datos a alto nivel, orientado a bit y obedece a una ARQ de ventana deslizante o continuo. También existen protocolos orientados a carácter.
Recuperación ante fallos
Gestión y coordinación.
Se refiere a los procedimientos para detectar situaciones y recuperar al nivel de situaciones anómalas como la ausencia de respuesta, recepción de tramas inválidas, etc. Las situaciones más típicas son la pérdida de tramas, aparición de tramas duplicadas y llegada de tramas fuera de secuencia.
Si no se tratasen correctamente estos eventos se perderá información y se aceptarán datos erróneos como si fuesen correctos. Generalmente se suelen utilizar contadores para limitar el número de errores o reintentos de los procesos y procedimientos. También se pueden usar temporizadores para establecer plazos de espera (timeout) de los sucesos. La gestión atiende a 2 tipos:
  • El primero de ellos es un sistema centralizado donde existe una máquina maestra y varias esclavas. Estas conexiones se pueden realizar punto a punto o multipunto.
  • El segundo de ellos es el distribuido, donde no existe máquina maestra y todas compiten por el control del sistema de comunicación.
La coordinación se puede realizar mediante selección o contienda:
  • La selección se puede implementar mediante sondeo/selección, donde el maestro recoge un mensaje de una secundaria y se la entrega a quien seleccione. También es posible asignando un testigo a una máquina que es la que puede emitir mensajes/tramas. Son típicas las configuraciones Token Ring y Token Bus.
  • La contienda se basa en que cada ordenador emite su trama/mensaje cuando le apetece. Todos los componentes de la red son tanto emisores como receptores. Son típicos los sistemas ALOHA y CSMA/CD. Hay que tener cuidado con las colisiones.




NIVEL FÍSICO



Está formado por todos los componentes de hardware involucrados en la comunicación, así como también las señales electromagnéticas u opticas que circulan a través de ellos, las cuales pueden ser medidas utilizando distintos instrumentos (tester, osciloscopio, etc.).
Entre esos componentes podemos mencionar placas adaptadoras, cables y conectores, hubs, switches, routers, modems, líneas de fibra óptica, antenas, etc.
Las señales electromagnéticas pueden ser ondas eléctricas de distinta forma (senoidal, cuadrada), ondas de radio, microondas, ondas luminosas, etc. Estas señales se modulan en amplitud o frecuencia para representar unos y ceros. Estas señales se manejan como niveles eléctricos, cuando el voltaje tiene un valor n la señal es 1 y si está a 0 volt la señal es 0.
Sin embargo, el medio físico es totalmente ajeno a los datos que se transmiten a través de él, y sólo conecta físicamente dos puntos entre los cuales circula la señal, garantizando únicamente que ésta llegue a su destino.
Las funciones y servicios realizadas por esta capa son:
  • Envío bit a bit entre nodos[1]
  • Proporcionar un interfaz estandarizado para los medios de transmisión físicos, incluyendo:
  • Especificaciones mecánicas de los conector eléctrico y cables, por ejemplo longitud máxima del cable
  • Especificación eléctrica de la línea de transmisión, nivel de señal e impedancia
  • Interfaz radio, incluyendo el espectro electromagnético, asignación de frecuencia y especificación de la potencia de señal, ancho de banda analógico, etc.
  • Especificaciones para IR (radiación infrarroja) sobre fibra óptica o una conexión de comunicación inálambrica mediante IR
  • Modulación
  • Codificación de línea
  • Sincronización de bits en comunicación serie síncrona
  • Delimitación de inicio y final, y control de flujo en comunicación serie asíncrona
  • Multiplexación de Conmutación de circuitos
  • Detección de portadora y CSMA/CD|detección de colisión utilizada por algunos protocolos de acceso múltiple del nivel 2
  • Ecualizador, filtrado, secuencias de prueba, forma de onda y otros procesados de señales de las señales física.