Sei sulla pagina 1di 104

Tema 4

Fundamentos de
Protocolos
Parte 1

22/04/2013
I

Nivel de Enlace
Funciones:
Lograr comunicacin confiable y eficiente entre dos
mquinas.
Control de errores.
Proveer una interfaz de servicios bien definidos al
nivel de red. ste servicio puede ser ofrecido as:
Servicio no confirmado, no orientado a la conexin
Servicio confirmado, no orientado a la conexin
Servicio confirmado orientado a la conexin.
En este caso es responsabilidad de enlace de datos hacer
que las lneas no confiables y con errores parezcan perfectas
o por lo menos muy buenas.

Fundamentos de los protocolos


Los protocolos se especifican con uno de varios
mtodos y formalismos precisos. Lo normal es usar
diagramas de secuencia de tramas, tan solo para ilustrar
aspectos concretos del protocolo, no como una forma de
especificarlo. Los tres mtodos mas comunes para
especificar un protocolo de comunicacin son:
Los diagramas de transicin de estados.
Las tablas de sucesos-estados extendidas.
Programas estructurados de alto nivel.

Verificacin de Protocolos

Mquinas de Estado
Finito
Redes de Petri

Un estado en particular se
designa como estado
inicial.
Utilizando el analisis de
asequibilidad se determina
que estados son
alcanzables y cuales no.

El modelo de un protocolo en referencia a


una maquina de estados se puede conformar
por una cuadrupla (S, M, I, T), donde:
S es el set de estados en que el canal y los
procesos pueden encontrarse.
M es el set de frames que se pueden
intercambiar a travs del canal
I es el set de estados iniciales de los procesos.
T es el set de transiciones entre estados.

Modelos de Mquina de estado


finito
SRC

S=0,1 TX SEND
R=0,1 RX ESPERA
C=0,1,A,- Estado del canal

(a) Protocolo 3 ARQ. (b) Tx

Nueve tipos de transicin se muestran en


la figura previa.
0 : Canal perdiendo su contenido .
1 : Canal entregando correctamente el
pacquete 0 al receptor (este cambia su
estado para recibir el paquete 1 y emitiendo
un ACK)
Tambin corresponte al receptor entregando
el paquete 0 a la capa de red

Operacin normal,
1, 2, 3, y 4 se repiten en orden una y otra vez. En
cada ciclo se entregan dos paquetes, llevando al
transmisor al estado inicial de intento de envio de un
nuevo frame con secuencia 0
Si el canal pierde el frame 0, hace una transicion de
(000) a (00).

Eventualmente,
El transmisor provoca un time out (transition 7) y el
sistema retorna a (000).
La prdida de un ACK es mas complicado
requiriendo dos transiciones, (7 y 5, o 8 y 6) para
reparar el dao.

Redes de Petri
2 lugares y dos transiciones

4 elementos bsicos:
lugares, transiciones, arcoss, y tokens.

Lugar es un estado en el que el sistema


se encuentra.
El sistema se encuentra en el estado A
indicado por el token.
Una transicion se indica por una linea
vertical. Cada transicin tiene una o mas
arcos de input y uno o mas arcos de
output que van a sus lugares de salida

A Petri net model for protocol 3.

A diferencia de la maquina de estados finitos,


no existen estados compuestos aca, el
estado del Tx, el canal y el estado del
receptor se representan separadamente.
1 Tx de frame 0 normalmente
2 Tx de frame 0 en timeout respectivamente.
3 Tx de frame 1 normalmente
4 Tx de frame 1 en timeout respectivamente.
5 Tx de frame 0
6, Tx de ACK
7 Tx de frame 1
8 y 9 ocurren cuando un data frame con error de
secuencia llega al Rx.
10 y 11 representan la llegada en el Rx de el
siguiente frame secuenciado y su entrega a la
capa de red.

Tipos de Transmisin
Mejor Intento
Modo No orientado a Conexin.
Cuando se detecta un error as sea un solo bit, todo el bloque
de datos es descartado.

Transmisin Confiable
Modo No orientado a Conexin.
Detecta cuando se presentar errores y solicita retransmisin
Un conjunto de reglas o procedimientos de control se deben
adoptar por ambos interlocutores para asegurar la
comunicacin confiable .

Control de Errores
Es denominado asi al Ciclo de Deteccion/correccion de errores
Protocolo de Capa de Enlace = Control de Errore + otros
mecanismos de control

Control de Errores
Control Manual
Ejemplo:Datos introducidos desde teclado
El programa ejecutandose, lee y almacena el
caracter recibido y lo despliega en el display .
Si el caracter desplegado no es el que nosotros
queriamos , simplemente a traves de un caracter
especial (Del, Backspace, CTRLH) el programa
descarta el caracter previo y lo elimina de la pantalla

Control de Errores(contd)
Echo checking
Conexin de Terminales (ej. A traves de PSTN)
En vez de que el caracter sea desplegado en
pantalla este se envia a la terminal remota .
Este lee , almacena y lo retransmite de vuelta al
terminal transmisor, el cual lo despliega
Si este caracter no es el deseado, se usa el caracter
especial para descartar el caracter previo y reiniciar
la transmisin.

