> For the complete documentation index, see [llms.txt](https://juan-martin-franco.gitbook.io/network-+/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://juan-martin-franco.gitbook.io/network-+/2.-modelo-osi/2.3-capa-2-capa-enlace-de-datos.md).

# 2.3 - Capa 2 (Capa Enlace de Datos)

## Capa Enlace de Datos

En la Capa 2 del Modelo OSI, se empaquetan los bits obtenidos desde la capa 1 y se colocan en PDUs llamadas <mark style="color:blue;">**Frames**</mark>, y luego se toman esos frames y se transmiten a través de la red mientras se realizan detección de errores, corrección, identificación de dispositivo únicos de red utilizando direcciones MAC (**MAC addresses**) y se proporciona control de flujo.&#x20;

### Media Access Control (MAC)

Una dirección MAC (MAC address) es una dirección de control de acceso al medio, que identifica a un dispositivo físicamente y le permite operar en una topología lógica. En la capa anterior (Capa 1), se trata con cosas físicas. En esta capa (Capa 2), tratamos con cosas a nivel lógico.&#x20;

Estas direcciones MAC son importantes para tratar con Switches y otros dispositivos de Capa 2.&#x20;

Cuando se trata de identificar Direcciones MAC, cada fabricante de Tarjetas de Red le asigna una **dirección física única de 48 bits** a cada tarjeta de red (Network Interface Card - NIC) que produce.

&#x20;

<figure><img src="https://1668154188-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FKyoEXmY0jfChHS8PdGMX%2Fuploads%2F1N8QjRB0g9GTefBhHEj5%2Fimage.png?alt=media&amp;token=e24bea28-e181-455d-b224-7a008c2c480d" alt=""><figcaption></figcaption></figure>

Como se aprecia en la imagen, la dirección MAC se compone de 48 bits representados en 12 dígitos hexadecimales. Cada número o letra representa 4 bits.

Los primeros 24 bits (las 6 primeras letras y/o números) identifican el fabricante particular que fabricó dicha tarjeta. En este ejemplo, tenemos 01:3A:1D. \
Esta mitad de la dirección MAC identifica de manera única quien fabricó la tarjeta. \
A esta porción se la conoce como <mark style="color:blue;">**OUI (Organizationally Unique Identifier - Identificador Único de Organización)**</mark>.

Los últimos 24 bits (los 6 últimos números y/o letras) identifican la máquina exacta a la que pertenece. Esto es importante para nuestra topología lógica porque podemos mirar la MAC Address y observar el flujo de datos a través de nuestras redes. En este punto, no nos interesan como los dispositivos están conectados físicamente. \
A esta porción se la conoce como <mark style="color:blue;">**UAA (Universally Administered Address - Dirección Universalmente Administrada)**</mark>.

### Logical Link Control (LLC)

El Control de Enlace Lógico (LLC) provee servicios de conexión y permite que los destinatarios reconozcan que los mensajes han llegado realmente a su destino.&#x20;

Esta es la forma mas básica de **control de flujo**. \
Esencialmente, limita la cantidad de datos que un emisor puede enviar a la vez y permite que el receptor no se vea abrumado.&#x20;

Además, **LLC nos provee de funciones básicas de control de errores** tales como permitir que el receptor informe al emisor si su trama de datos no fue recibida o si fue recibida y está corrompida, y todo esto lo realiza utilizando un checksum.&#x20;

Como todo lo que recibe es una serie de unos y ceros, el receptor suma todo eso y el último bit será par o impar. \
Si coincide, se suma todo y si es par, se asume que la trama es correcta, si se recibió un cero, lo que significa que fue par.  Si el último bit fue impar, lo que significa que es un uno, se sumó todos los números y se obtuvo un número impar, también se acepta la trama como correcta.&#x20;

Pero, si no coinciden, significa que algo salió mal y se pregunta por una retransmisión de la trama.

### ¿Cómo se sincroniza la comunicación?

La comunicación puede ser sincronizada a través de la capa 2, de acuerdo a 3 esquemas diferentes:

* <mark style="color:blue;">**Modo Isócrono**</mark>
* <mark style="color:blue;">**Modo Síncrono**</mark>
* <mark style="color:blue;">**Modo Asíncrono**</mark>

#### Modo Isócrono

En este modo, los dispositivos utilizan una fuente de reloj de referencia común, similar al modo sincrónico y crea franjas horarias para la transmisión, como lo que se realiza con la TDM (Multiplexación por división de tiempo). \
Este modo tiene menor overhead que los otros 2, porque ambos dispositivos saben cuando pueden comunicarse y por cuanto tiempo.

#### Modo Síncrono

Este modo es parecido a lo que usamos en la capa 1. \
En este modo, ambos dispositivos utilizan el mismo reloj, pero difiere del modo isócrono en que nos permite tener frames de comienzo y final y caracteres especiales de control que nos dicen cuando empezar y cuando finalizar basado en esos bits.&#x20;

#### Modo Asíncrono

Este modo permite que cada uno de los dispositivos de nuestra red referencie su propio ciclo de reloj y utilice sus propios bits de comienzo y final. De este modo, no hay control real sobre cuando los dispositivos pueden comunicarse y esta es la mayor desventaja.&#x20;

### Ejemplos de dispositivos de Capa de Enlace de Datos

Cuando hacemos referencia a dispositivos de capa 2 del Modelo OSI, tenemos cosas como <mark style="color:blue;">**Tarjetas de Red (NIC), Bridges y Switches**</mark>.\
En contraste con los Hubs que solo reciben tramas y las reenvían por todos sus puertos, los Switches son mas inteligentes. Estos últimos pueden utilizar lógica para aprender cuales puertos físicos pertenecen a cada dispositivo basado en su dirección MAC. De esta forma, pueden enviar datos a dispositivos específicos en la red.

<figure><img src="https://1668154188-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FKyoEXmY0jfChHS8PdGMX%2Fuploads%2FryO3hjF9BoHo7PXzQb1m%2Fimage.png?alt=media&amp;token=9fae11f4-4dc8-4960-9932-fd82cb8c1cdc" alt=""><figcaption></figcaption></figure>
