Quiero transferir un archivo de 100 GB que reside en un solo servidor a otros 100 servidores en la red a través de una línea de 1 Gbps. ¿Cuál es la mejor manera de hacerlo? (sin usar torrent)

Aww! ¿No usas torrentes? Los torrents no son ilegales en sí mismos, ya sabes. Compañías como Blizzard (la compañía detrás de Warcraft) y Canonical (la compañía detrás de Ubuntu) los usan para distribuir software y actualizaciones.

Dicho esto, puedes ver lo que Ubuntu hace para distribuir sus imágenes de CD. Además de los torrents, Ubuntu usa zsync y Metalink; ambos son similares en principio a los torrents, pero difieren en la ejecución. Los enlaces metálicos también son utilizados por Sage Math con cierto éxito.

Si no utiliza ninguno de los técnicos antes mencionados, recuerde que la transferencia de datos no siempre ocupa tanto ancho de banda como el servidor admite. Use algo como este script – #! / bin / bash # ↄ⃝ Murukesh Mohanan # Este scipt usará curl (suponiéndolo – Pastebin.com – para descargar varias partes al mismo tiempo y maximizar el uso del ancho de banda.

Y, por último, no importa qué valor de k use, el tiempo promedio requerido seguirá siendo el mismo. Solo si desea que algunos clientes obtengan el archivo antes, su método funcionará, en cuyo caso busque algoritmos de programación para minimizar la tardanza.

Es posible usar netcat a una dirección de multidifusión en modo UDP, así que envíelo a todos los servidores a la vez. No obtendrá protección contra la pérdida de paquetes, pero con algunos ajustes o corrección de errores podría funcionar. Esa es sin duda la forma de transmitir video a muchos clientes en la misma LAN.

Debido a que hago este tipo de cosas regularmente como parte de mi trabajo, uso “radmind” para saber que los 386,632 archivos que rastreo están sincronizados (marcas de tiempo, modo Unix, uid y gid) y no están dañados ( con sumas de verificación SHA1 para validar los datos).