[Opengnsys-users] Errores con ctorrent al acabar la descarga

Pep Ciuraneta Sanchez josep.ciuraneta en upc.edu
Vie Jul 9 18:21:22 CEST 2021


Hola Miguel,

Te explico, nosotros empezamos haciendo pruebas con 1.2.0 para ver si
solucionabamos unos problemas con el torrent (no aprovechamiento del ancho
de banda, falta de fiabilidad con muchos errores segmentation fault en
clientes) y al ver que con 1.2.0 nos pasaba lo mismo hemos cambiado el
programa que se encarga de hacer el seed. Seguimos con 1.1.0 de momento.
Esto lo hemos hecho tras hacer pruebas esta misma semana.

En lugar de usar el bittornado hemos optado por lanzar un ctorrent por cada
fichero torrent. Esto tiene su inconveniente, pero desde entonces el ancho
de banda se aprovecha algo mejor y los errores se han minimizado muchísimo.
De momento lo vamos a dejar así. En concreto lo lanzamos así para cada
fichero (simplificado)

# cd /opt/opengnsys/images
# ctorrent -e -1 -d nombre_fichero_img.torrent

Yo creo que esto es extrapolable a la versión 1.2.0. El hecho de usar
ctorrent en lugar de bittornado funciona bastante mejor, pero tiene la pega
que cada vez que se inicia se comprueba el fichero a compartir y eso puede
ser costoso en tiempo y depende de la velocidad acceso de disco.

Hemos aprovechado este final de curso para hacer multiples pruebas y el
poder aprovechar la red a 1Gbps da bastante alegria.

Consejos para subir la velocidad en descarga por torrent:

1.- si es posible, tener los ficheros imagen en disco SSD
2.- tener algun seeder extra. No hace falta que sea un REPO, simplemente
una máquina de backup donde tener los ficheros imagen y los torrent.
3.- si los equipos destino tienen disco SSD comprobar que las particiones
esten alineadas. Esto es muy importante.
4.- Realizar un procedimiento para hacer que las aulas o equipos que tengan
la imagen puedan hacer de seeders. Basicamente es lanzar un ctorrent y
esperar al chequeo de cada imagen, pero esto ayuda mucho a subir la
velocidad de descarga. Esto equivale a multiplicar el consejo 2 por el
numero de máquinas en las que se ejecute el procedimiento. Por ejemplo, se
puede descargar primero en el aula donde sea más rapido el despliegue y
luego añadir sus equipos como seeders para acelerar al resto.
5.- Tener REPOS repartidos por diferentes tramos de la red. Esto depende de
la infraestructura de cada uno.

Miguel, Perdona el ladrillo, al final me ha salido algo largo. En resumen,
prueba de cambiar el bittornado por un script que te lance los ctorrent (en
el mismo rc.local) y a ver que tal.

Saludos,
Pep.

-- 
O O O Universitat Politecnica de Catalunya
O O O BarcelonaTECH
O O O ------------------------------------
U P C Facultat de Matematiques i Estadistica
      Pau Gargallo, 14 - 08028 Barcelona

      Pep Ciuraneta Sanchez
      Serveis TIC
      josep.ciuraneta en upc.edu
      Tel. 934015853

AVIS DE CONFIDENCIALITAT:
Aquest missatge pot contenir informacio confidencial o legalment
protegida i esta exclusivament adrecat a la persona o entitat
destinataria. Si no sou el destinatari final o persona encarregada de
recollir-lo, no esteu autoritzat a llegir-lo, retenir-lo,
modificar-lo, distribuir-lo, copiar-lo ni a revelar el seu contingut.
Si heu rebut aquest missatge per error, us preguem que informeu al
remitent i elimineu del vostre sistema el missatge i el material annex
que pugui contenir. Gracies per la vostra col.laboracio.

Abans d'imprimir aquest correu, penseu si es necessari.



Missatge de Miguel Sánchez Sánchez <msanchez en fi.upm.es> del dia dv., 9 de
jul. 2021 a les 12:39:

> Buenas. Me estoy encontrando con que un porcentaje de ogLive, cuando van
> a acabar la descarga de una imagen, ctorrent aborta con error
> std::bad_array_new_length.
> Todos los clientes torrent van más o menos igual en la descarga, pues
> acaban bien o fallan al alimón, pues el semillero en el servidor parece
> que no supera los 50Mbit por conexión, y aunque empiezan la descarga
> aleatoriamente van convergiendo. Abortan con un número pequeño de partes
> por completar, menos de 20.
>
> No estoy seguro si está relacionado con algún parámetro del semillero en
> el servidor, pues hasta ahora nuestro servidor de OpenGnsys estaba un
> poco escaso de recursos y el problema parece que desaparecía cuando se
> limitaban en el semillero el número de peers que se podían conectar.
> Pero hemos cambiado a versión 1.2.0 en un nuevo servidor y el problema
> persiste.
> El semillero que estamos utilizando actualmente es
> btlaunchmany.bittorrent, por aquello de que utiliza un thread por imagen
> servida. Pero creo recordar que con btlaunchmany.bittornado los errores
> también se producían.
>
> ¿Os habéis encontrado alguno con este problema? ¿Cómo lo habéis solventado?
>
> Saludos.
> _______________________________________________
> Opengnsys-users mailing list
> Opengnsys-users en listas.unizar.es
> https://listas.unizar.es/cgi-bin/mailman/listinfo/opengnsys-users
> ----------
> INFORMACIÓN SOBRE PROTECCIÓN DE DATOS DE CARÁCTER PERSONAL
>
> Ud. recibe este correo por pertenecer a una lista de correo gestionada por
> la Universidad de Zaragoza.
> Puede encontrar toda la información sobre como tratamos sus datos en el
> siguiente enlace:
> https://sicuz.unizar.es/informacion-sobre-proteccion-de-datos-de-caracter-personal-en-listas
> Recuerde que si está suscrito a una lista voluntaria Ud. puede darse de
> baja desde la propia aplicación en el momento en que lo desee.
> http://listas.unizar.es
> ----------
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.unizar.es/pipermail/opengnsys-users/attachments/20210709/7c8c429f/attachment.html>


Más información sobre la lista de distribución Opengnsys-users