Coder Social home page Coder Social logo

tc-gen's People

Contributors

hkbakke avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

tc-gen's Issues

limit bandwith per client

Hi, @hkbakke !
Thanks for wrapper that makes easier for setup traffic shaping.
Is it possible to setup limiting also per connection (i.e. ip client) as described in this stack question?
We have limiting speed per interface, but it is not exactly the same.

ecn is ok above 2.5Mbits usually

While this is very clean code compared to how "sqm-scripts" has evolved (see that or "wondershaper must die") I wanted to clarify that ecn on egress is generally ok at speeds above, say, 2.5 or 4Mbits.

flowid setting invalid

This may not be an issue for all linux distros however using alpine I am having an issue with the flowid setting when configuring the download.

What is ":1"?
Usage: ... u32 [ match SELECTOR ... ] [ link HTID ] [ classid CLASSID ]
               [ action ACTION_SPEC ] [ offset OFFSET_SPEC ]
               [ ht HTID ] [ hashkey HASHKEY_SPEC ]
               [ sample SAMPLE ] [skip_hw | skip_sw]
or         u32 divisor DIVISOR

Where: SELECTOR := SAMPLE SAMPLE ...
       SAMPLE := { ip | ip6 | udp | tcp | icmp | u{32|16|8} | mark }
                 SAMPLE_ARGS [ divisor DIVISOR ]
       FILTERID := X:Y:Z

NOTE: CLASSID is parsed at hexadecimal input.
./tc-gen: Error in line 418 (exit code 1)

This can be quickly tested with the following Dockerfile

FROM alpine:3.7

RUN apk add --update --no-cache openssl ca-certificates git bash make iproute2 \
    && (wget -q -O sivel-speedtest https://github.com/sivel/speedtest/releases/download/v0.0.2/speedtest_linux_amd64 && chmod +x sivel-speedtest) \
    && (git clone  https://github.com/magnific0/wondershaper.git && cd wondershaper && make install) \
    && (wget -q -O tc-gen https://raw.githubusercontent.com/hkbakke/tc-gen/master/src/tc-gen && chmod +x tc-gen)

CMD ./tc-gen -i eth0 -u 10 -d 10 \
    && ./sivel-speedtest
sudo docker build -t speedtest-cli .
sudo docker run -it --cap-add=ALL speedtest-cli

Removing the offending line does allow the script to execute properly however the 10Mbit setting does not seem to be properly applied to the download resulting in ~1Mbit instead. The upload value of 10Mbit results in speed tests around 9Mbit so I believe that is working nominally.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.