Capa de Red

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 22

UNIVERSIDAD NACIONAL DANIEL ALCIDES CARRIÓN

FACULTAD DE INGENIERÍA
ESCUELA DE FORMACIÓN PROFECIONAL DE SISTEMAS Y
COMPUTACIÓN

Capa de RED Modelo OSI

ESTRADA MONGE, Franklin Edix


ECHEVARRIA CONDOR, Hernan Adrian

Cerro de Pasco, Perú


2020
DEDICATORIA:
Dedico este trabajo a mis padres
quienes me brindan su apoyo
incondicional, a mis docentes de la
escuela de la facultad de Ingeniería en
especial para la Escuela de Sistemas y
Computación.

fffs
INTRODUCCIÓN:
En el presente trabajo se aborda la función de la capa de Red, analizando cómo esta capa divide las redes en grupos
de hosts para administrar el flujo de paquetes de datos dentro de una red. Además, consideraremos cómo se facilita
la comunicación entre redes. A esta comunicación entre redes se la denomina enrutamiento, los equipos que utiliza
la capa de red son: Router y Swtich.

Además de que la capa de red enruta paquetes de datos, selecciona la mejor ruta para entregar datos y que la capa
de red prioriza los datos conocido como calidad de servicio (QoS). También se tratará de los algoritmos que almacena
la capa de red y los problemas de conexión que puedan surgir.
ÍNDICE:
CAPÍTULO 1
Conceptos básicos..........................................................Pg(1)
CAPÍTULO 2
Problemas de diseño de la capa de red…………………..Pg(2)
CAPÍTULO 3
Algoritmos de encaminamiento.……………………….……Pg(12)
CAPÍTULO 4
Algoritmos de control de la congestión………....……Pg(16)
CAPÍTULO 5
Bibliografía…………..……………………………..………Pg(18)
Capítulo I
¿Qué es una red?
Una red se refiere a dos o más computadoras conectadas que puede compartir recursos
como datos, una impresora, una Internet conexión, aplicaciones o una combinación de
estos recursos.
Tipos de redes

• Local Area Network (LAN)


• Metropolitan Area Network (MAN)
• Wide Area Network (WAN)
La Capa de Red
La capa de red proporciona conectividad y selección de ruta. entre dos sistemas host
que pueden estar ubicados en redes separadas geográficamente
Dispositivos de la capa de red
Los dispositivos que operan en la capa de red son enrutadores (Routers) y
Conmutadores (Switch) de capa 3.

Routers
Los enrutadores (Routers) facilitan la comunicación dentro de este trabajo de Internet.
Eso decide cómo enviar paquetes dentro de la red para que llegar a su destino.

Conmutadores (Switch) de capa 3


El conmutador (Switch) de capa 3 funciona en la capa de red y realiza las funciones de
canalización de datos, LAN virtual y multipuerto de un conmutador de capa 2 estándar.
También puede realizar funciones básicas, Funciones de enrutamiento entre LAN
virtuales.
Capítulo 2
PROBLEMAS DE DISEÑO DE LA CAPA DE RED
Servicios proporcionados a la capa de transporte
Debido a que, en algunas redes de área extensa, la capa de Red opera en los IMP
(Interface Message Processor) y la capa de transporte opera en los equipos de los usuarios,
los límites entre la capa de red y la de transporte en estas redes coincide con el límite
entre la subred publica de transición de datos y el equipo de usuario. Por tanto, los
servicios proporcionados por la capa de red definen los servicios proporcionados por la
subred.
En un principio, la ISO sólo aceptó un servicio de red orientada a conexión,
principalmente debido a que las compañías proveedoras de servicios portadores
necesitaban algún mecanismo que les permite calcular los cargos por tiempo de
conexión. Sin embargo, los que estaban a favor a favor de un servicio sin conexión,
como el de las redes IP, siguieron luchando, hasta que la ISO tuvo que aceptar ambos
tipos de servicio.
Este problema surgió en diferentes capas de la arquitectura OSI, por lo que nos
encontramos con los dos tipos de servicios en distintos niveles. Mas aún, es posible que
servicios orientados a conexión de una capa (por ejemplo, la red) estén soportados por
servicios sin conexión en capas inferiores (la de enlace) y viceversa.

La mayor parte de las primitivas tienen parámetros. Por ejemplo, para establecer una
conexión, se usa la primitiva Petición Conexión. Esta primitiva especifica la dirección de
la red a la que se quiere conectar y la conexión de red del que se hace la llamada.
También contiene otros parámetros que se utilizan para solicitar servicios adicionales:
normalmente estos servicios son negociados entre las dos partes. Un parámetro
adicional es la de calidad de servicio proporcionado por la conexión. habrán de
especificarse unos mínimos de calidad aceptables por la entidad que solicita la conexión
para que esta se realice con éxito, así como la calidad que realmente se desea. Entre
los requisitos de calidad están cosas como el retardo, la tasa de error, el coste, etc.
El resto de primitivas, en una gran parte, tiene también parámetros que influyen en el
comportamiento y la funcionalidad del servicio utilizado.
a) Una capa de red sin servicio de conexión sobre una capa de enlace sin servicio
de conexión prácticamente convierte peticiones de envió de paquetes de datos
provenientes de la capa de transporte en peticiones de envió de una o varias
tramas a través de la línea de enlace. Ninguna de las dos capas asegura que los
datos llegues a su destino, que no existan duplicados, ni el correcto orden de los
paquetes en la capa de red o de las tramas en la de enlace.

