0% encontró este documento útil (0 votos)
28 vistas87 páginas

Resumen de Redes de Datos

Universidad de Montevideo

Cargado por

erikapuhlviera
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
28 vistas87 páginas

Resumen de Redes de Datos

Universidad de Montevideo

Cargado por

erikapuhlviera
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Resumen de Redes de Datos

Por Rodrigo Sotelo y Bruno Ramos basado en el material del curso, el libro y
nuestras propias conclusiones.

Introducción.
Explique el modelo cliente-servidor.

Imaginemos que tenemos una gran empresa la cual tiene varias gran base de
datos almacenadas en grandes computadoras con el objetivo de que los
empleados puedan acceder desde todas partes, a estas computadoras se le
llama servidores y a los empleados que acceden a ella los clientes. Este
modelo es conocido como modelo cliente-servidor y es muy popular en
arquitectura de software.
Existen dos procesos involucrados, uno en el cliente y el otro en el servidor, la
comunicación ocurre cuando el proceso cliente envía un mensaje a través de la
red al proceso servidor. El proceso cliente espera un mensaje de respuesta.
Cuando el proceso servidor obtiene la solicitud, lleva a cabo la tarea solicitada.

Clasifique las redes según la tecnología de transmisión y la escala (Hardware de


red).

Las redes se pueden clasificar bajo dos criterios, según la tecnología de


transmición o según la escala. Según la tecnología de transmición podemos
clasificarlas en dos, los enlaces de difusión (broadcast) y los enlaces punto a
punto.

En una red de difusión todas las maquinas comparten un mismo canal de


comunicación, entonces los paquetes que envía una maquina son recibidos
por todas las demás maquinas. Por lo general, la mayoría de los sistemas

Resumen de Redes de Datos 1


de difusión brindan la posibilidad de enviar un paquete a todos los destinos,
a través de un código especial en el campo de dirección. Existen tres
métodos de operación:

1. Difusión o broadcasting: Se da cuando se transmite un paquete sin


una dirección especifica y todas las maquinas lo reciben y procesan.

2. Multicast: Algunos sistemas soportan la transmición a un subconjunto


de maquinas el cual se especifica en el campo de dirección del paquete.
Las maquinas seleccionadas lo recibirán y procesaran, mientras que las
demás solo lo descartarán.

3. Unicast: En este caso, un paquete se envía de una máquina emisora a


una máquina de destino específica. Aunque técnicamente todas las
máquinas en la red reciben el paquete, solo la máquina cuya dirección
coincide con la dirección de destino del paquete procesará y responderá
a ese paquete.

Por otro lado, están los enlaces punto a punto. Esta está compuesta por
pares individuales de maquinas. Con este diseño, para que un paquete vaya
de origen a destino es probable que deba pasar por varias maquinas.
Ademas, existen distintas rutas de diferentes tamaños por donde podría
llegar a pasar el paquete, siempre se va a seleccionar la mejor dependiendo
de ciertos parámetros como la velocidad y tráfico. A los enlaces punto a
punto de solamente dos máquinas se le conoce como unidifusión.

Según la escala podemos clasificarlas en cuatro redes.

Primero están las PAN, redes de area personal la cual permite a los
dispositivos comunicarse dentro del rango de una persona, por ejemplo, una
computadora con sus periféricos conectados de manera inalámbrica o a
través de un cable.

Luego, aparecen las LAN, redes de area local, las cuales son redes
privadas que trabajan en un mismo edificio. Este tipo de red tiene tres
características importantes:

1. Estas redes tienen un tamaño acotado, lo cual significa que se conoce


el caso con el peor tiempo de transmición, permitiendo así diseñar
mejores protocolos de red y cometiendo pocos errores.

2. Estas redes pueden ser inalámbricas o alambricas. Si es inalámbrico,


cada PC tiene un modem y una antena que la utiliza para conectarse a
un AP (punto de acceso) el cual transmite paquetes entre las

Resumen de Redes de Datos 2


computadoras y a través de internet. Además, existe un estandar
llamado IEEE 802.11, mejor conocido como WIFI el cual opera a muy
buenas velocidades. Si son alambricas, un cable de cobre o en algunos
casos fibra óptica se conecta desde la computadora hasta un switch y
este se conecta a internet. La diferencia entre los dos radica en la
velocidad de transmición, ya que cuando es alambrica es mucho mas
rápida ya que es mas fácil enviar señales a través de un cable o fibra
que por aire.

3. La topología puede ser de tipo:

a. BUS, es la Ethernet clasica, es el tipo mas comun de LAN


alambrica.

b. ESTRELLA, es Ethernet conmutada, donde cada maquina se


comunica con el protocolo Ethernet y se conecta a un switch con un
enlace punto a punto, se le llama así ya que transmite paquetes
entre las computadoras conectadas a el.

c. ANILLO en la cual las computadoras se conectan en un círculo


cerrado, formando un anillo. La información se transmite de una
computadora a la siguiente en el anillo hasta llegar a su destino.
Esta topología se utiliza en redes como Token Ring, donde se utiliza
un token para controlar el acceso a la red, evitando colisiones de
datos.

Existen las MAN redes de area metropolitanas que principalmente se


utilizan para television por cable ya que cubren toda una ciudad. Otro
ejemplo son las WiMAX, las cuales funcionan para dar acceso a internet e
interconectar LAN’es remotas entre otros usuarios.

Las WAN o redes de area amplia, por lo general cubre un país o


continente. Imaginemos que trabajamos en una oficina en Montevideo y
queremos comunicarnos con la oficina de la empresa en Artigas, para ello,
los host (nuestras maquinas) están conectados por una subred de
comunicación y su función es transportar mensajes de host a host, esto se
hace a través de lineas de transmición que son cables que por lo general
se le renta a una compañia de telecomunicaciones en donde se transportan
bits entre maquinas, hasta que finalmente se llegan hasta un enrutador.

Resumen de Redes de Datos 3


Finalmente aparecen las interredes, las cuales son redes mas chicas con
distinto software o hardware interconectadas. Para ello se deben conectar y
generar una traducción necesaria, la cual es llevada a cabo por las puerta
de enlace o gateway.

¿Cuál es la principal diferencia entre TCP y UDP? (esta no es una pregunta


directa pero la idea vale)

El protocolo TCP es orientado a la conexión y confiable, permite que un flujo de


bytes originado en una máquina se entregue sin errores a cualquier otra
máquina en la interred.

El UDP no es orientados a la conexión y no confiable para aplicaciones que no


desean la asignación de secuencia o el control de flujo de TCP y prefieren
proveerlos por su cuenta. También se utiliza mucho en las consultas de petición-
respuesta de una sola ocasión del tipo cliente-servidor, y en las aplicaciones en
las que es más importante una entrega oportuna que una entrega precisa

Explique el concepto de protocolo y servicio y la relación que existe entre ellos.

Un servicio es un conjunto de primitivas que una capa ofrece a la capa que


esta por encima de ella. Este servicio brinda las operaciones que puede hacer la
capa en beneficio del usuario pero sin dar detalles de como implementa la lógica
para hacer estas operaciones. Esta comunicación entre las capas se da a través
de una interfaz, en donde la capa inferior provee los servicios a la capa superior.
*
Por otro lado, un protocolo es un conjunto de instrucciones, reglas y
convenciones que rigen el formato y significado de los paquetes que
intercambian entidades iguales en una capa. ** Las entidades utilizan los
protocolos para implementar sus definiciones de servicios. Estas entidades son
libres de usar los protocolos siempre y cuando no cambien como el servicio se
le presente al usuario.

Resumen de Redes de Datos 4


Los servicios brindan funcionalidades a las capas a través de las
interfazes, mientras que los protocolos trabajan con los paquetes o
mensajes que se envian desde entidades pares de distintas maquinas. No
dependen uno del otro, los protocolo trabajan con los paquetes que se
envian entre entidades pares de distintas maquinas, mientras que los
servicios trabajan con la funcionalidades de cada capa a traves de las
interfaces.

* La principal función de la interfaz es independizar cada servicio, con el


objetivo de que si las operaciones de los servicios cambian por algún motivo, el
usuario no tenga que cambiar la lógica de implementación ya que se “conecta”
directamente con la interfaz.
**Diferentes máquinas o dispositivos que están en el mismo nivel o capa de la
arquitectura tienen roles y responsabilidades similares.

Explique las diferencias entre los servicios orientadas a la conexión y los


servicios no orientados a la conexión.

Las capas pueden ofrecer dos tipos distintos de servicio a las capas superiores:
orientado a conexión y sin conexión.

1. El servicio orientado a la conexión esta basado en el sistema telefónico. El


usuario del servicio primero establece una conexión, la utiliza y finalmente la
libera. Funciona como un tubo, el emisor mete los bits en un extremo y el
receptor los toma del otro lado. En algunos casos el emisor y el receptor
negocian la manera en la que parámetros se van a utilizar, como el tamaño
máximo del mensaje o la calidad del servicio. Generalmente uno de los dos
hace la propuesta y el otro puede rechazar, aceptar o hacer una
contrapropuesta.

Resumen de Redes de Datos 5


2. El servicio sin conexión está modelado a partir del sistema postal. Cada
mensaje (carta) lleva la dirección de destino completa, y cada uno es
enrutado hacia los nodos intermedios dentro del sistema.

Cada tipo de servicio se puede caracterizar con base en su confiabilidad.


Algunos servicios son confiables en cuanto a que nunca pierden datos. Por lo
general, para implementar un servicio confiable, el receptor tiene que confirmar
la recepción de cada mensaje, de manera que el emisor esté seguro de que
hayan llegado. El proceso de confirmación de recepción introduce sobrecarga y
retardos, que a menudo valen la pena pero algunas veces no son deseables.

Confiable y orientado a la conexión: Por ejemplo la transmisión de


archivos precisa confiabilidad porque sino se altera el archivo transmitido.

No confiable y orientado a la conexión: Los servicios de llamada VoIP


son orientados a la conexión pero no confiables pues el retraso que
causaría es inaceptable para la comunicación.

Confiable y no orientado a la conexión: Los sistemas de mensajería


móviles son un ejemplo. No establecen conexión pero confirman la
recepción del mensaje.

No confiable y no orientado a la conexión: El spam de email es no


orientado a la conexión y tampoco precisa confirmación de llegada pues es
un gasto de recursos innecesario.

Describa el modelo OSI y marque las criticas al mismo.

El modelo de referencia OSI fue el primer paso hacia la estandarización de los


protocolos usados por capas. Este modelo tiene 7 capas y se desarrollo
siguiente algunos principios:

1. Una capa por cada nivel de abstracción distinto.

2. Cada capa debe realizar una función bien definida.

3. La función de cada capa debe ser realizada en función de los protocolos


estandarizados.

4. Crear limites entre capas para quitarle flujo de información a las interfaces.

5. Cantidad de capas suficiente para que las funciones distintas se agrupen en


la misma capa, pero tampoco para que las capas queden vacias.

Capas:

Resumen de Redes de Datos 6


1. Capa física: Se encarga de la transmisión de bits puros a través de algún
canal de comunicación. Los aspectos de diseño tienen que ver con
interfases mecánicas,
eléctricas, de temporización y el medio físico de transmisión bajo la capa
física.

2. Capa de enlace de datos: Se encarga de presentar a la capa de red una


conexión
eficiente y confiable entre máquinas adyacentes. Para esto fragmenta los
datos en tramas y los transmite de forma secuencial. A su vez se ocupa del
control de flujo.

3. Capa de red: Se encarga de controlar las operaciones de la subred. Un


aspecto clave
del diseño es determinar cómo se enrutan los paquetes desde su origen al
destino.
Debe solucionar los problemas para permitir la interconexión de redes
heterogéneas.

4. Capa de transporte: Es la primera capa en donde los protocolos operan


entre las
máquinas de los extremos. Conexión extremo a extremo con control de
errores, control
de flujo y ensamblado de paquetes.

5. Capa de sesión: Permite que los usuarios de máquinas diferentes


establezcan
sesiones entre ellos. Ofrece servicios como control de diálogo (llevar control
de quien va
a transmitir) y sincronización (usar puntos de referencias en caso de
interrupciones).

6. Capa de presentación: Maneja estructuras de datos abstractas y permite


definir e intercambiar estructuras de datos de mayor nivel. Se enfoca en la
sintaxis y la semántica de la información transmitida.

7. Capa de aplicación: Contiene protocolos que los usuarios requieren con


frecuencia.
Estos se utilizan para la transferencia de archivos, correo electrónico y
navegación entre
otros.

Críticas:

Resumen de Redes de Datos 7


1. Mala sincronización: Cuando aparecieron los protocolos de OSI los
protocolos de
TCP/IP ya se utilizaban mucho en ámbito académico.

2. Mala tecnología: Tanto el modelo como los protocolos tienen defectos. Dos
de las
capas (sesión y presentación) están casi vacías mientras que enlace de
datos y red
están demasiado llenas. El modelo en sí es extremadamente complejo.

3. Malas implementaciones: Debido a la complejidad, las primeras


implementaciones
fueron enormes, pesadas y lentas, dándole una imagen de mala calidad al
modelo.

4. Malas políticas: se consideraba como la invención de burócratas


gubernamentales que obligaban a los investigadores y programadores a que
adoptaran un estándar inferior.

Describa el modelo TCP/IP y marque las criticas al mismo.

Aspectos de diseño del modelo TCP/IP:

1. Permite la interconexión de distintas redes.

2. Posibilidad de sobrevivir a las pérdidas de hardware a nivel de la subred sin


que se interrumpan las conversaciones existentes.

3. Flexibilidad para poder soportar aplicaciones con requerimientos


divergentes, desde transferencia de archivos a transmisión de voz en tiempo
real.

Capas:

1. Capa de host a red (enlace): No se especifica mucho acerca de esta capa.


Se indica que el host debe conectarse a la red utilizando el mismo protocolo
(este protocolo no está definido y varía de un host a otro y de una red a
otra).

2. Capa de interred: No orientada a conexión. El principal aspecto es el ruteo


de los
paquetes. Se define un paquete de formato y protocolo oficial llamado IP
(Protocolo de
Internet).

Resumen de Redes de Datos 8


3. Capa de transporte: Diseñada para la comunicación entre entidades
iguales en los
hosts de origen y destino. Los protocolos definidos son TCP (protocolo de
control de
transmisión) y UDP (protocolo de datagrama de usuario). TCP es un
protocolo confiable
orientado a conexión. UDP es un protocolo no confiable y no orientado a
conexión.

4. Capa de aplicación: Contiene los programas que hacen uso de la red.


Incluye los
protocolos de más alto nivel (DNS, HTTP, etc.).

Críticas:

No distingue entre servicio, interfaz y protocolo

No es un modelo general

No distingue entre capa 1 y 2.

Compare el modelo OSI y TCP/IP.

El modelo OSI tiene siete capas, mientras que el modelo TCP/ IP tiene
cuatro. Ambos tienen capas de red, transporte y aplicación, pero las demás
capas son distintas.

El modelo OSI define los conceptos de interfaz (define las operaciones


primitivas a las que pueden acceder las capas superiores, dice los
parámetros y que resultados se puede esperar pero no da información sobre
su uso interno), servicio (define lo que hace la capa, no como se accede a
ella ni como funciona) y protocolo (cada capa puede utilizar el que quiera
siempre y cuando realice el trabajo de buena manera).

Resumen de Redes de Datos 9


(Importante) El modelo OSI soporta ambos tipos de comunicación en la
capa de red, pero sólo la comunicación orientada a conexión en la capa de
transporte. El modelo TCP/IP sólo soporta un modo en la capa de red (sin
conexión) pero soporta ambos en la capa de transporte, de manera que los
usuarios tienen una alternativa.

El modelo OSI se creó antes que los protocolos correspondientes (poca


experiencia de los diseñadores). Para TCP/IP los protocolos llegaron antes
que el modelo.

Pregunta sacada de un parcial:

Explique cómo se diseña el software de las redes de datos. Se deberá incluir en


la respuesta la Jerarquía de protocolos, la relación entre servicios y protocolos y
los aspectos de diseño en cada capa.

Capaz se puede escribir como un punteo, puede que quede mas claro.

La jerarquía de protocolos presenta que las redes se organizan como una pila
de capas, el nombre, contenido y función difieren de una red a otra. Cada capa
se encarga de ofrecer ciertos servicios a las capas superiores pero sin revelar
detalles de la implementación. Entre cada par de capas adyacentes hay una
interfaz la cual define las operaciones y servicios primitivos y el principal objetivo
es minimizar la cantidad de información que se transmite entre capas y si en el
futuro, es necesario cambiar la lógica de una capa, la capa adyacente no tendría
que cambiar la implementación de la misma ya que lo que se necesita es que se
brinde el servicio, no como se brinda. Cuando la n-esima capa en una maquina
se comunica con la n-esima capa de otra maquina, a las reglas y convenciones
se le llama protocolos, en otras palabras es un acuerdo entre partes sobre como
llevaran adelante esta comunicación.

Resumen de Redes de Datos 10


A este conjunto de capas y protocolos se le conoce como arquitectura de red.
El implementador debe ser capaz de hacer hardware o software de modo que
se cumpla los protocolos correspondientes a cada capa, ni los detalles de
implementación ni la especificación de cada interfaz forman parte de la
arquitectura ya que estas están “ocultas” dentro de las maquinas. Lo único que
tiene que pasar, es que los protocolos se deben implementar correctamente.

Sin embargo, es necesario tener en cuenta algunos aspectos de diseño:

Direccionamiento: cada capa debe ser capaz de reconocer emisores y


receptores.

Control de errores: Ambos extremos de la conexión se ponen de acuerdo


en códigos de detención de errores (es fundamental esto) que van a
utilizar, de esta manera se retransmite la señal hasta que se reciba de
buena manera. Algunos de los códigos mas potentes contienen
implícitamente la corrección de errores.

Enrutamiento: Define la mejor ruta a utilizar

Resumen de Redes de Datos 11


Control de flujo: Evita que un emisor rapido sature de datos a un receptor
mas lento.

Multiplexión: Permite utilizar la misma conexión para distintas


comunicaciones.

Confidencialidad: Se debe proteger la informacion para evitar ataques o


que alguien se intente hacer pasar por otra persona

Integridad: Evitar cambios no deseados en un mensaje

A este conjunto de capas y protocolos se lo conoce como arquitectura de red

Capa fisica.
¿Cuál es el objetivo de la capa física? ¿Qué problemas intenta resolver?

La capa física se encarga de transmitir bits ”puros” a través de un canal de


comunicación. También define interfases eléctricas, de temporización, y demas
interfases las cuales se encargan de enviar los bits por los respectivos canales.
Debe resolver los aspectos mecánicos del diseño, selección del medio,
conectores y todo lo que involucre conectar maquinas.

Tal y como lo dice su nombre, para enviar estos datos vamos a tener que
modificar alguna propiedad física del medio para poder enviar señales
analógicas las cuales nos permitan enviar los bits, por ejemplo, voltaje, corriente
o luz (en caso de ser fibra óptica). Ademas intenta resolver limitantes de este
medio físico como el ruido y ancho de banda con el objetivo de que el mensaje
llegue de la forma mas clara posible.

¿Que es el ancho de banda?

El ancho de banda se denomina como el rango de frecuencias de transmision


