[wpkg-users] [Bug 91] New: Do not execute wpkg.js on a slow network connection

bugzilla-daemon at bugzilla.wpkg.org bugzilla-daemon at bugzilla.wpkg.org
Thu Dec 6 11:15:15 CET 2007


http://bugzilla.wpkg.org/show_bug.cgi?id=91

           Summary: Do not execute wpkg.js on a slow network connection
           Product: WPKG Client
           Version: unspecified
          Platform: PC
        OS/Version: All
            Status: NEW
          Severity: enhancement
          Priority: P2
         Component: WPKG Client
        AssignedTo: mangoo at wpkg.org
        ReportedBy: skybeam at users.sourceforge.net
         QAContact: wpkg-users at lists.sourceforge.net


I have a small feature suggestion for WPKG-Client...

Windows itself supports detection of slow network connections and suspends
synchronization of roaming profiles on slow connections. Imagine that you're on
the road (probably connected using GPRS) or another slow and usually expensive
(volume) line. Then you probably don't like to install software in the
backtround. Imagine you're at customer side with your laptop and using a 56kbps
modem connection and WPKG starts to install a new version of MS Office in the
background; an absolute no-go.

Of course this is quite a rare case since WPKG will probably run as service and
already canceled software installation due to the new ping feature in WPKG
Client 1.0 RC.

But there are numerous situations where a remote-office might be on a
small/overloaded link where it might be wise to suspend installation.

Microsoft has described their algorithm to detect slow links within
<http://www.microsoft.com/technet/prodtechnol/windows2000serv/reskit/gp/17.mspx?mfr=true>.
Basically they expect a data-rate of 500kbps or more and a ping time less than
120ms.

The ping is anyway already supported in WPKG client. Additionally the available
bandwidth needs to be detected (or at least estimated/approximated).

I found the following article:
<http://smtp25.blogspot.com/2007/09/how-to-detect-slow-link-with-formula.html>

There it is suggested to use ping packages of 2048 bytes length to detect the
link speed. Then using the following formula:
LinkSpeed = 16000 / (average ping for 2048 byte packet)

I did not verify it in detail but I think it would allow a good approximation
of the link speed.


As WPKG Client is currently already taking an address to be pinged for
availability I would suggest to extend that check and add a field for "ping
time threshold" and "data rate threshold" while both are optional values.
Since software installation usually includes quite a lot of data to be
transfered I would suggest to set the default values somewhat higher than
Microsoft uses for roaming profiles synchronization. I would suggest to check
for a ping time of 50ms or lower and an estimated link speed of 5000kbps. Both
values should make sure that synchronization only takes place when the client
is connected to some kind of LAN connection.

Therefore I propose to add two fields to the Client configuration:
- Ping time threshold (ms)
- Bandwith threshold (kbps)

In the GUI is suggest to insert a checkbox to enable these limitations or
disable them (gray out the values if disabled). If enabled its required to
specify a host which is ping-able.
Probably a test button which does a test ping and prints the average detected
speed and ping time should be added as well. Especially since it might happen
that a host refuses to answer to large 2048-byte ping packages.
Due to the same reason I would suggest to do the pings in two steps:
1. send "normal" ping requrest with 32 bytes of data to check if host is
available (I think that's the way it is already implemented now)

2. if 1. succeeds send some (probably 10) 2048-byte ping packages and collect
answer times. Calculate average answer time and determine bandwidth (formula
see above)

3. check if bandwidth is higher than threshold and average ping time is lower
than threshold.

I hope this information gives enough information to be able to implement this
feature.

I already thought about implementing it in wpkg.js but I think the right way to
do it is WPKG client. wpkg.js should'nt even be fetched from the server on slow
connections.

Awaiting your comments and opinions.


-- 
Configure bugmail: http://bugzilla.wpkg.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.







Easy Software Deployment >> http://wpkg.org
_______________________________________________
wpkg-users mailing list
wpkg-users at lists.wpkg.org
http://lists.wpkg.org/mailman/listinfo/wpkg-users



More information about the wpkg-users mailing list