b) Una capa de red sin servicio de conexión trabajando sobre una capa de enlace
con servicio de conexión, puede fiarse de esta en cuanto a que las tramas van a
llegar con seguridad, sin duplicados y en orden, a pesar de que las líneas físicas
de transmisión no sean muy fiables. Las funciones de esa sofisticada capa de
enlace recuperan las tramas dañadas, eliminan duplicados, etc. Para hacer que
la línea sea fiable. Sin embargo, la capa de red no asegura esto a la de
transporte. Paquetes de datos, pueden perderse, duplicarse o cambiar de orden
por el camino, en los saltos entre routers a través de otras capas de enlace no
tan fiables o por fallos de los propios routers. En estos casos resulta bastante
frustrante que le nivel de fiabilidad obtenido mediante funciones complejas en la
capa de enlace, se pierda en la capa de red. Además, aunque lo más común es
que una conexión de enlace da servicio a muchos paquetes de la capa de red,
es posible que se den situaciones en que el envió de cada paquete requiera el
establecimiento, envió y liberación de una conexión de enlace, lo que da lugar a
un rendimiento poco eficiente.

c) Una capa de red con servicio de conexión trabajando sobre una capa de enlace
sin servicio de conexión. Tiene la laboriosa tarea de asegurar una conexión fiable
a la capa de transporte, a pesar de que la capa de enlace no sea fiable. Por
tanto, deberá de implementar mecanismos que le permitan almacenar paquetes
para su posible retransmisión, asegurarse de su correcta recepción de estos por
la entidad homologa de la capa de red en el siguiente nodo de la red, descartar
posibles duplicados, mantener la correcta secuencia de los paquetes, etc. Si no
es capaz de llevar a cabo esta labor para una determinada conexión, lo habitual
es que aborte esta conexión y se notifique el error a la capa de transporte.
d) Una capa de red con servicio de conexión trabajando sobre una capa de enlace
con servicio de conexión, puede tener una implementación muy sencilla si
simplemente se “mapeasen” las peticiones que hace la capa de transporte en
peticiones análogas sobre la capa de enlace. Sin embargo, esto no suele ser
posible ya que una conexión de red necesita normalmente la cooperación de los
nodos intermedios que tiene que trabajar sobre las capas de enlace que tienen
otras características. Lo habitual es que la conexión de enlace exista incluso
previamente a la llegada de la petición de conexiones procedente de la capa de
transporte, y que exista más allá de la desaparición de esta para dar servicio a
futuras conexiones. En todo caso suele suponer que dos capas implementan
funciones redundantes para mantener fiabilidad de las conexiones, cuando
bastaría que solo se hiciese la capa de red.

Organización interna de la capa de red


En lo interno de la capa de red se puede distinguir entre las redes de conmutación de
circuitos y redes de conmutación de paquetes, también conocidas como redes de
almacenamiento y reenvío (store and fordward). En las primeras, al establecer la
comunicación, los canales físicos que unen ambos extremos quedan reservados para
uso exclusivo hasta que la conexión se libera, y no es necesario reservar recursos en
los nodos intermedios para el almacenamiento temporal de la información. En el caso
de redes de conmutación de paquetes, cada intermedio recibe mensajes en forma de
paquetes de datos y los almacena hasta que los reenvía hacia su destino final o a otro
nodo intermedio.
En las redes de transmisión de datos se suele optar por la solución de la conmutación
de paquetes, ya que la reserva de un canal físico para la transmisión de datos, que suele
ser un proceso que se produce a ráfagas, hace que la capacidad del canal físico se
aproveche muy poco. Además, en el instante que se desean transmitir datos
masivamente el flujo máximo está limitado por la capacidad máxima de canal. Por ello
suele ser un esquema más adecuado para circuitos analógicos de voz, video, etc. Por
el contrario, mediante la conmutación de paquetes se comparten la capacidad de los
distintos circuitos físicos entre comunicaciones simultaneas consiguiendo un mejor
aprovechamiento.
Centrándose en la conmutación de paquetes, existen dos filosofías para la organización
interna de la subred: como una red de datagramas (denominadas así por analogías con
los telegramas o el sistema postal) o mediante circuitos virtuales (denominados así por
su analogía con los circuitos físicos establecidos por el sistema telefónico con redes de
conmutación de circuitos).
Hay que señalar que el servicio ofrecido (orientado a conexión o sin conexión) es un
tema independiente de la estructura de la subred (de circuitos virtuales o datagramas).
Teóricamente las cuatro combinaciones son posibles, aunque algunas sean más lógicas
que otras. Es más lógico y común que una red con servicio sin conexiones se estructure
internamente como una red de datagramas y que una red con servicio orientado a
conexión se estructure con una red de circuitos virtuales.