de un medio fisico, razonablemente sin atenuacion. El ancho de banda varia
según la longitud del medio, materiales del construccion y diametro del cable o
fibra óptica.

Teorema de Nyquist y Shannon, ¿En que difieren?

El teorema de Nyquist dice que dado un canal sin ruido, con un ancho de banda
B, el receptor puede reconstruir la señal del emsior a la perfeccion tomando
solamente 2B muestras por segundo.

De esta manera el ancho de banda es una limitante dando que la cantidad de


simbolos por segundo r debe cumplir r ≤ 2B

Resumen de Redes de Datos 12


T asa de datos max = 2B ∗ log2 M ​

Recordar:

r = baudios (simbolos por segundo)

M = simbolos

n = bits por simbolo

B = banda ancha

El teorma de Shannon por su parte dice que, dando un canal con ruido, existe
una relacion entre la potencia de la señal (S) y la potencia del ruido (N).

Medios de transmisión guiados

Medios magnéticos:

Los medios megeticos son DVD o cintas los cuales se transportan


fisicamente de una maquina a la otra y se leen nuevamente. Estos métodos
continuan siendo muy populares para hacer, por ejemplo, backups de base
de datos muy grandes o donde el costo por bit es muy caro o para
aplicaciones que necesiten de un ancho de banda muy grande. Por ejemplo,
en una caja de zapatos pueden entrar alrededor de unos 100 discos duros
con capacidad de 2TB cada uno. Esta caja se puede poner en cualquier
punto de Montevideo en menos de dos horas, entonces el ancho de banda
efectivo es 100*2048GB/7200s, si hacemos la cuenta, el ancho de banda es
muy grande y ninguna red puede vencer esto.

Par trenzado:
El par trenzado son dos cables de cobre aislados formados en forma
helicoidal, justo como una molecula de ADN. Gracias a este diseño las
ondas electromagenticas de cada uno de los cables se cancela mejorando
asi la inmunidad de ruido externo. Sus caracterisitcas dependen del paso
del trenzado y del diametro del cable, por ejemplo el ancho de banda
depende de estas caracteristicas y que tanta distancia recorre. Segun estas
caracterisitcas existen varias categorias de pares trenzados, por ejemplo, el
par trenzado categroia 5 tiene un ancho de banda de 100MHZ y el de cat. 6
tiene de 250MHZ. Por lo general, para hacer un cable se agrupan de a 4
pares trenzados en forma de estrella y se pueden obtener transmisiones
varios MB/seg durante unos pocos kilometros, ademas es un medio

Resumen de Redes de Datos 13


economico, por lo tanto, muy probablemente se continue usando varios
años mas.
Hasta la categoria 6, a estos cables se le conoce como UTP ya que estan
construidos solo de alambre y blindaje. Desde la categoria 7 para arriba
tienen blindaje en cada uno de los pares trenzados por separado, así como
alrededor de todo el cable. Esto mejora la suseptibilidad a las interferencias
y da mayores rendimientos.

Cable coaxial:
Este se compone de un cable de cobre rigido por el centro, recubierto por
una material aislante y a este material lo recubre un conductor cilindirco que
por lo general es una malla trenzada. Debido a su construccion es mas
robusto a la interferencias y a la atenuaciones que el par trenzado, por lo
que puede abarcar mas distancias a velocidades mucho mayores.
Existen dos categorias de cables coaxiales, por un lado esta el de 50 ohms,
utilizado por lo general en redes de areas locales. Y por otro lado, cables de
75 ohms que se utiliza para la transmicion analogica y TV por cable (se
puede combinar con datos). Los cables mas modernos tienen un ancho de
banda de hasta unos cuantos GHz.

Fibra óptica:

Es un medio construido por un núcleo de vidrio y revestimiento de vidrio que


mantienen la luz en el interior, gracias a esto, tienen un gran ancho de
banda y no presenta interferencias electromagnéticas. El ancho de banda es
de 50000 Gbps pero el limite practico se encuentra en unos 100Gbps dada
la dificultad a la hora de convertir señales eléctricas a ópticas.
Estas fibras funcionan bien debido a ciertos principios físicos que
determinan el ángulo de reflexion que debe de tener el haz de luz dentro del
filamento de vidrio, esto es una gran ventaja ya que puede recorrer varios
kilometros prácticamente sin perdida, pero por otro lado, es muy susceptible
a que si por ejemplo la fibra queda mal instalada en la ultima milla
(quebrada), el angulo con el que incide el rayo de luz no sea el adecuado y
se pierda gran parte del haz de luz.
Existen dos tipos de fibra:

Multimodo: Dentro de la fibra pueden haber varios rayos de luz cada


uno con un camino distinto gracias a que su núcleo es de 50 micras
aprox. Sin embargo, no es muy recomendado para distancias

Resumen de Redes de Datos 14


mayores a 10 kilometros debido a un efecto que se llama depresión
modal (se dispersa en el tiempo).

Monomodo: Estas permiten la propagación de un solo rayo el cual se


propaga sin reflexion. Estas fibras son mas costosas pero se
recomiendan mas para distancias mas largas. Actualmente estas
fibras pueden transmitir datos a 100 Gbps por 100km sin
amplificación (como máximo).

El mayor problema de la fibra óptica es la atenuación de la luz. Esta


atenuación depende de la longitud de la onda de la luz. En la actualidad se
utilizan tres banda de longitud de onda para la comunicación óptica de 0.85,
1.30 y 1.55 micras. Las ultimas dos tienen una perdida de menos del 5% por
kilometro.

¿Que datos son importantes al interconectar dos equipos utilizando una fibra?

Distancia entre equipos (tipo de óptica)

Tipo de fibra

Problemas físicos

Tipo del equipo

Quizás la longitud de onda por el tema de la atenuación y bandas de


transmición.

La distancia entre los equipos y el tipo de fibra van un poco de la mano, ya que
si tenemos equipos a una distancia de 90km nos convendrá utilizar una fibra
óptica monomodo ya que son mas rápidas, tienen un nucleo de menor diametro
por lo tanto el rayo de luz se transmite sin tanta reflexion, sin embargo este
tendido es muy costo, no por la fibra sino por la obra que se debe hacer para
que la fibra se encuentre bien tendida, evitando asi problmas de transmision.
Por otro lado, los equipos deben tener conectores de fibra compatibles, por eso
se marcan los problemas fisicos a resolver. Ademas de que hay que ver que tipo
de dispositivos se esta intentando comunicar, si es un telefono, quiza sea mejor
un par trenzado con una banda ancha mas limitada, mucho mas economico e
ideal para este servicio, en este caso no conviene utilizar fibra optica. Sin
embargo si se quieren conectar computadoras para jugar en linea, donde se
necesita un gran ancho de banda y mucha velocidad para transmitir datos en
una distancia de menos de 100km es ideal la fibra optica, dependiendo el caso
se debera ver si la mejor opcion es monomodo o multimodo.

Resumen de Redes de Datos 15


¿Qué ventajas presenta la fibra frente al par de cobre?

La fibra optica y el par trenzado de cobre son dos medios fisicos que se utilizar
para la transmision de bits entre maquinas. Si bien sirven para lo mismo, son
muy distintas entre estos la manera en que lo hacen, en otras palabras, en el
que son iguales, cambian rotundamente en el como. Veamos punto a punto.

Banda ancha: Gracias a su nucelo de vidrio y a que la variacion del medio fisico
que se utiliza para transmitir bits es la luz, la fibra optica tiene significativamente
mayor ancho de banda que el par trenzado. La fibra es ideal para aplicaciones
que requiren velocidad de transmisiones muy altas, por ejemplo, juegos online.
Por otro lado, el par trenzado funciona tambien para transmitir datos pero a
menor velocidad, es idea para conectar telefonos.

Ruido: El par trenzado presenta mayor vulnearabilidad al ruido debido a que


existe ondas elecomagenticas de muchos dispositivos, incuyendo los mismos
cables de otros servicios que perjudican la señal. Por otro lado la fibra optica es
completamente invulnerable al ruido electromagentico ya que es de vidrio, si
bien es suseptible a ruidos termicos, no son tan significativos.
Atenuacion: La fibra optica presenta una menor atenuacion en distancias largas
que el par trenzado sin amplificacion, lo que reduce la necesidad de instalar
equipos adicionales. Se necesita poner repetidores cada 50km para la fibra
debido a su baja atenuacion, mientras que para el par de cobre tiene que ser
cada 5km, un costo considerablemente alto.
Costo: Si bien la fibra optica es barata, el costo de instalacion es
significativamente mas alto que el del par trenzado debido a su fragilidad. El par
trenzado puede estar tranquilamente en columnas a la interperie, la fibra debe
estar bajo tierra ya que no permite que hallan arcos porque sino los rayos de luz
no se pueden reflectar de la mejor manera, perdiendo señal. Por otro lado, mil
pares trenezados 1km de par de cobre pesa aprox. 8000kg mientras que dos
fibras tienen mas capacidad y solo pesan 100kg.

¿Que son los medios de transmisión inalámbrica?


Este tipo de medio permite la conexion en lugares en donde el cableado se hace
dificil, generalmente va por una cuestion de costo. Esta conexion se da a traves
de ondas, segun la relacion entre la longitud de onda y la frecuencia se pueden
clasificar en LF, MF, HF. Esta clasificacion tiene ya varios años y ahora existen
“sub-clasificaciones” denotro de las cuales tenemos UHF, SHF, EHF (ultra,
super, extremely).

Resumen de Redes de Datos 16


Para evitar un caos total a la hora de la transmision inalambrica existen
acuerdos internaciones de quienes pueden utilizar determinadas frecuencias, la
mayoria de las veces la empresa que puede comprar la frecuncia se queda con
ella y nadie mas puede transmitir ahi sin el correspondiente permiso, a esto se
la llama bandas licenciadas. Por otro lado existen bandas sin licencia las cuales
han sido extremadamente poplares, la banda de 2.4 GHz que se utiliza para
internet, bluetooth y hasta hornos de microondas asi como la 5.8GHz la cual
tiene mayor ancho de banda.

Cada una de las bandas se divide en canales. El ancho de banda de cada canal
es la cantidad de espectro disponible para la comunicación. En el caso de las
comunicaciones full duplex se utilizan dos canales, uno en cada dirección
(upstream y downstream).

Indique y explique los componentes principales de la red telefonica publica.

La red de telefonia publica conmutada (PSTN) consta de tres componentes


principales:

1. Los circuitos locales: lazo local (pares trenzados de entre 1km a 10km)

2. Troncales: troncal de conexión interurbana y troncal interurbana (cables


coaxiales, fibra ópticas o conexiones inalámbricas)

3. Oficinas de conmutacion: oficinas finales, oficina interurbana, oficias de


conmutación intermedia.

Imaginemos que estamos en Montevideo y queremos llamar a alguien que se


encuentra en Artigas, para ello, se debe dar un proceso que va mas alla de
conectar dos telefono por un cable. Primero, desde nuestro telefono salen dos
cables de cobre que van directamente a una oficina central mas cercana de la
compañia telefónica, esta conexion se conoce como lazo local y es un par de
cobre trenzado de no mas de 10km. Como es mucha la distancia existen otros
centros de conmutacion llamadas oficinas interurbanas, las cuales reciben
multiples conexiones de oficinas finales a traves de una conexion llamada
troncal de conexion interurbana (1 a 10km). Si la persona que esta en Artigas no
tiene la misma oficina interurbana que yo, hay que establecer la conexion entre
estas dos oficinas a traves de un centro de conmutacion intermedio. Esta
conexion se llama troncal interurbana y tiene un gran ancho de banda ya que
pueden recibir muchas llamadas en simultaneo.

Este proceso se da en el “peor” de los casos, es decir, no se da siempre. Es

Resumen de Redes de Datos 17


evidente que si queremos llamar a nuestra vecina, ambos telefonos muy
probablemente tengan un lazo local con la misma oficina final, entonces ahi se
hace la conexion. Lo mismo sucede si la distancia sea mayor a 10km pero
menor a 100km, muy probablemente el telefono tanto del receptor como del
emisor estaran conectados a la misma oficina interurbana conectados a traves
de un troncal de conexion interurbano.

¿Como funcionan los modems telefónicos?

Los módems telefónicos envían datos digitales entre computadoras a través del
angosto canal que provee la red telefónica para una simple llamada de voz, por
lo tanto, es claro que tiene que lidiar con varias limitaciones: bajo ancho de
banda, atenuacion, distoricion de señales, posibilidad de error debido al rudio
electrico y posibilidad de que el filtro del codec trunque la señal a aprox 3kHz.

Para enviar estos bits a traves del lazo local, primeros hay que convertirlos en
señales analogicas (utilizando metodos de modulzarización) y luego pasarlos
nuevamente a bits, de esto se encarga el modem. La principal dificultad al hacer
esto es que una línea telefónica de calidad de voz está limitada a mas o menos
3000 Hz, esto produce que la tasa de transmicion de datos sea muy pobre. En
la practica la mayoria de los modems envian una tasa de 2400 baudios y el
objetivo es conseguir mas bits por simbolo, para ello, se utilizan distintas
tecnicas de modulacion. Gracias a las distintas constelaciones se pueden
conseguir mas cantidad bits por simbolo, sin embargo, al manejar muchos
símbolos, incluso una pequeña cantidad de ruido en la amplitud o fase
detectada puede producir un error. Por este motivo, existe algunos estandares
que agregan algunos simbolos para la correccion de errores, por ejemplo, el
estandar V.32 utiliza 32 puntos de constelacion para transmitir 4 bits de datos y
1 bit de error, con ello logra 9600 bps con coreccion de errores, asi hasta

Resumen de Redes de Datos 18


56kbps (ver siguiente pregunta para ver porque siguien funcionando mas alla de
Shannon).

Si Shannon llega a 34kbps, como puede ser que existan algunas modulaciones
que pasaron a 48kbps, incluso mas.

En la oficina final de la compañía telefónica, los datos se convierten a un


formato digital para transmitirlos dentro de la red telefónica. El límite de 34 kbps
es para la situación en la que hay dos lazos locales, uno en cada extremo. Cada
uno de ellos agrega ruido a la señal. Si pudiéramos deshacernos de uno de
estos lazos, podríamos aumentar la SNR y se duplicaría la tasa máxima de
transmisión.

Lineas digitales de suscriptor xDSL


El truco para que xDSL funcione es que cuando un cliente se suscribe al
servicio, la línea entrante se conecta a un tipo distinto de conmutador que no
tiene este filtro y, en consecuencia, toda la capacidad del lazo local queda
disponible. Tiene dos limitaciones, primero la limitacion fisica del lazo local y por
otro lado, la capacidad de lazo local disminuye muy rapidamente con la
distancia desde la oficina final. Este xDSL se diseño con ciertos objetivos en
mente:

1. Los servicios deben trabajaron sobre los lazos locales existentes

2. No deben afectar los dispositivos locales de los clientes

3. Debe ser mas rápido que el modem

Para ello se tomo el espctro disponible de 1.1MHz y se dividio en 256 canales


de aproximadamente 4300Hz. El canal 0 se usa para la voz, del 1 al 5 no se
usan para evitar interferencias, uno para control ascendente y descendentes de
datos y los restantes para datos del usuario.

Explique como funciona ADSL


El ADSL fue una revolucion, ofreciendo hasta 8Mbps para el trafico descendente
y 1Mbps para el trafico ascendente. Este sistema trabaja de la siguiente
manera, primero se debe instalar un NID en la casa de cada cliente el cual
separa la red del proveedor con la red del cliente, luego cerca de este se
encuentra un splitter, elemento clave el cual separa la señal del telefono de la
señal del modem ADSL . Este funciona como 250 módems QAM operando en
paralelo a diferentes frecuencias. El otro extermo del cable en la oficina se
instala otro splitter el cual envia la señal de voz al conmutador de voz normal y
la señal de datos va para el DSLAM.

Resumen de Redes de Datos 19


Esta separacion permite mayores velociades de transmicion de datos, sin
embargo, requiere un NID en cada una de las casas de los clientes, haciendo
este un proceso costoso.

Describa las técnicas de conmutación de paquetes y conmutación de circuitos.

La conmutación de circuitos busca una trayectoria física desde el teléfono


emisor al receptor. El emisor establece quién será el receptor, una vez en
marcha la llamada existirá una trayectoria dedicada entre ambos extremos que
continuará hasta que termine la llamada. La trayectoria debe estar definida
antes de poder enviar datos. Como consecuencia, una vez establecida la
llamada, el único retardo es el tiempo de propagación que es mínimo. Fue
diseñada para voz. Ejemplo: PSTN (Red telefónica pública conmutada).

La conmutación de paquetes consta de enviar paquetes de datos tan pronto


como estén disponibles. La data se separa en paquetes que tienen data e
información de control y son almacenados brevemente en los nodos y pasados
al siguiente nodo. No hay necesidad de establecer una ruta dedicada de
antemano. Se usan enrutadores con transmisión de almacenamiento y envío
para enviarles los paquetes por separado. Debido a esto, no se asegura un
orden de llegada de los mismos y los paquetes pueden seguir diferentes
trayectorias. Se limita el tamaño de paquetes para que no monopolice una línea
de transmisión. El retardo, comparado con una conmutación de circuitos, es
menor ya que los datos que se envían apenas están disponibles, aunque
almacenar y enviar paquetes en los enrutadores produce un retardo. Otro
problema que puede ocurrir en la conmutación de paquetes es la congestión.
Fue diseñada para datos. Ejemplo: Internet.

La conmutación de circuitos desperdicia ancho de banda si se le asigna una


porción al usuario que no la usa. En cambio, la de paquetes no desperdicia y es
más eficiente desde la perspectiva del sistema. La de paquetes es más robusta
ante fallas ya que existen muchos caminos para enviar paquetes y si uno falla,
se calcula una nueva ruta. En circuitos, si falla la comunicación, no se pueden
transmitir datos.

¿Como funcionan los esquemas de multiplexión?


La multiplexión por división de tiempo (TDM, por sus siglas en inglés, Time
Division Multiplexing) se utiliza para transmitir varias señales de voz a traves de
troncales, para ello se envia una muesta cada 125 microsegundos. Para ello

Resumen de Redes de Datos 20


existe una trama que tiene 24 canales de 8 bits cada uno, es decir 192 bits mas
uno de control, esto nos da una tasa de aproximadamente unos 1.5Mbps, a esto
se le llama portadora T1. Este tipo de multiplexion nos permite multiplexar varias
portadoras T1 en portadoras de orden mas altos. De esta manera.

FDM (Multiplexión por División de Frecuencia, del inglés Frecuency Division


Multiplexing) divide el espectro en bandas de frecuencia, en donde cada usuario
tiene posesión exclusiva de cierta banda en la que puede enviar su señal.

¿Como funciona la televisión por cable?


En su inicio no estaba diseñada para conectar computadoras, como las redes
telefonicas. Sin embargo se le vio rapido potencial para brindar un servicio de
transmicion de datos si se hacian algunas modificaciones.
Los amplificadores de una via (descarga de imagen y audio) debieron
migrarse a amplificadores de dos vias, para que las computadoras puedan
enviar datos.
Al cable coaxial se le tuvo que hacer una asignacion del espectro, esto se
pudo hacer de buena manera, manteniendo buena transmicion de datos
debido al gran ancho de banda del cable. Debido al comportamineto tipico
del usuario, se envia menos de lo que se descarga, entonces si un
proveedor de cabel queria ofrecer internet asimetrico, se debia asignar mas
espectro para la bajada que para la subida.
El cable es un medio compartido, para internet es dificil porque a mas
usuarios menor cantidad de ancho de banda, por eso se tuvo que agregar
nodos de fibra para agilizar.

