Re: [twsocket] Bandwidth control at the root (TCustomWSocket)

2009-07-21 Thread Arno Garrels
Francois PIETTE wrote:
 What do you think?
 
 It looks good.
 
 However any thread solution cannot behave exactly as a timer since
 it will post the message in any case. WM_TIMER messages however,
 are only sent/posted when the destination message queue is empty.
 
 I don't think it could be a problem. But f it does, GetQueueStatus
 can be called to know if there is a WM_TIMER message already in the
 queue.

GetQueueStatus returns the status of the calling thread's queue only.
I have not yet found a way to examine the message queue of another
thread, seems impossible.

--
Arno Garrels   

 
 
 --
 francois.pie...@overbyte.be
 The author of the freeware multi-tier middleware MidWare
 The author of the freeware Internet Component Suite (ICS)
 http://www.overbyte.be
 
 
 - Original Message -
 From: Arno Garrels arno.garr...@gmx.de
 To: ICS support mailing twsocket@elists.org
 Sent: Monday, July 20, 2009 8:39 PM
 Subject: Re: [twsocket] Bandwidth control at the root (TCustomWSocket)
 
 
 Francois PIETTE wrote:
 I'm still not sure what was the best implementation in
 TCustomWSocket. Anything speaking against your timer-based code in
 HttpProt.pas? Since W2K there are plenty of timers possible.
 
 For cilent application, there should be no problem. But for a server
 application with potentially hundreds or thousands of simultaneous
 users, a solution with a single timer (whatever it is) would
 probably preserve system resources. System resources is currently
 the main limiting factor in the number of concurrent connections.
 This is why I designed TIcsWndControl in the first place.
 
 I played a bit today and derived a TIcsThreadTimer from TIcsTimer.
 When an instance is created and enabled it subscribes to a so called
 TIcsClock instance which simply runs a loop in its thread and
 SendNotifyMessage WM_TIMER to all subscribers when their interval
 elapsed.
 The number of subscribers(Timers) TIcsClock instance can be set as
 well as the minimum resolution which currently defaults to 100 ticks
 (lazy timer). There's a TIcsClockPool as well.
 
 This solution results in one handle per TIcsClock instance for the
 thread and currently another one for an event to signal thread
 termination. SendNotifyMessage() calls the window procedure directly
 so the message queue won't be flooded.
 
 However any thread solution cannot behave exactly as a timer since
 it will post the message in any case. WM_TIMER messages however,
 are only sent/posted when the destination message queue is empty.
 
 What do you think?
 
 --
 Arno Garrels
 
 
 
 --
 francois.pie...@overbyte.be
 http://www.overbyte.be
 --
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be
--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Bandwidth control at the root (TCustomWSocket)

2009-07-21 Thread Arno Garrels
Arno Garrels wrote:
 
 I don't think it could be a problem. But f it does, GetQueueStatus
 can be called to know if there is a WM_TIMER message already in the
 queue.

Did some testing with sending 1000 SendNotifyMessages to the main
thread per second. Then I paused message processing for 10 seconds
by holding the [X] system button pressed. CPU use increased to ~50%
and entire system became very slow, almost non-responsive, I had to
kill the process which took me several minutes while CPU temperature
was in the red area. 

Same test with PostMessage works without this effect however 
the queue size is limited (10.000 messages) by default, so any 
subsequent call to PostMessage fails, which was a disaster as well.   

 GetQueueStatus returns the status of the calling thread's queue only.
 I have not yet found a way to examine the message queue of another
 thread, seems impossible.

