Está en la página 1de 22

POSTGRADO A DISTANCIA: REDES DE COMUNICACIN DE DATOS

MDULO 3 LA CAPA DE ENLACE OBJETIVOS Describir los protocolos de enmarcado, control de flujo, control de deteccin y correccin de errores. Describir los protocolos elementales de enlace de datos. Explicar la Subcapa de Acceso al Medio. Describir los Protocolos de acceso mltiple. SUMARIO OBJETIVOS..................................................................................................................................... 1 SUMARIO ........................................................................................................................................ 1 INTRODUCCIN ............................................................................................................................. 1 3.1 CONCEPTOS BSICOS .................................................................................................. 2 3.1.1 Tramas ..................................................................................................................... 2 3.2 FUNCIONES DE LA CAPA DE ENLACE ......................................................................... 3 3.2.1 Control de errores ..................................................................................................... 3 3.2.2 Control de flujo.......................................................................................................... 4 3.3 CDIGOS DE TRATAMIENTO DE ERRORES: ............................................................... 4 3.4 PROTOCOLOS ELEMENTALES DE CAPA DE ENLACE ................................................ 7 3.4.1 Caractersticas de los protocolos .............................................................................. 8 3.5 PROTOCOLO GENERALIZADO ...................................................................................... 9 3.5.1 Caractersticas .......................................................................................................... 9 3.5.2 Funciones ............................................................................................................... 11 3.6 EJEMPLOS DE PROTOCOLOS DE ENLACE DE DATOS ............................................ 17 3.6.1 HDLC (High-level data link control) ......................................................................... 17 3.7 SUBCAPA DE ACCESO AL MEDIO............................................................................... 20 3.7.1 Protocolos de acceso mltiple: ALOHA .................................................................. 20 ENLACES DE INTERS ................................................................................................................ 22

INTRODUCCIN La capa de enlace, que se sita inmediatamente encima de la capa fsica, se ocupa de suministrar un transporte de bits fiable a la capa de red. La capa de enlace slo se ocupa de equipos directamente conectados, sin tener conocimiento o conciencia de la red en su conjunto. Esto no quiere decir que fsicamente no haya ningn dispositivo en el cable que conecta los dos equipos; de hecho en la mayora de los casos habr equipos de transmisin de datos en el camino que se ocuparn de amplificar y regenerar la seal, o incluso de hacer con ella otros procesos ms complejos; por ejemplo, una lnea E3 que interconecta dos computadores y que transcurre por un sistema SDH atravesar tpicamente una serie de multiplexores, repetidores y probablemente conmutadores SDH; sin embargo desde el punto de vista de esos dos computadores todo ser equivalente a una conexin E3 tradicional (PDH) Una caracterstica importante de la capa de enlace es que los bits han de llegar a su destino en el mismo orden en que han salido; En algunos casos puede haber errores o prdida de bits, pero nunca debe producirse un reordenamiento en el camino.

AREA DE TRANSFERENCIA DE CONOCIMIENTOS

1 de 22

ARQUITECTURA DE REDES

POSTGRADO A DISTANCIA: REDES DE COMUNICACIN DE DATOS

DESARROLLO DEL MDULO 3.1 3.1.1 CONCEPTOS BSICOS Tramas

La Fig. 3.1 muestra en forma grfica el modelo de referencia OSI; en este mdulo se analizaran las principales caractersticas y funciones de la capa de enlace de este modelo. En la capa fsica el envo de informacin se hace en forma de bits sueltos; la capa de red acta de manera distinta: construye con los bits paquetes discretos denominados tramas (frames) que son los que enva por la lnea. Segn el tipo de red la trama puede oscilar entre unos pocos y miles de bytes. La utilizacin de tramas permite simplificar el proceso de deteccin y correccin de errores. Una buena parte de las tareas de la capa de enlace tiene que ver con la construccin e identificacin de las tramas. Para identificar el principio y final de una trama la capa de enlace puede usar varias estrategias; las ms comunes son: Contador de caracteres. Caracteres de inicio y final con caracteres de relleno. Bits indicadores de inicio y final, con bits de relleno. Violaciones de cdigo en el mbito fsico.

Fig. 3.1 Modelo de Capa OSI

En el primer mtodo se utiliza un campo en la cabecera de la trama para indicar el nmero de caracteres de sta. Parece lo ms sencillo e intuitivo, pero tiene un serio problema: si un error afecta precisamente a la parte de la trama que indica la longitud, o si por un error en la lnea se envan bits de ms o de menos, todas las tramas posteriores sern mal interpretadas. El segundo mtodo utiliza una secuencia especial de caracteres para marcar el inicio y final de cada trama, normalmente los caracteres ASCII DLE STX para el inicio y DLE ETX para el final
AREA DE TRANSFERENCIA DE CONOCIMIENTOS

2 de 22

ARQUITECTURA DE REDES

POSTGRADO A DISTANCIA: REDES DE COMUNICACIN DE DATOS

(DLE es Data Link Escape, STX es Start of Text y ETX End of Text). De esta forma si ocurre un error o incidente grave el receptor slo tiene que esperar a la siguiente secuencia DLE STX o DLE ETX para saber en qu punto se encuentra. Cuando se usa este sistema para transmitir ficheros binarios es posible que por puro azar aparezcan en el fichero secuencias DLE STX o DLE ETX, lo cual provocara la interpretacin incorrecta de un principio o final de trama por parte del receptor. Para evitar esto se utiliza una tcnica conocida como relleno de caracteres. El emisor, cuando ve que ha de transmitir un carcter DLE proveniente de la capa de red, intercala en la trama otro carcter DLE; el receptor, cuando recibe dos DLE seguidos, ya sabe que lo que ha de hacer es quitar un DLE y pasar el otro a la capa de red. El principal problema que tiene el uso de DLE STX y DLE ETX es su dependencia del cdigo de caracteres ASCII. Este mtodo no resulta adecuado para transmitir otros cdigos, especialmente cuando la longitud de carcter no es de 8 bits. Tampoco es posible enviar con este sistema tramas cuyo tamao no sea mltiplo de ocho bits. Para evitar estos problemas se ha diseado, un tercer mtodo que podramos considerar una generalizacin del anterior, consistente en utilizar una determinada secuencia de bits para indicar el inicio de una trama. Generalmente se utiliza para este fin la secuencia de bits 01111110, que se conoce como byte indicador (flag byte) El receptor est permanentemente analizando en la trama que recibe la presencia de un flag byte y en cuanto lo detecta sabe que ha ocurrido un inicio (o final) de trama. Aunque el flag byte tiene ocho bits el receptor no realiza el anlisis byte a byte sino bit a bit, es decir la secuencia 01111110 podra suceder a l azar entre dos bytes y el receptor la interpretara como flag byte; Esto permite el envo de tramas cuya longitud no sea mltiplo de ocho. Quedara por resolver el problema de que los datos a transmitir contengan en s mismos la secuencia 01111110; para evitar esto se utiliza la tcnica conocida como relleno de bits o insercin de bit cero. Consiste en que el emisor, en cuanto detecta que el flujo de bits contiene cinco bits contiguos con valor 1, inserta automticamente un bit con valor 0. De esta forma la secuencia 01111110 no puede aparecer nunca como parte de los datos a transmitir. El receptor por su parte realiza la funcin inversa: analiza el flujo de bits entrante y en cuanto detecta un 0 despus de cinco unos contiguos lo suprime en la reconstruccin de la trama recibida. De esta forma si las cosas van mal y el receptor pierde nocin de dnde se encuentra, bastar con que se ponga a la escucha de la secuencia 01111110. El relleno de bits se realiza justo antes de enviar la trama y despus de haber calculado el CRC. El cuarto mtodo de identificacin de tramas se basa en la redundancia caracterstica de algunas redes, que no utilizan al mximo el medio de transmisin. Por ejemplo, la red Ethernet es una red digital que transmite a 10Mbps por un medio digital que funciona a 20MHz, por lo que slo la mitad de los posibles valores se consideran legales; el uso de valores ilegales est permitido por ejemplo para marcar el inicio y final de las tramas. 3.2 3.2.1 FUNCIONES DE LA CAPA DE ENLACE Control de errores