Ejercicio “práctico”

Resumen de Redes de Datos 21


Calcule la tasa de datos de un canal sin ruido de 2400 baudios y modulación
QAM-64.

14.400

Dado un canal sin ruido, ancho de banda 3kHz y modulación QAM-16. ¿Es
posible
lograr una tasa de datos mayor a la anterior? Justifique la respuesta y en caso
de ser afirmativo de un ejemplo.

Si se puede

Capa de enlace
¿Cual es el objetivo de la capa de enlace? ¿Que objetivos intenta resolver?
Estudiar algoritmos para lograr una comunicacion confiable, eficiente entre
dos maquinas adyacentes. Estas son dos maquinas conectadas por un canal
de comunicaciones que actúa conceptualmente como un tubo. Los bits se
entregan exactamente iguales a como se envian. Ademas, se estudian las
limitaciones del canal de comunicaciones que afectan la eficiencia de las
transmisciones de datos y deben ser tenidos en cuenta por los protocolos,
pueden exisitr errores, tasa de datos finitos y retardo en la propagación.

Esta capa, utiliza servicios que le brinda la capa fisica para enviar y recibir bits a
traves de los canales de comunicacion, para ello debe:

1. Proporcionar a la capa de red una interfaz bien definida.

2. Manejar errores de transmicion.

3. Regular el flujo de datos para que receptores lentos no sean saturados por
emisores muy rápidos.

Resumen de Redes de Datos 22


Para cumplir esta meta, la capa toma los paquetes de la capa de red y los
encapsula en tramas para transmitirlos. Cada trama consta de un encabezado,
una carga util donde se encuentra el paquete y un terminador.

Explicar que se debe brindar un servicio confiable y explciar conifrmaciones de


recepcion, temporizadores y numero de secuencia de tramas.

¿Cuáles son y como funcionan los servicios de capa de enlace?


La funcion de la capa de enlace es brindarle servicios a la capa de red. El
servicio principal es la transferencia de datos de la capa de red de origen a la
capa de red de la maquina de destino. Según el protocolo que se use para la
comunicación entre las capas de manera horizontal, se pueden dar tres tipos de
servicios.
1. Servicio sin conexión ni confirmación de recepción.

Sucede cuando la maquina de origen envia tramas independientes a una


maquina receptora y esta no confirma su recepción. No se establece una
conexion lógica de antemano ni se libera despues y si se pierde alguna
trama por ruido en la comunicación entre las maquinas no se hace ningun
esfuerzo por detectar el error ni recuperarlo. Este servicio es muy útil
cuando la tasa de error es muy baja o se necesita transmitir datos en tiempo
real, como por ejemplo, la voz o un servicio de streaming.

2. Servicio sin conexión con confirmación de recepción.

En este servicio no se establece una conexión lógica entre las maquinas


pero si se confirma de manera individual la recepción, de esta manera el
emisor sabe si la trama llego bien o se perdió. En caso de pérdida el emisor
puede reenviar la trama. En este servicio y el tercero la confirmacion de
recepción es por una cuestion de optimizacion de hardware ya que este
mismo proceso se puede hacer en la capa de red, pero el lugar mas
eficiente para realizarlo es en la capa de enlace.

Resumen de Redes de Datos 23


3. Servicio orientado a conexión con confirmación de recepción.

El tercero y mas confiables de los servicios es el servicio orientado a la


conexion con confirmacion de recepcion. En este caso, se establece una
conexión entre la máquina de origen y de destino antes de transferir los
datos usando todos los recursos necesarios, por otro lado, las tramas estan
numeradas, garantizando que la trama que envia el emisor llega al receptor
únicamente una vez y que todas las tramas se envian en el orden correcto.
Al finalizar la transmicion de datos, la conexion se libera asi como todos los
recursos utilizados

Esto funciona ya que por ejemplo, si enviamos la trama #1 y esta no llega al


receptor, este nunca enviará un ACK (mensaje de confirmación) entonces el
emisor entenderá que la trama nunca llego y la enviará nuevamente. Si por
algun motivo, el ACK no llega (ruido en el canal) y el emisor entiende que
como no recibió el ACK el receptor no lo recibio de manera exitosa (aunque
si haya llegado), lo enviará nuevamente y el receptor se dará cuenta de que
ya recibió la trama y simplemente la descartará y enviará el ACK
correctamente.

Describa los métodos de entramado


La capa de enlace utiliza los servicios que le proporciona la capa fisica, para
ello, la capa de enlace tiene ciertas funciones: brindar servicios a la capa de red,
control de erroes de datos y control de flujo para que emisores muy rapidos no
saturen emisores lentos. Para ello, la capa de enlace toma los paquetes de la
capa de red y los encapsula en tramas para transmitirlos. Esta trama consta de
un encabezado, una carga útil o payload y un terminador. Sin embargo, muchas
veces la capa fisica agrega cierta redundancia tolerable a sus paquetes con el
obetivo de reducir la tasa de error de bits, aun asi, esto no garantiza que este
libre de errores, de detectar y corregir los errores se encarga la capa de enlace.
Para ello, la capa divide el flujo de bits puros en tramas separadas y utiliza unos
de los cuatro metodos para entramar:

1. Conteo de bytes:

a. Esta consta de un campo en el encabazado para especificar el número


de bytes en la trama. Cuando la capa de enlace ve el conteo de bytes
sabe cuantos bytes mas siguen en la trama y por lo tanto donde termina
la trama.

Resumen de Redes de Datos 24


b. Lo malo de esto, es que si ocurre algun error en el byte del encabezado
ocurre un desincronzación y por lo tanto el inicio correcto en por lo
menos, la siguiente capa.

2. Bytes banderas con relleno de bytes:

a. Con este segundo método resolvemos el problema de la sincronia


utilizando bytes banderas como delimitrador final e inicial. En otras
palabras al inicio y al final de cada trama se pone un relleno con un byte
bandera (FLAG). Sin embargo, que pasa si por casualidad el formato
del FLAG se encuentra en la carga útil de la trama, en esta situacion
interferiria con el entramado, para ello el emisor inserta un byte “auxiliar”
(ESC) antes de cada FLAG accidental. De esta forma la capa de enlace
del receptor quita este ESC antes de entregar los datos a la capa de
red. Ahora, si el formato de ESC se encuentra tambien en la carga útil
de la trama de manera accidental, se agrega otro byte ESC, el receptor
quitará el primero y dejara el segundo ya que entenderá que es parte de
la trama.

b. Una desventaja es que tanto FLAG como ESC estan obligados a usar 8
bits, esto gasta recursos.

Resumen de Redes de Datos 25


3. Bits bandera con relleno de bits:

a. En lugar de rellenar con bytes se rellena con bits y no esta obligado a


utilizar 8 bits para relleno. Cada trama comienza y termina con este
patron 01111110, este es un byte bandera. Para que no ocurran
interfrenecias en el entramado, por cada cinco 1’s consecutivos el
emisor inserta un 0 como relleno. Cuando el receptor ve cinco bits 1 de
entrada consecutivos, seguidos de un bit 0, extrae (es decir, borra) de
manera automática el bit 0 de relleno. De esta manera el inicio y final de
la trama es reconocido sin ningun problema.

b. La longitud de la trama depende del contenido que lleva, si el emisor no


tiene que insertar ningun bit de relleno la trama va a medir x pero si solo
lleva bits bandera y el emisor debe rellenar con muchos 0 va a medir x +
algo.

4. Violaciones de codificacion de la capa física:

a. El último método de entramado utiliza atajo desde la capa física. La


capa de enlace utiliza algunas señales reservadas de la capa fisica
(señales prohibidas) para indicar el inicio y el fin de la trama. No hay
necesidad de rellenar datos y es facil de encontrar el inicio y el final.

b. La capa de enlace debe de saber parte de la implementacion de los


servicios de capa fisica para saber cuales son esas señales reservadas.

Resumen de Redes de Datos 26


Como funciona el control de errores → tiene la explicacion como la dio en clase
el profesor.
La manera normal de asegurar la entrega confiable de datos es proporcionar
retroalimentación al emisor sobre lo que está ocurriendo al otro lado de la línea.
Para manejar esta retroalimentacion y asegurarnos de que todas las tramas
lleguen en tiempo y forma se utilizan: confirmaciones de recepcion para bien o
para mal, temporizadores y numeracion de manera secuencial a las tramas.
Si el emisor envia una trama y el receptor le llega de manera correcta, este
último le envia un ACK (mensaje de confirmación) y el emisor continua enviando
tramas. Sin embargo, que pasa si por algún motivo, por ejemplo, ruido en el
canal, la trama o el ACK no llegan a destino, en ambos casos el emisor se
quedará esperando un mensaje de confirmacion que no llegará porque el
receptor nunca recibió ninguna trama y por lo tanto no envia un ACK o en el otro
caso, el ACK se “pierde” durante el camino. Para ello, se añade un
temporizador el cual empieza cuando se envia la trama y termina cuando llega
tiempo cercano a lo que deberia demorar todo el procedimiento, si llega el ACK
el temporizador se cancela, en caso contrario, en emisor sabrá que algo falló.
Ahora bien, pero que pasa si la trama llega bien, el receptor la pondrá a
disposicion de la capa de red y de ahi continua el proceso, pero el ACK no llega
al emisor y una vez que el temporizador expira este reenvia nuevamente la
trama. Como la capa de enlace del receptor no tiene idea que trama es va a
repetir el proceso, produciendo que la misma trama se procese varias veces.
Para ello se agrega una numeracion a la trama, entonces en caso de que el
ACK no le llegue al emisor y este reenvie la trama que ya fue enviada antes, la
capa de enlace del receptor se de cuenta debido al numero de la trama y
simplemente la descarte.

Segundo parcial

Resumen de Redes de Datos 27


Capa de enlace
¿Cuál es el objetivo de la capa de enlace?¿Cuáles son las limitaciones de la
transferencia de datos? ¿Cuáles son los aspectos de diseño de la capa? (No se
qué parte de esto va)
El objetivo de la capa de enlace es estudiar algoritmos para lograr una
comunicación confiable y eficiente entre máquinas adyacentes. La
confiabilidad refiere a que la capa debe asegurarse que si una máquina envía
datos estos llegarán correctamente a la otra máquina, íntegramente y en orden
correcto. La eficiencia refiere a optimizar el uso del canal de comunicación para
aumentar la tasa de datos transmitida; si un emisor queda mucho tiempo
esperando confirmaciones de un receptor, el canal no está siendo utilizado por
lo cual se pierde eficiencia. Las máquinas sean adyacentes significa que se
comunican mediante un canal de comunicación que actúa conceptualmente
como un cable (los bits se entregan con exactitud en el mismo orden en el que
fueron enviados).

Existen ciertas limitaciones del canal de comunicación que afectan la eficiencia


de la transferencia de datos:

1. Errores: Por más de que el canal de comunicación entregue los bits en el


mismo orden, a veces ocurren errores en la transmisión por factores de la
capa física como el ruido.

2. Tasa de datos finita: La tasa de datos tiene un límite debido a las


capacidades físicas de los medios de transmisión como el ancho de banda.

3. Retardo de propagación: Existe un tiempo entre que se envía un bit y se


recibe. Este limita la velocidad de comunicación entre máquinas y puede
llevar a conflictos.

Los aspectos de diseño de la capa de enlace son los siguientes:

1. Servicios a capa de red: La capa de enlace debe proveer una interfaz bien
definida de servicios a la capa de red. El trabajo de la capa de enlace es
que la información que le da el proceso de la capa de red en una máquina
emisora llegue al proceso de capa de red de la otra máquina. La información

Resumen de Redes de Datos 28


viaja realmente mediante la capa física pero se modela que la comunicación
virtual se da a nivel de la capa de enlace (diagrama del libro).
Se puede diseñar la capa de enlace para que ofrezca diferentes servicios.
Los que más razonables son de implementar son:

a. Servicio no orientado a la conexión sin confirmación de recepción:


Este servicio consiste en que una máquina envía mensajes individuales
sin esperar confirmación del receptor. No se establece ninguna
conexión ni se hace ninguna validación para recuperar paquetes
perdidos. Este servicio es adecuado para cuando el ratio de errores es
muy bajo, como en redes LAN. Aquí, el control de recuperación se
relega a capas superiores. También es adecuado para tráfico real-time,
donde es más importante la velocidad es más importante que la
correctitud.

b. Servicio no orientado a la conexión con confirmación de recepción:


En este servicio tampoco se establece ninguna conexión lógica pero
cada trama es confirmada individualmente por el receptor. Así el
receptor sabe si una trama llegó correctamente o no. Si no se recibe
confirmación luego de cierto tiempo, se puede retransmitir. Este servicio
es útil en canales poco confiables o inestables, como los sistemas
inalámbricos.

c. Servicio orientado a la conexión con confirmación de recepción:


En este servicio la máquina de origen y destino establecen una
conexión antes de que se envíen los datos. La conexión garantiza que
cada trama enviada es recibida, es un flujo de bits confiable. Para usar
este servicio se pasa por tres fases: la fase de establecimiento, donde
se establece la conexión, la fase de transferencia, donde se transfieren
los datos, y la fase de liberación, donde se corta la conexión.

2. Entramado: Para poder enviar los mensajes de capa de red a la siguiente


máquina, la capa de enlace divide estos mensajes en unidades más
pequeñas llamadas tramas para poder detectar y corregir errores que
pueden producirse en la capa física. Las tramas usualmente llevan una
suma de verificación la cual el receptor usa para saber si ha ocurrido algún
error en la transmisión. Para dividir las tramas existen distintos métodos:

a. Conteo de caracteres: Este consta de un campo en el encabezado


para especificar el número de bytes en la trama. Cuando el receptor ve
el encabezado sabe cuántos bytes más siguen en la trama y por lo tanto

Resumen de Redes de Datos 29


dónde termina. El problema con este método es que si se produce un
error en el byte de conteo se produce una desincronización de todas las
tramas posteriores.

b. Bytes banderas con relleno de bytes: Este método utiliza un byte


reservado como bandera (FLAG) de inicio y fin de la trama. Este método
resuelve el problema de la desincronización pero genera otro, que es
que el byte reservado puede aparecer como parte de los datos a enviar.
Para solucionar esto se reserva otro byte auxiliar (ESC), que sirve para
marcar que el byte FLAG en el mensaje no indica el fin de la trama.
Ahora si el byte ESC apareciera en la carga útil se agrega otro antes. El
ESC indica que el siguiente byte es un byte reservado pero son datos.

c. Bits bandera con relleno de bits: El método anterior resuelve el


entramado pero al tener que utilizar 8 bits para cara FLAG y ESC, se
gastan recursos. Este método utiliza un patrón de bandera (01111110),
pero para marcar el escape no utilizará todo un byte sino que cuando
vengan cinco 1’s seguidos en la carga útil pondrá un 0 que luego el
receptor ignorará.

d. Violación de codificación de capa física: El último método se basa en


que la capa de enlace sepa detalles sobre la implementación de la capa
física y sobre cómo codifica los 1’s y 0’s. Así podrá utilizar otras
codificaciones de la señal para indicar el inicio y el fin de la trama.

3. Control de errores: La capa de enlace se debe encargar de asegurarse


que los mensajes son recibidos correctamente y en el orden correcto. La
manera usual es darle al emisor retroalimentación sobre lo que ocurre al
otro lado de la línea. Se hace que el receptor envíe mensajes de
confirmación positiva o negativa. Si el emisor recibe confirmación positiva,
bien, si recibe negativa, retransmite. Esto no resuelve los casos en los que
una trama no llega y se pierde en la línea, tanto tramas de datos como de
confirmación. Para esto, el emisor utiliza un temporizador. Si no llega la
confirmación, el temporizador alerta al emisor sobre un posible problema. La
solución obvia es la retransmisión, pero esto puede dar posibles problemas
si lo que se perdió fue la confirmación. Para esto, las tramas llevan número
de secuencia para poder distinguir qué trama es nueva y qué trama es
retransmisión. Esto también ayuda a mantener el orden de las tramas al
momento de subirlas a capa de red.

Resumen de Redes de Datos 30


4. Control de flujo: El control de flujo refiere a que se trata de evitar que un
transmisor rápido sature a un receptor lento. Para esto se dan dos
estrategias principalmente: basado en retroalimentación, donde el
receptor le da permiso al emisor para seguir enviando datos o le da
información sobre su estado; basado en la tasa de transmisión, donde el
protocolo tiene un mecanismo que limita la tasa de transmisión y no se
utiliza información del receptor.

Detección y corrección de errores


Uno de los objetivos de la capa de enlace es el control de errores. Los mensajes
que se transmiten a través de la capa física pueden no llegar exactamente cómo
se enviaron. Para manejar esto se utilizan principalmente dos estrategias. La
primera es incluir suficiente información redundante para que el receptor pueda
deducir cuáles debieron ser los datos transmitidos. La otra estrategia es incluir
sólo suficiente redundancia para permitir que el receptor sepa que ha ocurrido
un error y entonces solicite una retransmisión. La primera utiliza códigos de
corrección de errores (FEC) y la segunda utiliza códigos de detección de
errores.

1. Códigos de corrección de errores: En estos métodos, una trama consiste


de m bits de datos y r bits de verificación. Si llamamos n = m+r, entonces n
es la longitud total de la trama y las llamamos palabras codificadas de n bits.
Para saber lo qué es en realidad un error, se utiliza el concepto de la
distancia de Hamming, que es la cantidad de bits distintos que tienen dos
palabras (se puede obtener haciendo XOR y contando la cantidad de 1’s).
Esto implica que si dos palabras tienen distancia d, se requieren d errores
de bits para transformar una en la otra. Por esto definimos la distancia de
un código como la distancia mínima entre dos palabras válidas del código.
Así, si se recibe una palabra con menos de d errores, no será una palabra
válida del código y se sabe que hubo un error. Así podemos detectar d-1
errores con un código de distancia d. Para corregir debemos tener alguna
forma de deducir qué palabra fue la que generó lo que se recibió. Para eso,
la distancia del código debe ser más de la mitad que la cantidad de errores
máximos.

💡 Para detectar k errores: distancia del código k+1


Para corregir k errores: distancia del código 2k+1

Resumen de Redes de Datos 31


Una tarea compleja es encontrar la cantidad correcta de bits de verificación.
Pongamos el ejemplo de que se quieran corregir errores simples (implica d
= 3). Tenemos 2m palabras válidas y cada una de estas tiene npalabras
inválidas a distancia 1. Entonces cada palabra requiere n + 1patrones de
bits. Como el número total de patrones es 2n , tenemos que (n + 1)2m ≤
2 . Usando la fórmula de ntenemos que
n

(m + r + 1) ≤ 2r

Así encontramos un límte inferior para r . Este método se puede alcanzar


usando el método de Hamming:

Método de Hamming