Control de Errores(contd)
En contraste cuando una terminal envia
bloques de caracteres (frames)a traves de
un enlace serial, el programa en la
terminal destino debe realizar el
procedimiento sin intervencion del usuario.
Tpicamente este revisa el frame recibido
y luego envia un frame pequeo (mensaje
de control) ya sea para dar el ACK o pedir
una copia del frame, esto es conocido
como ARQ (Automatic Repeat Request)

Protocolos de Control de
Errores
Hay dos tipos de tcnicas
que se pueden ejecutar
cuando surge un error:
FEC y ARQ. En ambos
casos el receptor es el
encargado de tomar las
decisiones pertinentes.

Un primer paso comn


es detectar el error. En
general se emplea un
cdigo de redundancia
cclica (CRC).

El aspecto general de una trama es el de la figura,


integrada por tres partes : la cabecera (que
comprende informacin de control como los
nmeros de secuencia, direcciones origen y
destino, tipo de protocolo,...), los datos (que en
funcin del protocolo tendrn una longitud mxima
mnima, o ambas) y el CRC o equivalente.

Los protocolos se diferencian precisamente


por las decisiones que toman una vez detectado el
error: correccin o recuperacin.

Los cdigos de deteccin solamente (ARQ) o de


deteccin y correccin de error (FEC) se
denominan, en general, Cdigos de Bloque. La
redundancia se agrega a cada palabra de
datos (o palabra mensaje) y la expresin total
[datos + redundancia] se denomina palabra
cdigo o palabra codificada.
El nmero de dgitos en cada palabra cdigo es
la longitud de bloque, y habr tantas palabras
cdigo como palabras mensaje o palabras de
datos. Si la palabra mensaje tiene m dgitos y la
redundancia agregada es de k dgitos, la
longitud de bloque de la palabra cdigo ser de
n = (m + k) dgitos.

FEC
Para sistemas en que la
informacin se desplaza en
un slo sentido (enlaces
satlite,...). El receptor
detecta el error y
dependiendo de la clase que
sea podr corregirlo o no. La
probabilidad de que haya
error es entonces la
probabilidad de que no se
detecte combinado con el
caso en que an detectndolo
no se pueda corregir.

ARQ
Para sistemas en que la
informacin circula en ambos
sentidos. Si el receptor detecta
un error solicita al origen que
repita la transmisin. La
probabilidad de que haya error
es igual a la probabilidad de no
detectarlo. Existen tres tipos
de ARQ basados en : parada y
espera, y ventana deslizante
(REJ y SREJ). Inconvenientes
de ARQ son la necesidad de
memoria y una lgica adicional
para solicitar los reenvios
cuando sea necesario
(temporizadores...).

Para sistemas en que la informacin circula en


ambos sentidos.
Si el receptor detecta un error solicita al origen que
repita la transmisin.
La probabilidad de que haya error es igual a la
probabilidad de no detectarlo.
Existen tres tipos de ARQ basados en : parada y
espera, y ventana deslizante (REJ y SREJ).
Inconvenientes de ARQ son la necesidad de
memoria y una lgica adicional para solicitar los
reenvios cuando sea necesario (temporizadores...).

Tipos de ARQ
Idle RQ (Inactiva)
Se utiliza en esquemas de transmisin de
tipo character-oriented.
Esta siendo reemplazado por ineficiente

Continuous RQ
Se utiliza en esquemas de transmisin de
tipo Bit-oriented
Selective repeat
Go-back-N retransmission

Idle RQ
Be submitted over a serial data link
between a source DTE and a destination
DTE
Implicit retransmission
Secondary S acknowledges only correctly
received frames and Primary P interprets the
absence of an acknowledgement as an
indication that the previous frame was
corrupted

Idle RQ (contd)
Explicit retransmission
When S detects that a frame has been
corrupted, it returns a negative
acknowledgement to request that another
copy of the frame is transmitted

Idle RQ (contd)
Implicit
retransmission

Idle RQ (contd)
Explicit Request

Idle RQ (contd)
N(S)
Send sequence number
The sequence number
carried in each I-frame

N(R)
Receive sequence
number
The sequence number in
each ACK and NAK
frame

ARQ: PARADA Y ESPERA.


INACTIVA
Parada-y-espera de ARQ est basada en la tcnica de control de
flujo de parada-y-espera. La estacin fuente transmite una nica
trama y espera el ACK; ninguna otra trama puede ser transmitida
hasta que no llegue la contestacin de la estacin destino.
Es la ms simple de las tcnicas. Los pasos que llevaran a cabo
las dos mquinas en dilogo seran:
1. El transmisor enva una trama al receptor.
2. El receptor la recoge, y devuelve otra trama de aceptacin
(ACK).
3. Cuando el transmisor recibe esta trama sabe que puede
realizar un nuevo envo....
4. Si pasado un cierto tiempo predeterminado no ha llegado
acuse de recibo, el emisor retransmite la trama.

Dos tipos de errores caractersticos pueden ocurrir.