Even the was possible, I think it won't work because of ICS sharing 
windows :(

--
Arno Garrels
 

--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Bandwidth control at the root (TCustomWSocket)

2009-07-21 Thread Arno Garrels
Arno Garrels wrote:
 Arno Garrels wrote:
 
 I don't think it could be a problem. But f it does, GetQueueStatus
 can be called to know if there is a WM_TIMER message already in the
 queue.
 
 Did some testing with sending 1000 SendNotifyMessages to the main
 thread per second. Then I paused message processing for 10 seconds
 by holding the [X] system button pressed. CPU use increased to ~50%
 and entire system became very slow, almost non-responsive, I had to
 kill the process which took me several minutes while CPU temperature
 was in the red area.
 
 Same test with PostMessage works without this effect however
 the queue size is limited (10.000 messages) by default, so any
 subsequent call to PostMessage fails, which was a disaster as well.

I found an easy workaround, please forget this message.

--
Arno Garrels 



--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Bandwidth control at the root (TCustomWSocket)

2009-07-20 Thread Arno Garrels
Francois PIETTE wrote:
 I'm still not sure what was the best implementation in
 TCustomWSocket. Anything speaking against your timer-based code in
 HttpProt.pas? Since W2K there are plenty of timers possible.
 
 For cilent application, there should be no problem. But for a server
 application with potentially hundreds or thousands of simultaneous
 users, a solution with a single timer (whatever it is) would probably
 preserve system resources. System resources is currently the main
 limiting factor in the number of concurrent connections. This is why
 I designed TIcsWndControl in the first place.

I played a bit today and derived a TIcsThreadTimer from TIcsTimer.
When an instance is created and enabled it subscribes to a so called
TIcsClock instance which simply runs a loop in its thread and 
SendNotifyMessage WM_TIMER to all subscribers when their interval
elapsed.
The number of subscribers(Timers) TIcsClock instance can be set as well
as the minimum resolution which currently defaults to 100 ticks 
(lazy timer). There's a TIcsClockPool as well. 

This solution results in one handle per TIcsClock instance for the 
thread and currently another one for an event to signal thread 
termination. SendNotifyMessage() calls the window procedure directly 
so the message queue won't be flooded. 

However any thread solution cannot behave exactly as a timer since
it will post the message in any case. WM_TIMER messages however, 
are only sent/posted when the destination message queue is empty.

What do you think?

--
Arno Garrels 


 
 --
 francois.pie...@overbyte.be
 http://www.overbyte.be
--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Bandwidth control at the root (TCustomWSocket)

2009-07-19 Thread Arno Garrels
Francois PIETTE wrote:
 I've got it working without a timer by calling
 MsgWaitForMultipleObjects to defer subsequent call of Resume after
 Pause, however that seems to be a dangerous game. What do you thing?
 
 Not good, the message pump must be called.

Do you think it was possible without using a timer? I don't think so.
If it was impossible it's probably better to add bandwidth control to
the upper level protocol components only, copying existing code from
the FTP and HTTP clients?  

--
Arno Garrels
--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Bandwidth control at the root (TCustomWSocket)

2009-07-19 Thread Francois PIETTE

I've got it working without a timer by calling
MsgWaitForMultipleObjects to defer subsequent call of Resume after
Pause, however that seems to be a dangerous game. What do you thing?


Not good, the message pump must be called.


Do you think it was possible without using a timer? I don't think so.


Yes, it is possible and even easy !
You create a thread which sleeps the required time and then post a message. 
This would be much like a TTimer without an actual TTimer.



--
francois.pie...@overbyte.be
The author of the freeware multi-tier middleware MidWare
The author of the freeware Internet Component Suite (ICS)
http://www.overbyte.be

--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Bandwidth control at the root (TCustomWSocket)

2009-07-19 Thread Arno Garrels
Francois PIETTE wrote:
 I've got it working without a timer by calling
 MsgWaitForMultipleObjects to defer subsequent call of Resume after
 Pause, however that seems to be a dangerous game. What do you
 thing? 
 
 Not good, the message pump must be called.
 
 Do you think it was possible without using a timer? I don't think so.
 
 Yes, it is possible and even easy !
 You create a thread which sleeps the required time and then post a
 message. This would be much like a TTimer without an actual TTimer.

OK, but was it cheaper than TIcsTime?

--
Arno Garrels


--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Bandwidth control at the root (TCustomWSocket)

2009-07-19 Thread Francois PIETTE

I've got it working without a timer by calling
MsgWaitForMultipleObjects to defer subsequent call of Resume after
Pause, however that seems to be a dangerous game. What do you
thing? 


Not good, the message pump must be called.


Do you think it was possible without using a timer? I don't think so.


Yes, it is possible and even easy !
You create a thread which sleeps the required time and then post a
message. This would be much like a TTimer without an actual TTimer.


OK, but was it cheaper than TIcsTime?


I have not TIcsTime code in my head...

--
francois.pie...@overbyte.be
http://www.overbyte.be

--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Bandwidth control at the root (TCustomWSocket)

2009-07-19 Thread Arno Garrels
Fredrik Larsson wrote:
 Hi,
 
 I know that a permanent fix at componentlevel is desired but until
 that is sorted out perhaps you would want to use something such as
 http://www.netlimiter.com/ to limit the traffic the application uses?

Interesting tool, I guess it's a LSP isn't it?

--
Arno Garrels
--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Bandwidth control at the root (TCustomWSocket)

2009-07-19 Thread Arno Garrels
Francois PIETTE wrote:
 I've got it working without a timer by calling
 MsgWaitForMultipleObjects to defer subsequent call of Resume
 after Pause, however that seems to be a dangerous game. What do
 you thing?
 
 Not good, the message pump must be called.
 
 Do you think it was possible without using a timer? I don't think
 so. 
 
 Yes, it is possible and even easy !
 You create a thread which sleeps the required time and then post a
 message. This would be much like a TTimer without an actual TTimer.
 
 OK, but was it cheaper than TIcsTime?
 
 I have not TIcsTime code in my head...

Sorry typo, should read TIcsTimer. It works like TTimer however does 
not create a window to receive WM_TIMER messages but uses an existing
ICS-window instead.
I'm still not sure what was the best implementation in TCustomWSocket.
Anything speaking against your timer-based code in HttpProt.pas? 
Since W2K there are plenty of timers possible. 

--
Arno Garrels


--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Bandwidth control at the root (TCustomWSocket)

2009-07-19 Thread Fredrik Larsson
Yeah, I guess so. I had to look LSP - Layered Service Provider... :) I have
used it myself to limit some applications bandwidth to a max limit. But it
makes sense that it's an LSP-app. 