Se numeran los bits de 1 a n. Los bits que son potencias de 2 son bits
de verificación y el resto son bits de datos. Los bits de verificación
participan en la suma de paridad de bits de uno o más conjunto de bits.
Para saber qué bits de verificación participan para un bit en una
posición k escribimos k como suma de potencias de 2 y esas posiciones
de esos serán los que participan. El receptor realiza las sumas de
verificación. Si las sumas no dan bien podemos deducir cuál fue el bit
que dio error usando los check result. El check result para un bit de
verificación es 0 si su suma dio bien y 1 si dio mal. Si hacemos la suma
de las posiciones de los bits de verificación que dieron check result 1,
nos va a dar el índice donde se dio el error por cómo está construido el
código.

Otra cosa que se puede hacer para protección contra errores en ráfaga es si
tenemos un bloque de k palabras de longitud n, enviar las n columnas como
mensajes de longitud n, así si hay una ráfaga de k bits, como máximo hay
un error en cada palabra y podemos resolverlo.

2. Códigos de detección de errores: Estos códigos se utilizan principalmente


en fibra óptica y cobre de alta calidad en la que los errores son bajos lo cual
significa que la detección y retransmisión es más eficiente que enviar
suficiente información redundante como para que el receptor lo corrija.

a. Paridad de bits: En este código agrega un bit al final de la palabra que


hace que el número de 1’s de la palabra sea par (o impar). Esto genera
un código de distancia 2, ya que cualquier error simple genera una
palabra con paridad inválida, lo que significa que podemos detectar
errores simples.

Resumen de Redes de Datos 32


b. Código de Redundancia Cíclica: En este método se utilizan
propiedades de los polinomios. Tenemos un polinomio M(x)de grado
m − 1, donde el bit de mayor orden es el que está más a la izquierda.
Emisor y receptor deben acordar un polinomio G(x), que le llamamos
polinomio generador que es de grado r. Lo que hace el algoritmo es:

i. Agregar r bits de 0 al final de la trama. Ahora contiene m + r bits y


corresponde a xr M(x)

ii. Dividir xr M(x)entre G(x)utilizando división módulo 2 (que es una


r
serie de restas módulo 2). Entonces x M(x) = q(x)G(x) + R(x)
, donde q(x)es el cociente y R(x)es el resto.

iii. Restar R(x)a xr M(x), usando resta módulo 2. El resultado lo


llamamos T (x)y es lo que se va a transmitir. De esta forma
T (x) = xr M(x) − R(x) = q(x)G(x)
Así sabemos que T (x)es divisible entre G(x). Si el error E(x)es
distinto de 0, hubo error

Protocolos elementales

1. Protocolo simplex sin restricciones: Como primer protocolo tenemos un


protocolo en el cual no se preocupa por que nada salga mal. Los datos se
transmiten una dirección únicamente, el tiempo de procesamiento es 0 y
tenemos buffers de espacio infinitos. El canal está libre de errores. Este
protocolo es utópico, sirve para mostrar la base sobre la cual se idean los
protocolos más complejos.

2. Protocolo simplex parada y espera: En este caso se quiere resolver el


problema del flujo, de no saturar al receptor. Se asume que se tiene buffers
limitados. El canal se asume ser libre de errores y la comunicación es
unidireccional. En este protocolo el receptor envía una confirmación de
recepción al emisor. El emisor espera a recibir la confirmación de la trama
enviada antes de enviar la siguiente. Como el canal es libre de errores, la
confirmación siempre llega y es positiva.

3. Protocolo Simplex para un canal con ruido: Ahora se quiere resolver el


problema del ruido del canal. Ya no asumimos que el canal es perfecto por
lo cual se pueden dar errores en la transmisión. Pero para esto asumimos
que si se da un error en la transmisión el receptor lo detectará. Si

Resumen de Redes de Datos 33


agregamos un temporizador, el emisor envía una trama y si el receptor
detecta un error, la descarta y no envía el ACK. Cuando el temporizador
expire, el emisor retransmite. Solamente esto no funciona pues no considera
el escenario en el cual lo que falla es la transmisión del ACK. En este caso,
se retransmitiría (erróneamente) una trama y habría un duplicado. Para esto
agregamos un número de secuencia, para que el receptor pueda diferenciar
si la trama es nueva o duplicada que tiene que descartar. También hacemos
que si el receptor recibe una trama incorrecta envía el ACK con el número
de secuencia de la última trama que recibió bien. Así los números de
secuencia 0 y 1 son suficientes. Cuando llega una trama con el número de
secuencia correcto, se pasa a la capa de red y se incrementa (modulo 2) el
numero de secuencia. Si llega incorrecta, se descarta como duplicado.
Nunca podrá ser una trama siguiente porque el receptor no manda el ACK
de la siguiente hasta haber recibido en la que está.

Protocolos de ventana corrediza


Los protocolos elementales solo modelan comunicación simplex. En la práctica,
es necesario tener comunicación bidireccional. Una forma de hacer esto es
tener dos canales de comunicación usando alguno de los protocolos simplex en
distintas direcciones. Pero no es muy eficiente.

Una mejor idea es usar el mismo canal para los protocolos simplex en las dos
direcciones y diferenciar el tipo (kind) de las tramas, indicando si son de ACK o
de datos.
Una idea aún mejor es el piggybacking. Cuando una máquina recibe datos, no
envía una trama de ACK sola, sino que espera a tener algo para transmitir ella y
pone el ACK de la que recibió en esa trama. Así, el ACK viaja “gratis”. Esto
mejora el uso del ancho de banda del canal.
En los protocolos de ventana corrediza cada máquina tiene una ventana de
emisor y de receptor. La ventana emisora son los números de secuencia de
las tramas enviadas pero no confirmadas. La ventana receptor son el número de
secuencia de las tramas que puede aceptar.

1. Protocolo de ventana corrediza de 1 bit: Este protocolo utiliza los


números de secuencia 0 y 1 y utiliza parada y espera. En este protocolo se
utiliza piggybacking, es decir, la trama de datos contiene el ACK de la última
trama recibida correctamente. Este protocolo es correcto y funciona sin
problema cuando una de las máquinas empieza a transmitir primero.
Cuando ambas transmiten al mismo tiempo la primer trama se da una

Resumen de Redes de Datos 34


situación particular en la cual la mitad de las tramas son duplicadas pues se
produce un desfasaje del número de secuencia de receptor esperado de
ambos lados.

2. Retardo de propagación: Hasta ahora asumimos que el tiempo de


propagación de los mensajes es despreciable, lo cual no es cierto. El tiempo
de ida y vuelta de una trama puede ser prolongado y hay que considerarlo
ya que puede generar conflictos.
Si llamamos ba los bits/seg, Llos bits de la trama, Rel retardo de ida y
vuelta, podemos calcular la eficiencia del canal como:

L
utilizacioˊn del canal =
L + bR

Para aumentar la utilización de la linea se utiliza la canalización que es


permitir al emisor que mande w tramas antes de bloquearse en vez de que
envíe solo una. Si tomamos que la unidad de tiempo aes el tiempo de una
w
trama, la utilización del canal también es igual a 2a+1​.
Por otro lado, esto produce el problema de que el canal no es confiable,
¿cómo manejamos los errores? ¿Qué pasa si una trama se pierde? Esto
causaría que muchas tramas tengan problemas. Para esto hay dos
soluciones básicas

3. Retroceso N: En este protocolo la ventana de emisor es mayor que uno


pero la ventana de recepción es de tamaño uno. Si se recibe una trama no
esperada, se descarta. Si hubo algún error, cuando salte el temporizador, el
emisor retransmitirá la primer trama perdida y todas las que le siguen. El
receptor acepta las tramas en orden, no puede aceptar el k+1 antes de
aceptar el k. Este método puede desperdiciar mucho ancho de banda si el
ratio de error es muy alto, pues se retransmiten muchas tramas.

4. Repetición selectiva: Aquí tanto el emisor como el receptor tienen ventana


mayor que uno. En este caso si una trama recibida tiene un error, se
descarta, pero las que lleguen bien que estén dentro de la ventana se
aceptan y se guardan en buffer. Cuando el temporizador expire en el emisor,
solo retransmite la trama que expiró y no todas las que le siguieron. Este
método en general se combina con confirmaciones negativas (NAK), así el
emisor no debe esperar a que el temporizador expire para retransmitir. Para
este protocolo, el receptor debe tener una ventana que sea menor o igual a
la mitad de números de secuencia disponibles. Si no pasa esto, se puede

Resumen de Redes de Datos 35


dar un solapamiento en los números de secuencia que cause errores que el
protocolo no detecta.

Subcapa de acceso al medio


¿Cuál es el objetivo de la subcapa de acceso al medio?

La subcapa de acceso al medio tiene como objetivo resolver el problema de la


competencia por el canal de transmisión en una red de difusión. En una red de
difusión existe un único canal de comunicación y muchos dispositivos que lo
usan, por lo cual pueden suceder conflictos. Estos sistemas se conocen como
sistemas de contención. La subcapa MAC (Medium Access Control) es la capa
inferior de la capa de enlace y sus protocolos intentan de resolver el problema
de la asignación del canal multiacceso. A estos protocolos se los denomina
protocolos de acceso múltiple. La subcapa MAC tiene particular importancia en
las redes LAN’s, especialmente en las inalámbricas ya que este medio es
naturalmente un canal de difusión.

El problema de asignación del canal


El problema de asignación del canal existe en todo tipo de redes de difusión, ya
sea inalámbrica o alámbrica con muchos nodos conectados al mismo cable. En
ambas variantes el canal conecta a cada usuario con todo el resto y hay
interferencias o competencia por el uso del canal. Para solucionar este
problema existen dos categorías básicas de soluciones:

1. Asignación estática: La manera clásica de resolver el problema es utilizar


una técnica de multiplexación estática, como FDM o TDM, y asignar a cada
usuario una porción. En el caso de FDM, se divide el espectro de
frecuencias del ancho de banda y se asigna a cada usuario una banda; en
TDM, se define un intervalo de tiempo que se divide entre la cantidad de
usuarios y se le asigna a cada uno un intervalo de tiempo. Esta asignación
del canal es mala cuando el número de usuarios es grande y variable. Si
menos de N usuarios quieren comunicarse, sus recursos (sea tiempo o
ancho de banda) se desperdician. Si tenemos más de N, algunos de ellos
no podrán comunicarse por falta de recursos. Además, esta asignación no
es buena cuando el tráfico se da en ráfagas, que es lo más usual en las
redes de computadoras, llegando a tener tráficos con relación de 1000:1
comparando momentos pico con tráfico normal.

Resumen de Redes de Datos 36


2. Asignación dinámica: Este modo de asignación ajusta la distribución del
canal dinámicamente, en función de algún criterio que depende del
protocolo implementado. Los recursos de transmisión se asignan de manera
flexible lo cual puede mejorar la eficiencia y el rendimiento de la red.

Protocolos de acceso múltiple (aloha)

1. Aloha puro: La idea básica del método Aloha puro es la siguiente:

a. Los usuarios transmiten cuando tienen datos para enviar.

b. En caso de una colisión, espera un tiempo aleatorio y retransmite la


trama

Es importante el esperar un tiempo aleatorio, porque si esperara un tiempo


fijo el conflicto no se resolvería al retransmitir. Aquí, una colisión, aunque
sea por una fracción muy pequeña de tiempo de las tramas, invalida todas
las tramas que colisionan. La velocidad real de transporte de los sistemas
Aloha se maximiza cuando las tramas son de tamaño fijo. Si llamamos t al
tiempo que se demora en transmitir una trama, el período vulnerable de una
trama en aloha puro (es decir, la cantidad de tiempo en la cual se pueden
transmitir tramas que colisionen con ella) es 2t, pues si una trama empieza a
transmitir hasta t antes, colisionarán.

2. Aloha ranurado: En aloha ranurado, el tiempo se discretiza en intervalos


correspondientes al tiempo que lleva transmitir una trama. En esta versión,
los usuarios no pueden transmitir en cualquier momento. La idea pasa a ser:

1. Cuando una máquina tiene datos para transmitir, espera al inicio del
siguiente intervalo y transmite

2. En caso de haber colisión, espera una cantidad de ranuras aleatorias y


retransmite.

En este caso, los nodos de la red deben estar sincronizados para acordar
los límites de las ranuras. El período vulnerable de las tramas se reduce a t,
ya que las colisiones ahora son siempre totales porque los usuarios deben
transmitir en momentos dados.

Dados estas dos versiones de Aloha, queremos estudiar la eficiencia del


protocolo en función del uso del canal.

Resumen de Redes de Datos 37


Llamaremos S al promedio de tramas transmitidas con éxito por unidad de
tiempo, por lo cual S será lo que queremos modelar. Para simplificar,
normalizaremos el tiempo, tomando como unidad de tiempo el tiempo de trama.
De esta forma el número máximo de tramas transmitidas con éxito por unidad
de tiempo es 1 (0 ≤ S ≤ 1). Llamaremos Gal promedio de tramas totales a
transmitir por unidad de tiempo. Gincluye a las tramas nuevas y a las
retransmisiones de tramas que sufrieron colisiones.
Forma matemática de verlo:
En cualquier contexto, la salida promedio será igual a la carga ofrecida
multiplicada por la probabilidad de que no exista una colisión, es decir, de que
ninguna otra trama se transmita en el período vulnerable, es decir S = GP r[0]
. Modelamos la probabilidad de que k tramas se generen en un tiempo de trama
con una distribución de Poisson con media G:

Gk e−G
P r[k] = ​

k!
La probabilidad de que ninguna trama se transmita en un tiempo de trama es
entonces P r[0] = e−G . Para aloha puro, el período vulnerable es 2t por lo cual
se generan el doble de tramas en promedio y P r[0] = e−2G 
Entonces tenemos las siguientes fórmulas.

Aloha puro : S = Ge−2G


Aloha ranurado : S = Ge−G
1
Estas funciones tienen sus picos en: G = 0, 5 ⟹ Smax = ​

2e ​ = 0.184...
1
G = 1 ⟹ Smax = ​

e
​ = 0.368...
Forma conceptual:
Si hay pocos emisores, habrá poco tráfico y por lo tanto pocas colisiones, por lo
cual cuando Ges pequeño. G ≈ S . A medida que va subiendo el tráfico,
empiezan a haber más y más colisiones y por lo tanto la eficiencia no crece
igual que el tráfico. La eficiencia crece hasta un máximo. Ese máximo depende
del tiempo vulnerable del modelo. En aloha puro, como el tiempo de trama es 2t,
el uso del canal será el mejor cuando en promedio se envíe una sola trama cada
= 0.5. En aloha ranurado, como el tiempo de trama es 1, el
2t. Es decir en G
máximo se dará en G = 1. Luego de este máximo, cada vez ocurren más

Resumen de Redes de Datos 38


colisiones por el mayor tráfico por lo cual la eficiencia del canal empieza a
decrecer.

Protocolos de acceso múltiple con detección de portadora (CSMA):


Estos protocolos permiten a las estaciones escuchar el canal antes de transmitir
para saber si el canal está ocupado. Ninguna estación transmitirá si el canal
está ocupado ya que es obvio que habrá una colisión y no solo se arruinará su
trama sino la que ya se estaba transmitiendo.

1. CSMA persistente-1: La idea de este protocolo es la siguiente:

a. Si el canal está libre transmite.

b. Si el canal está ocupado la estación espera hasta que se libera.

c. Si ocurre una colisión, espera una cantidad aleatoria de tiempo y vuelve


al punto 1.

Se le llama persistente-1 porque una estación transmitirá con probabilidad 1


cuando encuentre el canal libre. Uno esperaría que el protocolo resuelve las
colisiones por completo, pero no lo hace, pues si dos máquinas encuentran
el canal ocupado por otra, cuando termine, ambas empezarán a transmitir y
por lo tanto habrá colisión. El retardo de propagación es otro problema
relacionado. Esto es el tiempo que demora en llegar una trama al resto de
las máquinas de la red. Una máquina detecta el canal libre pero no lo está
realmente y esto causa una colisión. Cuando el retardo de propagación es
alto, esto causa problemas. Igualmente el rendimiento de este protocolo es
mayor que las versiones de Aloha pues al menos se espera cuando el canal
ya está ocupado por lo cual no se arruina la trama que ya está siendo
transmitida.

2. CSMA no persistente: En este protocolo, la estación no se queda


escuchando hasta que se libere el canal.

a. Si el canal está libre, transmite

b. Si el canal está ocupado, espera una cantidad aleatoria de tiempo y


vuelve al punto 1.

Este protocolo apunta a reducir las colisiones al hacer que las estaciones
sean menos greedy (voraces) que en la versión anterior. Este protocolo
tiene un mejor rendimiento que el anterior en general, pero lleva a mayores
retardos ya que el canal no se usa inmediatamente después de liberado.

Resumen de Redes de Datos 39


3. CSMA persistente-p:

a. Si el canal está libre:

i. Transmite con probabilidad p

ii. Espera con probabilidad 1-p un tiempo igual al máximo retardo de


propagación y vuelve al punto 1.

b. Si el canal está ocupado: Espera un tiempo igual al máximo retardo de


propagación y comienza nuevamente (esto es equivalente a seguir
escuchando el canal hasta que esté libre)

Este protocolo es un intento de punto medio para intentar de reducir tanto


las colisiones como el tiempo inactivo del canal. El mayor problema es cómo
elegir un valor de p adecuado. Si esperamos una carga pesada de tráfico,
debemos elegir p pequeño para reducir colisiones. Pero a su vez el p
pequeño significa mayores demoras para las estaciones. El rendimiento de
este protocolo es mejor que los anteriores mediante crece G

Protocolos con detección de colisiones (CSMA/CD):


En los protocolos anteriores, las máquinas determinaban si había una colisión
no por escuchar el canal mientras transmiten, sino porque cuando una trama
llega correctamente a la máquina central, esta retransmite a todas las máquinas.
Por lo cual, si una máquina recibe su trama de vuelta sabe que no hubo ninguna
colisión. Esto causa que incluso si hay una colisión, la máquina siga
transmitiendo hasta terminar de transmitir su trama. Una mejora posible de esto
es poder detectar mientras transmite y dejar de transmitir ya que esa trama ya
está arruinada.
El protocolo CSMA/CD se basa en la idea de que las máquinas escuchan el
canal mientras transmiten y si escuchan algo distinto de lo que están
transmitiendo, saben que hay una colisión por lo cual dejan de transmitir.
Cuando detecta una colisión, espera un período de tiempo aleatorio y vuelve a
intentarlo. Así, el protocolo puede estar en tres estados distintos: transmisión
(una sola máquina está transmitiendo), inactivo (nadie tiene nada para
transmitir), contención (período en el que las máquinas compiten por quién
transmite).

DIAGRAMA DE ESTADOS DEL PROTOCOLO

Resumen de Redes de Datos 40


Para poder determinar cuando se está en un período de contención o una
máquina efectivamente tomó el canal, debemos considerar cuánto tiempo
precisan las estaciones para determinar si ha habido una colisión. Para esto
consideramos el peor caso. Tomamos las dos estaciones más lejanas de la red,
separadas por un retardo de propagación de τ . Una transmite y un instante
antes de llegar τ − εla otra empieza a transmitir. El ruido de la colisión demora
otro τ en llegar, por lo cual la primer máquina precisa de 2τ para saber si tomó
el canal. Así, podemos pensar en el tiempo como ranurado (como en aloha
ranurado).

Protocolos de LAN’s inalámbricas:


Un sistema de computadoras portátiles que se comunican por radio pueden
considerarse una LAN inalámbrica. Estas LAN’s tienen propiedades un tanto
diferentes que las LAN’s convencionales y requieren protocolos de subcapa
MAC especiales. Si utilizaramos CSMA/CD como solución ingenua para estas
redes surgen problemas:
Problema de la estación oculta: Puede suceder que no todas las estaciones
estén dentro del rango de alcance de todas las demás. Esto hace que una
estación no pueda detectar a un competidor potencial por el medio debido a la
distancia. Por esto puede suceder que dos competidores transmitan al mismo
tiempo a la misma máquina y se de interferencia, pero a diferencia de los otros
protocolos aquí lo que importa es que la interferencia se da en el receptor y no
en el emisor.
Problema de la estación expuesta: Podría pasar también dos máquinas que
podrían transmitir al mismo tiempo no lo hagan. Suponemos que tenemos
A,B,C,D. B tiene datos para enviar a A y empieza a transmitir. B no llega en su
rango a D pero sí a C. C tiene datos para transmitir a D pero escucha el canal y
ve que B está transmitiendo, entonces no lo hace. Pero podría pues la
interferencia no se daría en el receptor porque B no llega a D. Entonces se
desperdicia el canal que podría estar siendo usado.
Por esto CSMA/CD no es un buen protocolo para utilizar en estas redes. La
dificultad está en que antes de transmitir, la estación quiere saber si hay
actividad cerca del receptor del mensaje pero CSMA/CD le dice si hay actividad
alrededor del emisor. En las redes alámbricas, todas las señales se transmiten a
todas las estaciones por lo cual no existe esta distinción. Sin embargo, en las
alámbricas solo se puede hacer una transmisión en toda la red. En las
inalámbricas, podemos (y queremos) tener muchas transmisiones al mismo
tiempo, siempre y cuando los receptores estén fuera de rango unos de otros,

Resumen de Redes de Datos 41


similar a tener distintas conversaciones en la misma habitación cuando las
personas están alejadas.

1. MACA (Acceso Múltiple con Prevención de Colisiones): La idea básica


de este protocolo es que el emisor debe estimular al receptor para enviar
una trama corta para avisar a las estaciones cercanas a ella a que
transmitan, y así poder recibir sin interferencia la trama más larga del emisor
original. Supongamos que tenemos A,B,C,D (DIAGRAMA). A le envía a B
una trama RTS (Request to Send). B le responde con una trama CTS (Clear
to Send). C está en el rango de A pero no de B por lo cual escucha el RTS
de A pero no el CTS de B. Por lo tanto, C debe esperar hasta que A reciba
correctamente el CTS y empiece a transmitir. Mientras transmite A, C puede
transmitir ya que no habrá colisiones en B. Por otro lado, D escucha el CTS
pero no el RTS. Por lo tanto, debe esperar hasta que termine de llegar la
trama de datos de A a B, que sabe el largo porque B lo envió en el CTS.
Igualmente en este protocolo podrían haber colisiones si se envían RTS a la
misma estación y se interfieren.

Ethernet intro
El protocolo Ethernet, o IEEE 802.3, es un estándar de diseño para redes de
área local (LAN).
Existen dos tipos de Ethernet: Ethernet clásica, que utiliza el protocolo de
CSMA/CD para resolver el problema de acceso múltiple y utiliza cables
coaxiales o dispositivos llamados hubs para conectar las distintas
computadoras; y Ethernet conmutada, en el que se utilizan dispositivos de
capa 2 llamados switches que conectan las distintas computadoras y
direccionan las tramas.
Aunque a ambas versiones se las determina Ethernet, son muy distintas.
Ethernet clásica era la versión original y corría a velocidades de 3 a 10 Mbps.
Ethernet conmutada es lo más actual y corre a velocidades de 100, 1.000 y
10.000 Mbps (FastEthernet, GigabitEthernet, 10GigabitEthernet)

Ethernet clásico

1. Capa física: La capa física de Ethernet clásica tiene cuatro tipos de


cableado usados usualmente:

a. 10Base5: Este cableado, conocido como Thick Ethernet o Ethernet


Grueso, fue la primer variante históricamente. Se usa un cable coaxial

Resumen de Redes de Datos 42


grueso (parecido a una manguera), con marcas cada 2.5 metros para
indicar dónde se pueden conectar computadoras. El nombre refiere a
que opera a 10Mbps, usa señalización de banda base, y se puede tener
hasta 500 metros de segmento continuo de cable. Este cableado utiliza
un tranceptor (transceiver), un dispositivo que se conecta al coaxil para
asegurar que el pin se conecte al núcleo de cobre del cable (conectores
vampiro). Este dispositivo tiene la tecnología de detección de colisiones.
Desde el tranceptor se conecta un cable a la computadora que consta
de 5 pares trenzados, dos para data in, dos para data out y uno que
puede no usarse o alimenta la electrónica del tranceptor.

b. 10Base2: El segundo tipo fue el Thin Ethernet, que en comparación con


el anterior se doblaba mucho más fácil. Esta versión era más fácil y más
barata de instalar pero corría solo por 185 metros continuos de cable y
soportaba 30 máquinas por segmento (en comparación con 100 de la
anterior). Usaba otro tipo de conectores (BNC) los cuales son más
confiables y fáciles de usar que los vampiro.

c. 10BaseT: El problema de encontrar las fallas en los cables o malas


conexiones llevó a que los sistemas usen un patrón de diseño en el cual
todas las máquinas se conectan a un dispositivo central llamado hub.
Se conectan mediante pares trenzados de cobre. Aunque los
segmentos son únicamente de 100m y los hubs son caros, pueden
tener hasta 1024 nodos por segmento y tienen más fácil mantenimiento
por lo cual están siendo cada vez más populares.

d. 10BaseF: Esta versión utiliza un cable de fibra óptica en vez del cable
coaxial, por lo cual es bastante más cara, pero tiene una excelente
inmunidad al ruido y una distancia más larga (2000m) por lo cual es una
buena opción para conectar distintos edificios.
Todas estas opciones tienen un máximo de largo de segmento. Para
hacer redes más largas se pueden conectar distintos cables a
dispositivos llamados repetidores, los cuales reciben la señal, la
amplifican y la retransmiten. Para el software, no hay diferencia entre un
cable continuo y varios con una serie de repetidores

2. Topología: La topología es la estructura que forman el medio de


transmisión y las estaciones conectadas al medio. Hay tres topologías
físicas básicas.

Resumen de Redes de Datos 43


a. Bus: Cada dispositivo está conectado a un cable común. Permite que
todos los dispositivos de red puedan ver todas las señales de todos los
demás dispositivos. Es típico de las redes antiguas.

b. Estrella: Existe un nodo central al cual se conectan las estaciones. El


flujo de toda la información pasa a través de un solo dispositivo. Esta
topología es la más usada en LAN’s actuales.

c. Estrella extendida: En la estrella extendida existe una estrella central


donde los nodos finales actúan de centro de su propia estrella.

3. Codificación Manchester: Para la transmisión de bits, no se utiliza como


uno podría sospechar en un primer momento, la codificación binaria, donde
un 1 es un voltaje alto y un 0 es un voltaje bajo. Esta codificación conduce a
ambigüedades ya que no distingue entre enviar un 0 y no enviar datos. La
codificación Manchester lo que hace es dividir cada intervalo de tiempo de
un bit en dos mitades. Para el 1, es voltaje alto en la primer mitad y bajo en
la segunda. El 0 es al revés. Este esquema asegura que cada período de bit
tiene una transición lo cual facilita que el receptor se sincronice con el
emisor.

4. Protocolo de subcapa MAC de Ethernet clásica: Este protocolo define la


estructura que debe tener una trama:

a. Preámbulo: El preámbulo son 7 bytes que contienen el patrón


10101010, que por la codificación Manchester, generan una onda
cuadrada de 10MHz que permite que el receptor se sincronice con el
emisor. Luego viene una trama SOF (Start of Frame), la cual tiene un
patrón de 10101011, que marca el inicio de la trama.

b. Direcciones de destino y origen: Luego aparecen las direcciones de


origen y destino de la trama. El estándar permite que sean de 2 a 6
bytes pero generalmente se utilizan los 6. El bit menos significativo del
byte más significativo de la dirección de destino indica si es una
dirección individual (0) o multicast. Multicast refiere cuando una trama
va a varias máquinas. Para esto se definen grupos y la dirección de
destino de una trama es la dirección del grupo. Por otro lado, cuando
todos los bits del destino están en 1, es una dirección de broadcast, por
lo cual se envía la trama a todas las estaciones de la red. Otro bit
interesante es el adyacente al mencionado anteriormente, el cual si está
en 1 refiere a direcciones locales y si está en 0 refiere a direcciones

Resumen de Redes de Datos 44


globales, las cuales son asignadas por IEEE para que no haya dos
estaciones con la misma dirección global.

c. Longitud de los datos: Luego vienen 2 bytes los cuales indican la


longitud de la carga útil de la trama. Los valores posibles son de 0 a
1500 bytes.

d. Relleno (Pad): Los bytes de relleno se utilizan para que cada trama
tenga como mínimo 64 bytes de longitud. Esto se hace para evitar
problemas con el protocolo de detección de colisiones, en el cual
precisamos que la transmisión de una trama sea lo suficientemente
larga como para que llegue a todas las máquinas de la red y vuelva el
ruido en caso de haber colisión. El relleno se pone en el caso de que la
carga útil no llegue a hacer que la trama sea el mínimo necesario de
longitud. A medida que aumenta la velocidad de la red, la longitud
mínima de la trama debe aumentar o la longitud del cable debe
disminuir.

e. Suma de verificación (Checksum): El último campo es el de la suma


de verificación, la cual se compone por 32 bits generados con el
algoritmo de CRC. Si los datos son erróneos, seguramente la suma de
verificación esté mal y se detectará el error.

5. CSMA/CD con retroceso exponencial binario: Esta implementación del


algoritmo apunta a resolver las colisiones de tal manera que asegura un
pequeño retardo cuando pocas estaciones entran en colisión pero también
asegura que la colisión se resuelva en un tiempo razonable cuando haya
colisiones entre muchas estaciones. La idea básica es la siguiente:

a. Tras una colisión el tiempo se divide en ranuras de 2τ 

b. Cada estación espera entre 0 y 1 tiempo de ranura antes de retransmitir.

c. En caso de una segunda colisión esperan 0,1,2 o 3 tiempos de ranura al


azar antes de retransmitir.

i. En general, tras icolisiones, se espera entre 0, 2i − 1tiempos de


ranura. Luego de alcanzar las 10 colisiones se fija el límite en 1023.

Luego de 16 colisiones se abandona la transmisión y la


recuperación queda como responsabilidad de las capas superiores.

Resumen de Redes de Datos 45


La idea de crecer el intervalo de randomización es la que cumple el
objetivo de delay cortos cuando hay pocas colisiones.

Ethernet conmutado
Las Ethernet clásicas comenzaron a utilizar el dispositivo Hub como mecanismo
de simplificar la topología de la red para encontrar errores en los cables. Sin
embargo, el hub es equivalente a tener un solo cable al que se conectan las
máquinas pues lo único que hace es juntar los cables eléctricamente como si
estuvieran soldados.
El switch es un dispositivo que conecta los cables de una manera tal que puede
sacar las tramas por el puerto donde se encuentra la máquina a la cual es
dirigida el paquete. Esto aumenta la velocidad de la comunicación porque
separa las máquinas en diferentes dominios de colisión. Es decir, cada puerto
es independiente de los otros y si se transmite a la vez en dos puertos distintos
el switch manejará esto y los enviará por distintos caminos en las conexiones
interiores y no se producirá una colisión.

Fast Ethernet

Mediante el Ethernet conmutado empezó a tomar popularidad, empezó a subir


la demanda por mayor velocidad en los datos. Para esto se realizó un anexo al
estándar de Ethernet que aumentaría la velocidad por un factor de 10,
manteniendo la compatibilidad con las redes ya existentes. Lo que se hizo fue
reducir el tiempo de un bit de 100nsegs a 10nseg. Este cambio no implica
ningún cambio de las interfaces físicas lo cual mantiene la compatibilidad.
Además, no permitirá ningún cable con derivaciones vampiro ni conectores
BNC, ya que esos quedaron obsoletos.
Aún así, tuvieron que tomar decisiones sobre qué cable usar. Esto llevó a
diferentes esquemas de FastEthernet.

1. 100Base-T4: Utiliza par trenzado Categoría 3 UTP, y una velocidad de


señalización de 25MHz, 25% más rápido que el Ethernet estándar. Esta
opción se ideó teniendo en cuenta que muchos edificios ya estaban
cableados con Categoría 3. Lo que se hizo para llegar a los 100Mbps fue un
sistema complejo en el cual se envían dígitos ternarios con tres niveles de
voltaje distintos.

2. 100Base-TX: Esta versión le ganó a la anterior mediante los edificios fueron


recableados con categoría 5 UTP. El diseño más simple llevó a que maneje

Resumen de Redes de Datos 46


velocidades de 125MHz. El diseño de dos pares trenzados permite una
comunicación full duplex lo cual permite recibir y transmitir a 100Mbps al
mismo tiempo.

3. 100Base-FX: Utiliza dos cables de fibra, una en cada dirección por lo cual
permite comunicación full duplex también. Esto lleva todo lo que conlleva la
fibra de los gastos y el cuidado de instalación.

Para adecuarse al cambio entre las velocidades nuevas y viejas, los switches en
general soportan la mezcla de ambas velocidades. El estándar proporciona una
forma para que dos estaciones negocien de manera automática la velocidad
óptima y el tipo de transmisión duplex.

Gigabit Ethernet

El objetivo del Gigabit Ethernet fue el mismo que en FastEthernet: aumentar el


rendimiento por un factor de 10 manteniendo la compatibilidad con las interfaces
y dispositivos existentes.

1000Base-SX

Medio: Fibra óptica

Máximo segmento: 550 m

Ventajas: Fibra multimodo (50, 62.5 micrones)

1000Base-LX

Medio: Fibra óptica

Máximo segmento: 5000 m

Ventajas: Fibra monomodo (10 μ) o multimodo (50, 62.5 μ)

1000Base-CX

Medio: 2 pares de STP

Máximo segmento: 25 m

Ventajas: Par trenzado blindado (Shielded Twisted Pair)

1000Base-T

Medio: 4 pares de UTP

Máximo segmento: 100 m

Ventajas: Cable categoría 5 UTP estándar

Resumen de Redes de Datos 47


Logical Link Control
El protocolo LLC es un protocolo que opera por encima de los protocolos
ethernet y 802. Su objetivo es proporcionar un protocolo de enlace de datos con
control de errores y control de flujo. Proporciona un formato único y una interfaz
con la capa de red bien definida. Es la capa superior de la capa de enlace.
Proporciona los tres servicios que vimos en la capa de enlace: No orientado a la
conexión sin confirmación, no orientado con confirmación, orientado con
confirmación. Para los que tienen confirmación se agregan los campos de
número de secuencia y ACK.

LAN’s inalámbricas

1. 802.11 (1997): Utiliza una frecuencia de 2.4GHz. Esta norma alcanza


velocidades de entre 1-2Mbps. En cuanto a la capa física, hace uso de
tecnologías como infrarrojo, FHSS y DSSS. No se especifica una
compatibilidad particular con otras normas.

2. 802.11b (1999): Este estándar también opera en la banda de frecuencia de


2.4GHz. Su velocidad de transmisión es variable, pudiendo oscilar entre 1,
2, 5.5 y hasta 11Mbps. La capa física que emplea es HR-DSSS. Es
compatible con la norma 802.11 original.

3. 802.11a (1999): Este estándar difiere de los anteriores al utilizar una


frecuencia de 5GHz. Ofrece una velocidad de transmisión
considerablemente mayor, llegando hasta los 54Mbps. En cuanto a su capa
física, utiliza la tecnología OFDM. No tiene una compatibilidad específica
mencionada en la tabla.

4. 802.11g (2001): Al igual que 802.11 y 802.11b, opera en la banda de


2.4GHz. Sin embargo, mejora la velocidad de transmisión hasta 54Mbps,
similar a 802.11a. Utiliza la tecnología OFDM para su capa física y es
compatible con la norma 802.11b.

Protocolo de la subcapa MAC del 802.11:


Los problemas que describimos antes de estación oculta y estación expuesta
resultan en que debemos utilizar otros protocolos, no podemos utilizar
CSMA/CD.

Resumen de Redes de Datos 48


1. DCF (Función de Coordinación Distribuida): Este protocolo utiliza
CSMA/CA que es una forma de evitar las colisiones en redes inalámbricas.
En este protocolo, una máquina escucha para ver si el aire está ocupado y
si lo está espera hasta que el emisor reciba su ACK. Cuando está libre, elige
un backoff al azar, no transmite de una. Mientras espera, escucha y si
alguien empieza a transmitir, pausa su contador y luego lo reanuda cuando
se libera el canal. En este modo, no existe un control centralizado. Se utiliza
tanto la detección del canal físico como la del canal virtual.

2. PCF (Función de Coordinación Puntual): En esta existe una estación


base que controla la actividad en su celda y les pregunta a ver si tiene
tramas para enviar. El mecanismo consiste en que la estación base difunda
una trama de beacon que contiene parámetros de sistema e invita a las
nuevas estaciones. No existen colisiones porque el control es centralizado.

Estructura de la trama de 802.11:


Las tramas tienen la siguiente forma:

1. Frame control: Primer campo de dos bytes

a. Version: Versión del protocolo (2 bits)

b. Type: Las tramas pueden tener tres tipos: datos, control, administración.
Los 2 bits del tipo determinan qué tipo de trama es

c. Subtipo: Por ejemplo RTS o CTS

d. ToDS FromDS: Bits que indican si la trama viene o va de la red al AP

e. MoreFrag: Indica si vendrán más fragmentos

f. Retry: Marca si la trama es una retransmisión o no.

g. Power Managment: Indica si el emisor se va a poner en modo de


ahorro.

h. More data: Indica que el emisor tiene más tramas para el receptor.

i. Protected: Indica que el cuerpo de la trama fue encriptado por


seguridad.

j. Order: Indica que la capa de arriba espera que las tramas lleguen en
orden.

Resumen de Redes de Datos 49


2. Duration: Indica cuánto la trama y su ACK ocuparán el canal en
microsegundfos.

3. Direcciones: Luego vienen la dirección del receptor y del emisor y luego


una dirección más que corresponde al endpoint final que puede tener una
trama.

4. Sequence: Número de secuencia

5. Data: Datos

6. Check sequence

Banda ancha inalámbrica


El protocolo 802.16 o WiMAX es un protocolo de banda ancha inalámbrica.

Comparación entre 16 y 11
1. 802.16 y sistemas inalámbricos fijos:

El estándar IEEE 802.16, comúnmente conocido como WiMAX, está


diseñado principalmente para sistemas inalámbricos fijos. Esto significa
que está orientado a conectar dispositivos que no se mueven, como las
casas o las empresas, a la red principal. A diferencia de las redes
móviles (como las redes celulares), las redes basadas en 802.16 están
diseñadas para proporcionar un servicio de alta velocidad en un punto
fijo.

2. 802.11 y la movilidad:

El estándar IEEE 802.11 es la base de la tecnología Wi-Fi. Aunque


