¿Descarga multiparte en C #?

Por favor, disculpe mi ignorancia sobre el tema.

Me gustaría escribir una aplicación en C # que pueda descargar archivos de un servidor de la misma maneraBájenlos a todos hace. DownThemAll parece abrir cuatro conexiones al servidor HTTP para descargar el mismo archivo. Me preguntaba si hay alguna biblioteca existente que pueda hacer esto.

Aquí hay una cita de su sitio sobre esta característica:

DownThemAll presenta una técnica de descarga inteligente llamada "descarga multiparte". Divide los archivos en varias secciones, que se descargan simultáneamente.

También me gustaría poder pausar / reanudar las descargas. Esa es la funcionalidad básica que me gustaría, no necesariamente necesito una biblioteca completa de gestores de descargas, pero si hay una que pueda hacer estas cosas, me encantaría saber sobre ellas también. Los archivos están en un directorio protegido por contraseña alojado con lighttpd, por lo que también necesitaría alguna forma de autenticarme.

Si no hay ninguna biblioteca preexistente que pueda usar, entonces, ¿qué clases de .net debería estudiar que puedan hacer esto?

¡Gracias!

EDITAR: Reescribió el título para que sea más apropiado y agregó una cita del sitio DownThemAll que explica qué es.

2do EDITAR: Creo que svens publicó la respuesta más apropiada hasta ahora, aunque como un comentario: / Es mi culpa ya que escribí mal el título porque no sabía de qué estaba hablando. Publicó unaartículo que pasa por la descarga de HTTP en pausa / reanudación. También se habla de laRange Encabezado que es lo que creo que debo usar:

El encabezado de rango es capaz de solicitar más de un rango en una sola solicitud, una función llamada "rangos de varias partes". No confunda esto con la descarga segmentada, que utilizan casi todas las herramientas de descarga para aumentar la velocidad de la descarga. Estas herramientas pretenden mejorar la velocidad de descarga al abrir dos o más conexiones simultáneas, cada una de las cuales solicita un rango diferente del archivo.

Así que entiendo que quiero usar el rango para descargar ciertas partes del archivo al mismo tiempo. Entonces, de nuevo, esto probablemente no tenga ninguna ventaja sobre la simple descarga del archivo de una sola vez. Solo haré eso y permitiré pausar / reanudar.

¡Gracias chicos!

P.S svens, adelante, publique el comentario como una respuesta para que pueda aceptarlo si lo desea.

Respuestas a la pregunta(5)

Su respuesta a la pregunta