Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    Splitting download bandwidth by groups and fairly sharing upload

    Scheduled Pinned Locked Moved Traffic Shaping
    7 Posts 2 Posters 1.4k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • J
      jetberrocal
      last edited by

      Change my subject line in attempt to get more answers and benefit other users.

      (Tried to make the subject for this thread but could not do it wright.  I don't have enough terminology to do it in a condensed subject line.)

      I have 50 computers LAN, but like two computers use extensive burst downloads, sharing one single WAN to Internet.

      One does hundreds of file downloads, and the other uses streaming.  The other computers use the bandwidth typically as Web Clients.

      I would like to have 2 highways.  In Highway 1 have the regular 48 computers sharing their bandwidth segment proportionally (let say 10MB of 40MB).  In Highway 2 have the two extensive burst download computers sharing their bandwidth segment proportionally (let say 30MB of 40MB).

      Proportionally I mean that from 10MB if there are 10 connections each will have 1MB, but if there are only 1 it will have the full 10MB.

      Maybe use MAC address or IPs to determine which highway to direct the traffic for the computers.

      The Download total is 40MB.

      Then have for Upload only one Highway for all computers sharing the bandwidth proportionally (The upload total is 3MB).

      1 Reply Last reply Reply Quote 0
      • H
        Harvy66
        last edited by

        You could get your 80/20 rule by creating two HFSC queues on your LAN interface, one with 10Mb and the other with 30Mb, set "Codel Active queue" for each of them, then just create rules that assign your traffic based on IP to the two different queues. For your WAN, just set the shaper to Codel and 3Mb, no queues needed.

        1 Reply Last reply Reply Quote 0
        • J
          jetberrocal
          last edited by

          @Harvy66:

          You could get your 80/20 rule by creating two HFSC queues on your LAN interface, one with 10Mb and the other with 30Mb, set "Codel Active queue" for each of them, then just create rules that assign your traffic based on IP to the two different queues. For your WAN, just set the shaper to Codel and 3Mb, no queues needed.

          Could you provide some screen view.  I have pfsense 2.3.2-Release.

          I went to Firewall -> Traffic Shaper -> By Queue. But I can't add anything there.

          1 Reply Last reply Reply Quote 0
          • J
            jetberrocal
            last edited by

            Can I use Limiters for a solution for this thread?

            Assuming Alias HighVolume.

            Maybe I can make 3 Limiters.

            LimiterOne for 30MB Download
            LimiterTwo for 10MB Download
            LimiterThree for 3MB Upload

            Then create Two Rules.
            Rule1 with In/Out Pipe LimiterThree/LimiterOne for Source Alias HighVolume
            Rule2 with In/Out Pipe LimiterThree/LimiterTwo for Source "invert match" Alias HighVolume

            The problem is that if computers in HighVolume are not connected the others wont use the 30MB bandwidth segment.
            Is there a way that I can allow the not HighVolume computers to use that bandwidth?

            1 Reply Last reply Reply Quote 0
            • J
              jetberrocal
              last edited by

              I am wondering.

              Assuming Alias HighVolume.

              Maybe I can make 3 Limiters.

              LimiterOne for 30MB Download
              LimiterTwo for 40MB Download (instead of 10MB)
              LimiterThree for 3MB Upload

              Then create Two Rules.
              Rule1 with In/Out Pipe LimiterThree/LimiterOne for Source Alias HighVolume
              Rule2 with In/Out Pipe LimiterThree/LimiterTwo for Source "invert match" Alias HighVolume

              What will happen when the HighVolume computers are not connected?
              I guess since the LimiterTwo is set to 40MB, the non HighVolume computer will use the full bandwidth.  Please confirm.

              What will happen when the HighVolume computers are indeed connected?
              I guess HighVolume computer will try to use their limit but will have to compete for the bandwidth.  Please confirm.

              Will the order of the rules gives priority to the HighVolume computers to allow them to reach their limit (30MB) and will push the others computers to their 10MB "virtual" limit?

              1 Reply Last reply Reply Quote 0
              • J
                jetberrocal
                last edited by

                Having a better understanding of the problem can you experts suggest a better subject for this thread so I can change it for the benefit of others with similar problem.

                1 Reply Last reply Reply Quote 0
                • H
                  Harvy66
                  last edited by

                  I find naming things harder than all of the other problems in CS. Concurrency is trivial comparatively.

                  "Splitting download bandwidth by groups and fairly sharing upload"?

                  1 Reply Last reply Reply Quote 0
                  • First post
                    Last post
                  Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.