This project is aimed to develop a multi-thread C#
Segmented Download Manager that manages multiple segmented downloads and
supports HTTP, FTP and YouTube video downloads
1. Title of the project:
Multi-threaded
Segmented Download Accelerator using Plug-in Architecture.
2. Abstract:
This system can be used as an application for
any internet user who generally downloads a large amount of data from the net.
Downloads can be segmented because both HTTP
and FTP protocols allow the client to specify the start position of the stream.
First, it performs a request to the server to discover the file size and then
calculates segment size.
With the segment size, downloader creates
another request specifying the start position of the stream. In this way, user
can have multi-requests for the same files running in parallel using
multithreading techniques. This technique speeds up the transfer rate even more
if you are using mirrors.
The following features are
supported by the Multi-thread C# Segmented Download Manager:
Segmented downloads from HTTP and FTP - With
smart segments: when one segment ends, starts another segment to help to
terminate another segment more fast allow downloads to be paused and resumed.
3. Features:
The
Functionalities provided by the Project are as follows.
·
Speed
Limit — to avoid to use all your bandwidth
·
Download
Scheduler
·
Download
files only on allowed times
·
Limit
the number of simultaneous downloads
·
When
one download ends, starts another automatically
·
Support
for FTP site that requires authentication
·
Support
for Mirrors
·
Download
from HTTPS
·
Notification
download completion with sounds and XP balloon
·
Anti-virus
integration
·
Automatic
retry when a segment or download fails
4. Existing System:
Ø Download managers are
useful for active Internet users. For dial-up users, they can automatically
dial the internet service provider at night, when rates or tariffs are usually
lower, download the specified files, and hang-up.
Ø They can record which links
the user clicks on during the day, and queue these files for later download.
For broadband users, download managers can help download very large files by
resuming broken downloads, by limiting the bandwidth used, so that other
internet activities are not affected (slowed) and the server is not overloaded,
or by automatically navigating a site and downloading pre-specified content
(photo galleries, MP3 collections, etc.)
5. Limitations in Existing System:
Ø There are several things
that some web browsers are not very good at. That's where the download managers
enter the equation:
Ø Pausing the downloading of
large files.
Ø Resuming broken or paused
downloads (especially for very large files).
Ø Downloading files on poor
connections.
Ø Downloading several files
from a site automatically according to simple rules (file types, updated files,
etc. - see also Offline Browser).
6. PROPOSED
SYSTEM
•
The
proposed System is aimed to develop a multi-thread Segmented Download Manager
that manages multiple segmented downloads and supports HTTP, FTP and YouTube
video downloads.
•
•
The transactions should take place in a secured
format between various clients in the network. It provides flexibility to the
user to transfer the data through the network very easily by splitting the
large amount of file in to user specified size. It should also identify the
user and provide the communication according to the prescribed level of
security with transfer of the file requested and run the required process at
the server if necessary. When responding to the client, the server should send
necessary information such as User authorization and authentication
information, Merging, Encryption, Decryption types and their level of hierarchy
etc.
7. Modules:
The application
comprises the following major modules.
·
Settings
·
Download
Manager
·
Segments
·
Downloads
o
HTTP
o
FTP
o
HTTPS
Downloads can be segmented
because both HTTP and FTP protocols allow the client to specify the start
position of the stream. First, it performs a request to the server to discover
the file size and then calculates segment size.
With the segment size,
downloader creates another request specifying the start position of the stream.
In this way, user can have multi-requests for the same files running in
parallel using multi-threading techniques. This technique speeds up the
transfer rate even more if you are using mirrors.
The following features are
supported by the Multi-thread C# Segmented Download Manager:
Segmented downloads from
HTTP and FTP - With smart segments: when one segment ends, starts another
segment to help to terminate another segment more fast
Allow downloads to be
paused and resumed
Video Download window to
download videos from:
§ You Tube
§ Google Video
§ Break
§ PutFile
§ Meta Cafe
Speed Limit — to avoid to
use all your bandwidth
Download Scheduler
§ Download files only on
allowed times
§ Limit the number of
simultaneous downloads
§ When one download ends,
starts another automatically
Support for FTP site that
requires authentication
Support for Mirrors
Download from HTTPS
Notifications download
completion with sounds and XP balloon
Anti-virus integration
Automatic retry when a
segment or download fails.
Downloads can be segmented because
both HTTP and FTP protocols allow the client to specify the start position of
the stream.
A video download from any site has
three steps:
·
Download
the HTML page from the video site
·
Parse
the HTML to discover the video URL
·
Download
the video URL
7. Requirements:
·
Hardware requirements:
Content
|
Description
|
HDD
|
20 GB Min
40 GB Recommended
|
RAM
|
1 GB Min
2 GB Recommended
|
·
Software requirements:
Content
|
Description
|
OS
|
Windows XP with SP2 or Windows Vista
|
Language
|
C#
|
IDE
|
Ms-Visual
Studio .Net 2008
|
No comments:
Post a Comment