-Original Message-

 I know that a permanent fix at componentlevel is desired but until
 that is sorted out perhaps you would want to use something such as
 http://www.netlimiter.com/ to limit the traffic the application uses?

Interesting tool, I guess it's a LSP isn't it?

--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Bandwidth control at the root (TCustomWSocket)

2009-07-18 Thread Francois PIETTE

I've got it working without a timer by calling MsgWaitForMultipleObjects
to defer subsequent call of Resume after Pause, however that seems to be
a dangerous game. What do you thing?


Not good, the message pump must be called.

--
francois.pie...@overbyte.be
http://www.overbyte.be

--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Bandwidth control at the root (TCustomWSocket)

2009-07-18 Thread Fredrik Larsson
Hi,

I know that a permanent fix at componentlevel is desired but until that is
sorted out perhaps you would want to use something such as
http://www.netlimiter.com/ to limit the traffic the application uses?

Regards, Fredrik.

--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Bandwidth control TFtpClient

2006-01-18 Thread Arno Garrels
Angus Robertson - Magenta Systems Ltd wrote:
 I dont think the control channel of FTP needs throttling, only data
 channel.
 
 Who would possible want to throttle even the data channel on a FTP client?

For instance someone who wants to be able to trottle down CPU load on very fast
connections. What is happening if the line is too fast can be seen when you run
both server and client on localhost, it becomes a pain to work on that system.

 
 Just seems unnecessary complications to me.

It's just an option, conditional compiled. 

 
 I thought throttling was something servers did when they are hosted on
 lines incapable of meeting proper bandwidth for all users.
 
 Angus
-- 
To unsubscribe or change your settings for TWSocket mailing list
please goto http://www.elists.org/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Bandwidth control TFtpClient

2006-01-18 Thread Robert Chafer
One reason would be that the client does not want to soak up all the
bandwidth. For example, I routinely run an RDP session over my
Internet connection. It would be nice to also do some low-level
downloading with FTP -- generally I cannot because the FTP client gets
data at the limit of my bandwidth and the RDP becomes very sluggish.
If I could throttle the FTP to 25% it would make it much nicer to use.

On Tue, 17 Jan 2006 21:51:03 +0100, you wrote:

  Hello Angus,
  
  My opinion too, but it seems a popular item :) If I write an application
  my concern is to get as muth data in short possible time. But others
  seems to like to delay it :)  I dont know the reason...
  
  ---
  Rgds, Wilfried [TeamICS]
  http://www.overbyte.be/eng/overbyte/teamics.html
  http://www.mestdagh.biz
  
  Tuesday, January 17, 2006, 21:39, Angus Robertson - Magenta Systems Ltd 
 wrote:
  
   I dont think the control channel of FTP needs throttling, only data
   channel. 
  
   Who would possible want to throttle even the data channel on a FTP client?
  
   Just seems unnecessary complications to me. 
  
   I thought throttling was something servers did when they are hosted on
   lines incapable of meeting proper bandwidth for all users.  
  
   Angus
