martes 28 de abril de 2009

Optimizando la CPU con idlepc en Linux y Windows – La guía Definitiva

Bueno como para continuar la configuración de GNS3 sobre Linux Ubuntu en esta entrada se muestra la optimización de los recursos de procesamiento o CPU con el comando idlepc.

Inicialmente se abre la consola y en modo superusuario o root ingresamos el comando top de la siguiente forma

Sudo Top

Ingresamos el password que configuramos cuando instalamos Ubuntu o el de el root y Le damos enter.

Este a continuación nos muestra una especie de administrador de procesos donde observamos la memoria el porcentaje de procesamiento, el PID o identificador de proceso y finalmente el proceso que me está consumiendo estos recursos.

Con esta guía en terminal podemos ver el procesamiento que requiere GNS3 o dynamips para poder emular los equipos.

Es necesario crear un proyecto nuevo para que GNS3 me cree los archivos de trabajo y el archivo .net que es con el q se va a trabajar después, en Linux nos toca ir hasta la carpeta de GNS3 y dentro de la carpeta de proyectos que creamos en la instalación va ir nuestra carpeta con el nuevo proyecto.

En mi caso: /home/David/aplicaciones/GNS3/Proyecto/”Le da el nombre de sus Proyectos”

El procedimiento es sencillo con el comando

Idlepc get Nombrerouter: Obtenemos los valores óptimos, recordemos que son los que están marcados con*, ingresamos el numero y listo.

Otros comandos:

idlepc show Nombrerouter: Me muestra el valor optimo asignado al router, me permite si me salieron dos valores volver a asignar el valor sin recalcularlos.Ejemplo:

idlepc show R0

idlepc set NombreRouter Valor: Me permite asignarle el valor manualmente sin calcularlo, ideal cuando ya he sacado mis valores para los distintos tipos de imágenes. Ejemplo:

idlepc set R0 0x 1234356

Seguimos con el procedimiento para cada dispositivo al q queramos optimizarle el procesamiento y guardamos para que me almacene los valores en el archivo .net.

Finalmente en la carpeta que creamos dentro de nuestro directorio de Proyectos, creado en la instalación de GNS3 buscamos el archivo con extensión .net en el caso del video idlepc.net, en este podemos observar los dispositivos guardados hasta el momento en la topología, sus módulos montados, sus coordenadas para poner los iconos, etc. lo único que no me almacena es la configuración de los equipos o la nvram. Por ejemplo vea este archivo .net:

autostart = False

//A continuación se listan las opciones de configuración de Dinamips como su puerto de trabajo y path donde crea los archivos de trabajo para esta topología.

[localhost:7200]

workingdir = C:\Users\CISCO\Documents\cisco\GNS3\PROYECTOS\basica\basica_working

udp = 10000 ---->El valor Puerto de Trabajo de dynamips con GNS3

--A continuación me muestra la configuración para las IOS establecidas en GNS3 de los equipos incluidos en el laboratorio en este caso se usaron dos Routers 3640 por eso me especifica la configuración para este IOS.

[[3640]] ----> IOS

image = C:\Users\CISCO\Documents\cisco\GNS3\IOS\c3640-i-mz.122-46a.bin ---> La imagen asignada a todos los equipos 3640 incluidos en la topología.

idlepc = 0x604273ec –->El valor del idlpc que se van a incluir para esta IOS, son los valores que nos interesan.

ghostios = True --> Opciones de optimización de memoria, se habilitan o no en las IOS dependiendo lo que tengamos configurado en GNS3 en la sección de Dynamips.

sparsemem = True

chassis = 3640 --> Modelo del Router al que se va asignar esta IOS.

// A continuación se listan los equipos arrastrados en nuestra área de trabajo en mi caso solo dos Routers R0 y R1

[[ROUTER R0]] --> Nombre del Router

model = 3640 --> Modelo del Equipo

console = 2000 --> Puerto con el que se comunica con dynamips para hacer la consola.

idlepc = 0x60454934 El valor idlepc asignado nótese que la imagen le asigna este valor a cada equipo.

cnfg = C:\Users\CISCO\Documents\cisco\GNS3\PROYECTOS\basica\basica_configs\R0.cfg --> El directorio donde me va a guardar las startup-config o la nvram o los archives de configuración del equipo , van extensión .cfg estas son las que podemos subir a los Routers reales.

slot0 = NM-1FE-TX –> Los módulos asignados al equipo.

f0/0 = R1 f0/0 --> como van las conexiones con los Routers con los que se encuentra conectado.

x = -196.0 -->Las coordenadas del Icono o Imagen del Router en el Área de Trabajo

y = -50.0

[[ROUTER R1]]

model = 3640

console = 2002

cnfg = C:\Users\CISCO\Documents\cisco\GNS3\PROYECTOS\basica\basica_configs\R1.cfg

slot0 = NM-1FE-TX

f0/0 = R0 f0/0

x = 50.0

y = -47.

// Me especifica donde va a trabajar dynamips para esta topología.

[GNS3-DATA]

configs = basica_configs =Esta carpeta me va a guardar los archivos de configuración para el Router si tiene problemas para exportarlas desde GNS3 verifique q existe esta carpeta.

workdir = basica_working =Esta es la carpeta de trabajo de Dynamips para esta topología, me descomprime la imagen me crea unos archivos por los tipos de memoria que poseen estos equipos , es decir la flash , la nvram , se ve un archivo de logs …..

Como se puede ver este archivo es el alma de GNS3 de por si podemos alterar las topologías desde acá, crear nuevos enlaces para los Routers, asignar valores de idlpc (Ojo con esto).

Luego vamos a copiar este archivo en otro lado, para tener los valores de idlpc ya optimizados para cada IOS yo trabaje para la serie 2600 y 3600 , Esta ultima necesaria para simular el switcheo gracias al modelo de switch que le puedo montar ya que me soporta más comandos que el Switch virtual que viene por defecto en GNS3.

Y simplemente si borro algún IOS por error, o no le funciona el idlepc cuando carga sus topologías normalmente en Windows vaya a Editar + Preferencias dentro de la barra de inicio de GNS3 y Edite o cree sus entradas asignando a cada una IOS el valor del idlepc correspondiente (Los que grabo en otra parte del archivo .net) y listo con esto se evita los problemas , las caídas de GNS3 y el tiempo de espera generando o re calculando estos valores.

Nota: Hay ocasiones donde e reinstalado GNS3 y he copiado estos mismos valores en la nueva instalación y funcionan perfectamente mire a ver y me cuenta si fue pura suerte.

De todos modos si quedo con sus dudas acá le monto el video, el sonido no se porque se atrasa si alguien sabe configurar el sonido y el video en Record my Desktop en Linux mendema un correo X fa.

De click para ver el Video.