inicialmente fue diseñado para redes locales inalámbricas (WLANs)
dentro de edificios o campus, ha evolucionado para admitir movilidad y
conexiones en movimiento. Esto permite que los dispositivos como
smartphones, laptops y tablets se conecten a Internet mientras se
mueven dentro del rango de una red Wi-Fi.

3. Distancias en 802.16:

Una de las principales ventajas de 802.16 (WiMAX) es su capacidad


para cubrir grandes distancias, a menudo de varios kilómetros. Esta
capacidad de largo alcance lo hace adecuado para áreas rurales o
regiones con poca infraestructura. Debido a estas largas distancias, la
relación señal a ruido puede variar considerablemente, lo que lleva al

Resumen de Redes de Datos 50


estándar a adoptar múltiples esquemas de modulación para mantener
una transmisión de datos eficiente.

4. Seguridad y privacidad en 802.16:

Dado que WiMAX puede abarcar distancias mayores y potencialmente


conectarse con infraestructuras críticas, la seguridad y la privacidad son
de suma importancia. El estándar 802.16 incluye protocolos robustos de
autenticación y cifrado para proteger contra amenazas externas y
garantizar la privacidad del usuario.

5. Usuarios y espectro en 802.16:

Las redes basadas en 802.16 a menudo tienen que soportar un gran


número de usuarios por celda, y estos usuarios pueden requerir un alto
ancho de banda. Esta demanda de ancho de banda significa que 802.16
necesita operar en un espectro más amplio. Por eso, el estándar se
diseñó para funcionar en un rango de frecuencias más alto,
específicamente entre 10 a 66 GHz.

6. Calidad de servicio:

Tanto 802.16 como 802.11 tienen provisiones para garantizar la calidad


de servicio (QoS). La QoS es esencial para garantizar que las
aplicaciones críticas, como las llamadas de voz o el streaming de video,
tengan el ancho de banda y la prioridad que necesitan. En el contexto
de 802.16, la QoS es especialmente importante debido a la variedad de
aplicaciones y el gran número de usuarios que pueden estar conectados
a una sola celda.

Arquitectura y Stack de Protocolos


La arquitectura del WiMAX es la siguiente: estaciones bases se conectan
directamente a la antena base del proveedor de red, que a su vez está
conectada al internet. Las estaciones base se conectan a través del aire.
Existen dos tipos de estaciones: estaciones suscriptoras que están fijas en un
lugar y estaciones móviles que no.

Capa física
Este protocolo ofrece 3 modulaciones distintas de transmisión según el área de
cobertura:

Resumen de Redes de Datos 51


1. QAM-64: Esta modulación tiene 64 símbolos que son combinación de
amplitud y fase, lo cual se traduce que cada símbolo tiene 6 bits. Esta es la
modulación utilizada más cerca de la base central ya que cuanto menor
distancia menos ruido y por lo cual más posible es enviar más bits por
símbolo.

2. QAM-16: Esta modulación tiene 16 símbolos, lo que se traduce en 4 bits por


símbolo. Esta es utilizada más lejos que la anterior para reducir la cantidad
de símbolos y así subir la fidelidad.

3. QPSK: Por último, para las distancias más lejanas, se usa esta modulación
que funciona por cambio de fase de la señal portadora, lo cual da 2 bits por
símbolo.

Capa física estándar


La estación base envía tramas periódicamente. En este tiempo la base asigna
un tiempo de bajada de datos y un tiempo de subida de datos. Esta técnica se
llama duplexación por división de tiempo. Entre medio hay un tiempo de guardia
para no mezclar ambas direcciones y que no haya colisiones. Se utiliza
Hamming para corregir errores hacia adelante, pues en este caso es más difícil
pedir una retransmisión ya que significa establecer una conexión.

Capa de enlace
La capa de enlace está compuesta por 3 subcapas.
Primero está la capa de seguridad que es muy importante en medios
inalámbrico como el aire ya que es público. Esta subcapa se encarga de la
encriptación y desencriptación y el manejo de claves.
Luego está la subcapa MAC. En este caso, la base central es la que controla
todo, tanto los canales de subida a la base como de bajada al suscriptor. Una
gran diferencia con otros protocolos 802 es que esta subcapa es orientada a la
conexión para garantizar calidad de servicio.
Luego está la subcapa de convergencia de servicios. Esta subcapa provee la
interfaz entre la capa de red y la de enlace. Se definen interfaces para
distintos protocolos pero el más importante es IP. Como IP es no orientado a

Resumen de Redes de Datos 52


la conexión y la subcapa MAC es orientada a la conexión, la interfaz debe
hacer el mapeo entre direcciones y conexiones.

Protocolo subcapa MAC


La subcapa MAC es orientada a la conexión y point-to-multipoint, lo cual
significa que una base se conecta a muchos clientes.
La bajada de datos es simple. La estación controla las ráfagas de capa física
que envían datos a los distintos clientes. Puede que agrupe tramas para reducir
costos.
La subida es otra historia. Aquí tenemos muchos clientes compitiendo por el
mismo canal. Para manejar esto se definen 4 clases de servicio. Cada conexión
se le asignará una de estas clases:

1. Constant bit rate service: Este servicio apunta a la transmisión de voz sin
comprimir. Este servicio necesita enviar una cantidad predeterminada de
datos en intervalos de tiempos fijos. Se dedican ráfagas para cada conexión
de este tipo. Una vez se asignó el ancho de banda, se pueden enviar las
ráfagas automáticamente, no hace falta pedir cada vez.

2. Real time variable bit rate service: Es para multimedia comprimida u otro
tipo de transmisiones en la cual la velocidad puede variar. Esto se logra
haciendo que la base le pregunte al cliente en intervalos de tiempo cuánta
velocidad precisa.

3. Non-real-time variable bit service: Esto es para archivos grandes u otras


cosas que no son real time. Se hace lo mismo que en la anterior pero no a
intervalos fijos.

4. Best effort: Esto es para todo lo demás. La base no pregunta nada, los
clientes de esta clase deben competir por el ancho de banda.

Formato de la trama
El formato de la trama es el siguiente.

1. Header: Todas las tramas vienen con un header genérico de algunos


campos:

a. EC: Encriptado o no

Resumen de Redes de Datos 53


b. Type: Indica el tipo de trama.

c. CI: Indica si hay o no una verificación CRC al final.

d. EK: Indica qué clave de encriptación se está usando (si hay).

e. Length: Da el largo completo de la trama incluido el header.

f. Connection Identifier: da el Id de la conexión a la que pertenece la


trama.

g. Header CRC: Es una verificación CRC solo para el header.

Luego vienen los datos y la suma de verificación de los datos que ambos son
opcionales. En los paquetes de control, como de request de ancho de banda no
se necesita payload. Incluso en los que sí llevan, es opcional la suma de
verificación ya que se utiliza corrección en la capa física y que no se hace
ningún intento por retransmitir.

Repeaters, Hubs, Bridges, Switches, Routers, Gateways

1. Hub:

Capa de operación: Capa física (Capa 1 del modelo OSI).

Unidad de datos: Bit.

Descripción: Un hub es un dispositivo simple que recibe un paquete de


datos de un dispositivo en la red y lo envía a todos los otros dispositivos
conectados a él. No tiene la capacidad de discernir o filtrar tráfico,
simplemente repite la señal que le llega a todos sus puertos. Debido a
esta característica, es menos eficiente y puede generar mucho tráfico
innecesario en una red.

2. Bridge (Puente):

Capa de operación: Capa de enlace de datos (Capa 2 del modelo


OSI).

Unidad de datos: Trama (Frame).

Descripción: Un bridge es un dispositivo que divide una red grande en


segmentos más pequeños y aísla el tráfico de datos entre ellos. Puede
filtrar tráfico basándose en las direcciones MAC, permitiendo o
bloqueando tramas según sea necesario. Esto mejora el rendimiento de
la red al reducir colisiones y tráfico innecesario entre segmentos.

Resumen de Redes de Datos 54


3. Switch (Conmutador):

Capa de operación: Capa de enlace de datos (Capa 2 del modelo


OSI).

Unidad de datos: Trama (Frame).

Descripción: Un switch es similar a un bridge pero es más avanzado y


se utiliza más comúnmente en redes modernas. Un switch almacena
una tabla de direcciones MAC y utiliza esta tabla para determinar a qué
puerto enviar una trama en particular. Esto permite que el switch envíe
tramas sólo al dispositivo destinatario, en lugar de a todos los
dispositivos conectados, como lo hace un hub. Como resultado, los
switches reducen significativamente el tráfico innecesario y mejoran la
eficiencia de la red.

4. Router:

Capa de operación: Capa de red (Capa 3 del modelo OSI).

Unidad de datos: Paquete.

Descripción: Un router es un dispositivo que se utiliza para interconectar


redes diferentes y dirigir paquetes de datos entre ellas. Mientras que
switches y bridges operan principalmente dentro de una misma red local
(LAN) para conectar dispositivos dentro de esa red, un router se utiliza para
conectar diferentes LANs o para conectar una LAN a una red de área amplia
(WAN), como el internet.

VLAN’s
La idea de las VLAN’s es que dispositivos que tienen un mismo router de salida
se conectan switches que se conectan al router. Así cada set de dispositivos que
se conectan a un switch es una VLAN. Puede utilizarse para separar los
dispositivos de pisos en un edificio por ejemplo.

Estándar 802.1Q (se rifa)

1. VLAN-aware end domain: Este es un dominio donde los dispositivos


finales, como las PC, son conscientes de las VLAN y pueden enviar y recibir
tramas etiquetadas. Una trama etiquetada tiene una etiqueta especial que
indica a qué VLAN pertenece.

Resumen de Redes de Datos 55


2. VLAN-aware core domain: Este es el núcleo de la red donde se
encuentran los switches que son conscientes de las VLAN y que pueden
manejar tramas etiquetadas. Estos switches utilizan la etiqueta de la VLAN
para decidir cómo encaminar o "switchear" la trama a través de la red.

3. Legacy end domain: Un dominio de extremo "Legacy" (o heredado)


contiene dispositivos finales que no son conscientes de las VLANs. Envían y
reciben tramas sin etiquetas, llamadas "tramas Legacy".

4. Tagged frame: Las tramas que tienen una etiqueta de VLAN. Esta etiqueta
indica a qué VLAN pertenece la trama y es utilizada por los switches
conscientes de VLAN para encaminar la trama adecuadamente.

5. Switching done using tags: Indica que el switch está utilizando las
etiquetas de VLAN para tomar decisiones de conmutación.

6. Legacy frame: Las tramas sin una etiqueta de VLAN. Estas son las tramas
que serían utilizadas en una red Ethernet tradicional sin soporte para
VLANs.

Puentes de distintos protocolos


Puede que tengamos dos LAN’s que usan distintos protocolos. Para esto el
switch es lo que hace la conversión.
Las tramas que vienen de un host con un protocolo en el bridge se quita todo el
formato de la trama de un protocolo y se pone el formato de la trama de otro.

Capa de red
Objetivo
El objetivo de la capa de red es llevar los paquetes todo el camino desde el
origen hasta el destino. Para llegar al destino puede que sea necesario realizar
muchos saltos en el camino por enrutadores intermedios. Es la capa más baja
que trabaja con transmisión de extremo a extremo. Igualmente, como existen
procesos intermedios, no es como la capa de transporte que únicamente opera
en las máquinas finales.
Para lograr su cometido la capa de red debe conocer la topología de la subred
de comunicación y elegir las rutas adecuadas. También debe tener cuidado al
escoger las rutas para no sobrecargar algunas de las líneas de comunicación y
los enrutadores y dejar inactivos a otros.

Aspectos de diseño

Resumen de Redes de Datos 56


1. Conmutación de paquetes Store and Forward: La topología general de la
comunicación de computadoras podríamos decir que es la siguiente: los
hosts se conectan directamente o mediante algún dispositivo intermedio a
un router del proveedor de internet y los routers forman una red de routers
diferentes. La conmutación store and forward funciona de la siguiente
manera: El host envía un paquete que quiere enviar al router más cercano;
el paquete se almacena ahí hasta que haya llegado por completo para
verificar la suma de verificación; envía el paquete al siguiente router que
repite esto hasta que llegue al host de destino.

2. Servicios proporcionados a la capa de transporte: Existen discusiones


sobre qué tipo de servicios debería ofrecer la capa de red a la capa de
transporte.

a. La comunidad de Internet argumenta que el objetivo de la capa de red


es simplemente mover paquetes. Por lo cual, la subred es inestable sin
importar cómo se diseñe y, por lo tanto, los hosts deben hacer control de
errores y de flujo ellos mismos. En esta visión el servicio sería no
orientado a la conexión. Cada paquete debe tener la dirección final
completa porque cada paquete será enrutado de manera independiente
a sus antecesores.

b. La otra visión, dada por las empresas telefónicas, dice que la capa de
red debería dar un servicio orientado a la conexión y confiable, teniendo
como éxito de este modelo más de 100 años de funcionamiento del
sistema telefónico.

3. Implementación de servicios no orientados a la conexión: Para los


servicios no orientados a la conexión, cada paquete se transmite por
separado y se enruta de manera independiente. En este contexto, los
paquetes se suelen llamar datagramas y la red una red de datagramas.
Cada enrutador tiene una tabla interna que consta de los posibles destinos
finales y la línea a utilizar para cada uno de ellos. Puede que para paquetes
del mismo mensaje esta tabla de routeo cambie por información nueva
sobre el estado de la red y los paquetes se envíen por distintos caminos
pero que ambos lleguen a destino. El algoritmo que maneja las tablas y
realiza las decisiones de enrutamiento se conoce como algoritmo de
enrutamiento.

4. Implementación de servicios orientados a la conexión: La idea de estos


servicios es evitar tener que elegir una nueva ruta para cada paquete. Para

Resumen de Redes de Datos 57


esto, cuando se establece una conexión, se elige una ruta desde la máquina
de origen hasta la de destino y se almacena en tablas dentro de los
enrutadores y esta se utilizará por el resto de la conexión. Esta conexión se
conoce como circuito virtual, en analogía a los circuitos físicos establecidos
por el sistema telefónico. La red en estos casos se denomina red de
circuitos virtuales. Cuando se libera la conexión también se termina el
circuito virutal. Cada paquete lleva un identificador que indica a cuál circuito
virtual pertenece.

5. Comparación entre redes de circuitos virtuales y datagramas:

a. Setup: No se precisa en las de datagramas, se precisa en las otras.

b. Direccionamiento: Cada datagrama lleva la dirección de origen y destino


completas. En circuitos virtuales llevan un corto numero de circuito.

c. Información de estado: Los routers no llevan información sobre el


estado de las conexiones. En circuitos virtuales sí se precisa espacio
para eso.

d. Ruteo: Paquetes con rutas independientes. Circuito virtual, todas el


mismo.

e. Falla en la red: Ninguna, excepto los paquetes perdidos en la falla.


Todos los circuitos que pasaban por la falla se terminan.

f. Calidad de servicio: Díficil. Fácil si tiene recursos.

g. Control de congestion: Difícil. Fácil si tiene recursos.

Algoritmos de ruteo

El algoritmo de ruteo es una parte del software de la capa de red que se


encarga de decidir por cuál línea de salida se transmitirá un paquete entrante.
También es responsable de llenar y actualizar las tablas de enrutamiento.
Por otro lado, el proceso de reenvío es el proceso que maneja individualmente
cada paquete y utiliza las tablas (completadas por el algoritmo de ruteo) para
enviar los paquetes.
Existen dos tipos de algoritmos de ruteo: adaptativos y no adaptativos. Los no
adaptativos no basan las decisiones de salida de los paquetes según
mediciones actuales de métricas de la red, son completamente estáticos. Los
adaptativos cambian las decisiones que debe tomar el router según información
actual sobre la red, como la estimación de tráfico, la topología, posibles fallas,
etc. Los distintos algoritmos dinámicos pueden diferir en el lugar de dónde

Resumen de Redes de Datos 58


obtienen la información, el momento de cambio de sus rutas o la métrica que
utilizan.
Los algoritmos de ruteo tienen ciertos requisitos deseables:

1. Exactitud: Los algoritmos deben ser correctos a la hora de determinar que


una línea lleva a un destino

2. Sencillez: El algoritmo debe ser lo más simple posible

3. Robustez: Una vez que una red se levanta, se espera que corra por años
sin fallas masivas. Para esto el algoritmo debe poder manejar errores de
todo tipo y cambios en la topología.

4. Estabilidad: Es deseable que un algoritmo converja, para una situación fija,


a una solución de rutas óptimas y lo haga de manera rápida.

5. Justicia: Esto refiere a que todas las máquinas de la red deberían poder
siempre que se pueda comunicarse

6. Optimización: Queremos que las comunicaciones de la red se den lo más


rápido posible para minimizar los retardos y subir la calidad de servicio.

Estos dos últimos requisitos muchas veces entran en conflicto, pues para
optimizar el rendimiento total de la red se podría querer cortar la comunicación
de una de las máquinas. Por eso, se debe encontrar un algoritmo que balancee
estos dos parámetros.

Principio de optimización
El principio de optimización dice que si la ruta óptima de A a B contiene a un
router C, entonces la ruta óptima de C a B cae en esa misma ruta. Es bastante
intuitivo.
Como consecuencia de este principio, resulta que el conjunto de rutas óptimas
en una red desde cada origen a un destino forma un árbol con raíz en el destino.
Este árbol se llama sumidero, y es un árbol que no contiene ciclos. La meta de
los algoritmos de enrutamiento es descubrir y utilizar los árboles divergentes de
todos los enrutadores.

Algoritmo del camino más corto

Resumen de Redes de Datos 59


Este algoritmo permite calcular las rutas óptimas con base en una imagen
completa de la red. Para esto hacemos un grafo en el que cada nodo es una
computadora y cada arista es una línea. A cada arista le asignamos un peso que
puede ser una función de distintas métricas como la cantidad de saltos, el ancho
de banda, la distancia en kilómetros, etc.
Podemos utilizar el algoritmo de Dijkstra para calcular la ruta más corta según
esta función desde un origen y todos los destinos.
El algoritmo funciona así:

1. Marcamos el nodo A como permanente

2. Examinamos todas las adyacencias de A y los etiquetamos tentativamente


con su distancia a A

3. Examinamos todos los etiquetados y el que tenga menor distancia lo


marcamos como permanente. Y ahora ese es nuestro nuevo nodo de
trabajo.

4. Se repite el proceso.

5. Examinamos las adyacencias de B, ponele C. Si la suma de la etiqueta en B


y la distancia de B a C es menor que la distancia que tiene C hasta el
momento lo reetiquetamos.

Inundación
Es el algoritmo más simple con información local y no de toda la red, que es
enviar el paquete que te llega por todos lados menos por donde te llegó.
Esto, si no se hace nada más, genera infinitos duplicados.
Una cosa que se puede hacer es tener un contador de saltos, que decrece en
cada salto. Lo ideal es inicializarlo con la distancia al destino, sino se puede
usar la distancia máxima de la red.
Otra técnica también utilizada para evitar duplicados es que cada router le pone
un número de secuencia a cada paquete que se origina de él. Luego cada router
tiene una tabla de qué número de secuencia de cada origen ya ha sido enviada.
Si llega un paquete con el mismo número de secuencia, no se reenvía.
Esta técnica no es muy práctica pero tiene algunas ventajas.

