Entorno de acs

April 27, 2005

Configuración del servidor

Filed under: Tecnología — acs @ 10:57 pm
Mac Mini

Para dar por cerradas estas primeras entradas sobre el sitio, el servidor sobre el que corre este web es un Mac Mini conectado por un encaminador (router) ADSL a Internet. Este mismo router se encarga de dar cobertura inalámbrica a la casa. El servidor, además de los servicios web, tiene el servicio de nombres (DNS) de la Intranet y el servicio de asignación de direcciones DHCP, de forma que tengo total libertad para llamar con nombres precisos a las máquinas de la intranet doméstica.

April 26, 2005

Comparativa de informes de fallos en software libre

Filed under: Barrapunto — acs @ 8:50 am

Ayer publicaba Luis Villa una interesante tabla comparativa sobre los fallos que han recibido varios proyectos de software libre en sus sistemas de seguimiento de fallos el pasado año. Es una buena medida de la comunidad alrededor de los proyectos, y de su cultura de participar en el desarrollo. Llama la atención ver a Ubuntu por encima de Mandrake, dado los pocos meses de vida de Ubuntu, y el trabajo que se realiza desde las filas de Gentoo. ¿Informas de los fallos en tu entorno de trabajo?

April 24, 2005

Diseño general de la página

Filed under: Diseño — acs @ 6:14 pm

El diseño general de la página será a dos columnas inicialmente, con una columna central con los contenidos lo más amplia posible y una columna a la derecha con el acceso a los contenidos de diferentes formas.

Una duda que aún tengo es si seguir el esquema que se está usando de utilizar una gran cabecera que cubre casi la mitad de la pantalla inicial que ve el usuario, modelo por defecto del tema Rubik de WordPress 1.5, con lo que el usuario recibe un importante mensaje visual, o tener una cabecera más reducida y dar más sitio al contenido.

Todo esto me lleva en primer termino a aprender a crear temas de WordPress con los que poder jugar.

A la vista de que el sitio no pretende dar un servicio en concreto, si no se un entorno personal donde compartir información, creo que es importante transmitir en esta amplia cabecera un signo de distinción del sitio, y perder un poco de dar contenidos de forma inmediata al usuario. En cualquier caso, en un blog, el usuario tendrá que hacer desplazamiento vertical, por lo que no es tan grave obligarle a hacerlo un poco antes. Eso sí, esta cabecera será en muchos casos decisiva a la hora de captar la atención del visitante.

Los colores es otro de los temas que ando analizando. Colores fríos como azules, grises metálicos o verdes, o colores más cálidos, como el naranja o el amarillo. Colores sobrios como el marrón o colores más atrevidos como el morado. Tendré que probar con varios temas jugando con los colores antes de decidirme. Estoy aprovechando para ver el diseño de otros sitios que usan WordPress y la mayoría dejan los temas por defecto.

Primera lista de temas pendientes

Filed under: TODO — acs @ 9:43 am

El sitio web poco a poco va tomando forma, pero aún hay mucho trabajo por hacer:

  • Soporte de contenidos en inglés y castellano
  • Importación de contenidos que publiqué en otros sitios
  • Terminar de definir el entorno del servidor (backups)
  • Aspecto visual
  • Organización de contenidos: categorías, páginas atemporales
  • Licencia de contenidos: Creative Commons Atribution + ShareAlike (modificado enlace)
  • Editor de publicación no web
  • Buscar dominio definitivo (acs.barrapunto.org por ahora)

Bienvenido

Filed under: Anuncios — acs @ 9:31 am

En estos momentos estoy terminando de mostrar lo que es el lugar en Internet donde iré publicando todo aquello que hasta el momento hacía de forma desperdigada en Advogato, Barrapunto, Libresoftware, GNOME Hispano y alguno más que seguro que tengo olvidado (MonoHispano por ejemplo). Esto no quiere decir que deje de participar en todos estos proyectos, si no que tendré una fuente unificada del trabajo, de la que luego partirán los contenidos al proyecto adecuado.