Los circuitos virtuales se utilizan normalmente en subredes cuyo servicio principal está
orientado a conexión. La idea principal de los circuitos virtuales es evitar la toma de
decisiones de encaminamiento para cada paquete transmitido. En lugar de esto, cuando
se establece una conexión, se selecciona una ruta que va desde la maquina origen
hasta la maquina destino, y se utiliza dicha ruta para todo el tráfico que circule por la
conexión, como en el sistema telefónico. Durante el establecimiento de la ruta, los IMP
que van a intervenir en la misma se intercambian mensajes para actualizar sus tablas
de circuitos virtuales y reservar recursos (memoria, buffers, etc.) para la conexión.
Cuando se libera la conexión, se desecha el circuito virtual, se borran sus entradas de
las tablas de encaminamiento y se liberan sus recursos. El costo de estos recursos hace
que cada IMP pueda soportar un número limitado de conexiones. Si este número se ha
alcanzado los siguientes intentos de conexión serán rechazados hasta que se liberen
recursos de alguna conexión.
En cambio, con una subred de datagramas, no se determina la ruta anticipante, aun
cuando el servicio este orientado a conexión. Cada paquete se encamina
independientemente, por lo que paquetes sucesivos podrán viajar por rutas diferentes,
A pesar de que tienen que realzar más trabajo, las subredes de datagramas son más
robustas y se adaptan mejor a los fallos y la congestión que las de subredes de circuitos
virtuales.
Encaminamiento en redes de circuitos virtuales
Si los paquetes que circulan por un circuito virtual dado siguen siempre la misma ruta a
través de la subred, cada IMP debería recordar hacia donde expedir paquetes para cada
uno de los circuitos virtuales abiertos que pasan a través de él. Cada IMP deberá
mantener una tabla, con una entrada por cada circuito virtual abierto. Cada paquete que
circule por la subred deberá contener un campo con el número de circuito virtual,
además del resto de campos. Cuando el paquete llega a un IMP, este conocerá la línea
por la que llego, así como el número de circuito virtual. Con esta información, se
reexpedirá el paquete al IMP apropiado.
Cuando se finaliza la utilización de un circuito virtual, habrá que indicar este hecho para
que los IMP puedan realizar tareas de actualización en sus tablas.
Encaminamiento en redes de datagramas
En el caso de que utilicemos datagramas, los IMP no necesitan almacenar tablas con
los circuitos virtuales, ya éstos no existen. En su lugar, almacenarán una tabla que indica
que salida deben utilizar para cada uno de los posibles IMP destinatarios. Estas tablas
también son necesarias cuando se utilizan los circuitos virtuales, para determinar la ruta
empleada del paquete durante el establecimiento del circuito.
Cada datagrama deberá contener la dirección completa del destinatario. Cuando llega
un paquete, el IMP busca una línea de salida y lo reexpide a través de ella.
Comparación de circuitos virtuales y datagramas en el interior de la subred
Los circuitos virtuales y los datagramas tienen sus ventajas y sus inconvenientes.
Vamos a ver los dos aspectos de cada uno de ellos. En la subred, la discusión circuitos
virtuales frente a datagramas se fundamenta en el equilibrio entre el espacio de memoria
que se consume y el ancho de banda que se logra.
Los circuitos virtuales utilizan números de circuitos en lugar de direcciones completas
para identificar el origen y el destino de las comunicaciones. Si los paquetes tienden a
ser muy pequeños, el hecho de tener que incorporar en el paquete direcciones
completas en lugar de identificadores de circuito virtual, puede representar una
sobrecarga significativa y, por tanto, un bajo aprovechamiento del ancho de banda
disponible.
Para operaciones relacionadas con el proceso de negociaciones (Por ejemplo, pagos
con tarjeta de crédito), la sobrecarga que conlleva el establecimiento y finalización de
un circuito virtual puede desaconsejar su uso. Si se espera que la mayor parte del tráfico
sea de ese tipo (con el intercambio de pocos datos), tienen poco sentido utilizar circuitos
virtuales.
Los circuitos virtuales tienen también un problema de vulnerabilidad. Si por ejemplo falla
un IMP, todos los circuitos que pasan por él tendrán que ser abortados. En cambio, si
se usan datagramas y cae el IMP, solo sufrirán problemas aquellos usuarios cuyos
paquetes estaban en la cola de espera del IMP en ese momento. El uso de datagramas
también permite balancear el tráfico de la subred gracias a que las rutas se pueden
modificar a mitad de una conexión.

