La principal
características de estos protocolos es que no llevan la información de la
mascara de subred en sus actualizaciones de enrutamiento (routing updates), lo
cual los hace inadecuados para realizar direccionamiento jerarquicolos cuales requieren VLSM (en español
“mascara de subred de longitud variable”). Con estos protocolos el router receptor no
tiene ni idea de la magnitud exacta de la red remota, y es muy importante usar la misma mascara de
subred en todas partes, de lo contrario podrían aparecer los llamados “routing
black holes”.
Los protocolos
classful mas conocidos son RIP v1 y IGRP
RIPv1
La definición original,
recogida en el RFC 1058, es un protocolo de ruteo con clase, es decir no
soporta máscaras de largo variable (VLSM) ni direccionamiento sin clase (CIDR).
Esto hace que todas las redes tengan que tener el mismo tamaño, lo que es poco
eficiente. Tampoco incluye ningún mecanismo de autentificación de los mensajes
haciéndola vulnerable a ataques.
IGRP
Es un protocolo de enrutamiento basado en la tecnología
vector-distancia, aunque también tiene en cuenta el estado del enlace. Utiliza
una métrica compuesta para determinar la mejor ruta basándose en el ancho de
banda, el retardo, la confiabilidad y la carga del enlace. El concepto es que
cada router no necesita saber todas las relaciones de ruta/enlace para la red
entera. Cada router publica destinos con una distancia correspondiente. Cada
router que recibe la información, ajusta la distancia y la propaga a los
routers vecinos. La información de la distancia en IGRP se manifiesta de
acuerdo a la métrica. Esto permite configurar adecuadamente el equipo para
alcanzar las trayectorias óptimas.
Protocolos
classless
Estos protocolos de enrutamiento se extienden por sobre
el esquema estándar de enrutamiento A, B, C mediante el uso de una mascara de subred, o la
longitud de la misma, para indicarle al router como debe interpretar un IP
network ID. Esta flexibilidad en las mascaras le permiten agrupar varias redes
como una sola entrada en una tabla de enrutamiento, reduciendo
significativamente los “routing overead”. Los sistemas de protocolo classless
incluyen:RIP v2 y OSPF, Border Gateway
Protocol version 4 (BGP4) y Intermediate System to Intermediate System (IS-IS).
Diagrama de un protocolo classless de tipo OSPF
Diferencias entre un protocolo classful y classless
Aquí podemos ver el esquema estándar de enrutamiento
anteriormente mencionado
En ingeniería de computación, la microarquitectura (a veces
abreviada como µarch o uarch), también llamada como organización de la
computadora, es la manera que una arquitectura del conjunto de instrucciones
(ISA) es implementada por el procesador. Un ISA dado puede ser implementado con
diferentes microarquitecturas.1 Las implementaciones pudieran variar debido a
diferentes objetivos de un diseño dado o debido a los cambios en la
tecnología.2 La arquitectura de computadora es la combinación del diseño determinado
de la microarquitectura y del conjunto de instrucciones.
Relación del conjunto
de instrucciones con la arquitectura.
El conjunto de instrucciones (ISA) es más o menos el mismo
que el modelo de programación de un procesador, en la manera que es visto por
un programador de lenguaje ensamblador o escritor de un compilador. El ISA
incluye el modelo de ejecución, los registros del procesador, los formatos de
la dirección y los datos, entre otras cosas. La microarquitectura incluye a las
partes constituyentes del procesador y cómo éstos se interconectan e interoperan
para implementar el ISA.
La microarquitectura de una máquina se presenta generalmente
como diagramas más o menos detallados que describen las interconexiones de los
diferentes elementos microarquitectónicos de la máquina. Estos elementos pueden
ser desde simples puertas y registros, hasta unidades arritméticas lógicas
completas así como elementos más grandes. Estos diagramas se dividen en la
trayectoria de datos (data path), que es donde se colocan los datos; y la
trayectoria de control (control path), que son para dirigir los datos.3
Cada elemento microarquitectónico es, a su vez, representado
por un diagrama esquemático que describe las interconexiones de las puertas
lógicas usadas para implementarlo. Cada puerta lógica se representa por un
diagrama de circuito describiendo las conexiones de los transistores usados
para implementarla en alguna familia lógica particular. Esto hace que máquinas
con diferentes microarquitecturas puedan tener la misma arquitectura del
conjunto de instrucciones, por lo que son capaces de ejecutar los mismos
programas. Se consigue seguir utilizando un mismo ISA al tiempo que se alcanzan
mayores rendimientos mediante nuevas microarquitecturas y/o soluciones de
circuitos, así como con avances en la fabricación de semiconductores.
Lo que se consigue con esto es que una sola
microarquitectura pueda ejecutar diferentes ISA haciendo cambios menores al
microcódigo.
Una microarquitectura describe, entre otros:
-el nombre de los segmentos y su
tamaño,
-el nombre de las memorias caché
y su asociabilidad respectiva,
-la existencia de un renombre de
registros,
-de una unidad de ejecución fuera
de orden,
-de una unidad de predictor de
saltos.
-La microarquitectura y la
arquitectura de conjunto de instrucciones forman la arquitectura de una computadora.
Conceptos
microarquitectónicos
Todas las CPU, así como las implementaciones de
microprocesadores en un simple chip o multichips en general, ejecutan los
programas realizando los siguientes pasos:
-Se lee una instrucción
-Se decodifica la instrucción
-Se encuentra cualquier dato
asociado que sea necesario para procesar la instrucción
-Se procesa la instrucción
-Se escriben los resultados
Esta serie de pasos, simple en apariencia, se complican
debido a la jerarquía de memoria, en la que se incluye la memoria caché, la
memoria principal y el almacenamiento no volátil como pueden ser los discos
duros, (donde se almacenan las instrucciones y los datos del programa), que son
más lentos que el procesador en sí mismo. Con mucha frecuencia, el paso (2)
origina un retardo muy largo (en términos de ciclos de CPU) mientras los datos
llegan en el bus del computador. De hecho, se sigue investigando intensamente
sobre la forma crear diseños que eviten estos retardos tanto cuanto sea
posible. Durante muchos años, una de las metas principales del diseño
microinformático ha sido la de ejecutar el mayor número posible de
instrucciones en paralelo, aumentando así la velocidad efectiva de ejecución de
un programa. Al principio, estos esfuerzos crearon estructuras lógicas y de
circuito bastante complejas. De hecho, en un principio estas técnicas sólo
podían implementarse en costosos mainframes y supercomputadores debido a la
cantidad de circuitería necesaria para realizarlas. No obstante, estas técnicas
han podido implementarse en chips semiconductores cada vez más pequeños a
medida que la fabricación éstos fue progresando y avanzando, lo que ha abarado
notablemente su costo.
Algunas técnicas microarquitectónicas comunes en los CPU
modernos son:
-Selección del conjunto de
instrucciones
-Entubado de instrucciones
(Instruction pipelining)
-Memoria caché
-Predicción de bifurcación
-Superescalar
-Ejecución fuera de orden
-Renombrado de registros
-Multiprocesamiento y multihilo
Arquitectura de
computadoras
La arquitectura de computadoras es el diseño conceptual y la
estructura operacional fundamental de un sistema de computadora. Es decir, es
un modelo y una descripción funcional de los requerimientos y las
implementaciones de diseño para varias partes de una computadora, con especial
interés en la forma en que la unidad central de proceso (UCP) trabaja
internamente y accede a las direcciones de memoria.
También suele definirse como la forma de seleccionar e
interconectar componentes de hardware para crear computadoras según los
requerimientos de funcionalidad, rendimiento y costo.
El ordenador recibe y envía la información a través de los
periféricos por medio de los canales. La UCP es la encargada de procesar la
información que le llega al ordenador. El intercambio de información se tiene
que hacer con los periféricos y la UCP. Todas aquellas unidades de un sistema
exceptuando la UCP se denomina periférico, por lo que el ordenador tiene dos
partes bien diferenciadas, que son: la UCP (encargada de ejecutar programas y
que está compuesta por la memoria principal, la UAL y la UC) y los periféricos
(que pueden ser de entrada, salida, entrada-salida y comunicaciones).
Microarquitectura vs.
arquitectura de conjunto de instrucciones
La microarquitectura debe distinguirse de la arquitectura de
conjunto de instrucciones. Esta última es una imagen abstracta de un sistema de
computación como sería visto por un programador en lenguaje máquina, e incluye
el conjunto de instrucciones, modos de dirección de memoria, registros del
procesador, y formatos de direcciones y datos.
La microarquitectura, en cambio, es de nivel más inferior,
más concreto. Muestra las partes constituyentes del sistema y cómo se
interconectan e interoperan, para así implementar la especificación de
arquitectura.
Diferentes máquinas podrían tener una misma arquitectura de
conjunto de instrucciones, y así ser capaces de ejecutar los mismos programas,
sin embargo pueden tener diferentes microarquitecturas.
Estas diferentes microarquitecturas (junto con los avances
en las tecnologías de fabricación de semiconductores) son las que permiten
nuevas generaciones de procesadores que permiten alcanzar mejores niveles de
performance comparadas con las generaciones previas. En teoría, una única
microarquitectura (especialmente si ésta incluye microcódigo) podría ser usada
para implementar dos conjuntos de instrucciones diferentes, por la programación
de dos almacenes de control diferentes (el almacén de control almacena el
microprograma del CPU).
Representación de una
microarquitectura
La microarquitectura de una máquina, generalmente es
representada empleando un digrama de bloques que describe las interconexiones
entre registros, buses y bloques funcionales de la máquina. Esta descripción
incluye el número de unidades de ejecución, el tipo de las unidades de
ejecución (como punto flotante, entero, SIMD, etc.), la naturaleza del
pipelining, el diseño de la memoria caché y el soporte de periféricos.
El esquema físico del circuito, las construcciones de
hardware y otros detalles físicos son llamados implementación de esa microarquitectura.
Dos máquinas pueden tener la misma microarquitectura, y por lo tanto el mismo
diagrama de bloques, pero diferentes implementaciones de hardware.
La Sigla RFC en inglés
(Request For Commments) en español (Solicitud de comentarios), consiste en un
documento que puede ser escrito por cualquier persona y que contiene una
propuesta para una nueva tecnología,
Las RFC conforman básicamente la documentación de
protocolos y tecnologías de internet, siendo incluso muchas de ellas
estándares. Las mismas son mantenidas por el IETF
(Internet Engineering Task Force) y son accesibles por cualquier persona debido
a que son publicadas on-line y sin restricciones
Las metodologías que se utilizan con las RFC es asignarle
a cada una un numero único que lo identifique y que es el consecutivo de la última
RFC publicada.
Historia
La
creación del formato RFC se produjo en 1969 como parte del proyecto ARPANET. Hoy en día, es el canal
de la publicación oficial de la IETF (Internet Engineering Task Force), el Internet
Architecture Board (IAB), y -en algunos medida- la comunidad global de
investigadores de la red informática en general.
Los
autores de las RFC primeras, mecanografiaron sus trabajos y distribuyeron
copias entre los investigadores de ARPA. A diferencia de las RFCs modernas,
muchos de las primeras RFCs fueron las solicitudes de comentarios. La RFC deja
preguntas abiertas y está escrita en un estilo menos formal. Este estilo menos
formal, caracteriza a los proyectos de documentos de Internet, el paso
precursor antes de ser aprobado como una RFC.
En
diciembre de 1969, los investigadores comenzaron a distribuir RFC nuevas a
través de la nueva ARPANET operativa. RFC
1
titulado "Host Software", fue escrito por Steve Crocker de la
Universidad de California en Los Ángeles (UCLA), y publicado el 7 de
abril de 1969. Aunque escrito por Steve Crocker, el RFC surgió de una discusión
de grupo a principios de trabajo entre Steve Crocker, Carr Steve y Jeff
Rulifson. (El documento enumera Bill Duvall como presente sólo la última
reunión del grupo de trabajo antes de su publicación.)
En el RFC 3 que definió por primera vez la serie de RFC, Crocker
comenzó atribuir la serie RFC al "Grupo de Trabajo de la Red". Este
grupo parece que nunca han tenido una existencia formal, en lugar de ser
definido como "este grupo de personas", pero la atribución sigue
siendo el RFC para el día de hoy.
Características
Cada RFC tiene un título y un número asignado, que no
puede repetirse ni eliminarse aunque el documento se quede obsoleto. Existen
varias categorías, pudiendo ser informativos (cuando se trata simplemente de
valorar por ejemplo la implantación de un protocolo), propuestas de estándares
nuevos, o históricos (cuando quedan obsoletos por versiones más modernas del
protocolo que describen).
Las RFC se redactan en inglés según una estructura
específica y en formato de texto ASCII.
Antes de que un documento tenga la consideración de
RFC, debe seguir un proceso muy estricto para asegurar su calidad y coherencia.
Cuando lo consigue, prácticamente ya es un protocolo formal al que
probablemente se interpondrán pocas objeciones, por lo que el sentido de su
nombre como petición de comentarios ha quedado prácticamente obsoleto, dado que
las críticas y sugerencias se producen en las fases anteriores. De todos modos,
el nombre de RFC se mantiene por razones históricas
OSPF
El protocolo OSPF (open shortest Path First) o protocolo
abierto del primer camino más corto. Data de finales de los años 80. Es un
protocolo de routing de estado del enlace basado en un estándar abierto. OSPF
ha sido descrito en varios RFCs, pero el estándar de OSPF v.2 esta descrito por
John J. Moy en el RFC2328.
El término open en
el nombre del protocolo hace referencia a que es un protocolo abierto público y
no propietario de ninguna compañía
Este protocolo fue diseñado como protocolo de
encaminamiento para resolver algunos de los problemas que el protocolo RIP no
contemplaba. Actualmente la versión del protocolo OSPF que se emplea es la
versión 2 cuando se usa IPv4 , u OSPF Versión 3 para IPv6. OSPF es el protocolo
de encaminamiento más empleado en grandes redes LAN
Características
de OSPF.
·Velocidad
de convergencia:
En OSPF el tiempo de convergencia es muchísimo menor
ya que solo se actualizan las rutas que han sido modificadas y están son
distribuidas por la red de forma rápida.
·Soporte
de VLSM
RIP v1 es un protocolo de los denominados classful,
y como tal no soporta VLSM, sin embargo tenemos que recordar que RIPv2 si soporta
VLSM
·Tamaño
de red
En un entorno RIP una red con más de 15 saltos no es
viable, en cambio en OSPF no se tiene este tipo de limitaciones.
·Utilización
de ancho de banda
OSPF utiliza multicast y no solo envía actualización
cuando se produce un cambio en la red.
·Selección
de camino
RIP selecciona el camino óptimo contando saltos o
distancias a otros routers. Dentro de la elección de ruta óptima no entran en
consideraciones factores como el ancho de banda restante o los retardos en la
red. Sin embargo OSPF utiliza una métrica basando en ancho de banda y retardos.
·Agrupación
de miembros.
OSPF introduce el concepto de “áreas”, lo que permite la segmentación de
la red en segmentos más pequeño. Al dividir la red en áreas se tiene que
introducir el concepto de comunicación entre áreas, pero gracias a la división
en la red los cambios producidos en un router de un área no afecta a la
totalidad de la red, sino que solo afecta a los routers de un área.
Estados
de OSPF
·Estado
Down: el proceso de OSPF no empezó a intercambia
información
·Estado
Init: los router con OSPF envían paquetes de
tipo1(hello) en intervalos regulares para establecer relación con los routers
vecinos.
·Estado
Two-Way: utilizando paquetes Hello, cada router OSPF intenta
establecer una comunicación bidireccional con cada router vecino que está en la
misma red.
·Estado
ExpStart: se establece utilizando paquetes tipo 2. Entre los
dos router se utilizan paquetes hello para determinar cuál de los dos es el
maestro y cual el esclavo en su relación, y se intercambian paquetes de tipo 2.
·Estado
Exchange: utiliza paquetes de tipo 2 para enviar al otro
router su información de estado del enlace
·Estado
Loading: utiliza paquetes de tipo 3, cuando un router recibe
un paquete de tipo 3, este responde con una actualización, mediante un paquete
de tipo 4. Los paquetes de tipo 4 describen la información de estado de enlaces
que es el corazón de los protocolos de routing de estado del enlace.
·Adyacencia
Completa: cuando termina el estado loading, los routers están
en una adyacencia completa.
OSPF Distingue cuatro
clase de Routers
1.Routers
de Backbone: son los que se encuentran en el área 0 o
backbone
2.Routers internos:
se encuentran dentro de una sola área
3.Routers de frontera de área:
son los que están más de un área, y por lo tanto las interconectan.
4.Routers
de frontera de AS: intercambian tráfico con routers de
otros AS`s. Estos routes pueden encontrarse en el bockbone o cualquier otra
área.
Bibliografía:
·Moliner López Francisco
Javier, “Grupos A y B de Informática bloque Especifico”, España, Ed: Mad S.L.,
1ra. Edición, 2005
·Cabeza Collado Eduardo,
“Fundamentos de Routing” Ed. Bubok publishing, 2009
·Gil Pablo, pomares Jorge,
Candelas Francisco, “Redes y Transmisión de Datos”, Ed. Universidad de
Alicante, Alicante –España, 2010