En breve iré comentando como está montado todo el entorno, y las decisiones tecnológicas que he ido tomando. Espero poder ir recuperando todos los contenidos de los otros sitios y unificarlos aquí, en Wordpress, una herramienta de la que tambiçen hablaré ya que me ha impresionado.

Necesitaré aún unos días para ir dejando todo a mi gusto, así que habrá que tener un poco de paciencia. El aspecto de WordPress es muy probable que lo cambie una vez que haya diseñado la interfaz tal y como la necesito. Eso sí, desde hoy ya no se perderá ningún dato, así que sientete libre de participar, registrarte en el sitio o lo que consideres.

April 23, 2005

WiMax en la ciudad Bucaramanga en Colombia

Filed under: doctorado — acs @ 11:51 am

Leo en Barrapunto con sorpresa que WiMax se va a implantar en una ciudad en Colombia. Después de comentar en clase que esta tecnología parece que no iba a despegar, llegue este caso que puede sentar un importante precedente. Si no fuera porque tengo ya el trabajo definido de la asignatura, miraría a ver cuanto de información hay sobre la implantación. Quizá se puede proponer para uno de los 2 trabajos que aún me quedan por exponer.

Bloques básicos en sistemas distribuidos

Filed under: doctorado — acs @ 11:24 am

La última sesión de sistemas distribuidos nos llevó a culminar el análisis del algortimo de consenso con detectores de fallos no fiables utilizando el detector <>S. En cuatro rondas y teniendo (n/2)+1 procesos correctos, se puede llegar a consenso. Algunas ideas claves son que el algortimo mantiene en todo momento la “viveza”. tarde o temprano se llega al consenso, y el hecho de que si las cosas no van bien, se pospone la decisión hasta que las cosas vayan bien en el sistema distribuido (temporización de las comunicaciones, caida de nodos …).

A continuación comenzamos a ver tecnologías básicas con las que se realizan los sistemas distribuidos, y nos centramos en los temas de COORDINACIÓN y ACUERDO.

Lo primero de lo que hablamos fueron de los relojes físicos y lógicos. Con relojes físicos es complicado lograr una sincronización con precisión de microsegundos, hay límites físicos a coordinar con relojes físicos. Por ello, se buscó utilizar otro tipo de sistema de coordinación y Lamport propuso los relojes lógicos, en los que se ordenan los eventos de un sistema en función de la causalidad (un evento es causa de otro). Cada nodo mantiene un contador que va incrementando cuando suceden eventos. Lo aumenta en 1 si el evento es local o si reciben un evento remoto con un contador inferior al suyo. Si el evento que se recibe tiene un valor del contador mayor, actualiza el contador utilizando este y sumándole 1. El problema con los relojes lógicos es que no orden los eventos que no están relacionados.

Pasamos a definir las propiedades de los problemas de coordinación y acuerdo: terminación/termination (viveza), validez/validity (tarde o temprano ocurre lo que esperamos), acuerdo/agreement (decisiones por procesos correctos iguales) e integridad/integrity (evitar soluciones ilógicas).

Las comunicaciones a un grupo son base de muchos de los sistemas distribuidos. Para llevarlas a cabo, nos puede ayudar mucho la tecnología sobre la que basemos el sistema distribuido, como por ejemplo IP Multicast, que permite utilizar a veces mejor el medio físico (ethernet), el nodo emisor tiene menos trabajo (no tiene que ir uno por uno enviando el mensaje). En IP Multicast la membresía es dinámica y el grupo abierto, utilizando UDP como protocolo base de la comunicación (ni fiablidad ni ordenación).