Encaminamiento
La función real de la capa de red consiste en el encaminamiento de paquetes, desde la
máquina de origen hasta la maquina destino. En la mayoría de las subredes, los
paquetes necesitaran realizar múltiples saltos para terminar un viaje. Los algoritmos que
seleccionan las rutas y las estructuras de datos que utilizan representan una de las
áreas principales del diseño de la capa de red.
El algoritmo de encaminamiento es aquella parte del software correspondiente a la capa
de red que es responsable de decidir sobre qué línea de salida se deberá transmitir un
paquete que llega. Si la subred utiliza internamente circuitos virtuales, la decisión
encaminamiento se toma durante el establecimiento del circuito virtual y luego se
mantiene fija para el resto de los paquetes que utilizan ese circuito virtual. Si la subred
usa datagramas, la decisión se toma cada vez que llega un paquete y de forma
independiente para cada uno de ellos, aunque lleven el mismo destino.
Independientemente del momento en que se tome la decisión, existen ciertas
propiedades deseables para todo algoritmo de encaminamiento: corrección, simplicidad,
robustez, estabilidad, justicia y optimalidad.
Los algoritmos de encaminamiento se pueden agrupar en dos clases principales:
a) Algoritmos no adaptativos: no basan sus decisiones de encaminamiento en
mediciones ni estimaciones del tráfico o topología actuales de la red; más bien,
la elección de la ruta a utilizar para ir de la “i” a la “j” (para toda i y j) se determina
anticipadamente, fuera de línea, y se encarga en los IMP cuando la red se
arranca. A este procedimiento se le denomina en ocasiones encaminamiento
estático.
b) Algoritmos adaptativos: intentan cambiar sus decisiones de encaminamiento
para reflejar los cambios de tipología y trafico actuales. Existen tres familias de
algoritmos adaptativos. Los algoritmos centralizados utilizan información
recogida en toda la subred para intentar tomar decisiones optimas. Los
algoritmos aislados operan de forma separada en cada IMP y solo utilizan la
información que está disponible en él, como la longitud de las colas de espera.
Los algoritmos distribuidos utilizan una combinación de información local y
global.
Encaminamiento centralizado
Cuando se utiliza un encaminamiento centralizado, en alguna parte de la red hay un
CCE (Centro de Control de Encaminamiento). Periódicamente, cada IMP transmite la
transformación de su estado al CCE (por ejemplo, la lista de sus vecinos activos, las
longitudes actuales de las colas de espera, cantidad de tráfico procesado desde el último
informe de estado, etc.). El CCE recoge toda esta información, y con base en el
conocimiento de la red completa, calcula las rutas optimas de todos lo IMP a cada uno
de los IMP restantes. A partir de esta información, construirá nuevas tablas de
encaminamiento que distribuirá a todos los IMP.
Una ventaja del almacenamiento centralizado es que los IMP se despreocupan de
calcular el encaminamiento, Por el contrario, tiene importantes desventajas. Si la subred
se tiene que adaptar a un tráfico variable, el cálculo del encaminamiento se tendrá que
realizar con bastante frecuencia. Para una red grande, este cálculo llevara alguno
segundos. Si el propósito del cambio es adaptarlo a los cambios en la topología de la
red y no tanto a cambios de tráfico, no habría demasiados problemas, dependiendo de
lo estable que fuese la topología.
Además, si el CCE falla, la subred estará de pronto en una situación. Una posibilidad es
tener una máquina de respaldo, pero esto conlleva desperdiciar un ordenador.
Otro problema es el relacionado con la distribución de las tablas de encaminamiento.
Los IMP próximos al CCE recibirán primero sus tablas nuevas y podrán cambiar a las
nuevas rutas ante los IMP localizados más lejos hayan recibido las suyas. Bajo estas
circunstancias pueden presentarse inconsistencias que lleven a que ciertos paquetes
se retarden. Entre estos paquetes puede haber alguna tabla de encaminamiento para
IMP distantes, con lo que el problema se realimenta así mismo.
Un último problema es la fuerte concentración de tráfico encaminado sobre las líneas
que conducen al CCE.
Encaminamiento aislado
Las decisiones de encaminamiento son los tomados por los IMP basándose únicamente
en la información que aquellos mismo hayan reunido. No intercambian, por tanto,
información con otros IMP. Sin embargo, tratan de adaptarse a los cambios de topología
y tráfico que se presenten. A estos algoritmos se les conoce comúnmente como
algoritmos de encaminamiento adaptables aislados.
Encaminamiento distribuido
En este tipo de algoritmos, cada IMP intercambia periódicamente información de
encaminamiento explicito con cada uno de sus vecinos, con el fin de mantener una tabla
de encaminamiento en donde figura la línea de salida más adecuada hacia cada IMP, y
alguna estimación del tiempo la distancia hacia a él. Estos algoritmos son bastante
efectivos, pero presentan el problema del aumento artificial del tráfico para que los IMP
se intercambien la información. Además, habría que decir en qué momento se realizan
dichos cambios.

