5
. LA INTERFAZ EN LAS COMUNICACIONES DE DATOS
5
. 1 . Transmisión asíncrona y síncrona
Hay
enormes dificultades a la hora de recuperar la señal transmitida por un emisor,
sobre todo debido a que hay que saber cada cuanto tiempo va a llegar un dato;
para esto se suelen usar técnicas de sincronización.
5.1.1. Transmisión asíncrona
La
manera más fácil de conseguir sincronismo es enviando pequeñas cantidades de
bits a la vez , sincronizándose al inicio de cada cadena . Esto tiene el
inconveniente de que cuando no se transmite ningún carácter , la línea está
desocupada .Para detectar errores , se utiliza un bit de paridad en cada cadena
. Usando la codificación adecuada , es posible hacer corresponder un 0 ( por
ejemplo ) a cuando la línea está parada ( con NRZ , cada vez que se quiera
comenzar a transmitir una cadena , se usa un 1 como señal ) .Si el receptor es
un tanto más rápido o lento que el emisor , es posible que incluso con cadenas
cortas ( o tramas , que son las cadenas más los bits adicionales de paridad y
de comienzo y parada ) se produzcan errores como el error de delimitación de
trama ( se leen datos fuera de la trama al ser el receptor más lento que el
emisor ) o el error que se produce al introducirse ruido en la transmisión de
forma que en estado de reposo , el receptor crea que se ha emitido un dato ( el
ruido ) .
Este
tipo de transmisión es sencilla y no costosa , aunque requiere muchos bits de
comprobación y de control .
5.1.2. Transmisión síncrona
En
este tipo de transmisión no hay bits de comienzo ni de parada , por lo que se
transmiten bloques de muchos bits . Para evitar errores de delimitación , se
pueden sincronizar receptor y emisor mediante una línea aparte ( método
utilizado para líneas cortas ) o incluyendo la sincronización en la propia señal
( codificación Manchester o utilización de portadoras en señales analógicas
) . Además de los datos propios y de la sincronización , es necesaria la
presencia de grupos de bits de comienzo y de final del bloque de datos , además
de ciertos bits de corrección de errores y de control . A todo el conjunto de
bits y datos se le llama trama .
Para
bloques grandes de datos , la transmisión síncrona es más eficiente que la asíncrona
.
5
. 2 . Configuraciones de la línea
5.2.1.
Topología
Cuando
sólo es necesaria la conexión de un emisor con un receptor , se utilizan
enlaces punto a punto . Si se quiere utilizar un ordenador central y varias
terminales , se pueden utilizar conexiones punto a punto entre cada terminal y
el computador central , pero éste debe tener un puerto de E/S dedicado a cada
terminal y además una línea de conexión entre cada terminal y el computador
central .
Existe
la posibilidad de conectar un computador central con varias terminales mediante
una línea multipunto y por medio de un sólo puerto de E/S .
5.2.2. Full-Duplex y Semi-Duplex
En
la transmisión semi-duplex cada vez sólo una de las dos estaciones del enlace
punto a punto puede transmitir
En la transmisión full-duplex las dos estaciones pueden simultáneamente enviar
y recibir datos . En transmisión digital , para full-duplex se requieren ( en
medios guiados ) dos cables por conexión ( uno para un sentido y otro para otro
) .
En
transmisión analógica es necesaria la utilización de dos frecuencias para
full-duplex o dos cables si se quiere emitir y recibir en la misma frecuencia .
Generalmente
, los computadores y terminales no están capacitados para transmitir y recibir
datos de una red de larga distancia , y para ello están los módem u otros
circuitos parecidos . A los terminales y computadores se les llama DTE y a los
circuitos ( módem ) de conexión con la red se les llama DCE . Los DCE se
encargan de transmitir y recibir bits uno a uno . Los DTE y DCE están
comunicados y se pasan tanto datos de información como de control . Para que se
puedan comunicar dos DTE hace falta que ambos cooperen y se entiendan con sus
respectivos DCE . También es necesario que los dos DCE se entiendan y usen los
mismos protocolos .
La
interfaz entre el DCE y el DTE debe de tener una concordancia de
especificaciones :
v
De procedimiento : ambos circuitos deben estar conectados con cables y
conectores similares .
v
Eléctricas : ambos deben de trabajar con los mismos niveles de tensión
.
v
Funcionales : debe de haber concordancia entre los eventos generados por
uno y otro circuito .
5.3.1. V.24/EIA-232-E
Es
un interfaz utilizado para conectar DTE con módems
a través de líneas analógicas de telefonía .
Especificaciones
:
v
Conector de 25 contactos .
v
Un solo cable de conexión y otro de tierra .
v
Señalización digital y codificación NRZ-L .
v
Se permite funcionamiento full-duplex .
v
Circuitos de datos , de control , de temporización y de tierra .
v
A cortas distancias es posible evitar el uso de DCE y conectar
directamente DTE a DTE .
5.3.2. La interfaz física de la RDSI
Reduciendo
los circuitos y aumentando la lógica de control se ha conseguido abaratar estos
mecanismos y se ha conseguido un conector de 8 pines para la Red Digital de
Servicios Integrados .
En
estos sistemas , la información de control y de datos van unidas y se separan
en los extremos de las líneas . También es posible el envío de energía por
las mismas líneas ( para control remoto de periféricos por ejemplo ) .
Se
utilizan dos cables de conexión que forman un circuito cerrado ( señalización
diferencial ) y los valores de los bits dependen de la diferencia de tensión de
ambos cables .
Este
tipo de señalización hace que el ruido afecte menos a los datos ya que afecta
por igual a los dos cables , por lo que se anula el ruido .
6
. CONTROL DEL ENLACE DE DATOS
6
. 1 . Control del flujo
Es
una técnica para que el emisor no sobrecargue al receptor al enviarle más
datos de los que pueda procesar . El receptor tiene un buffer de una cierta
capacidad para ir guardando los datos recibidos y tras procesarlos , enviarlos a
capas superiores .
Vamos
a suponer que todas las tramas recibidas llegan con un poco de retardo pero sin
errores y sin adelantarse unas a otras .
6.1.1. Control de flujo mediante parada
y espera
Consiste
en que el emisor envía una trama y al ser recibida por el receptor , éste ( el
receptor ) confirma al emisor ( enviándole un mensaje de confirmación ) la
recepción de la trama . Este mensaje recibido por el emisor es el que le indica
que puede enviar otra trama al receptor . De esta forma , cuando el receptor esté
colapsado ( el buffer a punto de llenarse ) , no tiene más que dejar de
confirmar una trama y entonces el emisor esperará hasta que el receptor decida
enviarle el mensaje de confirmación ( una vez que tenga espacio en el buffer )
.
Este
sistema es el más eficaz para que no haya errores y es el más utilizado cuando
se permiten tramas muy grandes , pero es normal que el emisor parta las tramas
en más pequeñas para evitar que al ser una trama de larga duración , es más
probable que se produzca algún error en la transmisión . También , en LAN's ,
no se suele permitir que un emisor acapare la línea durante mucho tiempo ( para
poder transmitir una trama grande ) .
Otro
problema adicional es que se infrautiliza la línea al estar parada mientras los
mensajes del receptor llegan al emisor .
6.1.2. Control del flujo mediante ventana deslizante
El
problema de que sólo hay una trama cada vez en tránsito por la red se
soluciona con este sistema de ventanas deslizantes .
En
este sistema , el receptor y el emisor se ponen de acuerdo en el número de
tramas que puede guardar el receptor sin procesar ( depende del tamaño del
buffer ) . También se ponen de acuerdo en el número de bits a utilizar para
numerar cada trama ( al menos hay que tener un número de bits suficientes para
distinguir cada una de las tramas que quepan en el buffer del receptor ) , Por
ejemplo , si en el buffer del receptor caben 7 tramas , habrá que utilizar una
numeración con 3 bits ( 23 = 8 > 7 ) .
El
emisor transmite tramas por orden ( cada trama va numerada módulo 2número
de bits ) hasta un máximo de el número máximo de tramas que quepan en
el buffer del receptor ( en el ejemplo , 7 ) . El receptor irá procesando las
tramas que le lleguen y confirmando que admite tramas a partir de una dada (
hasta un máximo de 7 en el ejemplo ) . Por ejemplo , si ha procesado hasta la
trama 5 , confirmará el número 6 ( es decir , que puede procesar las tramas 6
, 7 , 0 , 1 , 2 , 3 y 4 ) . Al recibir el emisor la confirmación de la trama 6
, emitirá todas las que no haya transmitido desde la 6 hasta la 4 ( 6 , 7 , 0 ,
1 , 2 , 3 y 4 ) . Por ejemplo , se ya había enviado la 6 , 7 , 0 y 1 , sabe que
puede enviar la 2 , 3 y 4 .
Existe
la posibilidad de indicarle al emisor la confirmación de tramas recibidas y
prohibirle el envío de más tramas ( con el mensaje de Receptor No Preparado )
.
Cuando
la dos estaciones son emisoras y receptoras , se pueden utilizar dos ventanas
por estación , una para el envío y otra para la recepción . Se puede utilizar
la misma trama para enviar datos y confirmaciones , mejorando así la utilización
del canal .
Este
sistema de transmisión es mucho más eficiente que el de parada y espera , ya
que pueden haber más de una trama a la vez en las líneas de transmisión ( en
el de parada y espera sólo puede haber una trama a la vez ) .
6
. 2 . Detección de errores
Cuanto
mayor es la trama que se transmite , mayor es la probabilidad de que contenga
algún error . Para detectar errores , se añade un código en función de los
bits de la trama de forma que este código señale si se ha cambiado algún bit
en el camino . Este código debe de ser conocido e interpretado tanto por el
emisor como por el receptor .
6.2.1. Comprobación de paridad
Se
añade un bit de paridad al bloque de datos ( por ejemplo , si hay un número
par de bits 1 , se le añade un bit 0 de paridad y si son impares , se le añade
un bit 1 de paridad ) .
Pero
puede ocurrir que el propio bit de paridad sea cambiado por el ruido o incluso
que más de un bit de datos sea cambiado , con lo que el sistema de detección
fallará .
6.2.2. Comprobación de redundancia cíclica ( CRC )
Dado
un bloque de n bits a transmitir , el emisor le sumará los k bits necesarios
para que n+k sea divisible ( resto 0 ) por algún número conocido tanto por el
emisor como por el receptor .
Este
proceso se puede hacer bien por software o bien por un circuito hardware ( más
rápido ) .
6
. 3 . Control de errores
Se
trata en este caso de detectar y corregir errores aparecidos en las
transmisiones . Puede haber dos tipos de errores :
v
Tramas perdidas
: cuando una trama enviada no llega a su destino .
v
Tramas dañadas
: cuando llega una trama con algunos bits erróneos .
Hay
varias técnicas para corregir estos errores :
1.
Detección de errores
: discutida antes .
2.
Confirmaciones positivas :
el receptor devuelve una confirmación de cada trama recibida correctamente .
3.
Retransmisión después de la expiración
de un intervalo de tiempo : cuando ha pasado un
cierto tiempo , si el emisor no recibe confirmación del receptor , reenvía
otra vez la trama .
4.
Confirmación negativa y retransmisión
: el receptor sólo confirma las tramas recibidas erróneamente , y el emisor
las reenvía .
Todos
estos métodos se llaman ARQ ( solicitud de repetición automática ) . Entre
los más utilizados destacan :
6.3.1. ARQ con parada-y-espera
Se
basa en la técnica de control de flujo de parada-y-espera . Consiste en que el
emisor transmite una trama y hasta que no recibe confirmación del receptor , no
envía otra .
Puede
ocurrir que :
v
La trama no llegue al receptor , en cuyo caso , como el emisor guarda una
copia de la trama y además tiene un reloj , cuando expira un cierto plazo de
tiempo sin recibir confirmación del receptor , reenvía otra vez la trama .
v
La trama llegue al receptor deteriorada , en cuyo caso no es confirmada
como buena por el receptor . Pero puede ocurrir que el receptor confirme una
trama buena pero la confirmación llegue al emisor con error , entonces , el
emisor enviaría otra vez la trama . Para solucionar esto , las tramas se
etiquetan desde 0 en adelante y las confirmaciones igual .
Es
una técnica sencilla y barata pero poco eficiente .
6.3.2. ARQ con adelante-atrás-N
Se
basa en la técnica de control de flujo con ventanas deslizantes .
Cuando
no hay errores , la técnica es similar a las ventanas deslizantes , pero cuando
la estación destino encuentra una trama errónea , devuelve una confirmación
negativa y rechaza todas las tramas que le lleguen hasta que reciba otra vez la
trama antes rechazada , pero en buenas condiciones . Al recibir la estación
fuente una confirmación negativa de una trama , sabe que tiene que volver a
transmitir esa trama y todas las siguientes . Si el receptor recibe la trama i y
luego la i+2 , sabe que se ha perdido la i+1 , por lo que envía al emisor una
confirmación negativa de la i+1 .
La
estación emisora mantiene un temporizador para el caso de que no reciba
confirmación en un largo periodo de tiempo o la confirmación llegue errónea ,
y así poder retransmitir otra vez las tramas .
6.3.3. ARQ con rechazo selectivo
Con
este método , las únicas tramas que se retransmiten son las rechazadas por el
receptor o aquellas cuyo temporizador expira sin confirmación . Este método es
más eficiente que los anteriores . Para que esto se pueda realizar , el
receptor debe tener un buffer para guardar las tramas recibidas tras el rechazo
de una dada , hasta recibir de nuevo la trama rechazada y debe de ser capaz de
colocarla en su lugar correcto ( ya que deben de estar ordenadas ) .
Además , el emisor debe de ser capaz de reenviar tramas fuera de orden .
Estos
requerimientos adicionales hacen que este método sea menos utilizado que el de
adelante-atrás-N .
7
. CONMUTACION DE CIRCUITOS
7
. 1 . Redes conmutadas
Cuando
los datos hay que enviarlos a largas distancias ( e incluso a no tan largas ) ,
generalmente deben pasar por varios nodos intermedios . Estos nodos son los
encargados de encauzar los datos para que lleguen a su destino .
En
conmutación de circuitos , los nodos intermedios no tratan los datos de ninguna
forma , sólo se encargan de encaminarlos a su destino .
En
redes de comunicación conmutadas , los
datos que entren en la red provenientes de alguna de las estaciones , son
conmutados de nodo en nodo hasta que lleguen a su destino .
Hay
nodos sólo conectados a otros nodos y su única misión es conmutar los datos
internamente a la red . También hay nodos conectados a estaciones y a otros
nodos , por lo que deben de añadir a su función como nodo , la aceptación y
emisión de datos de las estaciones que se conectan .
Los
enlaces entre nodos están multiplexados en el tiempo o por división de
frecuencias .
Generalmente
hay más de un camino entre dos estaciones , para así poder desviar los datos
por el camino menos colapsado .
Para
redes de área amplia , generalmente se utilizan otras técnicas de conmutación
: conmutación de circuitos y conmutación de paquetes .
7
. 2 . Redes de conmutación de circuitos
Para
cada conexión entre dos estaciones , los nodos intermedios dedican un canal lógico
a dicha conexión . Para establecer el contacto y el paso de la información de
estación a estación a través de los nodos intermedios , se requieren estos
pasos :
1.
Establecimiento del circuito :
el emisor solicita a un cierto nodo el establecimiento de conexión hacia una
estación receptora . Este nodo es el encargado de dedicar uno de sus canales lógicos
a la estación emisora ( suele existir de antemano ) . Este nodo es el encargado
de encontrar los nodos intermedios para llegar a la estación receptora , y para
ello tiene en cuenta ciertos criterios de encaminamiento , coste , etc...
2.
Transferencia de datos :
una vez establecido el circuito exclusivo para esta transmisión ( cada nodo
reserva un canal para esta transmisión ) , la estación se transmite desde el
emisor hasta el receptor conmutando sin demoras de nodo en nodo ( ya que estos
nodos tienen reservado un canal lógico para ella ) .
3.
Desconexión del circuito :
una vez terminada la transferencia , el emisor o el receptor indican a su nodo más
inmediato que ha finalizado la conexión , y este nodo informa al siguiente de
este hecho y luego libera el canal dedicado . así de nodo en nodo hasta que
todos han liberado este canal dedicado
Debido
a que cada nodo conmutador debe saber organizar el tráfico y las conmutaciones
, éstos deben tener la suficiente "inteligencia" como para realizar
su labor eficientemente .
La
conmutación de circuitos suele ser bastante ineficiente ya que los canales están
reservados aunque no circulen datos a través de ellos .
Para
tráfico de voz , en que suelen circular datos ( voz ) continuamente , puede ser
un método bastante eficaz ya que el único retardo es el establecimiento de la
conexión , y luego no hay retardos de nodo en nodo ( al estar ya establecido el
canal y no tener que procesar ningún nodo ninguna información ) .
La
red pública de telefonía utiliza conmutación de circuitos . Su arquitectura
es la siguiente :
v
Abonados :
son las estaciones de la red .
v
Bucle local :
es la conexión del abonado a la red . Esta conexión , como es de corta
distancia , se suele hacer con un par trenzado .
v
Centrales
: son aquellos nodos a los que se conectan los abonados ( centrales finales ) o
nodos intermedios entre nodo y nodo ( centrales intermedias ) .
v
Líneas principales
: son las líneas que conectan nodo a nodo . Suelen usar multiplexación por
división en frecuencias o por división en el tiempo
La
conmutación de circuitos , a pesar de sus deficiencias es el sistema más
utilizado para conectar sistemas informáticos entre sí a largas distancias
debido a la profusión e interconexión que existe ( debido al auge del teléfono
) y a que una vez establecido el circuito , la red se comporta como si fuera una
conexión directa entre las dos estaciones , ahorrando bastante lógica de
control .
7
. 3 . Conceptos sobre conmutación
Cada
nodo de conmutación de circuitos consta básicamente de un conmutador digital ,
circuito que tiene una serie de conexiones al exterior ( cada una es un canal )
y una lógica de puertas interna que conecta unos canales con otros cuando se
requieren estas conexiones . Por lo que dos canales conectados por el conmutador
es como si estuvieran unidos sin interrupción . El conmutador posee la lógica
de control suficiente para conectar y desconectar canales conforme sea necesario
. Estos conmutadores deben permitir conexión full-duplex ( típica en telefonía
) .
El
conmutador digital se compone de :
v
Interfaz de red
: incluye las funciones y hardware para conectar los dispositivos digitales ( y
analógicos ) a la red .
v
Unidad de control
: establece , gestiona y corta las conexiones conforme se le requieran al
sistema .
Hay
dos tipos básicos de redes respecto a su capacidad o no de bloquear las
comunicaciones entre dos estaciones :
1.
Bloqueantes:
aquellas que impiden una conexión cuando no es posible dedicar canales para
ella ( por ejemplo en telefonía ya que no suele haber muchos teléfonos
funcionando a la vez al ser las conexiones relativamente cortas ) .
2.
No bloqueantes
: aquellas que siempre disponen de algún canal para cada conexión ( esto debe
ser así para conexiones entre sistemas informáticos en los que la conexión típica
es de larga duración ) .
7.3.1.
Conmutación por división en el espacio
Son
conmutadores en los que las conexiones entre líneas de entrada y salida son
conexiones físicas (generalmente con matrices de puertas físicas que se
cierran o abren) .
Sus
limitaciones principales son:
v
Al crecer el número de líneas de conexión, deben crecer con el
cuadrado, los puntos de cruce; algo muy costoso.
v
La pérdida de un punto de cruce interrumpe la conexión entre dos líneas.
v
Hay muchos puntos de cruce
que no se utilizan nunca. Por lo que es muy ineficiente.
Los
conmutadores con múltiples etapas solucionan algunos de los inconvenientes
anteriores :
v
Se reduce el número de puntos de cruce .
v
Hay más de un camino posible entre dos líneas .
Estos
sistemas deben de ser bloqueantes .
7.3.2. Conmutación por división en el tiempo
Estos
sistemas constan de las líneas de entrada ( una para cada canal de acceso al
conmutador ) y lo que hacen es muestrear una a una cada línea y lo que
encuentren ( ya sean bits , bytes o bloques ) lo pasan a unas memorias llamadas
ranuras ( una por cada canal ) de donde serán pasados a sus correspondientes líneas
de salida . Las líneas de entrada son fijas para cada emisor , pero las líneas
de salida se irán conmutando dependiendo de las velocidades de asimilación de
datos por las líneas de salida .
Las
velocidades de trabajo del sistema deben de ser lo suficientemente altas para
que ninguna entrada supere a ésta en velocidad .