Práctica 2: Enlaces punto a punto(Teoría de las Comunicaciones)
Ejercicio 01
Dado un enlace punto a punto a la luna de 1Mbps con un tiempo de propagación de 1.25 segundos
a. ¿Cuántos bits entran en el canal?
b. Asumiendo que se separan los bits en frames de largo fijo de 1Kb ¿Cuántos frames entran en el cable? ¿Y si se usaran frames de 2Kb?
Rta:
a.
Capacidad de Volumen de un canal (también "Producto Delay por Velocidad de Transimisión" o "Producto Delay por Ancho de Banda")
Cvol[bits] = Delay * Vtx
En la práctica 2: Enlaces punto a punto, se usa Delay = Tprop
Cvol[bits] = Tprop * Vtx = 1.25 Seg * 1Mbps = 1.25 Mb
b.
1.25Mb = 1250 Kb
Largo fijo 1Kb -> 1250 Kb/ 1 Kb = 1250 Frames
Largo fijo 2Kb -> 1250 Kb/2 Kb = 625 Frames
Ejercicio 02
Calcule la eficiencia del frame tomando en cuenta sólo el overhead impuesto por las siguientes técnicas de framing:
a. Largo fijo
b. Campo de 16 bits en el encabezado indicando el largo del frame
c. Delimitadores de 8 bits usando bit stuffing
d. Si se usaran códigos de detección o correción de errores, ¿Cuál presentaría mejor eficiencia de frame?
Rta:
Eficiencia de un frame
nframe = largo de los datos/largo total del frame
a. nframe = |Datos| / |Frame| = 1
b. nframe = (|Frame| - 16 bits) / |Frame|
c. nframe <= (-8 bits + |Frame| - 8 bits) / |Frame|
d. La corrección de errores es mas costosa.
Ejercicio 03
Para los siguientes casos indique si implementaría un protocolo con control de errores, en caso de implementar aclare la estrategia para reponerse del error.
a. Transmisión de comandos a un robot en Marte
b. Streaming de video de la camara del robot en Marte
c. Descarga de un log de errores desde el file system del robot en Marte
Rta:
a. Si, detección y corrección.
b.No.
c.Si, detección t retransmición.
Ejercicio 04
Diseñe posibles conjuntos de frames de largo fijo para los siguientes tipos de protocolos, asumiendo que se detectan errores usando CRC. (No hace falta explicitar el largo de los campos ni del frame)
a. Stop & Wait
b. Sliding Window con GoBackN usando Piggybacking
c. Sliding Window con ACK Selectivo
Rta:
a.
Emisor: |ID|DATOS|CRC|
Receptor: |ID|PADDING|CRC|
b.
Emisor: |#SEQ|#ACK|DATOS|CRC|
Receptor: |#SEQ|#ACK|DATOS|CRC|
c.
Emisor: |#SEQ|DATOS|CRC|
Receptor: |#ACK|#SACK|CRC|
Ejercicio 06
Un protocolo sobre un enlace punto a punto de 1Mbps y 0.25 segundos de latencia, trabaja con ventana deslizante con GoBackN usando frames de largo fijo 2Kb y un CRC de 16bits para detectar errores.
a. Calcule cuáles son los tamaños de ventana de emisión y recepción óptimos.
b. ¿Cuantos bits hacen falta para secuenciar los frames?
c. Calcule cuánto tiempo es necesario para transmitir 20Mb de datos asumiendo que no hay errores.
Rta:
a.
SWS = Vtx * RTT(F) / |FRAME|
Vtx = 1Mbps = 1000000bps
RTT(F) = 2 * Delay(latencia) = 2 * 0.25 Seg = 0.5 Seg
|FRAME| = 2Kb = 2000 bits
SWS = 1000000bps * 0.5 Seg / 2000 bits = 250
RWS = 1
b.
log2(250) = 8 bits
c.
Datos = 20Mb = 20000000 bits
SWS * |FRAME| * nframe --- 1 RTT
nframe = (2000 bits - 16 bits (CRC) - 8 bits (#Seq)) / 2000 = 0.988
250 * 2000 * 0.988 --- 1 RTT
20000000 bits --- X RTT, X = 20000000 bits /(250 * 2000 * 0.988) = 41 RTT
41 * 0.5 Seg = 20.5 Seg
Otra forma de resolver
Datos / 2000 bits - 16 bits (CRC) - 8 bits (#Seq)) = 20000000/ 1976 bits = 10122 Frames
(10122Frames / SWS )= (10122 / 250) = 41 RTT
Ejercicio 08
Un canal tiene una velocidad de transmisión de 4Kbps y un tiempo de propagación de 20ms. Usando un protocolo Stop & Wait, ¿Qué rango de tamaños de frame presenta una eficiencia de protocolo de por lo menos 50%?
Ejercicio 09
Un protocolo usa frames de largo fijo de 1Kb sobre un enlace satelital con una velocidad de transmisión de 1Mbps y una latencia de 270ms. Calcule la eficiencia del protocolo si se usara ventana deslizante con ACK Selectivo, con lo siguientes tamaños de ventana:
a. SWS = 7
b. SWS = 127
c. SWS = 255
Rta:
Eficiencia de un protocolo punto a punto confiable y sin errores de transmisión:
Nproto = Ttx / RTT
Con Ttx el tiempo de transmisión de una ventana y RTT el tiempo de ida y vuelta.
Nproto = Ttx(SWS) / RTT(F) = Ttx(F) * SWS / RTT(F)
|FRAME| = 1Kb
Vtx = 1Mbps = 1000Kbps
Delay = 270 ms = 0.27 Seg
Nproto = 1Kb / 1000Kbps * SWS / 2 * 0.27 Seg = 0.001 Seg * SWS / 0.54 Seg
a. 0.001 Seg * 7 / 0.54 Seg = 0.013
b. 0.001 Seg * 127 / 0.54 Seg = 0.235
c. 0.001 Seg * 255 / 0.54 Seg = 0.472