Primeramente la trama que llega al destino es defectuosa o
se ha perdido; el receptor detecta esta situacin con las
tcnicas de deteccin de errores vistas antes y
simplemente descarta la trama. Por su parte, para prevenir
esta situacin la fuente est preparada con un timer.
El segundo tipo de error consiste en que sea la trama de
respuesta, ACK, la que se pierde. Como consecuencia la
fuente no recibe el acuse de recibo y retransmite la misma
trama que ya haba sido recibida; para solucionarlo, y que
el receptor reconozca cuando dos tramas similares se han
enviado consecutivamente, las tramas cuentan en su
cabecera con un bit que a modo de nmero de secuencia
alterna el valor 0 con el 1.

Link Utilization

RQ Continua

La utilizacin del link se mejora a costa de mayores


requerimientos de buffer storage.

RQ Continua
Cuando ocurre un error
Rechazo simple
Repeticin Selectiva
S selects and requests the retransmission of just
those frames in the sequence that are corrupted

Go-back-N
S detects the receipt of an out-of-sequence I-frame
and requests P to retransmit all outstanding
unacknowledged I-frames from the last correctly
received, and hence acknowledged, I-frame

RECHAZO SIMPLE.
Es la tcnica ms comnmente usada en el control de errores
con ventana deslizante.
La fuente envia tramas consecutivamnete hasta un nmero
fijado por el tamao de la ventana, la posicin de cada trama
en la ventana est determinado por su nmero de secuencia .
Mientras que no haya errores el receptor reconocer las
tramas que le llegan (ver RR y RNR).
Si detecta un error devuelve un ACK negativo (REJ=reject).
La estacin receptora descarta no slo esta trama, sino todas
las siguientes hasta que la primera llegue correctamente. La
estacin origen, cuando recibe un REJ debe retransmitir la
trama errnea y todas las que iban a continuacin.
RR (n) (receptor preparado) Indica a la fuente que ha recibido bien hasta la (n-1), y que
espera la n.
RNR (n) (receptor no preparado) Indica a la fuente que se han recibido bien hasta la
trama (n-1) incluida, pero que no siga transmitiendo por el momento.

En que casos se usa?


Trama daada o perdida:
Si la detecta el receptor, devuelve un REJ.
Si se pierde se produce una alteracin en el nmero de
secuencia en recepcin, y el destino devulve un REJ.
Si se pierde y era la ltima el temporizador de la fuente
se agota y pregunta por el estado (manda un RR).

RR daado o perdido:
Si se recibe un RR posterior no hay problema.
Si no, la fuente pregunta por el estado (RR).

REJ daado o perdido:


Se pregunta por el estado.

RECHAZO SELECTIVO.
Con ARQ selectivo las nicas tramas que es necesario
retransmitir son las defectuosads o perdidas, es decir, de las que
se recibe un ACK negativo (que en este caso se denomina
SREJ).
Esta tcnica, por una parte parece ms eficiente puesto que
minimiza la utilizacin del canal.
Por otro lado el buffer del receptor debe ser lo suficientemente
grande como para guardar las tramas posteriores a la incorrecta
hasta que sta sea retransmitida.
Adems, el receptor debe de contar con la lgica suficiente para
reinsertar la trama en su posicin adecuada una vez
retransmitida.
El transmisor tambin requiere una lgica ms compleja para ser
capaz de selecionar una trama de la secuencia.
Por estas razones, ARQ selectivo es mucho menos usado que el
ARQ de rechazo simple.

RECHAZO SELECTIVO.
Dos Implementaciones
Retransmisin Implicita
El Rx ACK a los frames recibidos
correctamente y el Tx determina de las
secuencias de ACK-frames recibidas que
un frame se perdio.

Requerimiento Explicito
Rx retorna un ACK especifico negativo para
un frame que esta ausente en la secuencia.

Adems de incrementarse la complejidad, el tamao


de la ventana se ve considerablemente reducido.
Volvamos al ejemplo del nmero de secuencia de
tres bits, y asumamos que el tamao de la ventana
es 7. Consideremos el siguiente caso:
1. A transmite las tramas de la 0 a la 6 a B.
2. B las recibe y devuleve un RR(7) por todas ellas.
3. RR(7) se pierde.
4. A retransmite todas las tramas.
5. B, que esperaba las tramas 7, 0, 1, 2, 3, 4 y 5,
considera que la 7 se ha perdido y acepta el resto
como nuevas.

Go-back-N

Cuando el Rx detecta que


existe un frame fuera de
secuencia, informa al Tx
que reinicie la
retransmision desde un
nmero especfico.

Eficiencias Respecto a la trama


p: probabilidad de que un slo bit sea
errneo,
tambin se denomina tasa binaria de error.
Peb: probabilidad de error de bloque,
es decir, de que una trama llegue con al
menos un error.
Pneb: probabilidad de que una trama llegue
sin ningn error.
Siendo n el nmero de bits en una trama,
y asumiendo que la probabilidad de error de
bit, p,
es constante e independiente para cada bit :
Pneb = (1-p)^n y Peb = 1- (1-p)^n

Parada y Espera

Rechazo Selectivo con Envio Continuo

Rechazo Simple con Envio Continuo

Peb=10-3