Los nodos que son miembros de un grupo forma la vista del sistema distribuido. El sistema de comunicación a grupo debe de gestionar la membresía así como el radiado a todos los miembros del grupo de mensajes. Los grupos pueden ser cerrados (sólo los miembros pueden radiar) y abiertos (cualquier puede radiar al grupo). En la entrega de los mensajes diferenciremos entre los momentos de: envío, recepción y entrega (a la aplicación del nodo).

Sobre el tipo de radiado, puede ser fiable (realible) que llega a todos o a ningún correcto, no fiable (best effort) y uniforme (uniform) donde si un nodo/proceso correcto o no correcto recibe un mensaje, lo tienen que recibir todos.

Seguiremos en la próxima sesión con los ordenación en la entrega de los eventos del sistema distribuido.

Tecnologías inalámbricas

Filed under: doctorado — acs @ 10:53 am

Con la sesión del pasado Martes 04.19 (M) dimos por cerrado el campo de tecnologías inalámbricas. En esta sesión se presentó el artículo A Detailed Study on Wireless LAN Technologies donde se describen las tecnologías 802.11*, Bluetooth ampliamente implantadas y dos tecnologías mucho menos conocidas: HiperLAN/2 y HomeRF. Esta última parecía que iba a tener mucho empuje hace unos años, pero WiFi y Bluetooth han encontrado su sitio en los hogares y será difícil que dejen sitio a otras tecnologías. Hemos hablado ya de casos específicos donde por ejemplo, IrDA podría su sitio, principalmente por su mejor soporte de interferencias (comunicación focalizada a un conjunto de dispositivos que siempre estén fijos en un hogar). Las comunicaciones ópticas en cualquier caso parece que van a necesitar aún más investigación y que nos pueden dar sorpresas en el futuro.

En el artículo se hace hincapié en la seguridad de las redes inalámbricas, algo que también se hace en un artículo que comentamos a continuación: Wireless Technologies Comparison, donde hablamos especialmente de la parte de seguridad de las redes inalámbricas: acceso a la red, captura del tráfico de la red, posibilidad de tirar a bajo la red o de sustituir a un nodo de la misma o el robo de los dispositivos móviles. La fragilidad de las redes inalámbricas comparada comparada con las redes alámbricas da mucho que pensar y hay que tenerla muy en cuenta antes de ahorranos todo el cableado con una solución inalámbrica en un despliegue.

Por último hablamos del artículo Guide to Wireless LAN Technologies, de la compañía Intermec, donde destacamos en especial la comparación que se hace entre las tecnologías de comunicación de espectro amplio, y como DSSS (Direct Sequence Spread Spectrum) y FHSS (Frequency Hopping Spread Spectrum) son dos tecnologías de salto en el tiempo y en la frecuencia que permite este tipo de comunicaciones, bastante inmunes a las interferencia, y que aún no tiene un claro ganador. En WiFi se utilizan ambas y en Bluetooth FHSS.

Especialmente interesante es una gráfica donde se muestra el ancho de banda WiFi por celda, que no se puede aumenter de forma indefinida por las interferencias.

April 17, 2005

Trabajo de sistemas Ubicuos: Bluetooth en Linux

Filed under: doctorado — acs @ 12:46 am

Confirmé ya que el trabajo de Sistemas Ubicuos va a ser de Bluetooth en Linux, probablemente de como configurar una PAN (Personal Area Network) en Linux. Los primeros pasos que he dado ha sido comenzar a leer el estándar de Bluetooth que, como me ha pasado por ejemplo con el de USB, lo he encontrado muy completo y una excelente referencia. Eso sí, te obligan a subscribirte de forma gratuita al sitio bluetooth.org antes de la desacarga. He sacado ya muchos conceptos fundamentales que serán parte del trabajo (piconets de 7 nodos, modelo maestro-esclavo, 1 Mbps de velocidad de transmisión, foco en la sencillez, bajo consumo de memoria y robustez …).