Congestión
Cuando tenemos muchos paquetes en la subred, el rendimiento se degrada. Esta
situación se conoce con el nombre de congestión. La congestión puede estar producida
por varios factores. Si los IMP son muy lentos para efectuar las distintas tareas que
tienen asignadas, las colas pueden crecer, independientemente de que las líneas de
transmisión tengan suficiente capacidad. Por otra parte, aun cuando la CPU del IMP
fuese infinitamente rápida, el crecimiento de las colas de espera surgirá, cada vez que
la velocidad del tráfico de entrada exceda la capacidad de líneas de salida.
La congestión tiende a realimentarse, volviéndose todavía peor. Si por un IMP no tiene
memorias temporales desocupadas, deberá ignorar los nuevos paquetes que llegan.
Cuando se desecha un paquete, al IMP que le envió le vencerá un temporizador, con lo
que retransmitirá el paquete hasta que reciba un acuse de recibido. Por tanto, deberá
almacenar paquete hasta que llegue correctamente al siguiente nodo, cuando en
condiciones normales ya habría liberado el espacio que ocupaba. De esta manera la
conexión se va extendiendo entre los IMP.
Finalmente, es importante señalar la diferencia existente entre el control de la
congestión y el control de flujo. El control de la congestión tiene que ver con la seguridad
que la subred sea capaz sea capaz de transportar el tráfico ofrecido.
Interconexión de redes
En el modelo OSI, la interconexión de red se realiza en la capa de red. La capa de red,
siempre que sea necesario, se puede dividir en tres subcapas que son de abajo hacia
arriba: subcapa de acceso a la subred, la subcapa de mejora de la subred y la subcapa
de interconexión de redes. Como subred se entiende en este caso el conjunto formado
por la capa de enlace y la capa física de la red o circuito de enlace de datos.
A parte de los IMP o encaminadores, existen otros tres tipos de equipos que pueden
funcionar como retransmisores de información en una arquitectura de comunicaciones.
En función a la capa en la cual realiza sus funciones y del servicio que prestan reciben
diferentes denominaciones:
a) Repetidores (repeaters)
b) Puentes (bridges)
c) Encaminadores (routers)
d) Pasarelas (gateway)
IP: INTERNET PROTOCOL
Definición Internet Protocol
El protocolo de Internet, conocido por sus siglas en inglés IP, es el protocolo principal
de la familia de protocolos de Internet y su importancia es fundamental para el
intercambio de mensajes en redes informáticas. El protocolo no orientado a la conexión,
publicado en 1974 por el Instituto de Ingeniería Eléctrica y Electrónica (IEEE) y
especificado como estándar en RFC 791, fue concebido principalmente para garantizar
el éxito en el envío de paquetes de un emisor a un destinatario. Para este fin, el protocolo
de Internet establece un formato que determina el tipo de descripción que tienen estos
paquetes de datos (también llamados datagramas IP).
¿Qué es el Internet Protocol (IP)?
Al igual que a la hora de enviar cartas, para enviar datos a través de las redes digitales
es necesario contar con la dirección correcta, con la diferencia de que en este caso se
habla de direcciones IP. Por lo tanto, los paquetes de datos van dotados de una
dirección IP, tal y como los sobres incluyen una dirección postal, para que el destinatario
pueda recibir la carta. A diferencia de las direcciones postales, sin embargo, sus
sustitutas digitales no están vinculadas a un lugar determinado, sino que se asignan a
los dispositivos de red de manera automática o manual al establecer la conexión,
proceso en el cual juega un papel esencial el llamado Internet Procotol o protocolo IP.
IPv4 e IPv6: ¿qué diferencia a cada versión?
Hoy en día, quien trata habitualmente con direcciones IP con el fin de, por ejemplo,
direccionar ordenadores en la red local, no tarda en toparse con las dos variantes IPv4
e IPv6. Estas no hacen referencia a la cuarta y sexta generación del protocolo IP, a
pesar de las diferentes modificaciones que ha experimentado. IPv4 es de factola primera
versión oficial del Internet Protocol, derivando número de versión del hecho de utilizar la
cuarta versión del protocolo TCP. IPv6, por su parte, es el sucesor directo de IPv4 (el
desarrollo de IPv5 fue suspendido por motivos económicos).
Aun cuando no se han publicado versiones posteriores a IPv4 y IPv6, el Internet
Protocol se ha ido desarrollando desde 1974, cuando todavía no existía de forma
autónoma y formaba parte de TCP. Básicamente, por aquel entonces el foco de atención
se centró en optimizar el establecimiento de la conexión y el direccionamiento. De esta
manera, pronto se pudo aumentar la longitud de los bits de las direcciones host pasando
así de 16 a 32 bits, por lo que el espacio para direcciones se amplió a alrededor de
cuatro mil millones de posibles representantes. El prometedor IPv6, con sus campos de
direcciones de 128 bits, permite alrededor de 340 sextillones (una cifra con 37 ceros) de
direcciones diferentes, cubriendo así la necesidad de direcciones de Internet también
en el largo plazo.
Así se construye la cabecera IP de un datagrama
Como ya se ha puesto de relieve, el Internet Protocol se ocupa de que las características
estructurales importantes se presenten en la cabecera de cada paquete y de que se le
asigne el protocolo de transporte adecuado (normalmente TCP). La cabecera fue
revisada para la versión 6, por lo que es necesario hacer una distinción entre la cabecera
de IPv4 y la de IPv6.
Toda cabecera IP comienza con un valor de 4 bits de longitud para el número de
versión del protocolo de Internet, es decir, IPv4 o IPv6. A este le siguen 4 bits que
contienen información sobre la longitud de la cabecera (IP header length), puesto que
esta no siempre es la misma. La longitud total se calcula tomando como base este valor
multiplicado por 32 bits. Así, 5, el valor más pequeño posible, se corresponde con una
longitud de cabecera de 160 bits, lo que se traduce en 20 bytes. En este caso no se
añade ninguna opción. El valor máximo es 15 o 480 bits, es decir, 60 bytes. Los bits del
8 al 15 (Type of Service) pueden contener instrucciones sobre el tratamiento y la
prioridad del datagrama. En este sentido, el host puede, por ejemplo, indicar la
importancia de aspectos como la fiabilidad, el rendimiento o las demoras en lo que
respecta a la transmisión de los datos.
La longitud total señala cuál es el tamaño total del paquete de datos y añade así el
tamaño de los datos útiles a la longitud de la cabecera. Debido a que dicho campo tiene
una longitud de 16 bits, el límite máximo se sitúa en torno a los 65 635 bytes. En la RFC
791 se define que cada host ha de tener la capacidad de procesar al menos 576 bytes.
Un datagrama IP puede fragmentarse según se desee en su camino hacia el host de
destino tanto del router como de otros dispositivos, aunque los fragmentos no deben
tener un tamaño inferior a 576 bytes. El resto de los campos de la cabecera de IPv4
tienen el siguiente significado:

• Identificación: todos los fragmentos de un datagrama cuentan con el mismo