http://www.eas.asu.edu/trace/eee4
59_sp02/applet/archana/gupta5463
.html : Selective Repeat Protocol
http://media.pearsoncmg.com/aw/a
w_kurose_network_2/applets/goback-n/go-back-n.html : Go Back N

Tema 4
Fundamentos de
Protocolos
Parte 2

03/5/2007
I

Tcnicas de Control de Flujo.


Cuando una trama llega a una mquina conectada a algn tipo de
red, antes de pasar la informacin a niveles superiores, la capa de
enlace realiza una serie de operaciones sobre la trama que
ocupan un espacio en la memoria e implican un tiempo, funcin
de la mquina, de manera que el proceso de recepcin no es
instantneo.

Esta limitacin en el espacio de memoria hace que se


presente un serio problema cuando un transmisor
sistemticamente quiere transmitir tramas a mayor velocidad que
aquella con que puede recibirlas el receptor. Esta situacin puede
ocurrir fcilmente cuando el transmisor opera en una computadora
rpida (o con baja carga) y el receptor en una mquina lenta (o
con sobrecarga). El transmisor puede enviar tramas rpidamente
hasta que satura al receptor, que comenzar a desechar aquellas
a las que no pueda atender.

Area de Influencia

Para evitar esta situacin se hace


necesario llevar un control del flujo en el
enlace, manejando la velocidad a la que
el emisor enva las tramas para que no
sature al receptor. Este control de la
velocidad generalmente requiere algn
mecanismo de realimentacin, para que
el transmisor pueda saber si el receptor
puede mantener el ritmo o no.

Un protocolo de nivel de enlace que quiere enviar


tramas eficientemente debe de alguna manera ser
capaz de recuperar las tramas perdidas o descartadas.
Esto se consigue normalmente usando una
combinacin de dos mecanismos fundamentales:
acuses de recibo (acknoledgments) y temporizadores
(timeouts). Un acuse de recibo, comunmente referido
como ACK, es una pequea trama de control con que
el receptor informa al emisor de que ha recibido la
transmisin. Si el emisor no recibe un ACK en un
tiempo razonable la retransmite; este tiempo est
medido por un temporizador.

1.1.- Parada-y-Espera
Es la ms simple de las tcnicas. Los pasos que
llevaran a cabo las dos mquinas en dilogo seran:
1. El transmisor enva una trama al receptor.
2. El receptor la recoge, y devuelve otra trama de
aceptacin (ACK).
3. Cuando el transmisor recibe esta trama sabe que
puede realizar un nuevo envo....
4. Si pasado un cierto tiempo predeterminado no ha
llegado acuse de recibo, el emisor retransmite la
trama.

Sin embargo, la tcnica de parada-yespera presenta un importante


inconveniente. Supongamos que el
transmisor enva una trama y el receptor
da el acuse de recibo, pero de alguna
manera el ACK se pierde o se retrasa en
llegar. Esta situacin se ha ilustrado en
las figuras (c) y (d). En ambos casos el
emisor piensa que el tiempo ha expirado
y retransmite la trama, pero el receptor
ya haba recogido una y cree que sta
que le llega ahora es otra diferente. Para
solucionar este problema, la cabecera
de una trama del protocolo de parada-yespera incluye un bit a modo de nmero
de secuencia (ver apartado 1.2), que
puede tomar los valores 0 y 1; los
nmeros de secuencia empleados para
tramas consecutivas son alternos , como
se ilu

La principal limitacin del algoritmo de parada-y-espera


es que el enlace est ocupado por una nica trama cada
vez, es decir, se est desaprovechando la capacidad del
enlace. Consideremos, por ejemplo, un enlace de
1.5Mbps, y un tiempo de propagacin de 45ms (roundtrip time, RTT). Este enlace tiene un producto de retraso
x ancho de banda de 67.5Kb, o aproximadamente 8KB.
Como el emisor slo puede enviar una trama cada
45ms, y asumiendo que el tamao de la trama e de
1KB, esto implica una tasa de transmisin mxima de
1024 x 8/0.045 = 128Kbps, que es aproximadamente un
octavo de la capacidad total del canal. Para hacer un
uso ms eficiente del canal sera pues deseable el
transmitir ms tramas antes de recibir acuse de las
anteriores.

PRESTACIONES.
Restringindonos al caso en que slo se puede
enviar una trama cada vez, encontramos dos posibles situaciones,
definidas por el tiempo de transmisin y el tiempo de propagacin:

1.- Tiempo de Transmisin, Ttx: tiempo que tarda una mquina en pasar
una trama al medio desde que sle el primer bit hasta el ltimo. Se define
como el cociente entre la longitud de la trama (L) y el rgimen binario
en el canal (R).

Ttx = L / R
2.- Tiempo de Propagacin, Tprop: tiempo que tarda una unidad de
informacin en pasar de un extremo del canal al otro. Se define como el
cociente entre la distancia (d) o longitud del enlace, y la velocidad del
medio de transmisin (v).

Tprop = d / v

1: antes de empezar a ser recibida, la trama ya se ha


terminado de transmitir: Ttx < Tprop:
2: la trama est siendo recibida, y an no se ha
terminado de transmitir: Ttx > Tprop:

Claramente se observa que el canal se