Por la naturaleza fsica del medio de transmisin utilizado en redes de computadores este introduce errores. La tasa de errores es funcin de mltiples factores, pero principalmente del medio de transmisin utilizado. La fibra ptica y las redes locales suelen tener las tasas ms bajas. Cuando la tasa de errores es apreciable es misin de la capa de enlace en el receptor detectarlos y si es posible corregirlos, o de lo contrario solicitar la retransmisin. Los mecanismos de control de errores requieren que el receptor pueda informar al emisor de la situacin.
AREA DE TRANSFERENCIA DE CONOCIMIENTOS

3 de 22

ARQUITECTURA DE REDES

POSTGRADO A DISTANCIA: REDES DE COMUNICACIN DE DATOS

En el caso ms simple el emisor podra solicitar la confirmacin de cada trama, antes de enviar la siguiente. En este caso si por un fallo momentneo de la lnea una trama se perdiera por completo el receptor no se enterara (pues l no ha detectado ningn problema) y el emisor quedara esperando eternamente la confirmacin. Para evitar este problema se suele establecer un tiempo mximo (timer) en el que el receptor deber reaccionar, adoptando el emisor medidas en caso contrario (por ejemplo, reenviar la trama); la eleccin del timer adecuado a cada circunstancia es muy importante: si se elige muy corto se producirn retransmisiones innecesarias, y si se elige muy largo se perder mucho tiempo (y por tanto mucha eficiencia del canal) esperando confirmaciones inexistentes. En el caso de reenviar tramas por expiracin del timer puede suceder que el receptor reciba correctamente la misma trama dos veces; en este caso deben habilitarse los mecanismos necesarios para asegurar que no se le pasar la trama duplicada a la capa de red. 3.2.2 Control de flujo

Cuando dos computadores se comunican generalmente han de adoptarse medidas para asegurar que lo hacen al mismo ritmo. Si la lnea entre ellos es de baja velocidad probablemente el factor limitante ser la conexin, pero si es un canal rpido (por ejemplo, una red local) a menudo la velocidad de transmisin efectiva vendr marcada por el ms lento (o el ms cargado) de los dos computadores. Es preciso habilitar mecanismos que garanticen que el computador rpido no abrumar al lento hasta el punto de que se pierdan tramas. Respetando esta restriccin los computadores deben intentar comunicar a la mxima velocidad que permita el canal fsico. El mecanismo que se ocupa de controlar el ritmo de la transmisin para asegurar que sta sea soportable por ambas partes se denomina control de flujo. Generalmente se implementa mediante procedimientos que permitan al receptor informar al emisor de su situacin. 3.3 CDIGOS DE TRATAMIENTO DE ERRORES:

Los errores son relativamente normales en la transmisin de datos sobre ciertos medios. Para poder detectar si la trama recibida es errnea es preciso que la entidad que crea la trama incluya cierta cantidad de informacin redundante; segn la cantidad de redundancia el error podr ser simplemente detectado en segunda instancia detectado y corregido. La disciplina que estudia los errores de transmisin desde el punto de vista matemtico es la teora de la codificacin. En 1950 R. W. Hamming public un artculo donde establecan las bases de los cdigos de deteccin y correccin de errores. Se vern ahora los aspectos fundamentales de este planteamiento. La trama que se transmite de un computador a otro est formada por m bits de datos y r bits redundantes, de comprobacin. La trama tiene pues una longitud n = m + r, y forma lo que en teora de la codificacin se denomina una palabra codificada o codeword de n bits. Dadas dos codewords cualesquiera, por ejemplo 10001001 y 10110001 es fcil determinar en cuntos bits difieren aplicando la operacin OR exclusivo entre ambas y contando el nmero de bits a 1 del resultado; por ejemplo, en nuestro caso difieren en 3 bits. Este valor, el nmero de posiciones de bit en que dos codewords difieren, se denomina distancia de Hamming. Si dos codewords estn separadas por una distancia d sern necesarias d conversiones de un bit (por ejemplo d errores de un bit) para transformar una en la otra. Para detectar d errores (es decir, d bits errneos en la misma trama) es preciso que la distancia
AREA DE TRANSFERENCIA DE CONOCIMIENTOS

4 de 22

ARQUITECTURA DE REDES

POSTGRADO A DISTANCIA: REDES DE COMUNICACIN DE DATOS

sea como mnimo de d + 1 ; de esa manera, la codeword errnea no coincidir con ninguna otra codeword vlida, con lo que el receptor puede detectar la anomala. Si se quiere un cdigo capaz de corregir d errores es preciso que la distancia Hamming sea como mnimo 2d + 1, ya que entonces la codeword errnea recibida sigue estando ms cerca de la codeword original que de cualquier otra. As por ejemplo, si la distancia Hamming del cdigo utilizado en el algoritmo de correccin de errores de un protocolo determinado es de 5, entonces el protocolo podr corregir hasta 2 errores en una trama, y detectar hasta 4. El ejemplo ms sencillo de cdigo de deteccin de errores es el bit de paridad. El bit de paridad se elige de forma que mantenga la paridad (par o impar) de la codeword. El cdigo formado con un bit de paridad tiene una distancia de 2, ya que cambiando un bit de cualquier codeword el resultado es ilegal, pero cambiando dos vuelve a ser vlida. Con una distancia 2 es posible detectar errores de 1 bit, pero no detectar errores mltiples. Tampoco es posible corregir errores con este cdigo. A cambio se trata de un cdigo de mnimo overhead, ya que supone aadir solamente un bit a cada codeword. Por este motivo el bit de paridad se utiliza en situaciones donde la fiabilidad es muy alta y la codeword muy pequea, como sistemas de memoria RAM o grabacin de datos en soporte magntico. La eficiencia de un cdigo viene dada por la relacin m/n; a la diferencia 1 - m/n se la denomina redundancia. Por ejemplo al utilizar un bit de paridad para acceder a un byte de memoria se tiene una eficiencia de 0,8889 y una redundancia de 0,1111. Los cdigos de correccin de errores tienen una eficiencia menor que los de deteccin para el mismo nmero de bits; por ejemplo, supongamos que tenemos una tasa de errores de 10 -6 (un bit errneo por milln) y queremos enviar tramas con 1000 bits de informacin til; con correccin de errores necesitaremos 10 bits de comprobacin por cada trama (eficiencia de 0,99); con deteccin de errores cada trama deber llevar nicamente un bit de comprobacin (0,999 de eficiencia) y tendremos que retransmitir una trama de cada 1,000 (0,999 de eficiencia) lo cual da una eficiencia total de 0,998 (0,999 * 0,999). Por este motivo los cdigos de correccin de errores slo suelen utilizarse cuando el medio de transmisin es simplex, ya que en ese caso el receptor no puede solicitar retransmisin. En ocasiones los cdigos de correccin de errores se denominan correccin de errores hacia adelante (forward error control) y los de deteccin se llaman cdigos de correccin de errores hacia atrs o por realimentacin (feedback o backward error control) En esencia cualquier mecanismo de control de errores se basa pues en la inclusin de cierto grado de redundancia, lo cual requiere un compromiso entre eficiencia y fiabilidad. Supongamos por ejemplo que deseamos transmitir una trama de 64 bits y utilizamos un bit de paridad; la eficiencia se reducir en un 2% solamente y seremos capaces de detectar errores simples, pero los errores dobles pasarn desapercibidos; en caso de errores mltiples la probabilidad de que pasen desapercibidos es de 0,5, lo cual no es aceptable. Para mejorar la fiabilidad podemos introducir un bit de paridad cada ocho bits de datos; para esto imaginemos la trama como una matriz de 8 x 8 bits, a la cual aadimos una novena columna que son los bits de paridad; la transmisin se hara fila a fila, sin incluir la novena columna (los bits de paridad) que ira al final de la trama; el receptor reconstruira la matriz 8 x 8 a partir de los bits recibidos y a continuacin construira la columna de bits de paridad, que luego comparara con la recibida; en caso de discrepancia se supondra un error y se pedira retransmisin. Con este sistema las probabilidades de detectar errores mltiples han aumentado, pero si los errores se producen a rfagas (cosa muy normal en transmisin inalmbrica, por ejemplo) tendremos varios bits errneos cerca, con lo que la probabilidad de que su bit de paridad detecte el error vuelve a ser de 0,5. Ahora bien, si en vez de calcular el bit de paridad para cada fila lo hacemos para cada columna tomaremos bits no contiguos de la trama, con lo que la probabilidad de que un error a rfagas pase desapercibido es mucho menor; tendran que fallar dos bits de una misma columna y no fallar ningn otro bit, por ejemplo. Si estadsticamente la probabilidad de que un error en una columna pase desapercibido es de 0,5, la de que esta situacin se de en las 8 columnas es de
AREA DE TRANSFERENCIA DE CONOCIMIENTOS