--

Rob Chafer
Silverfrost
-- 
To unsubscribe or change your settings for TWSocket mailing list
please goto http://www.elists.org/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Bandwidth control TFtpClient

2006-01-18 Thread Peter Feldbaumer
 Original Message 
From: Arno Garrels [EMAIL PROTECTED]

 I've just more or less copied and pasted the bandwidth control stuff
 from HttpProt.pas to FtpProt.pas, enabled it on the data channel only
 so far. I couldn't find a note who contributed this code?
 Also, should I enable it on the control channel as well??

Could I suggest to create a descendent component from TFtpSrv - something 
like TFtpSrvThrottled - to implement bandwidth-limiting?

The current implementation (if it is like in HttpProt.pas) doesn't fit my 
needs (and probably that of others, too) - e.g. if one needs to implement 
overall or single-connection throttling.

If all is packed into the base component then there is no way around 
duplicate code in the compiled exe - however if it is in a derived component 
then one can simply select to choose TFtpSrvThrottled or TFtpSrv.

Moreover I think it would definitely help to improve code-readability if 
not everything is packed into the base component.

For FTPSrv I could offer an implementation based on Dan's ThrottledWSocket 
(see http://www.xantorrent.pwp.blueyonder.co.uk/ics/ThrottledWSocket.zip) 
which doesn't touch anything in the base FtpSrv.pas - and therefore is 
completely based on inheritance (I really like it that way and could leave 
the throttling-code untouched since 2003, although I updated ics more than 
once in this timespan ;)
Code can be found at http://www.feldtech.com/downloads/uThrottledFTP.pas 
(taken directly out of a project - so no examples...) - please note that I 
didn't check if my extensions are compatible with ics-ssl (I fear not, 
since I'm hijacking DoRecv(), which is used in ssl-implementation too).

ps: I think creating a descendent component for HttpSrv would also be a good 
idea...
--
Peter Feldbaumer
p dot feldbaumer at utanet dot at


-- 
To unsubscribe or change your settings for TWSocket mailing list
please goto http://www.elists.org/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Bandwidth control TFtpClient

2006-01-18 Thread Arno Garrels
Peter Feldbaumer wrote:

 Could I suggest to create a descendent component from TFtpSrv - something
 like TFtpSrvThrottled - to implement bandwidth-limiting?
 
 The current implementation (if it is like in HttpProt.pas) doesn't fit my
 needs (and probably that of others, too) - e.g. if one needs to implement
 overall or single-connection throttling.

Current implementation is in the FTP/HTTP _clients_ only, conditional compiled.
It probably won't fit my needs in real world applications as well. A derived
throttled server would be nice, however nicer would be a throttle-component
that plays with all ICS components (drop and forget), just my to cents.  

[..]

---
Arno Garrels [TeamICS]
http://www.overbyte.be/eng/overbyte/teamics.html

-- 
To unsubscribe or change your settings for TWSocket mailing list
please goto http://www.elists.org/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Bandwidth control TFtpClient

2006-01-18 Thread Peter Feldbaumer
 Original Message 
From: Arno Garrels [EMAIL PROTECTED]

 Current implementation is in the FTP/HTTP _clients_ only, conditional
 compiled. It probably won't fit my needs in real world applications as 
 well.
 A derived throttled server would be nice, however nicer would be a
 throttle-component that plays with all ICS components (drop and forget), 
 just
 my to cents.

ups... I have mis-read your first posting  - I thought you were talking 
about FtpSrv...

nevertheless, the posted code implements this derived throttled server...
--
Peter Feldbaumer
p dot feldbaumer at utanet dot at

-- 
To unsubscribe or change your settings for TWSocket mailing list
please goto http://www.elists.org/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Bandwidth control TFtpClient

2006-01-18 Thread Dan
I think theres already one in my zip, but Im not 100% sure.

Dan

- Original Message - 
From: Peter Feldbaumer [EMAIL PROTECTED]
To: ICS support mailing twsocket@elists.org
Sent: Wednesday, January 18, 2006 3:30 PM
Subject: Re: [twsocket] Bandwidth control TFtpClient


  Original Message 
 From: Arno Garrels [EMAIL PROTECTED]

 I've just more or less copied and pasted the bandwidth control stuff
 from HttpProt.pas to FtpProt.pas, enabled it on the data channel only
 so far. I couldn't find a note who contributed this code?
 Also, should I enable it on the control channel as well??

 Could I suggest to create a descendent component from TFtpSrv - something
 like TFtpSrvThrottled - to implement bandwidth-limiting?

 The current implementation (if it is like in HttpProt.pas) doesn't fit my
 needs (and probably that of others, too) - e.g. if one needs to implement
 overall or single-connection throttling.

 If all is packed into the base component then there is no way around
 duplicate code in the compiled exe - however if it is in a derived 
 component
 then one can simply select to choose TFtpSrvThrottled or TFtpSrv.

 Moreover I think it would definitely help to improve code-readability if
 not everything is packed into the base component.

 For FTPSrv I could offer an implementation based on Dan's ThrottledWSocket
 (see http://www.xantorrent.pwp.blueyonder.co.uk/ics/ThrottledWSocket.zip)
 which doesn't touch anything in the base FtpSrv.pas - and therefore is
 completely based on inheritance (I really like it that way and could leave
 the throttling-code untouched since 2003, although I updated ics more than
 once in this timespan ;)
 Code can be found at http://www.feldtech.com/downloads/uThrottledFTP.pas
 (taken directly out of a project - so no examples...) - please note that I
 didn't check if my extensions are compatible with ics-ssl (I fear not,
 since I'm hijacking DoRecv(), which is used in ssl-implementation too).

 ps: I think creating a descendent component for HttpSrv would also be a 
 good
 idea...
 --
 Peter Feldbaumer
 p dot feldbaumer at utanet dot at


 -- 
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://www.elists.org/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be
 

-- 
To unsubscribe or change your settings for TWSocket mailing list
please goto http://www.elists.org/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Bandwidth control TFtpClient

2006-01-17 Thread Wilfried Mestdagh
Hello Angus,

My opinion too, but it seems a popular item :) If I write an application
my concern is to get as muth data in short possible time. But others
seems to like to delay it :)  I dont know the reason...