aprovecha ms eficientemente en la segunda
ocasin. Si se define la eficiencia (U) como el
porcentaje de tiempo que el canal est ocupado
durante una transmisin, la eficiencia es mucho
mayor cuando Ttx > Tprop:

Para calcular la eficiencia suponemos que un terminal quiere transmitir un mensaje que
divide en n tramas; esto supone que el tiempo de transmisin del mensaje sea: Ttxm = n
x Ttrama, donde Ttrama el el tiempo de transmisin y propagacin de una sla de las
tramas (y su ACK correspondiente), y que Ttotal = n x Ttrama. Todos estos tiempos
estn representados en el siguiente diagrama en el caso en que n=3:

El esquema anterior se reduce a

* Si Ttx < Tprop : a>1 U pequea (menor del


33%) parada-y-espera resulta muy ineficiente*
Si Ttx > Tprop a<1 U ms elevada (mayor del
33%) parada-y-espera resulta menos ineficiente

Por ltimo, la eficiencia permite calcular la tasa binaria real con


que se estn transmitiendo y recibiendo datos por un enlace. Un
canal puede ofrecer una capacidad determinada, pero quiz el
protocolo no permita alcanzar esa cifra. Se define la capacidad
eficaz como la tasa binaria conque los bits se desplazan por la
lnea:

1.2.- Ventana Deslizante


En este algoritmo el tmino ventana de transmisin se refiere a
un buffer en el cual se almacenan copias de las tramas enviadas,
en espera de recibir el ACK correspondiente; si no llegan en el
tiempo previsto, se realiza una nueva copia y se retransmite la
trama. El nmero de secuencia de transmisin, N(S), es la
posicin que ocupa la trama enviada en el buffer. El nmero de
secuencia viaja en la cabecera de la trama, dentro del campo de
control.

Por ventana de recepcin se entiende el buffer donde se


almacenan las tramas que llegan a una mquina por alguno de sus
enlaces. En este buffer esperan a ser procesadas, y a que se
devuelva el acuse de recibo correspondiente a cada una de ellas,
para que la mquina origen sepan que la transmisin ha llegado
sin problemas a su destino. El nmero de secuencia de
recepcin, N(R), es la posicin que ocupa la trama recibida en el
buffer de recepcin.

igura se ilustra el mecanismo del algoritmo para una ventana de tamao 4:

En el campo de control de la trama habr n bits que expresarn el nmero


de secuencia.
El tamao mximo de la ventana debe cumplir que :
W= 2n-1
Por ejemplo, para W=4, n>2

El algoritmo de ventana deslizante es como sigue:


primero el emisor asigna un nmero de secuencia a
cada trama. El emisor controla tres variables:
1. El tamao de la ventana de transmisin (TVT): que
ser finito. Representa el nmero mximo de tramas
que el emisor puede enviar sin recibir ACK de la
primera de ellas.
2. El nmero de secuencia del ltimo ACK recibido
(UAR).
3. El nmero de secuencia de la ltima trama
enviada (UTE).

El transmisor debe respetar la siguente inecuacin: UTE - UAR < TVT , o


como mucho igual. Esta situacin se ilustra en la figura:

Por su parte el receptor mantiene otras tres variables:

1. El tamao de la ventana de recepcin (TVR): que indica el mximo


nmero de tramas que el receptor puede aceptar.2. El nmero de
secuencia de la ltima trama aceptada (UTA): ltima trama procesada.3.
El nmero de secuencia de la siguiente trama esperable (STE).

R (n) (receptor preparado) Indica a la fuente que ha recibido bien


hasta la (n-1), y que espera la n.RNR (n) (receptor no preparado)
Indica a la fuente que se han recibido bien hasta la trama (n-1)
incluida, pero que no siga transmitiendo por el momento.

Flow Control
Flow control
Be concerned with controlling the rate of
transmission of characters or frames on a
link so that the receiver always has sufficient
buffer storage resources to accept them prior
to processing

X-ON/X-OFF
A character-oriented terminal-to-computer link
X-OFF
To the controlling device within the terminal,
instructing it to cease transmission
On receipt of the X-OFF character, the terminal
either ignores and further characters entered at the
keyboard or buffers them in a local buffer until the
overload has been cleared

X-ON/X-OFF (contd)
X-ON
When the overload condition decays and the
computer is able to accept further characters,
it returns a companion control character XON to inform the terminal control device that
it may restart sending characters

Sliding window
Sliding window
It sets a limit on the number of I-frames that P may
send before receiving an ack.
P monitors the # of unacknowledged I-frames
currently held in the retransmission list
If the dest side of the link is unable to pass on the
frames sent to it
S stops returning ack frames
The retransmission list at P builds up and this in turn can be
interpreted as a signal for P to stop transmitting further
frames until ack start to flow again

Sliding window (contd)


Send window
the max limit is set on the number of I-frames
that can be awaiting ack
If set to 1, it reverts to idle RQ

Receive window
the max # of frame buffers required at S

Sliding window (contd)

Sequence numbers
Until now
Be assumed that the sequence # inserted
into each frame by P is imply the previous
sequence # plus one and that the range of #
available is infinite
It is possible to limit the range of sequence #
required to identify each transmitted frame
uniquely

