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