Forum: PC Hard- und Software Routing, traffic control - Internet-Bandbreite für Clients mit Prioritäten versehen


von Vroni M. (vronilog)


Lesenswert?

Hi,

das Setup:

Ein Raspberry (Arch-Linux) bezieht Internet über Wlan und gibt es per 
Ethernet an einen Router weiter, der seinerseits mehrere Clients 
versorgt (*). Funktioniert optimal, wurde nach dieser Anleitung 
eingerichtet: https://wiki.archlinux.org/index.php/Internet_sharing

das Ziel:

Die verfügbare Bandbreite schwankt stark. Einer der Clients soll mit 
absolut höchster Priorität versorgt werden also so, dass er garnicht 
bemerkt, ob grade andere Clients den Zugang auslasten. Freie 
Kapazitäten, also ggf. auch alle, sollen unter den anderen Clients 
aufgeteilt werden. Deren Bandbreite einfach zu beschneiden ist es also 
nicht...

Ich glaube, dass ich hier schonmal nicht ganz falsch bin: 
https://wiki.archlinux.org/index.php/Advanced_traffic_control#Using_tc_only 
. Auf dieser Seite habe ich nun eune ganze Weile versucht mich 
einzulesen und bishher vor allem eines verstanden: Bandbreiten zu 
managen ist eine eher komplexe Geschichte.

Könntet ihr mir da weiterhelfen bitte? Auf der Seite sind 
unterschiedliche Konzepte beschrieben wie Stochastic Fairness Queueing 
(SFQ), Hierarchical Token Bucket (HTB) usw... Ist da eines das richtige 
für dieses Problem? HTB hört sich gut an, da wird aber wohl von einer 
"fixed bandwith" ausgegangen -ist also nix...

Mit Ausprobieren an die Geschichte ranzugehen würde Tage dauern. Könntet 
ihr mmich bitte in die richtige Richtung schicken? Hat jemand von euch 
sowas vielleicht sogar schonmal eingerichtet?

Gibt es vielleicht eine einfache Lösung durch den Sonderfall, dass es ja 
eigentlich nicht  mehrere Prioritäten gibt, sondern lediglich einen 
"Masterclient"?

Danke!!!


/edit

(*) IPs der Clients sind statisch

: Bearbeitet durch User
von Eric (Gast)


Lesenswert?

Der Uplink deines Routers ist hierfuer irrelevant. Du suchst nach einer 
QoS/Trafic Shaping Loesung; die musst Du auf Firewallebene einrichten.
Dazu musst Du uns aber verraten, um welche FW es sich handelt.

Hier mal ein paar Beispiele:

pfsense: 
https://docs.netgate.com/pfsense/en/latest/trafficshaper/traffic-shaping-guide.html

cisco ASA: 
https://www.cisco.com/c/ja_jp/support/docs/security/asa-5500-x-series-next-generation-firewalls/82310-qos-voip-vpn.html

von (prx) A. K. (prx)


Lesenswert?

Traffic Shaping kann im Prinzip in jedem Gerät eingerichtet werden, wo 
die Pakete rausgehen. In obiger Topologie
  Clients <=> interner Router <=> RasPi <=> Access-Router <=> Internet
kann es der RasPi durchaus selber erledigen, denn er steht in beiden 
Richtungen zwischen Internet und den Clients.

Mit der oben angeführten traffic control (tc) in Linux habe ich 
allerdings bisher nur Bandbreitenbegrenzung einer bestimmten Verbindung 
implementiert, nicht das beschriebene Szenario.

: Bearbeitet durch User
von BöserAlterMann (Gast)


Lesenswert?

> Der Uplink deines Routers ist hierfuer irrelevant. Du suchst nach einer
> QoS/Trafic Shaping Loesung; die musst Du auf Firewallebene einrichten.
> Dazu musst Du uns aber verraten, um welche FW es sich handelt.
???
Eigendlich kann man nur den uplink wirklich genau kontrolieren.
Die FW wird die des Linux kernels sein und sich mit iptables oder 
nftables konfiguriren lassen
Bei pfsense wird es die gleiche sein + tc, nur eben mi einem Frontend.

> Die verfügbare Bandbreite schwankt stark.
Wo an welcher stelle ?
Hier musst du den Traffic kontrolieren.
Leider kommst du an tc nicht vorbei.
Mich würde die Lösung auch interessieren. Schau dir mal "cake" an.

bzw  so müsste es klappen wenn die bandbreite nicht eingestellt werden 
müsste:
> tc qdisc add dev <uplink-dev> root cake bandwidth 20mbit internet diffserv3

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.