Sequence numbers (contd)

Sequence numbers (contd)

Protocol specification

Link management
Link management
Not be concerned
with the actual
transfer of user
data
Initialization or
link set-up phase
Link
disconnection
phase

Parte 3:
Protocolos de Control a nivel de
Enlace

Por qu protocolos?
Estos pasos o fases implican procedimientos para
La elaboracin de un formato para el encapsulamiento de la
informacin
La determinacin o seleccin de un enlace dado entre dos
estaciones adyacentes
La peticin o demanda para transmisin o recepcin de
informacin
La verificacin de que la informacin recibida no contiene errores
La repeticin de una trama de informacin que ha sido recibida con
errores
El control del flujo de la informacin
La transmisin transparente de la informacin
La deteccin de Tiempo Cumplido (time-out)
La finalizacin de la transmisin
La supervisin, control y sincronizacin de las estaciones en el
caso de transmisin sincrnica

Los protocolos empleados en la transmisin de datos


dependen
(a) de si el control se efecta mediante caracteres especiales de
control,
(b) por conteo de bytes o
(c) si se hace dgito por dgito.

Se distinguen entonces tres categoras de protocolos:


Protocolos de Control por Caracteres (Character-Oriented
Protocol),
Protocolos de Control por Conteo de Octetos o Bytes (ByteCount Oriented Protocol)
Protocolos de Control por Dgitos (Bit-Oriented Protocol).

Protocolos de Control por


Caracteres
Se ha desarrollado toda una variedad de protocolos de
control por caracteres, pero el ms conocido es el
Protocolo BSC (Binary Synchronous Communications)
desarrollado por la IBM; a este protocolo se le denomina
tambin Protocolo BISYN.
Este protocolo utiliza ciertos caracteres de control para
delimitar los diferentes campos y para el control de sus
funciones propias.
El protocolo BSC es un protocolo sincrnico que opera en
HDX y requiere un reconocimiento para cada trama
transmitida antes de enviarse la trama siguiente.
Este protocolo est diseado para trabajar en punto a
punto o en multipunto con una sola estacin de control o
estacin primaria; esta es la denominada operacin
Maestra-Esclava.

Caractersticas Protocolo BSC

Control por Caracteres


Transmisin HDX Sincrnica
Formato del Carcter: ASCII Sincrnico
Velocidades: 300 a 20 kbps
Modo de Respuesta Normal (NRM)
Interfaz de preferencia : RS-232C
Transparencia mediante insercin de caracteres DLE
Los caracteres de control en el protocolo BSC son los
siguientes por orden alfabtico:
ACK, DLE, ENQ, EOT, ETB, ETX, NAK, SOH, STX y SYN.

Estos diez caracteres estn definidos en los Cdigos


ASCII (Fig. 4.1), EBCDIC y en el Transcdigo de 6
Dgitos (Six Bit Transcode).

ACK (Acknowledge). Reconocimiento positivo. Este carcter


es transmitido por una estacin cuando la informacin
recibida es correcta o cuando se transmite una respuesta
afirmativa.
DLE (Data Link Escape). Carcter utilizado para la
transmisin transparente de la informacin.
ENQ (Enquiry). Peticin. Carcter utilizado por la estacin
primaria para solicitar una respuesta desde una estacin
secundaria.
EOT (End of Transmission). Fin de transmisin. Este carcter
indica la finalizacin de la transmisin. Generalmente se
transmite al final de la ltima trama de una serie.
ETB (End of Transmission Block). Fin de la transmisin de un
bloque o trama de informacin. Indica tambin que hay ms
tramas para transmitir.

ETX (End of Text). Fin de texto. Este carcter se coloca al final del
campo Texto que comenz con STX.
NAK (Negative Acknowledge). Reconocimiento negativo. Este
carcter es transmitido por una estacin para indicar que la
informacin recibida est en error o cuando se transmite una
respuesta negativa.
SOH (Start of Heading). Comienzo de un membrete o
encabezado (header) .
STX (Start of Text). Comienzo de Texto. Este carcter precede al
campo Texto e indica tambin la terminacin del encabezado o
header.
SYN (Synchronous Idle). Carcter de Sincronizacin. Se transmite
series de caracteres SYN y la sincronizacin se considera completa
cuando se detecta por lo menos dos caracteres SYN consecutivos.
Los caracteres SYN siempre se transmiten en pares, de modo que
si slo se recibe uno, se ignorar; la probabilidad de que dos
caracteres SYN falsos ocurran consecutivamente es remota.

Para la sincronizacin de los relojes entre las estaciones


transmisora y receptora, al principio de cada trama se
transmite secuencias de caracteres SYN y la sincronizacin
se considera completa cuando la estacin receptora ha
reconocido por lo menos dos caracteres SYN consecutivos.
El carcter de control SOH indica el comienzo de un
encabezado o membrete (header) el cual contiene
informacin para iniciar los procedimientos de intercambio.
Por ejemplo, direcciones, instrucciones, procesamiento de
texto, etc., necesarios para iniciar el intercambio de
informacin; el nmero de caracteres u octetos del Header
es variable, depende de la aplicacin y tanto el SOH como
el Header se pueden omitir si no son necesarios en una
transmisin dada. Generalmente ellos constituyen la
primera trama de toda una serie de un mismo mensaje.