1. Asegura que cada paquete see entrega a todas las máquinas de la red, útil
para broadcasting.

Resumen de Redes de Datos 60


2. Es muy robusta. Por más de que se pierdan muchos nodos en la red, el
algoritmo encontrará una manera de llegar al destino.

3. El algoritmo siempre elige la ruta más corta porque elige todas las rutas en
paralelo.

4. Requiere muy poca configuración y se puede utilizar como bloque de


construcción para algoritmos más complejos.

Vector de Distancia
Cada enrutador mantiene una tabla (vector) con la mejor distancia conocida a
cada destino y la línea de salida para llegar ahí. Las tablas se actualizan
intercambiando información con los vecinos. Una vez cada T segundos cada
router envía a todos sus vecinos una lista con la distancia a cada destino. Por lo
tanto también recibe una lista similar de cada vecino. Así puede calcular a través
de todas las tablas cuál sería la mejor distancia para llegar a cada router, por lo
cual lo calcula y reasigna su tabla.
Este algoritmo tiene un problema que es el problema de la cuenta hasta el
infinito. El algoritmo reacciona rápidamente a las buenas noticias, es decir, todos
los routers actualizan su tabla en la mínima cantidad de intercambios
necesarios, pero cuando son malas noticias el problema diverge. Por ejemplo, si
una línea de un router que estaba activo (A) falla, su vecino (B) deberá a ir a
buscar otra ruta para llegar al otro. Para eso B irá a sus vecinos (C), y C tiene
una ruta mínima pero que va a través de B. Esto B no lo sabe entonces toma
esa ruta como la mínima. Este problema se propagará porque ahora C verá que
la ruta de B, de la cual tomaba la ruta mínima a subido, por lo cual actualiza la
suya. Así esto tiende a infinito. Para cortar este problema, se establece como
inutilizable una ruta con distancia igual a la ruta más larga +1.
Una posible solución es un horizonte dividido con envenenamiento en reversa.

Ruteo por Estado de Enlace


El enrutamiento por vector distancia se reemplazó por el enrutamiento por
estado de enlace debido a que con frecuencia tardaba demasiado en converger
cuando cambiaba la topología de la red.
En vector distancia cada nodo le envía información únicamente a sus vecinos y
les “cuenta” todo lo que ha aprendido.

Resumen de Redes de Datos 61


En estado de enlace cada nodo le envía información a el resto de los nodos
pero les “cuenta” únicamente lo que sabe seguro (el estado de los enlaces
directamente conectados)
Cada router debe:

1. Descubrir a sus vecinos y aprender sus direcciones de red.

2. Establecer la métrica de distancia o de costo a cada uno de sus vecinos.

3. Construir un paquete para informar a todos lo que aprendió.

4. Enviar este paquete a todos los routers y recibir paquetes de ellos.

5. Calcular el camino más corto a cada enrutador de la red.

Se distribuye la topología completa a todos los enrutadores. Después se puede


ejecutar el algoritmo de Dijkstra en cada enrutador para encontrar la ruta más
corta a los demás enrutadores.
Aprender de sus vecinos:
Para aprender sobre sus vecinos, cada enrutador envía un paquete especial
HELLO en cada línea pto. a pto. Se espera que el enrutador del otro extremo
responda con su dirección única global.
Ponerle costo a sus vecinos:

El costo para llegar a los vecinos se puede establecer de modo automático o se


lo puede configurar. Una elección común es hacer el costo inversamente
proporcional al ancho de banda del enlace. .
También se puede considerar el retardo de los enlaces en el costo de modo que
las rutas a través de enlace más cortos sean mejores opciones. El retardo se
puede medir con un paquete especial de ECO que el otro extremo deberá
contestar de inmediato.
Construir paquetes de estado:
El paquete comienza con la identidad del emisor, seguido de un número de
secuencia, una edad y una lista de vecinos junto con su costo para llegar.
Los paquetes se pueden construir periódicamente o cuando ocurra algún evento
significativo (p ej si aparece un nuevo vecino o cuando cae un enlace).
Distribuir los paquetes:
Los paquetes son distribuidos por inundación, usando las mejoras que vimos
antes. Cada paquete tiene un número de secuencia, si el que se recibe es

Resumen de Redes de Datos 62


nuevo se reenvía, si es duplicado o menor al último que se tiene registro se
descarta.
Problemas:
El primero es que si el número de secuencia cicla, genera confusiones. Esto se
arregla teniendo 32 bits de número de secuencia.
Si un router falla su número de secuencia empieza desde 0. Se descartarían
todos como obsoletos.

Si hay un error de un bit que sube el número de secuencia, se rechazarán


como obsoletos todos los del medio.
Soluciones:

Comunicación confiable usando ACKs


Incluir la edad en cada paquete después de número de secuencia y
decrementarla una vez por segundo (edad decrementada). Cuando la edad
llega a cero se descarta la información de ese enrutador.
Los enrutadores también decrementan el campo edad del paquete para evitar
que sobreviva durante un período de tiempo indeterminado (se descartan los
paquetes con edad igual a cero).
Los enrutadores aprenden la red y pueden ejecutar localmente el algoritmo de
Dijkstra para construir las rutas más cortas para todos los destinos posibles.
En comparación con el enrutamiento por vector distancia el enrutamiento por
estado de enlace requiere más memoria y poder de cómputo.

Capa de transporte
Introducción, idea general
La meta fundamental de la capa de transporte es proporcionar un servicio de
transmisión de datos eficiente, confiable y económico a sus usuarios, procesos
que normalmente son de la capa de aplicación, utilizando los servicios que le
brinda la capa de red. La capa de red provee una entrega de paquetes punto a
punto mediante el uso de datagramas o circuitos virtuales. Además permite
aislar a las capas superiores de la tecnología, el diseño y las imperfecciones de
la subred que se utiliza. Ofrece las abstracciones que necesitan las aplicaciones
para usar la red.

Servicios proporcionados a las capas superiores.

Resumen de Redes de Datos 63


El hardware o software de la capa de transporte que se encarga de realizar el
trabajo se llama entidad de transporte, la cual generalmente se ubica en el
kernel (núcleo) del sistema operativo.

Existen dos tipos de servicio de transporte:

Orientado a la conexión:

Es parecido al que conocemos en la capa de red, la conexión tiene tres


fases, establecimiento, transferencia de datos y liberación. El control de
flujo y direccionameniento es similar.

No orientado a la conexión:

El servicio de transporte sin conexión es muy parecido al servicio de red


sin conexión. Es dificil establecer un servicio de transporte no orientado
a la conexión y un servicio de red orientado a la conexión.

Los usuarios no tienen control sobre la capa de red, por lo que no pueden
resolver problemas
de un mal servicio usando mejores enrutadores o incrementando el manejo de
errores en la
capa de enlace de datos. La solución es poner por encima de la capa de red
otra capa que
mejore la calidad del servicio.

Resumen de Redes de Datos 64


En el caso de redes no orientadas a conexión, donde puede haber pérdida o
corrupción de paquetes, la capa de transporte puede detectar estos problemas y
tomar medidas para retransmitir los paquetes perdidos o dañados. Si, en una
red orientada a conexión su conexión de red es terminada abruptamente a la
mitad de una transmisión, la
entidad de transporte puede establecer una nueva conexión de red con la
entidad de transporte remota. A través de esta nueva conexión, puede enviar
solicitudes para determinar qué datos se recibieron correctamente y cuáles no

En esencia, la existencia de la capa de transporte hace posible que el servicio


de transporte confiable.

Viendo estas similitudes, surge la pregunta: ¿Cuál es la diferencia con la capa


de red y los servicios que ofrece?

El código de transporte se ejecuta por completo en las máquinas de los


usuarios, pero la capa de red se ejecuta en su mayor parte en los
enrutadores, los cuales son operados por la empresa portadora (por lo
menos en el caso de una red de área amplia).

Los usuarios no tienen un control real sobre la capa de red, por lo que no
pueden resolver los problemas de un mal servicio usando mejores
enrutadores o incrementando el manejo de errores en la capa de enlace
de datos, puesto que no son dueños de los enrutadores.

La capa de transporte permite aislar a las capas superiores de la


tecnoogía, el diseño y las imperfecciones de la subred. Por ejemplo, si,
en una red orientada a conexión, se informa a la entidad de transporte a
la mitad de una transmisión extensa que su conexión de red ha sido
terminada de manera abrupta, sin indicación de lo que ha sucedido a los
datos actualmente en tránsito, la entidad puede establecer una nueva
conexión de red con la entidad de transporte remota. En otras palabras y
siendo mas generales.

Pocos usuarios escriben sus propias entidades de transporte y por lo


tanto pocos usuarios o programas llegan a ver los aspectos internos del
servicio de red. En contraste, muchos programas ven las primitivas de
transporte.

Gracias a la capa de transporte, los programadores de aplicaciones


pueden escribir código de acuerdo con un conjunto estándar de

Resumen de Redes de Datos 65


primitivas; estos programas pueden funcionar en una amplia variedad de
redes

Primitivas del servicio de transporte y notaciones


Para permitir que los usuarios accedan al servicio de transporte, la capa ofrece
una interfaz del servicio de transporte. Cada servicio cuenta con su propia
interfaz. En este ejemplo, hay una interfaz de transporte sencilla que cuenta con
5 primitivas sencillas, las cuales permiten que los programas de aplicación
establezcan, usen y después liberen las conexiones.

Notación
Las entidades de transporte intercambian mensajes llamados TPDUs
(Unidad de datos del Protocolo de Transporte) o segmentos. Sin embargo,
el termino TPDU ya no se utiliza mucho.

Elementos de los protocolos de transporte

Diferencias entre los protocolos de transporte y los de enalce de datos:

Resumen de Redes de Datos 66


Los protocolos de transporte se parecen a los protocolos de enlace de
datos, ambos se encargan del control de errores, la secuenciación y el
control de flujo. Sin embargo, existen considerables diferencias.
En la capa de enlace de datos, los enrutadores se comunican de forma
directa mediante un canal físico. En la capa de transporte, ese canal físico
se sustituye por la red completa.

Esto implica que:

Los enrutadores con enlaces punto a punto no necesitan explicitar con


quien deben comunicarse, cada linea de salida conduce de manera
directa a un enrutador específico. En la capa de transporte se requiere
el direccionamiento explícito de los destinos.

Establecer una conexión a traves de un cable es muy fácil, sin embargo,


el proceso de establecimiento de la conexión en la capa de transporte
se vuelve complicado.

Que exista la capacidad de almacnamiento en la subred.

Las consecuencias de la capacidad de la red de retrasar y duplicar


paquetes algunas veces pueden ser desastrosas y puede requerir el
uso de protocolos especiales para transportar la información de la
manera correcta.

Presentan diferentes estrategias sobre el uso de los buffers.

Ya que esta capa de transporte presenta grandes cantidades de


conexiones, las cuales pueden variar, con un ancho de banda que
cambia a medida que las conexiones compiten entre sí, puede
requerir un enfoque distinto del que se usa en la capa de enlace de
datos.

Resumen de Redes de Datos 67


Protocolo de transporte

Direccionamiento:

Cuando un proceso de aplicación quiere establecer una conexión


con un proceso de aplicación remoto, debe especificar a cuál se
conectará. Por lo general se emplea es definir direcciones de
transporte donde se escucha las solicitudes de conexión, en internet
TSAP (puertos, actúan como un punto de acceso único para los
procesos de aplicación para enviar o recibir datos).
En la capa de red, los terminales análogos se llaman NSAP
(dirección IP).

En cada uno de los host pueden haber varios TSAP, por lo tanto,
surge la pregunta de ¿como sabe el proceso en el host 1, a que
TSAP debe conectarse en el host 2?

1. Los servicios tienen direcciones TSAP estables que se listan


en archivos en lugares bien conocidos. Por ejemplo, el servidor
se haa estado enlazando con el TSAP durante años y que
gradualmente todos los usuarios de la red hayan aprendido

Resumen de Redes de Datos 68


esto. Esto funciona bien con poca cantidad de servicios que
nunca cambian.

2. Es común que los procesos de usuario deseen comunicarse con


otros procesos de usuario que no tienen una dirección TSAP
conocida por ade- lantado, o que sólo existan durante un tiempo
corto. Para ello existe el proceso especial llamado asignador
de puertos. Para encontrar la dirección TSAP correspondiente
a un nombre de servicio específico, un usuario establece una
conexión al asignador de puertos. Entonces, el usuario envía un
mensaje en el que especifica el nombre del servicio y el
asignador de puertos le regresa la dirección TSAP, luego el
usuario libera la conexión con el asignador de puertos y
establece una nueva conexión con el servicio deseado.

Muchos de los procesos servidor que pueden existir en una


máquina sólo se utilizarán pocas veces. Es un desperdicio tenerlos
a todos activos y escuchando en una dirección TSAP todo el día.

En lugar de que cada uno de los servidores existentes escuche un


TSAP determinado se puede tener un servidor de procesos
especial que actúa como proxy de los servidores que se usan
menos. Este servidor (inetd en Unix) escucha un conjunto de
puertos al mismo tiempo.
Tras recibir una conexión entrante el servidor de procesos genera el
servidor solicitado y le permite heredar la conexión existente con el
usuario.

Resumen de Redes de Datos 69


Establecimiento de una conexión
Este proceso se puede complicar debido a congestiones en la red,
existen perdidas, retrasos, paquetes duplicados o corrompidos. En
nuestro caso, vamos a ver el problema de los duplicados retrasados y
como estos se confunden con los segmentos nuevos.
En primer lugar podemos facilitar el problema dandole un tiempo de vida
a los segmentos, evitando que estos vivan eternamente dentro de la
red. Para ello se pueden usar tres técnicas:

1. Un diseño de red restringido.

a. Incluye cualquier método que evite que los paquetes hagan


ciclos, combinado con una manera de limitar el retardo,
incluyendo la congestión a través de la trayectoria más larga
posible.

2. Colocar un contador de saltos en cada paquete.

a. Consiste en inicializar el contador de saltos con un valor


apropiado y decrementarlo cada vez que se reenvíe el paquete.
El protocolo de red simplemente descarta cualquier paquete
cuyo contador de saltos llega a cero

3. Marcar el tiempo en cada paquete.

Resumen de Redes de Datos 70


a. Cada paquete lleve la hora en la que fue creado, y que los
enrutadores se pongan de acuerdo en descartar cualquier
paquete que haya rebasado cierto tiempo predeterminado

(Nota: no creo que se pregunten los puntos a, solamente tener en claro


la idea 1, 2 y 3).
En la practica agregamos un periodo T, que es un multiplo pequeño del
tiempo de vida máximo verdadero del paquete. Este tiempo de vida
máximo es una constante conservadora. El múltiplo depende del
protocolo y simplemente tiene el efecto de hacer a T más largo. Si
esperamos un tiempo de T segundos después de enviar un paquete,
podemos estar seguros de que todos sus rastros ya han desaparecido,
y que ni él ni sus confirmaciones de recepción aparecerán
repentinamente
de la nada para complicar el asunto.
Al limitar los tiempos de vida de los paquetes es posible encontrar una
manera para rechazar segmentos duplicados con retardo. Para ello está
el método de Tomlinson:

1. TPDUs (segmentos) duplicados de datos:

a. La base del método es que el origen etiquete los segmentos con


números de secuencia que no se vayan a reutilizar durante T
segundos. Este numero de frecuencia varía según la tasa de
paquetes por segundo y el tiempo T. Aún puede haber
duplicados de este paquete, en cuyo caso el destino debe
descartarlos. Sin embargo, ya no se da el caso en que un
duplicado con retardo de un paquete pueda vencer a un nuevo
paquete con el mismo número de secuencia y que el destino lo
acepte.
Para resolver el problema de una máquina que pierde toda la
memoria acerca de su estado tras una falla, una posibilidad es
exigir a las entidades de transporte que estén inactivas durante
T segundos después de una recuperación. El periodo inactivo
permitirá que todos los segmentos antiguos expiren, por lo que
el emisor podrá empezar de nuevo con cualquier número de
secuencia.
Por otro lado, si equipamos a cada host con un reloj que deba
continuar trabajando incluso si ocurre una falla, cuando se

Resumen de Redes de Datos 71


establece una conexión, los k bits de menor orden del reloj se
usan como número inicial de secuencia, por lo tanto cada
conexión comienza a numerar sus segmentos con un número
de secuencia inicial diferente. El espacio de secuencia es
suficientemente grande, para evitar que al regresar al principio
existan TDPU viejas con el mismo número de secuencia. Una
vez que ambas entidades de transporte han acordado el
número de secuencia inicial, se puede usar cualquier protocolo
de ventana deslizante para el control de flujo de datos. Este
protocolo de ventana encontrará y descartará exactamente los
paquetes duplicados después de que éstos hayan sido
aceptados.

Para mantenernos fuera de la zona prohibda la tasa máxima de


datos en cualquier conexión es de un segmento por cada
pulso de reloj, ya que si un host envia muchos datos
demasiado rápido en una conexión recien abierta el número de
secuencia actual contra la curva de tiempo puede subir en
forma más pronunciada que el número de secuencia inicial
contra la curva de tiempo.

Por otro lado, a cualquier tasa de datos menor que la tasa de


reloj, la curva de números de secuencia actuales utilizados vs el
tiempo entrará en un momento dado a la región prohibida desde
la izquierda, mientras los números de secuencia se reinicien. En
este caso, debemos resincronizar los números de secuencia o
retardar la TPDU durante T seg.

Acuerdo de tres vías

Resumen de Redes de Datos 72


Una vez cerrada la conexión en general no se recuerda los
números de secuencia utilizados en una conexión anterior.

1. El host 1 escoge un número de secuencia, x, y envía al


host 2 un seg-
mento CONNECTION REQUEST que contiene ese
número.

2. El host 2 responde con un segmento ACK para


confirmar la recepción de x y anunciar su propio número
de secuencia inicial, y.

3. El host 1 confirma la recepción del número de


secuencia inicial seleccionado por el host 2 en el primer
segmento de datos que envía.

Liberación de una conexión:


Liberación asimetrica: es la manera en que funciona el sistema
telefónico: cuando una de las partes cuelga, se interrumpe la conexión.
La liberación simétrica trata la conexión como dos conexiones
unidireccionales distintas y requiere que cada una se libere por
separado. Esta liberación abrupta puede generar pérdida de datos:

Resumen de Redes de Datos 73


Una vez que se establece la conexión, el host 1 envía un segmento que
llega en forma apropiada al host 2. A continuación, el host 1 envía otro
segmento. Por desgracia, el host 2 emite un DISCONNECT antes de
que llegue el segundo segmento. El resultado es que se libera la
conexión y se pierden los datos. Para evitar este problema existe
particularmente la liberación simetrica:
Liberación simetrica: la conexión se libera cuando ambas partes
envían una solicitud de desconexión.
Esto no siempre funciona, hay un problema famoso llamado el problema
de los dos ejercitos. En otras palabras, no es tan obvio determinar
cuando se termino la transmision y si efectivamente debe terminarse la
conexión. Si ninguna de las partes está preparada para desconectar
hasta estar convencida de que la otra también lo está nunca ocurrirá la
desconexión. Gracias a esto y a un poco de análisis en todos los casos,
podemos determinar que incluso si usamos el acuerdo de las tres vias,
no hay ningun protocolo que funcione.