---
Rgds, Wilfried [TeamICS]
http://www.overbyte.be/eng/overbyte/teamics.html
http://www.mestdagh.biz

Tuesday, January 17, 2006, 21:39, Angus Robertson - Magenta Systems Ltd wrote:

 I dont think the control channel of FTP needs throttling, only data
 channel. 

 Who would possible want to throttle even the data channel on a FTP client?

 Just seems unnecessary complications to me. 

 I thought throttling was something servers did when they are hosted on
 lines incapable of meeting proper bandwidth for all users.  

 Angus

-- 
To unsubscribe or change your settings for TWSocket mailing list
please goto http://www.elists.org/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Bandwidth control TFtpClient

2006-01-17 Thread Paul
Hi Wilfried,

It is sometimes necessary.
Suppose you have a server running on an 100 MB WAN-connection,
and there are clients that have 100MB upload and download lines,
your server will be blocked immediately.

Such clients (mostly corparate companies) exist ,
and even more then one would like.


Paul



- Original Message - 
From: Wilfried Mestdagh [EMAIL PROTECTED]
To: ICS support mailing twsocket@elists.org
Sent: Tuesday, January 17, 2006 9:51 PM
Subject: Re: [twsocket] Bandwidth control TFtpClient


 Hello Angus,

 My opinion too, but it seems a popular item :) If I write an application
 my concern is to get as muth data in short possible time. But others
 seems to like to delay it :)  I dont know the reason...

 ---
 Rgds, Wilfried [TeamICS]
 http://www.overbyte.be/eng/overbyte/teamics.html
 http://www.mestdagh.biz

 Tuesday, January 17, 2006, 21:39, Angus Robertson - Magenta Systems Ltd 
 wrote:

 I dont think the control channel of FTP needs throttling, only data
 channel.

 Who would possible want to throttle even the data channel on a FTP 
 client?

 Just seems unnecessary complications to me.

 I thought throttling was something servers did when they are hosted on
 lines incapable of meeting proper bandwidth for all users.

 Angus

 -- 
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://www.elists.org/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be

 

-- 
To unsubscribe or change your settings for TWSocket mailing list
please goto http://www.elists.org/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Bandwidth control TFtpClient

2006-01-17 Thread Wilfried Mestdagh
Hello Paul,

   Yes understeand. I only never had that situation or ask. I probably
   have the kind of customars with different view.

---
Rgds, Wilfried [TeamICS]
http://www.overbyte.be/eng/overbyte/teamics.html
http://www.mestdagh.biz