5 de 22

ARQUITECTURA DE REDES

POSTGRADO A DISTANCIA: REDES DE COMUNICACIN DE DATOS

0,58, es decir, 0,0039. En este caso una eleccin inteligente de los bits de paridad ha permitido aumentar considerablemente la fiabilidad del cdigo sin reducir su eficiencia. El objetivo esencial de los cdigos de deteccin de errores consiste en optimizar los algoritmos de clculo de los bits de control para que sean capaces de detectar el mximo nmero de errores posible con un nmero razonable de bits adicionales. Las tcnicas matemticas en que se basan estos algoritmos son objeto de profundos estudios por parte de especialistas en teora de la codificacin, y no son fcilmente mejorables; como consecuencia de esto los algoritmos de deteccin de errores son una parte bastante estable dentro de los sistemas de transmisin de datos. El algoritmo de control de errores ms utilizado en la prctica se basa en lo que se conoce como cdigos polinmicos (tambin llamados cdigos de redundancia cclica o CRC, Cyclic Redundancy Check). La idea bsica es la misma que en el caso de los bits de paridad: aadir a los datos a transmitir unos bits adicionales cuyo valor se calcula a partir de los datos; la trama as construida se enva, y el receptor separa los bits de datos de la parte CRC; a partir de los datos recalcula el CRC y compara con el valor recibido; si ambos no coinciden se supone que ha habido un error y se pide retransmisin. La aritmtica polinmica tiene propiedades singulares que la hacen especialmente fcil de programar en sistemas digitales, por lo que es posible implementarla directamente en hardware con lo que se consigue una elevada eficiencia, cosa importante para evitar que la comunicacin se haga lenta por el clculo del CRC. Veamos algunas de estas propiedades: Supongamos la siguiente suma de polinomios: X7 + x4 + x3 + x + 1 + X 7 + x 6 + x3 + x ------------------------x6 + x4 + 1 Que equivale a: 10011011 Que equivale a: 11001010 -----------Que equivale a: 01010001

Obsrvese cmo no se arrastra valor a la unidad superior. En la prctica el resultado de la suma es equivalente a haber efectuado un OR exclusivo bit a bit entre las dos cadenas. En el caso de la resta la situacin es idntica: X 6 + x4 + x2 + 1 - x + x 5 + x3 + x2 + x + 1 -------------------------------x7 + x6 + x5 + x4 + x3 + x
7

01010101 10101111 -----------11111010

Ya que al utilizar mdulo 2 la operacin de dos valores iguales siempre da 0 y dos diferentes da 1. En el caso de la divisin la operacin se hace como en binario con la nica peculiaridad de que la resta se hace mdulo 2, como acabamos de ver. Veamos paso a paso como se utiliza todo esto en una transmisin de datos con un ejemplo concreto: En primer lugar el emisor y el receptor acuerdan un generador polinmico comn G(x), por ejemplo x4 + x + 1 (que representaremos como 10011 o g); el primero y ltimo bits de un generador polinmico siempre deben ser 1. El CRC siempre tiene una longitud un bit menos que el generador polinmico utilizado, por lo que en nuestro caso ser de 4 bits. Supongamos ahora que el emisor desea transmitir la cadena c1, formada por los bits 1101011011, que podemos ver como un polinomio de grado 9 (los datos a transmitir siempre deben tener ms bits que el generador polinmico utilizado). El emisor aade cuatro bits 0 al final de los datos a transmitir, formando la cadena c2 11001011011 0000; esto equivale a multiplicar la cadena por 24.
AREA DE TRANSFERENCIA DE CONOCIMIENTOS

6 de 22

ARQUITECTURA DE REDES

POSTGRADO A DISTANCIA: REDES DE COMUNICACIN DE DATOS

El emisor divide la cadena c2 por el generador polinmico acordado (10011) usando las reglas de divisin binaria mdulo 2 que antes hemos mencionado, y calcula el resto r, que es en este caso 1110. El emisor resta el resto r de la cadena c2, formando as la cadena c3 11010110111110. Obsrvese que, como la resta es una operacin XOR sobre los cuatro ltimos bits, en la prctica la resta se hace sencillamente sustituyendo los cuatro ltimos bits de c2 por r. Al restar al divisor el resto el valor obtenido es divisible por g. La cadena c3 es transmitida al receptor. El receptor recibe la cadena c3 y la divide por g. Si el resultado no es cero la transmisin se considera errnea y se solicita retransmisin. Este algoritmo puede parecer en principio extrao y arbitrario, pero tiene tres caractersticas que nos interesan: Da un resultado predecible y reproducible, por lo que aplicado sobre unos mismos datos siempre dar el mismo resultado. Las operaciones utilizadas (desplazamiento, XOR, etc.) lo hacen muy fcil de implementar en hardware, y suministra un mecanismo extremadamente flexible y robusto para la deteccin de errores, a travs de la eleccin del generador polinmico adecuado. Los generadores polinmicos ms utilizados forman parte de estndares internacionales, y son los siguientes: CRC-12: CRC-16: CRC-CCITT: CRC-32: 3.4 x12 + x11 + x3 + x2 + x + 1 x16 + x15 + x2 + 1 x16 + x12 + x5 + 1 x32 + x26 + x23 + x16 + x12 + x11 + x10 + x8 + x7 + x5 + x4 + x2 + x + 1

PROTOCOLOS ELEMENTALES DE CAPA DE ENLACE 1

La expresin transmisin de datos se refiere a la transferencia de una seal o conjunto de datos entre dos puntos, sin tener en cuenta el contenido de ellos. Sin embargo, cuando las computadoras, terminales u otros dispositivos de procesamiento de datos intercambian datos, el alcance es mucho ms amplio. Consideremos por ejemplo, la transferencia de un archivo entre dos computadoras, diagramado en la Fig. 3.2.

Fig. 3.2 Transferencia de archivos entre dos computadoras

Para este fin habr una trayectoria de datos entre las dos computadoras, directamente o a travs de una red de comunicaciones (Fig. 3.2). Para esta transferencia se requiere efectuar las cuatro
1

Extrado de Carlos Alcocer Redes de Computadoras Segunda Edicin INFOL INK S.R.L.

AREA DE TRANSFERENCIA DE CONOCIMIENTOS

7 de 22

ARQUITECTURA DE REDES

POSTGRADO A DISTANCIA: REDES DE COMUNICACIN DE DATOS

tareas mostradas en la Tabla 3.1. Debe haber un alto grado de cooperacin entre los dos sistemas o los dos computadores. Este intercambio de informacin cuyo propsito es tener una accin cooperativa es conocido como comunicacin entre computadoras. Similarmente, al conjunto de dos o ms computadoras que estn interconectadas va red de comunicaciones es conocido como una red de computadoras. Para analizar la comunicacin entre computadoras y redes de computadoras, es necesario comprender dos conceptos muy importantes, a saber: Protocolos Arquitectura de comunicaciones entre computadoras
Tarea El sistema origen debe activar tanto la trayectoria directa de transmisin de datos como informar a la red de comunicaciones de la identidad del sistema destino. El sistema origen o fuente debe asegurarse que el destino est preparado para recibir los datos. La aplicacin de transferencia de archivos del sistema fuente debe confirmar que el programa de administracin de archivos del sistema destino est listo para aceptar y almacenar el archivo que se le va a enviar. Si los formatos de los archivos utilizados en los dos sistemas son incompatibles, uno de los sistemas debe realizar la traduccin de formatos. Tabla 3.1 Tareas para la transferencia de archivos entre dos sistemas