Lo siguiente ha sido comprobar que tengo un entorno adecuado para las pruebas. He comprobado la conexión Bluetooth entre el portátil Dell X300 y el móvil Siemens S55 y va perfectamente. Con gnome-bluetooth y las bluez-utils ha sido sencillo transmitir datos desde el móvil al ordenador. Pero sin duda, un entorno más rico es el de comunicar dos ordenadores por Bluetooth como enlace de la red. Tengo acceso a un PowerBook con bluetooth, que también funciona perfectamente en Linux, y siguiendo los datos de la páginas PAN con Bluetooth en Linux he podido de forma sencilla configurar el dispositivo bluetooth gracias al módulo “bnep” que ofrece soporte IP sobre el dispositivo bluetooth. De esta forma, aparece una nueva interfaz de red “bnep0″ que se le puede asignar una IP. Configurando una red privada entre los dispositivos “bnep0″ de ambos equipos, ya puedo ver desde el PowerBook el otro equipo.

Sólo me queda configurar en el equipo Dell el firewall para que haga masquerading, algo muy sencillo con firestarter, y tengo salida vía bluetooth desde el PowerBook a Internet, utilizando la wireless del equipo Dell. Y esto es algo que me es muy útil ya que el cable físico está lejos del equipo y el PowerBook lleva una tarjeta wireless no soportada en Linux, por lo que gracias a esta comunicación bluetooth, el PowerBook tiene salida a Internet inalámbrica.

Las primeras pruebas de transferencia entre ambas máquinas ha arrojado una velocidad de transferencia de unos 50 KB/s, 400 kbpbs, que no está nada mal pensando que el límite máximo está en 1 Mbps.

Parece que vamos a poder hacer cosas interesantes en este trabajo. Seguiremos mirando las posibilidades y dando forma al trabajo entre los 2 portátiles y el móvil. El siguiente punto creo que van a ser el descubrimiento de servicios bluetooth y protocolos como OBEX. Seguiremos informando.

Por cierto, esta nota ya la envío desde el PowerBook que sale por Bluetooth a Internet.

April 14, 2005

Algoritmos de consenso con detectores de fallos

Filed under: doctorado — acs @ 6:14 am

Junto con los fallos, en la última sesión de sistemas distribuidos llegamos a la presentación de los algoritmos de consenso con detectores de fallos S y <>S. En dichos algoritmos se hace uso ya de técnicas como el radiado fiable y la detección de fallos para poder llevar a cabo el algortimo, que se ejecuta de forma concurrente en cada nodo.

El primer algoritmo que vimos fue utilizando el detectos de fallos S (completitud fuerte y precisión débil), que tolera hasta “n-1″ fallos (todos los procesos menos 1), y se realiza en tres fases: proposición de un valor, acuerdo sobre el valor y decisión del valor. Se ejecutan en la fase de proposición “n-1″ rondas hasta unificar criterios, siendo clave que de uno de los procesos correctos (no sabemos cuál es), ninguno de los demás procesos correctos sospecha.

Tengo que investigar la posibilidad de poner símbolos matemáticas antes de liarme a desarrollar aquí el algoritmo, al que aún no tengo en cualquier caso domado, así que de momento no voy a mostrar más.

Se presentó también un segundo algoritmo, en este caso con detectores de fallos <>S, que tolera (n/2)-1 fallos y que utiliza el paradigma del coordinador rotante. En cada ronda uno de los procesos es el coordinador de la ronda, al que se le proponen los valores. El objetivo de esta rotación del coordinador es terminar localizado el proceso correcto del que tarde o temprano, ningún proceso correcto sospecha. Este algoritmo tiene 4 fases: votación, proposición, asentimiento y decisión. Se dice además que pasa por tres épocas: valor no seleccionado, valor seleccionado (el que ya siempre se propondrá) y valor decidido.

Estos algoritmos se encuentran descritos en cualquier caso dentro del artículo
Unreliable Failure Detectors for Reliable Distributed Systems (páginas 16 y 20) y para su completo entendimiento, es necesario un estudio pausado de los mismos.

Next Page »