Upload - Problem with upload speed? Article

Member of  ScriptUtils | Changes | Purchase | Download

Upload - Problem with upload speed?

Some clients have problem with upload speed. This FAQ has a short info and performance test comparisons to reveal the problem.

Question

     I just have a quick question about the ASP Upload. In the progress window, when you upload a file, under the "Time" area, we haven't seen any speeds higher than 1.5-1.6mbs, even know our internal lan connection is 100mbs. I this something that is set in the code or a limit on the script itself?

Resolution

    The problem is mainly with clients. I do not know why, but I cannot cause IE to upload with meaning speed in some cases/client configurations. Next are results of my performance tests for two computers - Duron 700 with W2003 and Athlon 1.4 With W2000 connected by 100Mb/s line.
 
    The theoretical speed limit (accept upload on server-side in ASP, Huge ASP upload) for Athlon 1.4/W2000/IIS5 is around 20MB/s, Duron 700/W2003/IIS6 9MB/s (because of processor resources).
 
    You can see that Mozilla/W2000 can upload up to 7.5MB/s to IIS6 on Duron which is almost on theoretical limit of the server. But IE has only 1.5MB/s upload speed! I need four IE 6 clients on the same configuration to have 5.5MB/s upload speed! (the red lines in the table)
   
    The worse in reverse direction ... One IE 6 from W2003 has upload speed 50kb/s! Two 100kB/s, three 150kB/s ... I do not know why, I cannot cause IE to have greater speed ... Mozilla has 6.8MB/s on the same configuration! (blue lines)
 
    The best performance has Mozilla locally on athlon 1.4 - last line, 8MB/s.
 
    I also tested Huge ASP upload with my special http client uploading huge amount of data over http. Huge ASP upload accepts 100Mb/s stream (~10-12MB/s) on PIII/900 or equivalent processor, 8-9MB/s on Duron 700 ... But I have no real client browser which can generate such strong data stream (only the special debugging client written in VBA6 or I can generate such stream from more computers/clients).
    I spent a lot of time to debug server-side performance for maximum speed (mainly on block size, IIS configuration and Binaryread calls). I mean my product is best on the market in this area :-)
 
Client Server Speed [MB/s] Client CPU Server CPU Idle CPU
W2003, Duron 700 IE 6 W2000, Athlon 1.4G IIS 5 0.05 1% 0% -
W2000, Athlon 1.4G IE 6 W2003, Duron 700 IIS6 1.50 10% 15% -
W2003, Duron 700 IE 6 W2003, Duron 700 IIS6 2.30 40% 25% 5%
W2003, Duron 700 Mozilla 1.5 W2003, Duron 700 IIS6 2.30 33% 25% 5%
W2000, Athlon 1.4G 2 x IE 6 W2003, Duron 700 IIS6 3.00 20% 28% -
W2000, Athlon 1.4G 4 x IE 6 W2003, Duron 700 IIS6 5.50 40% 58% -
W2000, Athlon 1.4G IE 6 W2000, Athlon 1.4G IIS 5 6.00 20% 25% 52%
W2003, Duron 700 Mozilla 1.5 W2000, Athlon 1.4G IIS 5 6.80 60% 23% -
W2003, Duron 700 2 x Mozilla 1.5 W2000, Athlon 1.4G IIS 5 6.80 60% 23% -
W2000, Athlon 1.4G Mozilla 1.5 W2003, Duron 700 IIS6 7.00 15% 74% -
W2000, Athlon 1.4G 2 x Mozilla 1.5 W2003, Duron 700 IIS6 7.50 20% 75% -
W2000, Athlon 1.4G Mozilla 1.5 W2000, Athlon 1.4G IIS 5 8.00 20% 28% 48%
 
    Main server-side tips for Huge ASP upload to improove performance:
    1. Please see Upload - Files and forms with large/huge size., 'Upload - Files and forms with large/huge size'. Use ASPForm.TempPath with adequate speed. Although 5-10MB/s data stream is not problem for todays disks (they usually have 30-45MB/s write speed limit), the problem may be with fragmentation. Huge ASP file upload uses standard temp and the temp folder may be fragmented, so the temp disk cannot accept upload 10MB/s data stream. There are two simple solutions - defragment the temp folder/disk or create a special partition for upload temp
    2. See also Upload - performance tests.. Use inprocess ASP environment in IIS4/5 or use IIS6 to maximize server-side performance (inprocess takes only a half of processor resources against out of process).

Other links for Upload - Problem with upload speed? article

ScriptUtils.FAQ for Huge ASP file upload and scriptUtilities

Frequently asked questions about ScriptUtilities, Pure-ASP and Huge-ASP upload functionality.

ScriptUtils

Huge ASP upload is easy to use, hi-performance ASP file upload component with progress bar indicator. This component lets you upload multiple files with size up to 4GB to a disk or a database along with another form fields. Huge ASP file upload is a most featured upload component on a market with competitive price and a great performance . The software has also a free version of asp upload with progress, called Pure asp upload , written in plain VBS, without components (so you do not need to install anything on server). This installation package contains also ScriptUtilities library. Script Utilities lets you create hi-performance log files , works with binary data , you can download multiple files with zip/arj compression, work with INI files and much more with the ASP utility.

© 1996 - 2011 Antonin Foller, Motobit Software | About, Contacts | e-mail: info@pstruh.cz


Other Motobit links:   IISTracer, real-time IIS monitor   ASP file upload - upload files to ASP. 
ActiveX/VBSScript registry editor  ActiveX NT User account manager  Export MDB/DBF from ASP Active LogFile  Email export  ActiveX/ASP Scripting Dictionary object