En el campo Texto va la informacin que viene de las capas superiores.


El nmero de caracteres en este campo tambin es variable, pero
comnmente el nmero es de 256 caracteres.
El campo BCC (Block Check Character) que puede contener 8, 12 o 16
dgitos se emplea para la verificacin de error. En el transmisor se
efecta una operacin con un algoritmo de clculo denominado CRC
(que veremos en el Captulo VII) con los datos desde SOH hasta
ETX/ETB. El resultado de esta operacin se coloca en el campo BCC y
se transmite. En el receptor se efecta la misma operacin y el
resultado de esa operacin se compara con la cantidad que va en el
BCC. Si esas cantidades son iguales, se considera que no hubo error y
se responde con un ACK; en caso contrario, se responde con un NAK
para solicitar la retransmisin de la trama.
La desventaja principal del Protocolo BSC es su lentitud pues trabaja
en operacin semidplex y cada bloque debe ser reconocido (ACK0 o
ACK1) por el receptor antes de proceder a la transmisin del bloque
siguiente de una serie. Este es un procedimiento lento cuando se quiere
transmitir a grandes velocidades o cuando los retardos de transmisin
son grandes, como es el caso de la transmisin por satlites. Para
sistemas que trabajan en full dplex el protocolo BSC no se emplea
utilizndose algunos de los protocolos que veremos ms adelante.

Protocolos XMODEM y YMODEM


Protocolo XMODEM
El protocolo XMODEM es un protocolo de transferencia de
archivos (FTP), desarrollado en 1977, que ha sido instrumentado
en muchos de los programas de transferencia de archivos en los
sistemas BBS (Bulletin Board Service).
Protocolo YMODEM
El protocolo YMODEM se desarroll como una extensin del
protocolo XMODEM para incorporar algunas carctersticas
adicionales a fin de mejorar su comportamiento. El formato del
Protocolo YMODEM es idntico al del XMODEM, Fig. 4.18, con la
diferencia de que en vez de un carcter de arranque SOH utiliza el
carcter STX. Adems, el campo INFORMACION contiene 1024
octetos y el BCC se calcula con los cdigos CRC.

En la prctica se consigue otros


protocolos de transferencia de archivos,
tales como
el XMODEM-G, el YMODEM-G BATCH,
el ZMODEM, el KERMIT, etc. Para ms
informacin sobre estos protocolos, ver,
por ejemplo, [Held, 1994].

Protocolos de Control por


Conteo de Octetos
Protocolo DDCMP
La principal desventaja del protocolo BSC es la
complicacin que se produce como resultado de los
procedimientos especiales utilizados para asegurar la
transparencia. Este problema se ha resuelto en el
Protocolo DDCMP (Digital Data Communication
Message Protocol) desarrollado por la DEC (Digital
Equipment Corporation), en el cual mediante el conteo
de los caracteres u octetos contenidos en el campo
INFORMACION se ha eliminado la utilizacin de DLE y
de otros caracteres de control.
El Protocolo DDCMP es un protocolo general y puede
utilizarse en sistemas HDX y FDX, serie o paralelo,
asincrnicos y sincrnicos, punto a punto y multipunto.

Este protocolo, cuyo formato se muestra en la Fig.


4.19(a), utiliza un Encabezado o header que contiene
los campos CLASE, CONTEO, BANDERA,
RESPUESTA, SECUENCIA, DIRECCION y BCC1.
Este Encabezado no es opcional como en el caso del
protocolo BSC y ms bien es la parte ms importante
de la trama, pues contiene informacin acerca del
nmero de octetos de informacin as como las
cantidades de
octetos transmitidos y recibidos, que son las dosc
aractersticas ms importantes del protocolo DDCMP;

Resumen de las Caractersticas


del Protocolo DDCMP

Caractersticas
Control por Conteo de Octetos
Transmisin HDX/FDX Sincrnica
Formato del Carcter: ASCII Sincrnico
Velocidades: 300 a 100 kbps
Interfaces: RS-232C, RS-449, V.35

4.2.5. Protocolos de Control por


Dgitos
Los protocolos de control a nivel de enlace ms
utilizados en la transmisin de datos son los
Protocolos de Control por Dgitos (Bit-Oriented
Protocols). En estos protocolos la informacin
se puede transmitir en secuencias de dgitos de
cualquiera longitud sin necesidad de dividirla en
caracteres, pues el control se hace dgito a
dgito. Sin embargo, consideraciones de tipo
instrumental y tecnolgico requieren que la
longitud de una secuencia de dgitos sea un
mltiplo entero de un carcter, generalmente un
octeto.

Entre las ventajas de estos protocolos, tenemos:


Pueden trabajar en HDX y FDX en modo sincrnico.
Son ms eficientes pues en el Encabezado solamente se tiene los
campos DIRECCION y CONTROL, normalmente de un octeto cada uno.
En el campo INFORMACION se puede emplear cualquier cdigo, incluso
cdigos cifrados.
No se necesita reconocimientos (positivos o negativos) para cada trama
transmitida; solamente despus de haber transmitido un cierto nmero de
tramas (tpicamente 7) es que se retransmite un ACK y el proceso se
repite.
El control de flujo es ms sencillo.
La integridad de los datos se verifica mediante una verificacin de los
bloques recibidos mediante un BCC, y mientras no se detecte un error la
transmisin contina. En caso de detectarse errores en la trama,
simplemente se pide la retransmisin de la trama en error. En los
protocolos de control por dgitos en vez de las siglas BCC se utilizan las
siglas FCS (Frame Check Secuence) o Secuencia de Verificacin de
Trama, que utilizaremos de aqu en adelante

Hay varias clases de protocolos de control por


dgitos, pero aqu vamos a describir solamente
dos protocolos, el Protocolo SDLC (Synchonous
Data Link Control Protocol) y el protocolo HDLC
(High-Level Data Link Control Protocol). Estos
protocolosproporcionan una base excelente para
el estudio de otros protocolos tales como el ANSI
ADCCP, el UIT-T LAP/LAPB, el ISDN LAPD, el
UNISYS DLC y los protocolos IEEE 802 para el
control de redes de rea local.

El formato SDLC, Fig. 4.20(a), contiene


los campos
BANDERA,
DIRECCION,
CONTROL,
INFORMACION,
FCS y BANDERA.

Protocolo HDLC

Los mensajes definidos en el campo CONTROL, Fig. 4.21(c) son un


subconjunto de los mensajes del protocolo HDLC. Ms adelante
describiremos otro subconjunto del protocolo HDLC, denominado LAPB,
utilizado en la transmisin por paquetes (Recomendacin UIT-T X.25).
Los campos BANDERA, INFORMACION y FCS tienen el mismo
significado que en el protocolo SDLC. Sin embargo, en el campo
INFORMACION se puede permitir caracteres de cualquiera longitud, pero
por razones de instrumentacin y compatibilidad generalmente los
caracteres tienen ocho dgitos, es decir, son octetos.
En el campo DIRECCION el protocolo HDLC, adems de la direccin
especfica (un octeto), tiene tambin la opcin de direccin extendida. En
este caso el campo DIRECCION tendr n octetos; el primer dgito del
primer octeto del campo extendido es un UNO, mientras que los octetos
siguientes comienzan con un CERO, excepto el ltimo que comienza con
un UNO. Una estacin primaria puede controlar entonces hasta 127n
estaciones secundarias.

High-Level Data Link Control


Frame format for bit-oriented protocols.

High-Level Data Link Control


(2)

Control field of
(a) An information frame.
(b) A supervisory frame.
(c) An unnumbered frame.

Modos de Operacin en HDLC


En el protocolo HDLC hay tres modos de operacin: el Modo de Respuesta
Normal (Normal Response Mode, NRM), el Modo de Respuesta Asincrnica
(Asynchronous Response Mode, ARM) y el Modo Asincrnico Balanceado
(Asynchronous Balanced Mode, ABM).
El modo NRM es el modo mejor adaptado en aplicaciones multipunto con una
estacin primaria y varias secundarias. En el modo NRM una estacin
secundaria puede transmitir solamente cuando recibe autorizacin (poll o select)
de la estacin primaria. La estacin secundaria puede transmitir entonces una
secuencia de tramas en una respuesta, pero una vez que ha puesto el dgito F
igual a UNO en la ltima trama, no puede transmitir hasta que no reciba una
nueva autorizacin. Este es el mismo modo NRM del protocolo SDLC.
En el modo ARM se permite a las estaciones secundarias enviar respuestas no
solicitadas. Para transmitir una respuesta, una estacin secundaria no necesita
haber recibido un comando con el dgito P = 1. Sin embargo, si una secundaria
recibe un comando con P = 1, debe responder con una trama con el dgito F = 1
lo ms pronto posible.
El modo ABM es el modo de operacin entre dos estaciones de igual rango en
enlaces punto a punto. Cualquiera de las dos estaciones puede iniciar un
intercambio sin esperar una autorizacin

Resumen de las Caractersticas


del Protocolo HDLC
Caractersticas
Control por Dgitos
Transmisin Sincrnica HDX/FDX
Formatos de Carcter: ASCII, EBCDIC
Modos de Operacin: NRM, ARM y ABM ( Comunicacin Par a
Par)
Velocidades de Transmisin: desde 300 bps hasta 10 Mbps
Interfaces: RS-232C, V.35, RS-423A, RS-422A, RS-449
Medios de Transmisin: par trenzado, radio, cable coaxial, fibra
ptica
Transparencia mediante insercin de ceros para evitar que
aparezca el caracter de syn
Nota: entre trama y trama se puede enviar banderas o caracteres
de relleno de la forma
1 1 1 1 1 1 1 1.

The Data Link Layer in the


Internet
A home personal computer acting as an
internet host.

PPP Point to Point Protocol


The PPP full frame format for unnumbered
mode operation.

PPP Point to Point Protocol


(2)

A simplified phase diagram for bring a line up and down.

PPP Point to Point Protocol


(3)
The LCP frame types.

Potrebbero piacerti anche