Namebench: Benchmark de DNS

¿Cuales son los mejores DNS para optimizar tu conexión?

Cuando nos damos de alta en un ISP, éste nos suele facilitar unos datos de conexión o el Router preconfigurado, para utilizar sus DNS. Muchas veces estos servidores no son los mejores, y el retardo que agregan puede hacer que notemos que ciertas conexiones vayan más lentas.

Para poder establecer el mejor DNS existe una herramienta alojada en “Google Code”. Esta herramienta hace un chequeo de tiempos de respuesta, y resolución de determinadas direcciones con el fin de determinar cual es el mejor DNS, y por tanto con el que tendremos una resolución de nombres más rápida.

La herramienta se puede descargar de la página web del proyecto Namebench:
http://code.google.com/p/namebench/

Existen varias versiones para diferentes plataformas. En Linux, descargaríamos los fuentes y una vez descomprimido sería tan sencillo como ejecutar el script python:
$ tar xzf namebench-1.3.1-source.tgz
$ cd namebench-1.3.1/
~/namebench-1.3.1$ ls
ChangeLog.txt  COPYING   libnamebench    README.txt  tools
cocoa          data      namebench.py    setup.py
config         JSON.txt  nb_third_party  templates
~/namebench-1.3.1$ python namebench.py
The python-tk (tkinter) library is missing, using the command-line interface.

namebench 1.3.1 – best source (automatic) on 2012-12-07 23:47:28.704379
threads=40/2 queries=250 runs=1 timeout=3.5 health_timeout=3.75 servers=11
——————————————————————————
– Reading Top 2,000 Websites (Alexa): data/alexa-top-2000-domains.txt (0.7MB)
– Reading Cache Latency Test (100% hit): data/cache-hit.txt (0.1MB)
– Reading Cache Latency Test (100% miss): data/cache-miss.txt (0.1MB)
– Reading Cache Latency Test (50% hit, 50% miss): data/cache-mix.txt (0.1MB)
– Skipping /home/xxxxxxx/.config/google-chrome/Default/History (125d old)
– Reading Chromium: /home/xxxxxx/.config/chromium/Default/History (1.2MB)
– Reading Mozilla Firefox: /home/
xxxxxx/.mozilla/firefox/dsvuj7wu.default/places.sqlite (10.0MB)
– Generating tests from Mozilla Firefox (27981 records, selecting 250 automatic)
– Selecting 250 out of 10471 sanitized records (random mode).

– Checking query interception status…
– Checking connection quality: 1/3…3/3
– Congestion level is 2.41X (check duration: 96.46ms)
– Applied 2.41X timeout multiplier due to congestion: 1.2 ping, 9.0 health.
– Checking latest sanity reference
– Building initial DNS cache for 4515 nameservers (40 threads)
– Checking nameserver availability (40 threads): 0/4515……………………………………………………………………………….


Este proceso dura varios minutos, ya que hace múltiples consultas a varios servidores de DNS y una vez terminado procesa las estadísticas para mostrarnos el resultado. En mi caso estos son los resultados que he obtenido:
Fastest individual response (in milliseconds):
———————————————-
Telefonica Movis ################################ 58.84600
Movistar ES      ################################ 59.97086
Localhost IPv4   ################################ 60.54616
InfoTelecom ES   ################################# 60.76503
Terra ES         ################################# 61.05208
BT Espagna ES    ##################################### 68.42899
Neuf Cegetel S3  ######################################### 76.67494
Google Public DN ############################################ 81.78401
UltraDNS-2       ################################################ 89.45608
DynGuide-2       #################################################### 98.44708
OpenDNS-2        ##################################################### 100.60596

Mean response (in milliseconds):
——————————–
Movistar ES      ########################## 122.16
Telefonica Movis ############################# 132.68
Localhost IPv4   ############################# 132.74
Terra ES         ############################### 143.17
Google Public DN ################################ 148.57
UltraDNS-2       ##################################### 171.51
OpenDNS-2        ####################################### 181.24
DynGuide-2       ####################################### 181.68
Neuf Cegetel S3  ############################################ 206.33
InfoTelecom ES   ############################################# 209.36
BT Espagna ES    ##################################################### 249.98

Con estos resultados los DNS propuestos son:
Recommended configuration (fastest + nearest):
———————————————-
nameserver 194.179.1.100   # Movistar ES  
nameserver 194.179.001.101 # Telefonica Movistar-2 ES  
nameserver 127.0.0.1       # Localhost IPv4


Además nos ha guardado un reporte en HTML en /tmp con los resultados y gráficos:

Mean Response DurationMean Duration GraphFastest Individual Response Duration
Fastest Response GraphResponse Distribution Chart (First 200ms)Response Distribution Graph (first 200ms)Response Distribution Chart (Full)

Response Distribution Graph (full)
He remarcado un warning que me ha dado al lanzar por primera vez la aplicación. Al no tener instalado el paquete python-tk me ha lanzado el script automáticamente por línea de comando. Si instalo el paquete python-tk y lo vuelvo a lanzar tendremos una interfaz gráfica donde configurar diferentes parámetros:
$ sudo apt-get install python-tk


Si ya teníamos instalado ese paquete y queremos aún así lanzarlo en modo comando lo lanzaremos con la opción -x:
$ python namebench.py -x

Con la opción -h veremos la ayuda, con todas las opciones disponibles para realizar las diferentes pruebas.

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s