Tuesday, January 17, 2006, 21:58, Paul wrote:

 Hi Wilfried,

 It is sometimes necessary.
 Suppose you have a server running on an 100 MB WAN-connection,
 and there are clients that have 100MB upload and download lines,
 your server will be blocked immediately.

 Such clients (mostly corparate companies) exist ,
 and even more then one would like.


 Paul



 - Original Message - 
 From: Wilfried Mestdagh [EMAIL PROTECTED]
 To: ICS support mailing twsocket@elists.org
 Sent: Tuesday, January 17, 2006 9:51 PM
 Subject: Re: [twsocket] Bandwidth control TFtpClient


 Hello Angus,

 My opinion too, but it seems a popular item :) If I write an application
 my concern is to get as muth data in short possible time. But others
 seems to like to delay it :)  I dont know the reason...

 ---
 Rgds, Wilfried [TeamICS]
 http://www.overbyte.be/eng/overbyte/teamics.html
 http://www.mestdagh.biz

 Tuesday, January 17, 2006, 21:39, Angus Robertson - Magenta Systems Ltd
 wrote:

 I dont think the control channel of FTP needs throttling, only data
 channel.

 Who would possible want to throttle even the data channel on a FTP 
 client?

 Just seems unnecessary complications to me.

 I thought throttling was something servers did when they are hosted on
 lines incapable of meeting proper bandwidth for all users.

 Angus

 -- 
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://www.elists.org/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be

 


-- 
To unsubscribe or change your settings for TWSocket mailing list
please goto http://www.elists.org/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Bandwidth control TFtpClient

2006-01-17 Thread Paul
I only discovered it recently myself,

A few of our customurs are able to download a 10Mb file in just a second !
And worse: these customurs are increasing day by day


Paul


- Original Message - 
From: Wilfried Mestdagh [EMAIL PROTECTED]
To: ICS support mailing twsocket@elists.org
Sent: Tuesday, January 17, 2006 10:16 PM
Subject: Re: [twsocket] Bandwidth control TFtpClient


 Hello Paul,

   Yes understeand. I only never had that situation or ask. I probably
   have the kind of customars with different view.

 ---
 Rgds, Wilfried [TeamICS]
 http://www.overbyte.be/eng/overbyte/teamics.html
 http://www.mestdagh.biz

 Tuesday, January 17, 2006, 21:58, Paul wrote:

 Hi Wilfried,

 It is sometimes necessary.
 Suppose you have a server running on an 100 MB WAN-connection,
 and there are clients that have 100MB upload and download lines,
 your server will be blocked immediately.

 Such clients (mostly corparate companies) exist ,
 and even more then one would like.


 Paul



 - Original Message - 
 From: Wilfried Mestdagh [EMAIL PROTECTED]
 To: ICS support mailing twsocket@elists.org
 Sent: Tuesday, January 17, 2006 9:51 PM
 Subject: Re: [twsocket] Bandwidth control TFtpClient


 Hello Angus,

 My opinion too, but it seems a popular item :) If I write an application
 my concern is to get as muth data in short possible time. But others
 seems to like to delay it :)  I dont know the reason...

 ---
 Rgds, Wilfried [TeamICS]
 http://www.overbyte.be/eng/overbyte/teamics.html
 http://www.mestdagh.biz

 Tuesday, January 17, 2006, 21:39, Angus Robertson - Magenta Systems Ltd
 wrote:

 I dont think the control channel of FTP needs throttling, only data
 channel.

 Who would possible want to throttle even the data channel on a FTP
 client?

 Just seems unnecessary complications to me.

 I thought throttling was something servers did when they are hosted on
 lines incapable of meeting proper bandwidth for all users.

 Angus

 -- 
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://www.elists.org/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be




 -- 
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://www.elists.org/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be

 

-- 
To unsubscribe or change your settings for TWSocket mailing list
please goto http://www.elists.org/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Bandwidth control TFtpClient

2006-01-17 Thread Francois PIETTE
 I've just more or less copied and pasted the bandwidth control stuff
 from HttpProt.pas to FtpProt.pas, enabled it on the data channel only
 so far. I couldn't find a note who contributed this code?

Well, it's me ! Actually I have done it for a customer who payed for and 
agreed to give it to the community. So the code is mine but the gift is from 
my customer.

 Also, should I enable it on the control channel as well??