1. 2. 3. 4.

3.4.1

Caractersticas de los protocolos

El concepto de procesamiento distribuido y de redes de computadoras implica que las entidades en diferentes sistemas necesitan comunicarse. Nosotros usamos los trminos entidad y sistema en un sentido muy general. Ejemplos de entidades son los programas de aplicacin de los usuarios, paquetes de transferencias de archivos, sistemas de administracin de base de datos, facilidades de correo electrnico y terminales. Ejemplos de sistemas son las computadoras, los terminales y los sensores remotos. Ntese que en algunos casos la entidad y el sistema en el cual sta reside son coexistentes, tal como en el caso de los terminales. En general, una entidad es todo aquello capaz de enviar o recibir informacin y un sistema es un objeto fsicamente distinto que contiene una o ms entidades. Para que dos entidades se comuniquen exitosamente deben hablar el mismo lenguaje. Lo que se comunique, cmo esto se comunique o cundo esto sea comunicado, deben ceirse a un conjunto de convenciones aceptadas mutuamente entre las entidades involucradas. Este conjunto de convenciones es el protocolo, que puede definirse como el conjunto de reglas que gobiernan el intercambio de datos entre dos entidades. Los elementos claves de un protocolo son: Sintaxis: Incluye cosas tales como formato de datos, codificacin y niveles de seal. Semntica: Incluye la informacin de control para la coordinacin y el manejo de errores. Temporizacin: Incluye la adaptacin de velocidad y secuencia.

AREA DE TRANSFERENCIA DE CONOCIMIENTOS

8 de 22

ARQUITECTURA DE REDES

POSTGRADO A DISTANCIA: REDES DE COMUNICACIN DE DATOS

3.5

PROTOCOLO GENERALIZADO

En este captulo trataremos sobre el concepto de protocolo de comunicaciones generalizado. Aqu se muestra que los protocolos son fundamentales para todo tipo de comunicaciones de datos y describiremos sus caractersticas y funciones. 3.5.1 Caractersticas

Las caractersticas ms importantes de los protocolos son: Directo/Indirecto Monoltico/Estructurado Simtrico/Asimtrico Normalizado / no normalizado Seguidamente pasaremos a describir cada una. 3.5.1.1 Directo o indirecto Las comunicaciones entre dos entidades pueden ser directas o indirectas. La Fig. 3.3 muestra estas situaciones. Si dos sistemas comparten un enlace punto a punto, las entidades de estos sistemas podran comunicarse mutuamente; esto es, la informacin de datos y de control pasa directamente entre las entidades sin la intervencin de un agente activo. Lo mismo puede decirse de una configuracin multipunto, aunque aqu las entidades estn relacionadas con el aspecto de control de acceso, haciendo el protocolo ms completo. Si los sistemas se conectan a travs de una red de comunicaciones conmutada, un protocolo directo ya no es posible. Las dos entidades deben depender para su funcionamiento de otras entidades. Un caso ms extremo es cuando las dos entidades no comparten la misma red conmutada sino que estn indirectamente conectadas a travs de dos o ms redes. El conjunto de estas redes interconectadas se denomina Internet.

Fig. 3.3 Medios de conexin de sistemas de comunicaciones

Una consideracin importante de diseo de un protocolo parte de las dos ltimas configuraciones Fig. 3.3c y Fig. 3.3a. Esto nos indica que las entidades y sus protocolos deben tener en cuenta las caractersticas de los sistemas o redes intermedios. Idealmente los sistemas intermedios deberan ser transparentes y el protocolo entre las dos entidades debera ser el mismo que para un enlace
AREA DE TRANSFERENCIA DE CONOCIMIENTOS

9 de 22

ARQUITECTURA DE REDES

POSTGRADO A DISTANCIA: REDES DE COMUNICACIN DE DATOS

punto a punto. 3.5.1.2 Monoltico o estructurado Comunicar dos entidades de diferentes sistemas es una tarea muy compleja para ser manejada como una unidad. Por ejemplo, considere un paquete de correo electrnico que est corriendo sobre dos computadoras conectadas sobre un enlace con protocolo HDLC. Para ser verdaderamente monoltico, el paquete de correo debera incluir toda la lgica del HDLC. Y si la conexin fuera hecha sobre una red de conmutacin de paquetes, el paquete an necesitar la lgica HDLC (o una equivalente) para conectarse a la red. Tambin se requerir una lgica para partir los mensajes de correo en trozos del tamao de los paquetes, la lgica para pedir un circuito virtual y otros aspectos. El correo slo debera ser enviado al sistema de destino y la entidad cuando stas estn activas y listas para recibir. Se requiere una lgica para esta clase de coordinacin y la lista puede continuar. Un cambio en cualquier aspecto significa que todo este inmenso paquete debe ser modificado, con el riesgo de introducir bugs difciles de encontrar.

Fig. 3.4 Relacin entre protocolos de comunicaciones

Una alternativa es usar un diseo estructurado y tcnicas de implementacin. En vez de usar un solo protocolo, hay un conjunto de protocolos que exhiben una estructura jerrquica o por capas. Al ms bajo nivel se implementan las funciones ms primitivas en entidades de bajo nivel, las cuales proveern servicios a entidades de alto nivel. Por ejemplo podra haber un mdulo HDLC, el cual es una entidad que puede ser invocada por una facilidad de correo electrnico cuando sta la requiera. La Fig. 3.4 sugiere en trminos generales un conjunto estructurado de protocolos y muestra el caso ms extremo de dos estaciones conectadas a travs de mltiples redes conmutadas. Las estaciones 1 y 2 tienen cada cual una o ms aplicaciones que desean comunicarse. Entre cada par de entidades (ejemplo: mdulos de correo electrnico) es necesario un protocolo orientado a la aplicacin, el cual coordina las actividades de los dos mdulos de aplicacin y asegura una semntica y sintaxis comunes. Este protocolo necesita saber muy poco acerca de la facilidad disponible en las comunicaciones, pero hace uso de la entidad, de los servicios de red que s le proveen. La entidad de servicios de red tendr un protocolo de proceso a proceso con una entidad correspondiente en la otra estacin. La entidad de servicios de red tendr un protocolo de proceso a proceso con la entidad correspondiente en la otra estacin. Este protocolo podra manejar aspectos tales como control de
AREA DE TRANSFERENCIA DE CONOCIMIENTOS

10 de 22

ARQUITECTURA DE REDES

POSTGRADO A DISTANCIA: REDES DE COMUNICACIN DE DATOS

flujo y control de errores. Adems habr protocolo entre la estacin 1 y la red A, y entre la estacin 2 y la red B. Para una red en broadcast, el protocolo incluira una lgica de control de acceso al medio. Para una red de conmutacin de paquetes se requiere una lgica para el establecimiento de los circuitos virtuales. Ntese que un protocolo de acceso diferente y ms sencillo a la red ser proporcionado para los dispositivos menos inteligentes, tales como terminales. Internamente en cada red se requiere un protocolo nodo a nodo para conectar los pares de nodos y tambin se puede usar un protocolo de entrada y salida. Ejemplos de estos protocolos sern discutidos cuando se explique la nter conectividad de redes. 3.5.1.3 Simtrico o asimtrico Un protocolo puede ser simtrico o asimtrico, aunque la mayora de protocolos que hemos estudiado son simtricos. Esto es, que ellos involucran comunicaciones entre entidades pares. La simetra puede ser dictada por la lgica de una central (por ejemplo: un proceso de usuario y un proceso de servidor), o por el deseo de mantener una de las entidades o sistemas lo ms simple posible. Un ejemplo es el modo normal de respuesta (NRM) del HDLC. Tpicamente esto involucra que la computadora debe invocar y seleccionar cierto nmero de terminales. La lgica del terminal es totalmente simple. 3.5.1.4 Normalizado o no normalizado Un protocolo no normalizado es aquel construido para una situacin de comunicaciones especfica o, en el peor caso, para un modelo particular de computadora. El incremento del uso del procesamiento distribuido y la decreciente inclinacin de los clientes de permanecer enganchados a un solo vendedor indica que todos los vendedores deben incrementar protocolos que cumplan con las normas del CCITT o de organizaciones normativas. En la Fig. 3.5 se dan ambos casos. Seguidamente describimos las funciones de un protocolo.