número de identificación que reciben por parte del remitente. Ajustándose a este
campo de 16 bits, el host de destino puede asignar los fragmentos individuales a
un determinado datagrama.
• Flags (banderas): toda cabecera IP contiene tres bits flag que incluyen datos y
directrices para la fragmentación. El primer bit está reservado y siempre tiene el
valor 0. El segundo bit, con el nombre “Don’t Fragment”, informa acerca de si se
puede fragmentar el paquete (0) o no (1). El último, que recibe el nombre de “More
Fragments”, da información sobre si siguen más fragmentos (1) o sobre si el
paquete está completo y ha concluido con el fragmento actual (0).
• Desplazamiento del fragmento: este campo informa al host de destino sobre la
parte a la que pertenece un único fragmento para que pueda reconstruir todo el
datagrama sin ningún problema. La longitud de 13 bits significa que un datagrama
puede dividirse en un máximo de 8192 fragmentos.
• Tiempo de vida (Time to Live, TTL): para que un paquete no vague por la red de
un nodo a otro durante un período de tiempo ilimitado obtiene un tiempo de vida
máximo en el momento del envío, lo que se conoce como Time to Live. El estándar
RFC define a los segundos como unidad para este campo de 8 bits y el tiempo de
vida máximo asciende a 255 segundos. Para cada nodo de red que pasa, el TTL
disminuye como mínimo en 1. Si se alcanza el valor 0, el paquete de datos es
descartado automáticamente.
• Protocolo: el campo del protocolo (8 bits) asigna al paquete de datos el protocolo
de transporte correspondiente, como es el caso, por ejemplo, del valor 6 para TCP
o del valor 17 para el protocolo UDP. El listado oficial de todos los protocolos
posibles fue elaborado en 2002 por la IANA (Internet Assigned Numbers Authority).
• Suma de verificación de la cabecera: el campo “checksum”, de 16 bits de
amplitud, contiene la suma de verificación de la cabecera. Esta debe volverse a
calcular para cada nodo de red a causa de la disminución del TTL en cada
estación. La exactitud de los datos útiles no se verifica por motivos de eficiencia.
• Dirección de origen y de destino: a las direcciones IP asignadas al host de
origen y al de destino se reservan 32 bits respectivamente, es decir, 4 bytes. Estas
direcciones IP se escriben adoptando la forma de cuatro grupos de números
decimales separados por un punto. La dirección más baja es 0.0.0.0 y la más alta
255.255.255.255.
• Opciones: el campo de las opciones amplía el protocolo IP con datos adicionales
no contemplados en el diseño estándar. Debido a que se trata de complementos
opcionales, el campo tiene una longitud variable limitada por la longitud máxima de
la cabecera. Entre las opciones posibles se encuentran, por ejemplo, “Security”
(señala lo secreto que es el datagrama), “Record Route” (encarga a todos los
nodos de red que adhieran sus direcciones IP al paquete para registrar su ruta) y
“Time Stamp” (añade la fecha y la hora del momento en el que el paquete pasa por
un determinado nodo).

Capítulo 3

ALGORITMOS DE ENCAMINAMIENTO
El principio de optimalidad:
Aunque parezca una perogrullada es un principio fundamental para los algoritmos
de encaminamiento que podemos enunciar así:
“Si B está en la ruta óptima de A a C, entonces el camino óptimo de B a C está
incluido en dicha ruta.”
Una consecuencia importante de este principio es que todas las rutas óptimas para
llegar a un punto determinado en una red forman un árbol con raíz en el punto de
destino. El árbol no contiene bucles, decimos que es un spanning tree y siempre es
posible llegar al punto de destino en un número finito de saltos ('hops').
Encaminamiento por el camino más corto:
Entendemos por mejor ruta aquella que cumple las siguientes condiciones:
• Consigue mantener acotado el retardo entre pares de nodos de la red.
• Consigue ofrecer altas cadencias efectivas independientemente del retardo
medio de tránsito.
• Permite ofrecer el menor costo.
El criterio más sencillo es elegir el camino más corto, es decir la ruta que pasa por
el menor número de nodos. Una generalización de este criterio es el de “coste
mínimo”. En general, el concepto de distancia o coste de un canal es una medida
de la calidad del enlace basado en la métrica que se haya definido. En la práctica
se utilizan varias métricas simultáneamente.
Normalmente se implementa como un algoritmo centralizado, es decir un nodo calcula
las rutas más óptimas y las transmite a todos los demás. La operación puede realizarse
offline antes de poner en marcha la red y manteniendo luego fijas las rutas haciendo
que el encaminamiento sea estático, o bien, se recalcula periódicamente o cuando la
red cambia para que sea el encaminamiento sea adaptativo. La idea consiste en
construir un grafo de la subred, en el que cada nodo represente un IMP, y cada arco
equivalga a una línea de comunicación. Para escoger una ruta entre un par de IMP
dados, el algoritmo sólo determina el camino más corto que existe entre ellos.
Lo único que nos queda por definir es el concepto de camino más corto. Tenemos
diferentes posibilidades:
a) El de menor número de saltos (nodos atravesados)

b) El de menor distancia en km.

c) El de menor retardo promedio de espera en cola y de transmisión.

d) El de mayor ancho de banda, etc.


En el caso general, las etiquetas de los arcos se podrían calcular como una función de
la distancia, ancho de banda, promedio de tráfico, coste de comunicación, longitud
promedio de la cola de espera, retardo medio, etc.
Una vez etiquetados los arcos del grafo, sólo queda aplicar algún algoritmo de cálculo
de caminos mínimos, como por ejemplo el desarrollado por Dijkstra.

Algoritmo de Inundación:
Es un caso extremo del encaminamiento aislado, en el que cada paquete que llega se
transmite por todas las líneas de salida, excepto por la que llegó. Con la inundación se
genera un número considerable de paquetes duplicados; de hecho, un número infinito,
a no ser que se tome alguna medida. Una de las medidas es tener un contador de saltos
en la cabecera de los paquetes, el cual se decrementa con cada salto, desechándose
el paquete cuando el contador llegue a cero. Idealmente, el contador habrá de
inicializarse con un valor correspondiente a la distancia entre origen y destino. Si el
emisor no conoce la distancia, puede iniciar el contador con el valor del peor caso, es
decir, el valor del diámetro completo de la subred.
En algunas aplicaciones, la inundación no resulta ser muy práctica, pero sí tiene algunos
usos importantes. Por ejemplo, en aplicaciones militares la robustez que ofrece este
mecanismo es algo deseable ante el hecho de que varios IMP puedan ser destruidos.
En aplicaciones de bases de datos distribuidas, algunas veces es necesario actualizar
todas las bases de datos concurrentemente, en cuyo caso, la inundación puede ser de
gran utilidad.
Una variante de la inundación que es un poco
más práctica, es la inundación selectiva. En este
algoritmo, los IMP transmiten los paquetes sólo
por aquellas líneas que van en la dirección
correcta.

