Internet Download Manager is a shareware download manager. It is only available for the Microsoft Windows operating system. Internet download manager (IDM) is a tool to manage and schedule downloads. It can utilize full bandwidth. It has recovery and resumes capabilities to restore the interrupted downloads due to lost connection, network issues, and power outages. IDM supports a wide range of proxy servers such as firewall, FTP, and HTTP protocols, redirected cookies, MP3 audio, and MPEG video processing. It efficiently collaborates with Opera, Avant Browser, AOL, MSN Explorer, Netscape, MyIE2, and other popular browsers to manage the download.
Features
- Divides downloads into multiple streams for faster downloading
- Batch downloads
- Import/Export download jobs
- Auto/manual updating of download address
- Multiple queues
- Recent downloads list for easy access to directories
- Video downloading from streaming video sites.
- Dynamic segmentation throughout the downloading process.
- Protocols: HTTP, FTP, HTTPS, MMS, and Microsoft ISA
- Authentication protocols: Basic, NTLM, and Kerberos allowing for storage and auto-authentication of user names and passwords.
- IDM supports the following web browsers: Internet Explorer, Opera, Netscape Navigator, Apple Safari, Flock, Google Chrome, Firefox, and many others.
In Detail:
Most of the servers allow more than one connection to a SINGLE FILE STREAM [ any file consists of a stream of bits ] from any client IP address requesting the file. IDM first checks whether multiple connections to the file can be made or not. [ This can be checked using the ‘accept-ranges’ header in the server response and then subsequently using the ‘Range’ header in the GET request to the server. ] If yes, it can download in parts [ Explanation below as how it is actually done. ] otherwise it downloads the file linearly and at the same time the download can’t be paused. How are files downloaded in parts? Now that IDM knows that the server allows multiple connections, it makes requests to the server for the file that it wants to download and the server returns a “BYTE STREAM”. Now, we can specify from which byte, the byte stream to be returned from the server should start. Now the trick that IDM does is that it makes 8 requests (this is configurable from inside the application) to the server at the same time [ using Threads ] and in all the 8 requests it sends different starting byte addresses [ which will be the starting bytes in the Byte Streams that will be returned] so that all of the file is covered. For example, if the file is say 8000 bytes large, It will create 8 requests to the same file on the server simultaneously but with initial starting bytes as.. In Request 1, starting byte = 0. Bytes covered: 0-999 In Request 2, starting byte = 1000. Bytes covered: 1000-1999 In Request 3, starting byte = 2000. Bytes covered: 2000-2999 In Request 4, starting byte = 3000. Bytes covered: 3000-3999 In Request 5, starting byte = 4000. Bytes covered: 4000-4999 In Request 6, starting byte = 5000. Bytes covered: 5000-5999 In Request 7, starting byte = 6000. Bytes covered: 6000-6999 In Request 8, starting byte = 7000. Bytes covered: 7000-7999 Now the returning byte streams will start from the respective bytes in the actual file. The parts downloaded from each of the requests are then joined together in order to make the complete original file, after the downloading of every stream completes. PS: IDM now also supports `Dynamic Segmentation` i.e., the total file-byte-segments being downloaded may increase over the download process. It basically breaks an existing file-byte-segment into two for even more network utilization. Although the concurrent active network calls is fixed (what you set inside the application), but the calls can be divided over the file-byte-segments being downloaded.
Does IDM increase my speeds or downloads more than my connection can, in given time?
No, IT DOES NOT. (True, almost all the time) Most of the users, even many experienced ones, have this misconception. It just optimises the way your connection is used i.e. it ensures your connection is fully used by the different downloading threads that it has created. It ensures your connection is never idle so that you can get the maximum possible speed. Technically speaking, it makes sure your network bandwidth is fully utilised. THATS IT. It just provides a method to manage downloads efficiently and make the maximum use of your connection bandwidth that can be possibly made. Click here to Download IDM Manager.