Programando para inetd

Juan J. Martínez

Septiembre de 2003


Tabla de contenidos
1. Introducción: el 'super server'
2. Configurando inetd
3. Ejemplo de demonio: db-httpd
3.1. Diseño del demonio
3.2. Implementación
3.2.1. NDBM
3.2.1.1. mkhttpd-db
3.2.1.2. httpd-fetch
3.2.2. db-httpd
4. Conclusiones
A. Documentación adicional.

1. Introducción: el 'super server'

inetd es un demonio que se encarga de proporcionar una serie de servicios mediante la invocación de otros programas. Es el 'super servidor de internet' porque se encarga de servir servidores.

El demonio inetd apareció en 4.3BSD y desde entonces ha cambiado mucho su uso debido a que los servicios que se proporcionan a través de él tienen poco rendimiento, sobretodo si deben manejar un alto número de peticiones concurrentes. Esto puede variar según la implementación de inetd, pero por lo general el super servidor no puede competir con un demonio especializado ya que inetd debe crear un nuevo proceso para que se encarge de procesar cada petición.

inetd está indicado finalmente para servicios que tienen que contestar a peticiones esporádicas o que soportan un tráfico de medio a bajo. No obstante la sencillez con la que se pueden programar los servicios hace muy interesante emplear inetd para implementaciones de referencia o prototipos rápidos, ya que el programador puede desentenderse de parte de la programación específica en red y centrarse en las tareas concretas del propio servicio.