Encaminamiento jerárquico
A medida que crece el tamaño de la red, las tablas de encaminamiento de los IMP
también crecen en forma proporcional. No sólo se produce un aumento de la cantidad
de memoria consumida por la tabla, sino que también aumenta el tiempo necesario para
explorarla. También se hace necesario un mayor ancho de banda, para poder transmitir
los informes de estado que se guardan. Para reducir estos problemas, se recurre al
encaminamiento jerárquico.
Cuando se utiliza encaminamiento jerárquico, los IMP se dividen en regiones, en las
cuales cada uno de los IMP conoce todos los detalles sobre la manera de encaminar los
paquetes para alcanzar sus respectivos destinos dentro de su propia región, pero
desconocen la estructura interna de otras regiones. El número de niveles en la jerarquía
aumentará a medida que aumenta el tamaño de la red.
En este caso, cada IMP tiene una tabla con entradas disponibles para cada IMP de su
misma región. Los IMP de otras regiones se concentran en un único IMP local que es el
que hace de enlace hacia dicha región. Las estrategias de encaminamiento dentro de
cada región y a nivel global pueden ser distintas (estáticas, adaptativas, centralizadas,
etc …).
El precio a pagar es un posible aumento en la longitud del camino al tener que encaminar
todo el camino hacia una región a través de un determinado IMP.

Algoritmo de aprendizaje hacia atrás


Otro caso de encaminamiento aislado que consiste en incluir la identidad del IMP origen
en cada paquete, junto con un contador que se incrementa cada salto. Si un IMP ve
llegar un paquete en la línea k, procedente del IMP H, con la cuenta de 4 saltos, sabe
que H no puede estar más lejos de cuatro saltos sobre la citada línea. Si su mejor ruta
actual hacia H se estima en más de cuatro saltos, marca la línea k como la elegida para
el tráfico hacia H y registra la distancia estimada en cuatro saltos. Pasado cierto tiempo,
cada IMP descubrirá el camino más corto hacia cualquier otro IMP.

Algoritmo de la patata caliente:


Es un caso de encaminamiento aislado. En el momento en que llega un paquete, el IMP
trata de deshacerse de él tan rápido como le sea posible, poniéndolo en la cola de
espera de salida más corta. Se pueden obtener variantes de esta idea combinándola
con el encaminamiento estático: cuando llega un paquete, el algoritmo de
encaminamiento toma en cuenta tanto el peso estático de las líneas como las longitudes
de las colas de
espera.
Capítulo 4
ALGORITMOS DE CONTROL DE LA CONGESTIÓN
Denominamos congestión a la circunstancia en la que el rendimiento de la red (o una
parte de ella) se degrada.
Un ejemplo típico de congestión sería la situación en la que un router con varias líneas
de 2 Mb/s recibe tráfico entrante por todas ellas dirigido a una sola. Inicialmente el router
intentará salvar la situación utilizando sus buffers, pero si la situación dura lo suficiente
los buffers se llenarán y el router empezará a descartar paquetes Normalmente la
congestión se produce por tráfico excesivo, pero también puede producirse por un router
sobrecargado o de capacidad insuficiente para el tráfico que soporta (CPU lenta).

Preasignación de buffers:
Si se utilizan circuitos virtuales, es posible resolver el problema de la congestión de la
siguiente manera. Cuando se establece el circuito virtual, se van actualizando las tablas
de cada uno de los IMP y se reserva espacio para los buffers del circuito. Una pequeña
modificación del algoritmo de establecimiento podría hacer que cuando uno de los
paquetes de solicitud de llamada llega a un IMP y todos los buffers están reservados,
se deberá proceder a buscar una ruta alternativa o bien, devolver una señal de red
ocupada al extremo que llama (como cuando al intentar una llamada telefónica
recibimos el tono o mensaje de red telefónica ocupada que nos impide establecer la
llamada).
Al reservar espacio en cada IMP para cada circuito virtual, siempre habrá un lugar para
almacenar cualquier paquete que llegue hasta que pueda ser reexpedido. Por ejemplo,
sea un protocolo IMP-IMP de parada y espera. Un buffer por circuito virtual por IMP es
suficiente para circuitos simplex, y uno por cada dirección, para circuitos dúplex. Cuando
llega un paquete, el acuse de recibo (ACK) no se devuelve al IMP transmisor hasta que
el paquete haya sido reexpedido. Esto es debido a que el acuse de recibo no sólo
significa que se ha recibido un paquete, sino que también se está en condiciones de
recibir otro. Si el protocolo IMP-IMP permite múltiples paquetes pendientes de acuse de
recibo, cada IMP tendrá que dedicar un grupo completo de buffers equivalente al número
máximo de paquetes que pueden estar pendientes de acuse de recibo para cada circuito
virtual para poder eliminar completamente el problema de la congestión.
Cuando cada uno de los circuitos virtuales que pasan por un IMP tiene suficiente espacio
en buffers dedicado a él, la conmutación de paquetes llega a ser muy parecida a la
conmutación de circuitos. En ambos casos, hay una fase previa de establecimiento de
la conexión, y también se necesita tener recursos asignados permanentemente, haya o
no tráfico. Es imposible que se presente congestión en los circuitos establecidos, ya que
todos los recursos necesarios para el tráfico han sido reservados. En ambos casos, hay
un uso de recursos potencialmente ineficiente porque los recursos asignados a la
conexión que no estén siendo utilizados no pueden ser utilizados por nadie más. Los
nuevos intentos de conexión, cuando todos los recursos están ocupados, deberán
esperar a que se liberen recursos cuando finalicen alguna o algunas de las conexiones
en curso.
Debido al gran coste que representa tener un conjunto de buffers asignados a un circuito
virtual posiblemente inactivo, algunas subredes sólo lo utilizan en aquellos casos en los
que es imprescindible tener un retardo muy pequeño y un ancho de banda fijo
disponible.