It could, but probably useless since bandwidth on control channel is 
normally not used much.

--
[EMAIL PROTECTED]
http://www.overbyte.be


-- 
To unsubscribe or change your settings for TWSocket mailing list
please goto http://www.elists.org/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Bandwidth control TFtpClient

2006-01-17 Thread Angus Robertson - Magenta Systems Ltd
 Suppose you have a server running on an 100 MB WAN-connection,
 and there are clients that have 100MB upload and download lines,
 your server will be blocked immediately.

But we were not talking about servers, only clients. 

Angus

via a 10 Mbit cable modem g

-- 
To unsubscribe or change your settings for TWSocket mailing list
please goto http://www.elists.org/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Bandwidth control

2005-08-23 Thread Wilfried Mestdagh
Hello Dan,

 I've had a look at the smatters throttling code but I think it needs your
 socket code to be in a separate thread.

Yes you right, the code from Davie is for use in a thread.

---
Rgds, Wilfried
http://www.mestdagh.biz

-- 
To unsubscribe or change your settings for TWSocket mailing list
please goto http://www.elists.org/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Bandwidth control

2005-08-23 Thread David A. G.
Hi Dan, now it is working good !

About the Speed, yes, there is a problem there. I set up 10KB for Up and Dw 
and I got exactly 20KB :) the double.

I will try to check the code (but if you know where start finding the error 
please tell me). Look my logs:

Executing Requested Command
 PASV
 227 Entering Passive Mode (127,0,0,1,17,47).
 STOR x.dat
 150 Opening data connection for x.dat.
 226 File received ok
! 962564 bytes received/sent in 47 seconds (2 Bytes/sec)
Request 18 Done.
StatusCode = 226
LastResponse was : '226 File received ok'
No error

Executing Requested Command
 PASV
 227 Entering Passive Mode (127,0,0,1,17,49).
 RETR x.dat
 150 Opening data connection for x.dat.
 226 File sent ok
! 962564 bytes received/sent in 48 seconds (19000 Bytes/sec)
Request 10 Done.
StatusCode = 226
LastResponse was : '226 File sent ok'
No error


many thanks, see you,

David



- Original Message - 
From: Wilfried Mestdagh [EMAIL PROTECTED]
To: ICS support mailing twsocket@elists.org
Sent: Tuesday, August 23, 2005 12:10 PM
Subject: Re: [twsocket] Bandwidth control


 Hello Dan,

 I've had a look at the smatters throttling code but I think it needs your
 socket code to be in a separate thread.

 Yes you right, the code from Davie is for use in a thread.

 ---
 Rgds, Wilfried
 http://www.mestdagh.biz

 -- 
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://www.elists.org/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be 

-- 
To unsubscribe or change your settings for TWSocket mailing list
please goto http://www.elists.org/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Bandwidth control

2005-08-22 Thread Dan
As in uploading to the ftp server?
I'll look into it.

Dan

