Forum: PC Hard- und Software Linux Geschwindigkeit einer Netzwerkschnittstelle begrenzen


von Fragender (Gast)


Lesenswert?

Schönen guten Tag,

ich arbeite derzeit an einen ARM-Board (AM335X) bei welchen es in einen 
bestimmten Betriebsmodus nur beschränkt viel Leistung vom Netzteil(Was 
nicht veränderbar ist) zur Verfügung steht. Um meine Leistungsaufnahme 
in den Fall zu verringern, suche ich eine Möglichkeit die 
Autonegotiation der Netzwerkschnittstelle auf 100 Mbit zu 
begrenzen(Schnittstelle hat Gigabit und spart auf diesen Weg ungemein 
viel Energie). Eine Hardware Änderung kommt in diesen Fall leider nicht 
in Frage, da es ebenso Betriebsfälle gibt, bei den die 1000 Mbit vom 
Kunden gefordert werden. Das Modul hat selbständig die Möglichkeit zu 
erkennen in welchen Betriebsfall es sich gerade befindet und könnte 
dementsprechend die Einstellung ändern.

Wenn ich die gängigen Tools wie ethtool oder den Vorgänger mii-tool 
nutze, habe ich das Problem, das ich die Netzwerkschnittstelle nur fest 
auf eine Geschwindigkeit einstellen kann. Jedoch kann ich vorneweg nicht 
sagen, ob mir das Netzwerk 10 Mbit  100 Mbit  1000 Mbit mit Full- oder 
Halbduplex zur Verfügung stellt.

Eine Reine Begrenzung der Bandbreite(wozu es viele Tools gibt) reicht in 
diesen Fall nicht aus. Es muss die Geschwindigkeit beeinflusst werden.

Kennt jemand eine Möglichkeit dies zu bewerkstelligen?

Vielen Dank für Ihre Hilfe.

von Walter K. (Gast)


Lesenswert?

Fragender schrieb:
> Wenn ich die gängigen Tools wie ethtool oder den Vorgänger mii-tool
> nutze, habe ich das Problem, das ich die Netzwerkschnittstelle nur fest
> auf eine Geschwindigkeit einstellen kann. Jedoch kann ich vorneweg nicht
> sagen, ob mir das Netzwerk 10 Mbit  100 Mbit  1000 Mbit mit Full- oder
> Halbduplex zur Verfügung stellt.

Aber genau das willst Du doch! Du willst zu bestimmten Zeitpunkten und 
bei gewissen Abhängigkeiten fest einstellen.
Und so wie du mit ethtool die Geschwindigkeit einstellen kannst - kannst 
Du die ausgehandelte Geschwindigkeit auch abfragen - und danach 
autonegotiation abschalten.

Allerdings klingt das alles nach Bastelei und Murx!
Was nützt Dir eine geniale Umstellung der Geschwindigkeiten,
wenn der mit dem LAN Modul verbundene Switch
(auf den Du ja keinen Einfluss hast )
beim Umstellen zu husten anfängt, weil dessen Autonegotation zu langsam 
ist - oder nicht richtig funktioniert?

von Fragender (Gast)


Lesenswert?

Walter K. schrieb:
> Allerdings klingt das alles nach Bastelei und Murx!
> Was nützt Dir eine geniale Umstellung der Geschwindigkeiten,
> wenn der mit dem LAN Modul verbundene Switch
> (auf den Du ja keinen Einfluss hast )
> beim Umstellen zu husten anfängt, weil dessen Autonegotation zu langsam
> ist - oder nicht richtig funktioniert?

DA hast du natürlich recht. Das Problem hierbei ist leider, das am 
Anfang eine Energie Bilanz aufgestellt wurde, mit einen falschen 
Energiebedarf von externen Sensoren. Dieser Bedarf wurde uns vom Kunden 
selbst mitgeteilt und danach wurde gearbeitet. Jetzt stellte sich leider 
Nachträglich heraus(als wir die Sensoren endlich erhielten), das diese 
den Energiebedarf erheblich verletzten. Somit sind unsere Reserven die 
wir eingebaut haben, leider erschöpft und die Grenzen sogar 
überschritten. Um die Grenzen jetzt noch zuhalten, war jetzt eine Idee 
die Geschwindigkeit des Netzwerkes zu drosseln und die gesparte Energie 
den Sensoren zur Verfügung zu stellen.

von Walter K. (Gast)


Lesenswert?

Fragender schrieb:
> Um die Grenzen jetzt noch zuhalten, war jetzt eine Idee
> die Geschwindigkeit des Netzwerkes zu drosseln und die gesparte Energie
> den Sensoren zur Verfügung zu stellen.

Dagegen ist ja nichts zu sagen - wenn man es statisch macht.

von Michael X. (Firma: vyuxc) (der-michl)


Lesenswert?

Schau dir die Register des PHY an. Eventuell gibts da ein link 
capability-Register in dem du einen Gigabit-Kink ausschließen kannst. 
10/100 full/halbduplex gehen dann wie gewohnt.

von Fragender (Gast)


Lesenswert?

Michael X. schrieb:
> Schau dir die Register des PHY an. Eventuell gibts da ein link
> capability-Register in dem du einen Gigabit-Kink ausschließen kannst.
> 10/100 full/halbduplex gehen dann wie gewohnt.

Vielen Dank, das ist genau das was ich gesucht habe. Warum ich nicht 
gleich darauf gekommen bin. Die Verwendete Phy stellt genau diese Option 
zur Verfügung. Jetzt muss ich nur noch herausbekommen wie ich die 
Register als User umschreiben kann.

Vielen Dank!

von Omega G. (omega) Benutzerseite


Lesenswert?

Mit mii-tool solltest du angeben können was advertised wird und somit 
die Register der PHY ändern können.

von Fragender (Gast)


Lesenswert?

Omega G. schrieb:
> Mit mii-tool solltest du angeben können was advertised wird und
> somit
> die Register der PHY ändern können.

? Scheint zu funktionieren. Problem gelöst. ?

Vielen Dank an alle.

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.