Fig. 3.5 El uso de protocolos normalizados

3.5.2

Funciones

Ahora consideremos un conjunto de funciones que forman las bases de todos los protocolos. No todos los protocolos tienen todas estas funciones, pues implicara una duplicacin de esfuerzos. Sin embargo, hay circunstancias en que el mismo tipo de funcin est presente en protocolos de
AREA DE TRANSFERENCIA DE CONOCIMIENTOS

11 de 22

ARQUITECTURA DE REDES

POSTGRADO A DISTANCIA: REDES DE COMUNICACIN DE DATOS

diferentes niveles. Esta discusin es necesariamente bastante abstracta. En ella se da un panorama integral de las funciones de los protocolos, las que agrupamos en las siguientes categoras: Segmentacin y reensamble Encapsulado Control de conexin Control de flujo Control de errores Sincronizacin Secuencia Direccionamiento Multiplexaje Servicios de Transmisin A continuacin desarrollaremos cada una de ellas. 3.5.2.1 Segmentacin y reensamblaje Un protocolo est relacionado con el intercambio de trenes de datos entre dos entidades. Esta transferencia puede ser caracterizada como una secuencia de bloques de datos de un tamao determinado. En el nivel de aplicacin, nos referimos como a la unidad lgica de transferencia de datos como un mensaje. Ahora bien, mientras la entidad de aplicacin enva datos en mensajes, los protocolos del nivel inferior podran necesitar esos datos en bloques de un tamao fijo ms pequeo. Este proceso es llamado segmentacin o fragmentacin. Por conveniencia, nos referiremos al bloque de datos intercambiados entre dos entidades mediante un protocolo como un PDU (Protocol Data Unit). Hay varios motivos para llevar a cabo la segmentacin dependiendo del contexto. Entre las razones tpicas estn: Una red de comunicaciones puede aceptar solamente bloques de datos de hasta cierto tamao. Por ejemplo la red DDN limita los bloques de mensajes a 8063 bytes de longitud. El control de errores puede ser ms eficiente con una unidad PDU pequea. Pocos bytes necesitarn retransmitirse usando bloques pequeos con la tcnica selectiva de repeticin. Los PDU de tamao pequeo pueden requerir una asignacin de bloques ms pequeos. Tal como ejemplo el protocolo de entrada a salida de la red ARPANET. Una entidad puede requerir que los datos sean transferidos con un cierto cierre, de tiempo en tiempo, para llevar a cabo operaciones de control, reinicio y recuperacin. Los bloques pequeos tendrn un retardo ms corto.

Fig. 3.6 Segmentacin y reensamble


ARQUITECTURA DE REDES

AREA DE TRANSFERENCIA DE CONOCIMIENTOS

12 de 22

POSTGRADO A DISTANCIA: REDES DE COMUNICACIN DE DATOS

Las desventajas de la segmentacin de hacer los bloques los ms grandes posibles son: Cada unidad PDU contiene una cantidad fija de sobre cabecera; de aqu que cuanto ms pequeo sea el bloque, mayor ser el porcentaje de sobre cabecera. La llegada de una unidad PDU genera una interrupcin en el procesador que debe ser aprendida. Por consiguiente, los bloques ms pequeos requieren ms interrupciones. Se gasta ms tiempo procesando numerosas unidades PDU de tamao pequeo. La contrapartida de la segmentacin es el reensamble. Al ser recibidos los datos fragmentados son reensamblados para obtener mensajes a nivel de aplicacin. En la Fig. 3.6 se muestra que el usuario A desea enviar un mensaje al usuario B, pero el mensaje es segmentado en tres unidades PDU antes de la transmisin y reensamblados, una vez recibidos, antes de ser entregado a B. 3.5.2.2 Encapsulado Cada PDU no slo tiene datos sino tambin informacin de control. An ms algunos PDUs contienen solamente informacin de control y no datos. La informacin de control tiene tres categoras generales: Direccin: La direccin del remitente y el destinatario como se ha indicado. Cdigo de deteccin de errores: Se incluye algn tipo de secuencias de control de trama para deteccin de errores. Control de protocolo: Se incluye informacin adicional para implementar las funciones de protocolo listadas en el final de esta seccin. La adicin de informacin de control de los datos es referida como encapsulado. Los datos son aceptados o generados por una entidad y encapsulados dentro de un PDU que contiene datos adems de control de informacin. Ver la Fig. 3.7.

Fig. 3.7 Encapsulado

3.5.2.3 Control de conexin Existen dos mtodos fundamentales para transferir informacin: Transferencia de datos no orientada a la conexin (ConnectionLess) - Datagrama Una entidad puede transmitir datos a otra entidad de una manera no planeada y sin una coordinacin previa. Esto es conocido como transferencia de datos no orientados a la conexin. Un ejemplo de este uso es el datagrama. Transferencia de datos orientada a la conexin (Connection Oriented) - Paquete Este tipo de transferencia es preferible, y en algunos casos an obligatoriamente requerido, si las estaciones anticipan gran intercambio de datos y que ciertos detalles de su protocolo
AREA DE TRANSFERENCIA DE CONOCIMIENTOS

13 de 22

ARQUITECTURA DE REDES

POSTGRADO A DISTANCIA: REDES DE COMUNICACIN DE DATOS

deban trabajarse dinmicamente. Se establece una conexin o asociacin lgica entre las entidades. Ocurren 3 fases (Fig. 3.8): Fase I : Establecimiento de la conexin. Fase II : Transferencia de datos. Fase III : Terminacin de la conexin. Con protocolos ms sofisticados tambin puede haber una interrupcin de la comunicacin, as como fases de recuperacin para enfrentar errores y otros tipos de interrupciones.
Peticin de conexin

Conexin aceptada Datos y confirmaciones

ENTIDAD DE PROTOCOLO
Datos y confirmaciones Peticin de desconexin

ENTIDAD DE PROTOCOLO

Fig. 3.8 Las fases de una transferencia de datos orientada a la conexin

Durante la fase de establecimiento, las dos entidades acuerdan intercambiar datos. Tpicamente una estacin puede emitir una peticin de conexin hacia la otra. La autoridad central puede o no estar involucrada. En protocolos ms simples, la entidad destinataria puede aceptar o rechazar la peticin. En caso de aceptar la peticin, se inicia la comunicacin. En propuestas ms complejas, estas fases incluyen negociacin entre las entidades respecto a sintaxis, semntica y temporizacin del protocolo. Ambos sistemas deben, por supuesto, usar el mismo protocolo. Pero el protocolo puede permitir ciertas caractersticas opcionales que deben ser acordadas mediante la negociacin. Por ejemplo, el protocolo podra especificar un PDU de 8000 bytes y una de las estaciones podra desear restringirla a slo 1000 bytes. Contina con el establecimiento de la comunicacin y se inicia la fase de transferencia de datos. Durante esta fase se intercambia la informacin de datos y de control, tales como control de flujo y control de errores. Finalmente una estacin o la otra pueden desear terminar la conexin y se lleva a cabo emitiendo una peticin de terminacin. Alternativamente, la autoridad central podra forzar la terminacin de una comunicacin. 3.5.2.4 Control de flujo En esencia sta es una funcin realizada por la entidad receptora o destinataria para limitar la cantidad de datos o la velocidad a que estos datos estn siendo enviados por la entidad transmisora. La forma ms simple de control de flujo es el procedimiento de stop-and-wait, en el cual cada PDU debe ser confirmado antes que el prximo pueda ser enviado. Los protocolos ms eficientes involucran la tcnica de ventana corrediza que es una forma de anticipo que se le brinda al transmisor para que pueda remitir tramas sin confirmacin. El algoritmo del SNA denominado Pacing y el comando de ARPANET denominado ready-for-nextmessage estn relacionados muy cercanamente. El control de flujo es un buen ejemplo de una funcin que se debe implementar en los protocolos. 3.5.2.5 Control de errores
AREA DE TRANSFERENCIA DE CONOCIMIENTOS