- Original Message - 
From: David A. G. [EMAIL PROTECTED]
To: ICS support mailing twsocket@elists.org
Sent: Monday, August 22, 2005 2:09 AM
Subject: Re: [twsocket] Bandwidth control


 Dan,

 Thanks for your code, I think the upload algorithm has a bug because my 
 test
 file is not completely uploaded :(, but the download is great.

 David




 - Original Message - 
 From: Dan [EMAIL PROTECTED]
 To: ICS support mailing twsocket@elists.org
 Sent: Sunday, August 21, 2005 9:13 PM
 Subject: Re: [twsocket] Bandwidth control


 http://www.xantorrent.pwp.blueyonder.co.uk/ics/ThrottledWSocket.zip

 Has ThrottledWSocket and ThrottledFTPSrv.  Should be easy to do the same
 for
 HTTP.

 Dan

 - Original Message - 
 From: David A. G. [EMAIL PROTECTED]
 To: twsocket@elists.org
 Sent: Sunday, August 21, 2005 11:42 PM
 Subject: [twsocket] Bandwidth control


 Hello, I'm finding an example of how to control the bandwidth in HTTP 
 and
 FTP server, any one has?
 thanks in advance,
 David

 -- 
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://www.elists.org/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be


 -- 
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://www.elists.org/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be

 -- 
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://www.elists.org/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be
 

-- 
To unsubscribe or change your settings for TWSocket mailing list
please goto http://www.elists.org/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Bandwidth control

2005-08-22 Thread David A. G.
Dan, I tried to upload files into the server and all files was broken. I 
think the last chunk of data is not saved.
In the other hand downloading files from the server is working good.

If you have some new update please tell me, I was finding for this kind of 
code for a long time...

thanks,
David

- Original Message - 
From: Dan [EMAIL PROTECTED]
To: ICS support mailing twsocket@elists.org
Sent: Monday, August 22, 2005 8:32 AM
Subject: Re: [twsocket] Bandwidth control


 As in uploading to the ftp server?
 I'll look into it.

 Dan

 - Original Message - 
 From: David A. G. [EMAIL PROTECTED]
 To: ICS support mailing twsocket@elists.org
 Sent: Monday, August 22, 2005 2:09 AM
 Subject: Re: [twsocket] Bandwidth control


 Dan,

 Thanks for your code, I think the upload algorithm has a bug because my
 test
 file is not completely uploaded :(, but the download is great.

 David




 - Original Message - 
 From: Dan [EMAIL PROTECTED]
 To: ICS support mailing twsocket@elists.org
 Sent: Sunday, August 21, 2005 9:13 PM
 Subject: Re: [twsocket] Bandwidth control


 http://www.xantorrent.pwp.blueyonder.co.uk/ics/ThrottledWSocket.zip

 Has ThrottledWSocket and ThrottledFTPSrv.  Should be easy to do the same
 for
 HTTP.

 Dan

 - Original Message - 
 From: David A. G. [EMAIL PROTECTED]
 To: twsocket@elists.org
 Sent: Sunday, August 21, 2005 11:42 PM
 Subject: [twsocket] Bandwidth control


 Hello, I'm finding an example of how to control the bandwidth in HTTP
 and
 FTP server, any one has?
 thanks in advance,
 David

 -- 
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://www.elists.org/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be


 -- 
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://www.elists.org/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be

 -- 
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://www.elists.org/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be


 -- 
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://www.elists.org/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be 

-- 
To unsubscribe or change your settings for TWSocket mailing list
please goto http://www.elists.org/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Bandwidth control

2005-08-22 Thread Darin McGee
Here is another throttle for TWSocket
 
http://www.smatters.com/ics/
 
Darin



From: [EMAIL PROTECTED] on behalf of David A. G.
Sent: Mon 8/22/2005 12:41 PM
To: ICS support mailing
Subject: Re: [twsocket] Bandwidth control



Dan, I tried to upload files into the server and all files was broken. I
think the last chunk of data is not saved.
In the other hand downloading files from the server is working good.

If you have some new update please tell me, I was finding for this kind of
code for a long time...

thanks,
David

- Original Message -
From: Dan [EMAIL PROTECTED]
To: ICS support mailing twsocket@elists.org
Sent: Monday, August 22, 2005 8:32 AM
Subject: Re: [twsocket] Bandwidth control


 As in uploading to the ftp server?
 I'll look into it.

 Dan

 - Original Message -
 From: David A. G. [EMAIL PROTECTED]
 To: ICS support mailing twsocket@elists.org
 Sent: Monday, August 22, 2005 2:09 AM
 Subject: Re: [twsocket] Bandwidth control


 Dan,

 Thanks for your code, I think the upload algorithm has a bug because my
 test
 file is not completely uploaded :(, but the download is great.

 David




 - Original Message -
 From: Dan [EMAIL PROTECTED]
 To: ICS support mailing twsocket@elists.org
 Sent: Sunday, August 21, 2005 9:13 PM
 Subject: Re: [twsocket] Bandwidth control


 http://www.xantorrent.pwp.blueyonder.co.uk/ics/ThrottledWSocket.zip

 Has ThrottledWSocket and ThrottledFTPSrv.  Should be easy to do the same
 for
 HTTP.

 Dan

 - Original Message -
 From: David A. G. [EMAIL PROTECTED]
 To: twsocket@elists.org
 Sent: Sunday, August 21, 2005 11:42 PM
 Subject: [twsocket] Bandwidth control


 Hello, I'm finding an example of how to control the bandwidth in HTTP
 and
 FTP server, any one has?
 thanks in advance,
 David

 --
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://www.elists.org/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be


 --
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://www.elists.org/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be

 --
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://www.elists.org/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be


 --
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://www.elists.org/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be

--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://www.elists.org/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


-- 
To unsubscribe or change your settings for TWSocket mailing list
please goto http://www.elists.org/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be