Resumen de Redes de Datos 74


Control de flujo, control de errores y almacenamiento del buffer:
A modo de repaso: El control de errores consiste en asegurar que los
datos se entreguen con el nivel deseado de confiabilidad, por lo general
que todos los datos se entreguen sin errores. El control de flujo consiste
en evitar que un transmisor rápido sature a un receptor lento.
No entro en detalles con el tema del control de errores ya que son los
mismos que la capa de enlace. En el libro hay un punteo, página: 448.

Como los protocolos de transporte usan ventanas deslizantes más


grandes, hay que tener particular cuidado con colocar datos en los
buffer. Como cada host puede mantener varias conexiónes, las cuales
se tratan por separado, se puede llegar a requererir una cantidad
considerable de búfers para la ventana deslizante. Se necesitan búferes
tanto en el emisor como en el receptor (recordar como funciona ventana
corrediza). Sin embargo, como el emisor está usando búferes, tal vez el
receptor pueda o no dedicar búferes específicos a conexiones

Resumen de Redes de Datos 75


específicas, según lo considere apropiado. Por ejemplo, el receptor
puede mantener un solo grupo de búferes compartido por todas las
conexiones. Cuando entre un segmento, se hará un intento por adquirir
un nuevo búfer en forma dinámica. Esta eleccion va a depender de el
tipo de tráfico transmitido, por ejemplo, si es en ráfaga o son simples
archivos que requieren un alto ancho de banda.
Ahora, tenemos pendiente como vamos a organizar estos grupos de
buffers. Si la mayoría de los segmentos tienen el mismo tamaño
aproximado, es natural organizar los búferes como un grupo de búferes
de tamaño idéntico, con un segmento por búfer.
Si hay una variación amplia en cuanto al tamaño de los segmentos,
desde solicitudes cortas de páginas web hasta paquetes extensos, se
puede seleccionar el tamaño del segmento mas grande pero se
desperdicia espacio. Para ello se pueden usar buffers de tamaño
variable. La ventaja aquí es un mejor uso de la memoria, al costo de
una administración de búferes más complicada.
Una tercera posibilidad es dedicar un solo búfer circular grande por
conexión. Este sistema es simple y elegante, además de que no
depende de los tamaños de los segmentos, pero hace buen uso de la
memoria sólo cuando todas las conexiones están muy cargadas.

Multiplexión:

Resumen de Redes de Datos 76


Cuando llega un segmento, se necesita algún mecanismo para saber a
cuál proceso asignarlo. Esta situación, conocida como multiplexión.
Puede ser útil en la capa de transporte por otra razón. Supongamos que
un host cuenta con varias trayectorias de red que puede utilizar. Si un
usuario necesita más ancho de banda o una mayor confiabilidad de la
que le puede proporcionar una de las trayectorias de red, una
solución es tener una conexión que distribuya el tráfico entre varias
trayectorias de red por turno rotatorio. Esto se denomina multiplexión
inversa.

Recuperación de fallas (caídas) Incompleto, agregar algo mas.


Si los hosts y los enrutadores están sujetos a fallas o las conexiones
son de larga duración (por ejemplo, descargas extensas de software o
medios), la recuperación de estas fallas se vuelve un tema importante.

Protocolo de transporte de Internet: UDP


UDP proporciona una forma para que las aplicaciones envíen datagramas IP
encapsulados sin tener que establecer una conexión. Este protocolo transmite
segmentos que consisten en un encabezado de 8 bytes seguido de la carga
útil. UDP no realiza control de flujo, control de errores o retransmisión al recibir
un segmento erróneo. Esto último corresponde al los procesos de usuario.
No reaiza control de flujo, control de congestión o retransmisión cuando se
recibe un segmento erróneo. Todo lo anterior le corresponde a los procesos de
usuario.

Resumen de Redes de Datos 77


Los dos puertos sirven para identificar los puntos terminales dentro de las
máquinas de origen y destino. Cuando llega un paquete UDP, su carga útil se
entrega al proceso que está conectado al puerto de destino. En otras palabras,
el puerto de origen permite enviar una respuesta al origen y el puerto de destino
permite entregar la carga útil al proceso enlazado al puerto. El campo Longitud
de UDP incluye el encabezado de 8 bytes más los datos. EL campo suma de
verificación es opcional y en caso de uso confiabilidad adicional.

Protocolo de transporte de tiempo real: RTP


El protocolo RTP (Real-time Transport Protocol) surge como respuesta a las
necesidades de las aplicaciones en tiempo real. A diferencia del protocolo UDP
(User Datagram Protocol), que es bastante básico y carece de elementos como
números de secuencia y marcas de tiempo para la sincronización en el receptor,
RTP ofrece una solución más adecuada para el manejo de multimedia.
En la práctica, RTP generalmente se implementa en el espacio de usuario sobre
UDP dentro del sistema operativo. Su funcionamiento es el siguiente: las
aplicaciones utilizan bibliotecas RTP que se encargan de multiplexar y codificar
los flujos de datos en paquetes RTP. Estos paquetes se transmiten a través de
un socket, y en el extremo del sistema operativo correspondiente al socket, se
generan paquetes UDP que encapsulan los paquetes RTP. A continuación, estos
paquetes se entregan al protocolo IP para su transmisión a través de enlaces de
red, como Ethernet.
Una característica clave del RTP es que utiliza UDP normal, lo que significa que
los paquetes no reciben un tratamiento especial por parte de los enrutadores, a
menos que se habiliten funciones específicas de calidad de servicio en la red IP.
Esto implica que no hay garantías de entrega, por lo que los paquetes pueden
sufrir pérdidas, retrasos o corrupciones.

Resumen de Redes de Datos 78


Para manejar mejor la información multimedia, el formato de RTP incluye varias
características útiles. Cada paquete enviado en un flujo RTP tiene un número
secuencial mayor que su predecesor. Esta numeración permite al receptor
identificar si falta algún paquete. En ese caso, la acción a tomar dependerá de la
aplicación, ya que la retransmisión no suele ser una opción viable debido al
retraso que implicaría.

Encabezado RTP:

Hay varios campos, de los cuales vamos a poner foco en 3: marcación de


tiempo, tipo de carga útil y número de secuencia.
Version: actualmente es la 2.

P: indica que el paquete se ha rellenado para formar un múltiplo de 4 bytes


X: indica que hay un encabezado de extensión
CC: indica cuántas fuentes de contribución están presentes, de 0 a 15.
M: bit marcador específico de la aplicación.
Tipo de carga útil: indica cuál algoritmo de codificación se utilizó (por
ejemplo, audio de 8 bits sin compresión, MP3, etc.). Puesto que cada
paquete lleva este campo, la codificación puede cambiar durante la
transmisión. El algoritmo de puede adaptar en función de las circunstancias
([Link] ancho de banda).
Número de secuencia: Se utiliza para detectar paquetes perdidos. En caso
de perder paquetes la mejor acción a realizar queda a criterio de la
aplicación.
Marcación de tiempo: La fuente del flujo produce la estampa de tiempo
para indicar cuándo se creó la primera muestra en el paquete. Este valor
puede ayudar a reducir la variabilidad de la sincronización conocida como
variación del retardo en el receptor, al desacoplar la reproducción del
tiempo de llegada del paquete.
Identificador de origen de sincronización: indica a cuál flujo pertenece el
paquete.

Protocolo de control de transporte en tiempo real: RTCP

Resumen de Redes de Datos 79


Se encarga de la retroalimentación, la sincronizacion y la interfaz de usuario
pero no transporte muestra de medios.

Protocolo de control de transporte: TCP

Introducción:
TCP (Protocolo de Control de Transmisión) se diseñó específicamente
para proporcionar un flujo de bytes confiable de extremo a extremo a través
de una interred no confiable, en esta conviven muchas redes las cuales
tienen diversas caracteristicas.
Cada máquina que soporta TCP tiene una entidad de transporte TCP, que
maneja flujos TCP e interactúa con la capa IP. Una entidad TCP acepta
flujos de datos de usuario de procesos locales, los divide en fragmentos que
no excedan los 64 KB y envía cada pieza como un datagrama IP
independiente. Cuando los datagramas que contienen datos TCP llegan a
una máquina de destino, se pasan a la entidad TCP, la cual reconstruye los
flujos de bytes originales. Por su parte, la capa IP no ofrece ninguna
garantía de que los datagramas se entregarán de manera apropiada, es el
TCP el que se encarga de brindar esta confianza.

El modelo del servicio TCP:

El servicio TCP se obtiene al hacer que tanto el servidor como el receptor


creen puntos terminales, llama dos sockets los cuales tienen un número
que consiste en la dirección de IP del host y un puerto (número de 16 bits
local). Los números de puerto menores que 1024 están reservados para los
servicios estándar, por ejemplo, 80 HTTP o 143 IMAP. El propósito de los
sockets es presentar a las aplicaciones una interfase de comunicación
genérica. Las aplicaciones envían y reciben datos “escribiendo y leyendo
sockets”, sin preocuparse de cómo se implementa internamente esta
comunicación. Para obtener el servicio TCP se debe establecer una
conexión entre un socket en la máquina emisora y uno en la máquina
receptora.
Todas las conexiones TCP son full dúplex y de punto a punto, no soporta la
multidifusión ni la difusión. Una conexión TCP es un flujo de bytes, no un
flujo de mensajes. Los límites de los mensajes no se preservan de un
extremo a otro. Por ejemplo, si el proceso emisor realiza cuatro escrituras
de 512 bytes en un flujo TCP, tal vez estos datos se entreguen al proceso
receptor como cuatro fragmentos de 512 bytes, dos fragmentos de 1024
bytes, uno de 2048 bytes

Resumen de Redes de Datos 80


Cuando una aplicación pasa datos a TCP, éste decide entre enviarlos de
inmediato o almacenarlos en el búfer (con el fin de recolectar una mayor
cantidad y enviar todos los datos al mismo tiempo). Muchas veces esto está
bien, pero existen ciertas aplicaciones que necesitan que el envio de los
datos se haga de manera “urgente”. Para ello la aplicación emisora puede
colocar cierta información de control en el flujo de datos y entregarla a TCP
junto con la bandera URGENT. Este evento hace que TCP deje de acumular
datos y transmita de inmediato.

El protocolo TCP:
Una característica clave de TCP, es que cada byte de una conexión TCP
tiene su propio número de secuencia de 32 bits. En un inicio esto estaba
bien, pero ahora estos 2^32 numeros de secuencia posibles se pueden
consumir muy rápidamente.
La entidad TCP emisora y receptora intercambian datos en forma de
segmentos. Un segmento TCP consiste en un encabezado fijo de 20 bytes
seguido de cero o más bytes de datos. Hay dos límites que restringen el
tamaño de segmento.

Primero, cada segmento, incluido el encabezado TCP, debe caber en la


carga útil de 65 515 bytes del IP.
Segundo, cada enlace tiene una MTU (Unidad Máxima de
Transferencia). Cada segmento debe caber en la MTU en el emisor y el
receptor, de modo que se pueda enviar y recibir en un solo paquete sin
fragmentar.
Es posible que los paquetes IP que transportan segmentos TCP se frag-
menten al pasar por una trayectoria de red en la que algún enlace tenga una
MTU pequeña. Si esto ocurre, degradará el desempeño y provocará otros
problemas.

Este protocolo TCP se vaza en ventana corrediza con el tamaño de la


ventana dinámico. Cuando el emisor transmite un segmento, tambien se

Resumen de Redes de Datos 81


inicia un temporizador. Cuando llega el segmento al destino, la entidad TCP
receptora devuelve un segmentoque contiene un número de confirmación
junto con el siguiente número de secuencia que espera recibir. Si el
temporizador del emisor expira antes de recibir la confirmación de
recepción, el emisor transmite de nuevo el segmento.

Encabezado del segmento TCP:

Numero de confirmación de recepción: especifica el siguiente byte


esperado.
Longitud de encabezado: Indica la cantidad de palabras de 32 bits
contenidas en el encabezado TCP (el encabezado es de longitud variable).
Luego aparecen 8 bandares de un bit. Dentro de las mas importantes:
ACK: Se utiliza para confirmar el número de confirmación de recepción.

ACK=0 → El segmento no contiene una confirmacón de recepción.

ACK=1 → El segmento contiene una confirmacón de recepción

SYN: Se utiliza para establecer conexiones. La solicitud de conexión


tiene SYN=1 y ACK=0, la respuesta si lleva una confirmación de
recepción ( SYN=1 y ACK=1).
FIN: Se utiliza para liberar una conexión.
Tamaño de ventana: Indica la cantidad de bytes que pueden enviarse
comenzando por el byte cuya recepción se ha confirmado. El tamaño de
ventana podría ser 0 y en este caso indica que se han recibido los bytes
hasta Número de confirmación de recepción - 1 inclusive y que no se
desean recibir más datos. Para retomar el envío de datos se manda un
nuevo segmento con el mismo Número de confirmación de recepción y un
campo Tamaño de ventana distinto de cero.
Opciones ofrece una forma de agregar las características adicionales que
no están cubiertas por el encabezado normal, por ejemplo, MSS.

Establecimiento de una conexión TCP


En TCP la conexiones se establecen mediante el acuerdo de las tres vias.
Uno de los lados emite una primitiva CONNECT especificando la dirección
IP y el puerto al que
se desea conectar, el tamaño máximo del segmento TCP que acepta mas
datos

Resumen de Redes de Datos 82


opcionales. El otro lado espera pasivamente una conexión entrante
mediante las primitivas LISTEN y ACCEPT.

1. El host 1 envía un segmento TCP con el bit SYN encendido, con el


puerto de destino y el número de secuencia inicial.

2. El host 2 responde con un segmento con ACK encendido aceptando la


conexión , con SYN encendido y su propio número de secuencia inicial.

3. El host 1 envía un ACK aceptando la conexión del host 2

Liberación de una conexión TCP


Aunque las conexiones TCP son full dúplex, para entender la manera en
que se liberan las conexiones es mejor visualizarlas como un par de
conexiones simplex. Cada conexión simplex se libera de manera
independiente de su igual. Para liberar una conexión, cualquiera de las
partes puede enviar un segmento TCP con el bit FIN establecido, lo que
significa que no tiene más datos por transmitir. Al confirmarse la recepción
de FIN, se apaga ese sentido para que no se transmitan nuevos datos. Sin
embargo, lo datos pueden seguir fluyendo de manera indefinida por el otro
sentido. Cuando se apagan ambos sentidos, se libera la conexión. Por lo
general se requieren cuatro segmentos TCP para liberar una conexión: un
FIN y un ACK para cada sentido.
Para evitar el problema de los dos ejercitos se utilizan temporizadores. Si no
llega una respuesta a un FIN en un máximo de dos tiempos de vida del
paquete, el emisor del FIN libera la conexión.

Resumen de Redes de Datos 83


Politica de transmición de TCP:
Como se mencionó, se utiliza ventana corrediza, pero en el caso de TCP, el
receptor anuncia sobre el tamaño de buffer disponible y el emisor administra
el envio de datos a medida que llegan de la aplicacion a los efectos de
poder mejorar el desempeño.

Cuando la ventana es de 0, el emisor por lo general no puede enviar


segmentos, salvo en dos situaciones. En primer lugar, se pueden enviar
datos urgentes (por ejemplo, para permitir que el usuario elimine el proceso
en ejecución en la máquina remota). En segundo lugar, el emisor puede
enviar un segmento de 1 byte para hacer que el receptor vuelva a anunciar
el siguiente byte esperado y el tamaño de la ventana.
Este paquete se denomina sonda de ventana.

Control de congestiones en TCP:

Resumen de Redes de Datos 84


Cuando la carga ofrecida a cualquier red es mayor que la que puede
manejar, se genera una congestión, esto se detecta cuando las colas crecen
demasiado en los enrutadores, a medida que la congestión se vuelve más
severa se comienza a experimentar la pérdida de paquetes. Para solucionar
esto, buscamos que el protocolo pueda detectar la congestión y reaccionar
ante ella disminuyendo la tasa de datos inyectada a la red. Para esto TCP
administra dinámicamente el tamaño de su ventana y la administración de
los temporizadores para retransmitir.

Existen dos problemas:

1. Congestión en la red: Ocurre cuando hay más datos transmitidos en la


red de los que puede manejar la red. Puede pasar por un exceso de
tráfico, mal enrutamiento, o poco ancho de banda.

2. Congestion en el receptor: La congestión en el receptor ocurre cuando


el nodo final no puede procesar los datos entrantes a la velocidad a la
que se reciben. Esto puede deberse a limitaciones de procesamiento,
memoria insuficiente, entre otros.

Para evitar que ocurra la congestión, al establecerse la conexión el


receptor puede establecer su ventana en función de su tamaño de

Resumen de Redes de Datos 85


buffer. Así si el emisor respeta el tamaño de la ventana no ocurrirá
desbordamiento. Aún así puede ocurrir congestión en la red.

Algoritmo slow start


La idea es insertar paquetes en la red en función de la velocidad a
la cual llegan las confirmaciones del receptor. En el primer tiempo
de ida inyecta 1, en el segundo 2 en el tercero 4 y asi
susecivamente. El algoritmo define una nueva ventana en el
transmisor llamada ventana de congestión. Esta comienza con el
tamaño máximo de segmento de la conexión, por cada ventana
confirmada se duplica el tamaño de la ventana de congestión. La
ventana de congestión aumenta hasta llegar a el tamaño de la
ventana receptora o hasta que expira el temporizador. Si alguna
ventana produce una expriación del temporizador la ventana se
reduce al valor anterior.

Algoritmo de control de congestión en Internet


Además de las ventanas de recepción y congestión, se agrega un
tercer parámetro, el umbral inicialmente de 64KB. Este umbral
determina el punto en el que TCP cambia de la fase de "arranque
lento" a la fase de "evitación de congestión".

Al ocurrir una expiración del temporizador (síntoma de congestión),


se establece el umbral a la mitad de la ventana de congestión actual
y la ventana de congestión se vuelve a un segmento máximo
(arranque lento).
Luego se usa arranque lento hasta alcanzar el umbral. A partir de
aquí la ventana de congestión aumenta de a un segmento máximo.
Control de congestión es un tipo de control de flujo impuesto por el
emisor, mientras que la ventana del receptor es un control de flujo
impuesto por el receptor.

Administración de temporizadores de TCP:


Al enviarse un segmento se inicia un temporizador de
retransmisiones. Si el temporizador expira antes de llegar la
confirmación de recepción, se retransmite el segmento.
¿Podría tener un valor fijo el RTO?

Resumen de Redes de Datos 86


En la práctica no se hace por la varaiblidad de la red, en
terminos de congestion y velocidad. Un valor fijo de RTO no
tomaría en cuenta estas variaciones, lo que podría resultar en
retransmisiones innecesarias (si el RTO es demasiado corto) o
en respuestas lentas a la pérdida de paquetes (si el RTO es
demasiado largo).
TCP está diseñado para ser adaptable a las condiciones de la
red. El RTO se calcula dinámicamente utilizando estimaciones
del Round-Trip Time (RTT) y su varianza.
Las implementaciones de TCP estiman el RTT utilizando los
tiempos de los segmentos anteriores y en base a esta
estimación, fijan el valor del (RTO) a un valor mayor que el RTT
estimado

Resumen de Redes de Datos 87

También podría gustarte