Descarte de paquetes:
Es un algoritmo de control de congestión en bucle cerrado. Se basa en que los nodos
descartan paquetes cuando su ocupación es alta. Para esto los nodos han de conocer
sus recursos (CPU y memoria). Hace una asignación dinámica de los buffers sobre la
base de las necesidades de cada línea.
Sin embargo, cada línea necesita al menos una (o más) posiciones de memoria para
gestionar información relevante, tal como asentimientos, que permite la liberación de
posiciones de memoria ocupadas por paquetes que estaban esperando por si
necesitaban retransmitirse.
Si a la línea llegan datos (no asentimientos u otra información relevante) y el buffers de
salida de la línea correspondiente está lleno, se descarta el paquete. Hay varias formas
de hacer la asignación de buffers:
a) En base al uso.
No es muy eficiente, porque cuando una línea se empieza a cargar
acapara todos los recursos.
b) Asignación fija.
Tampoco es muy buena, ya que desaprovecha recursos.
c) Asignación subóptima (de Irland).
Con este mecanismo, no se reserva absolutamente nada por adelantado. Si llega un
paquete y no existe lugar disponible en el IMP, simplemente se descarta. Si la subred
ofrece un servicio sin conexión, no hay nada más que hacer: la congestión se resuelve
simplemente mediante el descarte de paquetes. Si la subred ofrece un servicio con
conexión, en algún lugar deberá haber una copia del paquete para que se pueda
retransmitir después. Una posibilidad consiste en hacer que el IMP que transmitió el
paquete descartado espere un tiempo y retransmita el paquete hasta que sea recibido.
Pero no se pueden descartar paquetes alegremente: en el caso de que el paquete que
llegue sea un paquete de acuse de recibo, se podría liberar el buffer. Sin embargo, si el
IMP no tiene buffers disponibles, no podrá examinar el paquete. La solución consiste en
reservar permanentemente un buffer por la línea de entrada, con el fin de poder
inspeccionar los paquetes que lleguen.
Si la congestión tiene que ser evitada mediante el descarte de paquetes, será necesario
tener una regla para indicar cuándo se deberá conservar o descartar un paquete. En
ausencia de cualquier regla, una sola línea de salida podría acaparar en un IMP todos
los buffers disponibles, dado que se asignan sencillamente según la regla del primero
que llega es el primero en ser atendido.
Aunque descartar paquetes es muy sencillo, tiene algunas desventajas: una de las más
importantes es el ancho de banda necesario para los duplicados. Un punto muy
relacionado con esto es la duración del temporizador de reenvío: si el plazo es muy
corto, los duplicados pueden ser generados cuando no se necesiten, empeorando
todavía más la congestión. Si es muy largo, los tiempos de transmisión sufrirán las
consecuencias.
Control isarrítmico de la congestión:
Consiste en mantener constante el número de paquetes que pueden estar en la subred
de comunicación al mismo tiempo.
Existen paquetes de permiso circulando. Para enviar un paquete de datos, un IMP debe
primero capturar y retener un permiso. El IMP destino recogerá el paquete y generará
el permiso de nuevo.
Un planteamiento directo para controlar la congestión es limitar el número de paquetes
presentes en la subred. Al método que mantiene constante el número de paquetes que
circulan por la subred se le denomina isarrítmico. En este método, existen permisos que
circulan por la subred. Siempre que un IMP quiere transmitir un paquete entregado por
el equipo de un usuario, primero debe capturar un permiso y después destruirlo. Cuando
el IMP destinatario saca el paquete de la subred, regenera el permiso. Con estas reglas
aseguramos que el número de paquetes de la subred nunca excederá del número inicial
de permisos.
Este método tiene algunos problemas: aunque asegura que la subred, como un todo,
no llegará a congestionarse, no garantiza que un IMP determinado quede de repente
abrumado por paquetes.
En segundo lugar, cómo distribuir los permisos no será fácil. Para evitar que un nuevo
paquete sufra un gran retardo mientras el IMP local trata de conseguir un permiso, los
permisos deberán estar uniformemente distribuidos, de tal manera que cualquier IMP
tenga algunos.
Tercero, si por alguna razón los permisos llegan a ser destruidos (errores de
transmisión, mal funcionamiento de un IMP), la capacidad de transporte de la red se
reducirá para siempre. No hay ninguna manera sencilla de determinar cuántos permisos
existen todavía, mientras la red esté funcionando.

BILBLIOGRAFIA:
• http://www.aulawiki.info/redes/T6_nivel-red-generalidades.htm

• https://www.tamps.cinvestav.mx/~vjsosa/clases/redes/Cap4_Red.pdf

• http://www.aulawiki.info/redes/T6_nivel-red-generalidades.htm

• https://www.cs.buap.mx/~iolmos/redes/12_Capa_Red.pdf

• https://www.ionos.es/digitalguide/servidores/know-how/internet-protocol-
definicion-y-fundamentos/

• https://drive.google.com/file/d/1o6mAXoGBx84nrSI9GO2o1ACHNkE4ot3
J/view?usp=sharing

También podría gustarte