14 de 22

ARQUITECTURA DE REDES

POSTGRADO A DISTANCIA: REDES DE COMUNICACIN DE DATOS

Se necesitan tcnicas para protegerse contra la prdida o dao de la informacin de datos y la informacin de control. La mayor parte de estas tcnicas involucran deteccin de errores, basadas en la secuencia de revisin de tramas y la retransmisin de unidades de PDU. Las retransmisiones son a menudo activadas por un temporizador. Si una entidad transmisora falla en recibir una confirmacin de una PDU dentro de un perodo determinado, entonces proceder a retransmitir la trama enviada anteriormente. Como el control de flujo, el control de errores es una funcin que debe existir en varios niveles de los protocolos. 3.5.2.6 Sincronizacin Es necesario que dos estaciones que se comunican, se encuentren simultneamente en estados bien definidos, por ejemplo: en estado de inicializacin, transferencia de datos y terminacin de una llamada, es decir, que se encuentren sincronizados. De all viene la funcin de sincronizacin. Para este efecto, se debe haber programado previamente un conjunto de parmetros tales como: tamao de ventana, fases de la comunicacin (establecimiento, transferencia de datos), valores de los temporizadores, etc. Estos parmetros pueden ser vistos como variables de estado y su coleccin define el estado de una entidad. 3.5.2.7 Secuencia Esta funcin brinda el orden en el que las tramas o unidades de datos estn siendo enviadas por medio de su numeracin en secuencia. Esta funcin slo tiene sentido en el contexto de la transferencia de datos orientada a la conexin. La secuencia sirve a tres propsitos principales: Entrega ordenada, es decir, las tramas en orden. Control de flujo. Control de errores. Considere primero el caso de entrega ordenada. Si dos entidades no estn directamente conectadas hay el riesgo de que las unidades PDU no lleguen en el orden en que fueron enviadas debido a que podran haber recorrido trayectorias diferentes. 3.5.2.8 Direccionamiento Para que dos entidades puedan comunicarse, deben ser capaces de identificar una a la otra. Por ejemplo, en una red de difusin amplia (LAN) cada estacin observa todos los paquetes para ver si alguno contiene su identificacin (direccin). Sobre una red de conmutacin, la red necesita conocer la direccin de la estacin destino para enrutar apropiadamente los datos o para establecer una conexin. Se debe hacer una distincin entre los siguientes trminos: Nombre : Especifica cul es el objeto. Direccin : Especifica dnde se encuentra este objeto. Ruta : Indica cmo llegar hasta ese objeto. El aspecto de nombres y direcciones de entidades no admite una solucin nica, seguidamente listamos y explicamos los tpicos que deben considerarse: Estructura del nombre, conocimiento del nombre, nombre de conexin, nombre de puertas y nombre de grupos. Estructura de nombre: La estructura de nombre se usa para nombres globales y puede ser una estructura jerrquica o estructura plana. Una estructura plana es aquella en la que cada entidad tiene un nombre global, que es nico a travs de todo el dominio de comunicaciones. Una estructura jerrquica debera incluir nombres que tengan la siguiente estructura: Sistema. Entidad, o en el caso de redes mltiples: Red.Sistema.Entidad. Los campos Sistema y Red contienen identificadores globales de formato fijo. La Entidad debe ser el nombre de una longitud fijada a un mximo determinado. El nombre podra tener un significado global, en cuyo caso el sistema que contiene a la entidad deber contener una tabla de mapeo de identificadores de entidades globales a identificadores de entidades locales. Conocimiento de nombre: Una entidad slo puede enviar datos o pedir una conexin a una entidad cuyo nombre
AREA DE TRANSFERENCIA DE CONOCIMIENTOS

15 de 22

ARQUITECTURA DE REDES

POSTGRADO A DISTANCIA: REDES DE COMUNICACIN DE DATOS

conoce. Nombre de la conexin: Este caso es usado en la fase de transferencia de los protocolos orientados a la conexin, en la cual se da un nombre a cada conexin establecida entre dos entidades. El uso del nombre de la conexin tiene varias ventajas: o Reducida sobre cabecera: Los nombres de conexiones son generalmente ms cortos que los nombres globales. Como ejemplo en el protocolo X.25, se asigna un nmero de circuito virtual a cada circuitos virtuales cuando es establecido. Dicho nmero est contenido en todos los paquetes de datos referentes a esa conexin. o Enrutamiento: Una vez establecida una conexin una ruta puede ser definida, por ejemplo para SNA, pero no para ARPANET. El nombre de la conexin sirve para identificar la ruta para el manejo de unidades PDU futuras. Este concepto es aplicado en el IP Switching. o Multiplexaje: Trataremos esta funcin ms adelante en trminos ms generales. Aqu hacemos notar que una entidad podra desear tener ms de una conexin simultneamente. As, todas las unidades PDU entrantes se deben identificar por su nombre de conexin. 3.5.2.9 Multiplexaje Esta funcin se logra por medio de los nombres de conexin, los cuales permiten mltiples conexiones simultneas. Otro tipo de multiplexaje se da en el mapeo de las conexiones de u n nivel sobre otro. El multiplexaje puede ser usado en una de dos direcciones (Fig. 3.9). Multiplexaje hacia arriba: Este ocurre cuando mltiples conexiones de alto nivel son multiplicadas o comparten una conexin de un nivel inferior nica. Esto puede ser necesario para hacer ms eficiente el uso del servicio del nivel ms bajo o proveer a varias conexiones de alto nivel un ambiente donde slo existe la conexin a un nico nivel bajo. Multiplexaje hacia abajo: Significa que una conexin de alto nivel puede ser colocada en la parte superior de varias conexiones de bajo nivel, de tal manera que el trfico de la conexin de alto nivel pueda ser dividido entre las mltiples conexiones de bajo nivel. Esta tcnica puede ser usada para proporcionar confiabilidad, performance o eficiencia.
Conexin de Alto Nivel Conexin de Bajo Nivel

a) Uno a uno

b) Multiplexaje hacia abajo (downward multiplexing)

c) Multiplexaje hacia arriba (upward multiplexing)

Fig. 3.9 Multiplexaje de conexiones de protocolos

3.5.2.10 Servicios de transmisin


AREA DE TRANSFERENCIA DE CONOCIMIENTOS

16 de 22

ARQUITECTURA DE REDES

POSTGRADO A DISTANCIA: REDES DE COMUNICACIN DE DATOS

Un protocolo puede proporcionar una variedad de servicios adicionales a las entidades que lo usan. Aqu presentamos tres tipos de servicios: Prioridad: Mensajes prioritarios tales como de control de conexin. Grado de servicio: Ofrece determinados niveles de caudal y retardo. Seguridad: Se pueden establecer mecanismos de restriccin de acceso (firewalls), etc. 3.6 3.6.1 EJEMPLOS DE PROTOCOLOS DE ENLACE DE DATOS HDLC (High-level data link control)

