Load balancing rule to identify larger file downloads?

Home Page Forums Network Management ZeroShell Load balancing rule to identify larger file downloads?

This topic contains 2 replies, has 0 voices, and was last updated by  DWJames 7 years, 7 months ago.

Viewing 4 posts - 1 through 4 (of 4 total)
  • Author
    Posts
  • #43168

    DWJames
    Member

    Hi,
    big thanks for all the hard work that’s gone into Zeroshell, I’m really impressed and now have a box sharing and balancing over 1 x SDSL, 3 x ADSL, 3 x 3G Dongles and 1 x 10mb Satellite connection very nicely 😀

    Our satellite link has good bandwidth, but high latency, which makes it unsuitable for the general work we do via the web, but it’s great for downloading larger files.

    Does anyone know a way I can set a load balancing rule to identify some of the larger (say 10mb+) file downloads that are made via the browser so I can route them to this link? I guess it’s a little difficult as it’s likely to be port 80 traffic, but I know some proxies like squid can block access to larger files so I wonder if there’s a way they can be identified?

    Thanks in advance,
    James 🙂

    #52006

    DWJames
    Member

    I can see the that in the config for Squid for example:

    “You can set the global reply_body_max_size parameter. This option controls the largest HTTP message body that will be sent to a cache client for one request.
    If the HTTP response coming from the server has a Content-length header, then Squid compares the content-length value to the reply_body_max_size value. If the content-length is larger,the server connection is closed and the user receives an error message from Squid. “

    Is there a way I can identify this content-length value in a rule?

    #52007

    atheling
    Member

    @dwjames wrote:

    I can see the that in the config for Squid for example:

    “You can set the global reply_body_max_size parameter. This option controls the largest HTTP message body that will be sent to a cache client for one request.
    If the HTTP response coming from the server has a Content-length header, then Squid compares the content-length value to the reply_body_max_size value. If the content-length is larger,the server connection is closed and the user receives an error message from Squid. “

    Is there a way I can identify this content-length value in a rule?

    I am not an expert in this but I doubt you can make a routing rule for this.

    The HTTP header that Squid is looking at is buried in the middle of a TCP connection. Which means the connection has been setup and thus the routing decision has already been made.

    Beyond that, I am not aware of an available balancing filter that can look into the contents of a TCP stream like that. The ones I’ve looked at make their decision on the first packet they receive. Or for protocols like SIP or FTP, are monitoring the control stream to see what data streams are being setup.

    #52008

    DWJames
    Member

    That makes sense,
    thanks for the reply 🙂

Viewing 4 posts - 1 through 4 (of 4 total)

You must be logged in to reply to this topic.