En esta seccin se examinar un conjunto de protocolos que, a pesar de ser antiguos, se siguen utilizando ampliamente en redes de todo el mundo. Todos se derivan del protocolo de enlace de datos usado en la SNA de IBM, llamado SDLC ( Synchronous Data Link Control Protocol, Protocolo de Control Sincrnico de Enlace de Datos) Tras desarrollar SDLC, IBM lo someti a ANSI y a ISO para su aceptacin como estndar de Estados Unidos e internacional, respectivamente. ANSI lo modific convirtindolo en ADCCP (Advanced Data Communication Control Procedure, Procedimiento Avanzado de Control de Comunicacin de Datos), e ISO lo modific para convertirlo en HDLC ( High-level Data Link Control, Control de Enlace de Datos de Alto Nivel) Luego, el CCITT (ahora ITU-T) adopt y modific HDLC para su LAP (Link Access Procedure, Procedimiento de Acceso de Enlace) como parte del estndar de interfaz de red X.25, pero despus lo modific nuevamente a LAPB para hacerlo ms compatible con una versin posterior de HDLC. Todos estos protocolos se basan en el mismo principio. Todos estn orientados a bits y usan el relleno de bits para lograr la transparencia de los datos; difieren slo en aspectos menores. El anlisis de los protocolos orientados a bits que aqu se desarrollar pretende ser slo una introduccin general. Si se desean los detalles especficos, se recomienda consultar los RFCs de la IETF (http://www.ietf.org/) A medida que se estudie cada protocolo se citar el nmero de RFC que le dio origen. Todos los protocolos orientados a bits usan la estructura marco mostrada en la Fig.- 3.10. El campo de direccin es de importancia primordial en las lneas con mltiples terminales, pues sirve para identificar a cualquiera de stas. En las lneas punto a punto a veces se usa para distinguir los comandos de las respuestas.

Fig. 3.10 Formato de marco para protocolos orientados a bits

El campo de control se usa para nmeros de secuencia, acuses y otros propsitos, como se explicar posteriormente. El campo de datos puede contener informacin arbitraria e incluso puede ser de longitud arbitraria, aunque la eficiencia de la suma de comprobacin ( checksum) decae al aumentar el tamao del marco debido a la mayor probabilidad de mltiples errores en rfaga. El campo checksum es una variacin menor del bien conocido cdigo de redundancia cclica, usando CRC-CCITT como generador de polinomios. La variacin consiste en permitir la deteccin de bytes de indicacin perdidos.
AREA DE TRANSFERENCIA DE CONOCIMIENTOS

17 de 22

ARQUITECTURA DE REDES

POSTGRADO A DISTANCIA: REDES DE COMUNICACIN DE DATOS

El marco est delimitado por otra secuencia de indicacin (01111110) En lneas punto a punto inactivo se transmiten secuencias de indicacin continuamente. El marco mnimo contiene tres campos y un total de 32 bits, excluyendo los indicadores a ambos lados. Hay tres tipos de marcos: de informacin, de supervisin y no numerados. El contenido del campo control para estos tres tipos se muestra en la Fig. 3.11. El protocolo emplea una ventana corrediza con un nmero de secuencia de tres bits, lo que quiere decir que en cualquier momento pueden estar pendientes hasta siete marcos no reconocidos.

Fig. 3.11 Campo de Control

El campo secuencia en la Fig. 3.11 (a) es el nmero de secuencia del marco. El campo siguiente es un acuse incorporado. Sin embargo, todos los protocolos se apegan a la convencin de que, en lugar de incorporar el nmero del ltimo marco recibido correctamente, usan el nmero del primer marco no recibido (es decir, el siguiente marco esperado) La decisin de usar el ltimo marco recibido o el siguiente marco esperado es arbitrario; no importa la convencin que se use, siempre y cuando se use con consistencia. El bit S/F significa Sondeo/Final. Se usa cuando una computadora (o concentrador) est sondeando un grupo de terminales. Cuando se usa como S, la computadora est invitando a la Terminal a enviar datos. Todos los marcos enviados por la Terminal, excepto el ltimo, tienen el bit S/F puesto en S. El ltimo se pone en F. En algunos de los protocolos el bit S/F sirve para obligar a la otra mquina a enviar de inmediato un marco de supervisin en lugar de esperar trfico en reversa al cual incorpora la informacin de la ventana. El bit tiene tambin algunos usos menores en conexin con los marcos sin nmero. Las diferentes clases de marcos de supervisin se distinguen por el campo tipo. El tipo 0 es el marco de acuse (oficialmente llamado RECEIVE READY, receptor listo) que sirve para indicar el siguiente marco esperado. Este marco se usa cuando no hay trfico en reversa que se pueda aprovechar para incorporar acuses. El tipo 1 es un marco de acuse negativo (oficialmente llamado REJECT, rechazo); sirve para indicar que se ha detectado un error de transmisin. El campo siguiente indica el primer marco en la secuencia que no se ha recibido correctamente (es decir, el marco a retransmitir) Se pide al transmisor retransmitir todos los marcos pendientes empezando por el siguiente. Esta estrategia es
AREA DE TRANSFERENCIA DE CONOCIMIENTOS

18 de 22

ARQUITECTURA DE REDES

POSTGRADO A DISTANCIA: REDES DE COMUNICACIN DE DATOS

semejante al protocolo de ventana corrediza que usa regreso a n. El tipo 2 es RECEIVE NOT READY (receptor no listo); reconoce todos los marcos hasta, pero sin incluir el siguiente al igual que RECEIVE READY, pero le dice al transmisor que detenga el envo. El propsito de RECEIVE NOT READY es sealar ciertos problemas temporales en el receptor, como falta de buffers y no puede servir como alternativa del control de flujo de ventana corrediza. Cuando el problema se resuelve, el receptor enva RECEIVE READY o ciertos marcos de control. El tipo 3 es SELECTIVE REJECT (rechazo selectivo); solicita la retransmisin de slo un marco especfico. En este sentido es como el protocolo de ventana corrediza de repeticin selectiva, y por tanto es de mayor utilidad cuando el tamao de la ventana del transmisor es la mitad del tamao del espacio secuencial o menor. Por tanto, si un receptor desea colocar en buffers una secuencia de marcos para un posible uso futuro, puede forzar la retransmisin de cualquier marco especfico usando SELECTIVE REJECT. HDLC y ADCCP permiten este tipo de marco, pero en SDLC y LAPB no (es decir no hay rechazo selectivo) y los marcos tipo 3 no estn definidos. La tercera clase de marco es el marco sin nmero que a veces se usa para propsitos de control, aunque tambin puede servir para llevar datos cuando se solicita un servicio no confiable sin conexin. Los diferentes protocolos orientados a bits tienen diferencias considerables aqu, en contraste con los otros dos tipos, donde son casi idnticos. Hay cinco bits disponibles para indicar el tipo de marco enviado, pero no se usan las 32 posibilidades. Todos los protocolos proporcionan un comando DISC ( DISConnect, desconexin), que permite a una mquina anunciar que va a ser desactivada (por ejemplo, para mantenimiento preventivo) Tambin cuentan con un comando que permite a una mquina que acaba de regresar y est en lnea anunciar su presencia y obligar el regreso a cero de todos los nmeros de secuencia. Este comando es SNRM (Set Normal Response Mode, establecer modo de respuesta normal) Desgraciadamente, el modo de respuesta normal es todo, menos normal. Es un modo desbalanceado (vale decir, asimtrico) en el que el extremo de una lnea es el maestro y el otro el subordinado. SNRM se remonta a una poca en la que comunicacin de datos significa ba que un terminal no inteligente se comunicaba con una computadora, lo cual evidentemente es asimtrico. Para hacer ms adecuado el protocolo cuando los dos interlocutores son iguales, HDLC y LAPB cuentan con un comando adicional, SABM (Set Synchronous Balanced Mode, establecer modo asncrono balanceado), que restablece la lnea y declara que ambas partes son iguales. Tambin cuentan con los comandos SABME y SNRME, que son iguales a SABM y a SNRM, respectivamente, excepto que habilitan un formato de marco extendido que maneja nmeros de secuencia de 7 bits en lugar de 3 bits. Un tercer comando proporcionado por todos los protocolos es FRMR ( Frame Reject, rechazo de marco), que sirve para indicar que ha llegado un marco con suma de comprobacin correcta pero semntica imposible. Ejemplos de semntica imposible son: un marco de supervisin tipo 3 en LAPB, un marco ms corto que 32 bits, un marco de control ilegal, el acuse de un marco que estaba fuera de ventana, etc. Los marcos FRMR contienen un campo de datos de 24 bits que indica porqu se rechaz el marco. Los datos incluyen el campo de control del marco rechazado, los parmetros de la ventana y un conjunto de bits que sealan errores especficos. Los marcos de control pueden perderse o daarse, igual que los de datos, por lo que deben ser reconocidos tambin. Se proporciona un marco de control especial para este propsito llamado UA (Unnumbered Acknowledgment, acuse sin nmero) Dado que slo puede estar pendiente un marco de control, nunca hay ambigedades sobre el marco de control que est siendo reconocido. Los marcos de control restantes tienen que ver con inicializacin, sondeo e informe de estado. Tambin hay un marco de control que puede contener informacin arbitraria, el UI (Unnumbered Information, informacin sin nmero) Estos datos no se pasan a la capa de red, pues son para la misma capa de enlace de datos.
AREA DE TRANSFERENCIA DE CONOCIMIENTOS

19 de 22

ARQUITECTURA DE REDES

POSTGRADO A DISTANCIA: REDES DE COMUNICACIN DE DATOS

3.7

SUBCAPA DE ACCESO AL MEDIO

Vimos que las redes podan por su tecnologa clasificarse en redes de difusin y redes punto a punto. En el caso de las redes punto a punto la comunicacin se realiza entre dos computadores claramente identificados, y el medio de transmisin se supone siempre disponible para el envo. Todos los protocolos de nivel de enlace que hemos visto en el tema anterior parten de estas dos suposiciones; a lo sumo en el caso de una conexin semi-dplex el uso del canal se tena que alternar entre los dos computadores participantes. En las redes broadcast hay un problema previo. Dado que el canal de comunicacin est compartido entre varios computadores es preciso habilitar mecanismos que permitan a cada uno de ellos utilizar dicho canal durante el perodo de tiempo necesario para que pueda enviar sus tramas al computador de destino. El hecho de no disponer del canal en exclusiva generar en algn caso conflictos o incluso prdida de tramas; los protocolos debern establecer los mecanismos adecuados para resolver dichos conflictos y permitir que los computadores retransmitan en caso necesario las tramas que no hayan llegado correctamente a su destino. Debido a esta caracterstica singular de las redes broadcast la capa de enlace tiene una complejidad mayor que en las redes punto a punto, por lo que se la suele dividir en dos subcapas: la inferior, que se ocupa de controlar el acceso al medio de transmisin, se denomina subcapa MAC (Media Access Control). Siguiendo la estructura del Tanenbaum hemos alterado el orden de estas dos subcapas, ya que de esta forma el problema ms complejo de la comunicacin entre mltiples computadores se estudia despus de haber visto el caso ms sencillo de la comunicacin entre dos computadores. Aunque existen redes broadcast de largo alcance (por ejemplo las de satlite) el concepto de red broadcast es casi sinnimo de redes locales; la mayora de las tecnologas LAN habituales (excepto las basadas en ATM) utilizan un medio compartido. 3.7.1 Protocolos de acceso mltiple: ALOHA

En 1970, cuando la red ARPANET solo llevaba unos meses en funcionamiento, un equipo de la Universidad de Hawai, dirigido por Norman Abramson, quera poner en marcha una red para interconectar terminales ubicados en las islas de Kauai, Maui y Hawaii, con un computador central situado en Honolulu, en la isla Oahu. Lo normal habra sido utilizar enlaces telefnicos, pero la baja calidad y el elevado costo de las lneas hacan prohibitiva esta opcin (AT&T an disfrutaba del monopolio de la telefona en los Estados Unidos, lo cual no estimulaba a bajar precios). Abramson y su equipo estaban decididos a llevar a cabo su proyecto a toda costa (pero no a cualquier costo). Consiguieron varios transmisores de radio taxis viejos y construyeron mdems de forma artesanal. Con esto pusieron en marcha una red de radio enlaces entre las islas. En vez de asignar un canal diferente para la comunicacin bidireccional de Oahu con las dems islas (lo cual habra requerido seis canales) asignaron nicamente dos: uno descendente a 413,475 MHz para las transmisiones de Oahu a las dems islas y otro ascendente a 407,350 MHz para el sentido inverso. Cada canal tena un ancho de banda de 100 kHz y una capacidad de 9,6 kbps. De haber dividido el ancho de banda en seis canales la capacidad de cada uno habra sido proporcionalmente menor. El canal descendente no planteaba problemas pues tena un nico emisor (Oahu). Sin embargo el canal de retorno era compartido por tres emisores (Kauai, Maui y Hawaii), por lo que haba que establecer reglas que permitieran resolver el conflicto que se produca si dos emisores transmitan simultneamente, es decir, si se produca una colisin.

AREA DE TRANSFERENCIA DE CONOCIMIENTOS

20 de 22

ARQUITECTURA DE REDES

POSTGRADO A DISTANCIA: REDES DE COMUNICACIN DE DATOS

La solucin a este problema fue muy simple. Cuando un emisor quiere transmitir una trama simplemente la emite, sin preocuparse en ningn momento de s el canal est libre; una vez ha terminado se pone a la escucha, esperando recibir confirmacin de que la informacin ha sido recibida correctamente por el destinatario, que puede comprobarlo mediante el CRC 2 de la trama. Si la confirmacin no llega en un tiempo razonable el emisor supone que ha ocurrido una colisin, en cuyo caso espera un tiempo aleatorio y reenva la trama. Esta tcnica se denomin ALOHA, y fue el primer protocolo de control de acceso al medio (o protocolo MAC, Media Access Control) que se invent. La red se denomin ALOHANET. Aloha es una palabra Hawaiana que se utiliza para saludar, tanto al llegar como al despedirse. Seguramente esta ambigedad pareci apropiada a sus inventores para indicar el carcter multidireccional o broadcast de la transmisin, por contraste con los enlaces punto a punto utilizados hasta entonces donde se sabe con certeza en que sentido viaja la informacin. En el protocolo Aloha original la emisin por parte de cada estacin se hace de forma completamente catica y basta que dos tramas colisionen o se solapen en el tiempo de transmisin nicamente en un bit para que ambas sean completamente intiles; a pesar de ello tanto la primera como la segunda trama sern irremediablemente transmitidas en su totalidad, ya que los emisores slo se percatarn del problema despus de haber terminado la transmisin; adems la segunda trama podra colisionar con una tercera, y as sucesivamente; en situaciones con trfico elevado esto provoca que la red se sature rpidamente, ya que al aumentar la tasa de utilizacin del canal aumentan las colisiones y la eficiencia decae.

CRC= Comprobacin de redundancia cclica es un tipo de funcin que recibe un flujo de datos de cualquier longitud como entrada y devuelve un valor de longitud fija como salida. Tomado de: http://es.wikipedia.org/wiki/Control_de_redundancia_c%C3%ADclica. AREA DE TRANSFERENCIA DE CONOCIMIENTOS

21 de 22

ARQUITECTURA DE REDES

POSTGRADO A DISTANCIA: REDES DE COMUNICACIN DE DATOS

ENLACES DE INTERS Protocolos de la Capa de Enlace http://www.uazuay.edu.ec/estudios/sistemas/teleproceso/apuntes_1/capa_enlace.htm La Capa de Enlace www.uv.es/montanan/redes/capf_03.ppt HDLC: http://fermat.eup.udl.es/~cesar/xc1/Treballs/HDLC-pres.ppt Nivel de Enlace: Introduccin y Control de Acceso al Medio: http://helios.tlm.unavarra.es/asignaturas/ro/ro05_06/clases-pdf/RO_enlace-1.pdf Subcapa de Acceso al Medio https://www.unoweb-s.uji.es/0304/IG20/lista0/theList/IG20T4AccesoMedio.pdf

AREA DE TRANSFERENCIA DE CONOCIMIENTOS

22 de 22

ARQUITECTURA DE REDES