Hallo wertes Forum, alles Nachfolgende ist derzeit nur eine reine Überlegung und die Frage der generellen Machbarkeit. Einige von euch werden von RISC-V (https://en.m.wikipedia.org/wiki/RISC-V) eventuell schon gelesen haben. Mit der nächsten Linux Kernel Verion 4.15 wird RISC-V auch vom Linux Kernel unterstützt. Ich selbst habe hier mehrere Router mit LEDE die als Repeater genutzt werden, sowie einige Web Managed Switche die VLAN „machen“. Meine Überlegung war vor kurzem dass wenn RISC-V Prozessoren verfügbar sind (2018(?)) und LEDE die RISC-V Architektur unterstützt, einen Switch mit LEDE selbst zu bauen. Ich weiß das wird, sofern überhaupt möglich, dann wahrscheinlich nicht so einfach. Hintergedanke: Mir gefällt das Web Management meiner Switche nicht, dafür aber das von LEDE (LuCI). Auch kann ich bei LEDE mMn sicher sein dass es Updates gibt (sofern RISC-V unterstützt wird). Auch könnte man mit einem größeren Flash Funktionen nachrüsten, sofern Bedarf da ist. Ich hoffe dass ich alles (halbwegs) verständlich rüberbringen konnte. Ist die Idee umsetzbar?
So ganz ist mir noch nicht klar, was ein Routerbetriebssystem mit einem Ethernet-Switch zu tun hat, und wie das von einer bestimmten Prozessorarchitektur abhängt. Ich würde mir ansehen, welches der benötigten Features des gewünschten Switches sich z.B. hiermit umsetzen ließen http://www.microchip.com/wwwproducts/en/KSZ9897 und daran dann einen mehr oder weniger beliebigen µC mit Ethernet-Interface hängen, der dann die Management-Schnittstelle übernimmt. Der ist für das Webinterface etc. zuständig, sollte also schon oberhalb der 8-Bit-AVR-Klasse schwimmen. Da kann man dann auch Dein OpenWRT-Derivat drauf laufen lassen.
Umsetzbar mehr oder weniger, wenn es Controller mit genug Ethernet Ports gibt. Normalerweise verbindet man die Ports jedoch mit einem dediziertem Switch Fabric (zB 88E6176) wie es in sogut wie allen Home-Routern gemacht wird. Preislich ist so eine Eigenentwicklung sowieso ein Fass ohne Boden...rechne mit mehreren k€.. Letztendlich ist dein Vorhaben aber relativ sinnlos...kauf die einfach profesionelle Switche und werd glücklich. Das Switch/VLAN Management in LEDE ist sehr primitiv gegenüber "richtigen" Lösungen..
Wenn es schnell sein soll, brauchst Du Hardware. Layer 2 Switching wird mit passenden Chips erledigt - für das Management reicht notfalls auch ein 8-Bitter. Layer 3 Switching in entsprechenden Geräten wird auch per Hardware gemacht und nicht über den Steuerprozessor - außer vielleicht fürs erste Paket. Erst die Spezialhardware bringt die Geschwindigkeit. Und wenn Du erst fragen musst, ob DAS für DICH machbar ist, dann ist es das nicht. Wenn Dir das User Interface nicht gefällt, setze doch einen Webserver auf, der die einzelnen Geräte per SNMP steuert, sofern die das können. So funktionieren die kommerziellen Verwaltungstools auch. fchk
Der Linux-Kernel wird nur RV64G unterstützen, was für das bisschen Management übertrieben ist; einen Port für RV32G wird es nicht geben. Der Datenverkehr sollte ohnehin nicht durch die CPU laufen. Ich würde jetzt nicht davon ausgehen, in naher Zukunft überhaupt einen passenden RISC-V-Prozessor in die Hände zu bekommen, schon garnicht in günstig. Wenn du auf OpenWrt stehst, dann kaufe dir einen günstigen Router, der von OpenWrt vollkommen unterstützt wird. Das ist dann zwar meist MIPS drin, aber im Endeffekt spielt das sowieso keine Rolle (weil Linux). Willst du eigentlich nur mit RISC-V spielen, dann kannst du das in Emulatoren und FPGAs tun, für beides gibt es passenden Code im Netz. Einen Switch-Chip ranknoten kannst du an den FPGA sicherlich auch, aber fertige CPUs kannst du auf absehbar vergessen.
Frage: Wozu? Robuste MIPS-basierte Software-Switches gibt es eine Menge. Du wirst so bald vermutlich keinen RISCV mit <n> Phy-Interfaces in die Finger kriegen. CPU-Core ist das eine, ein guter Ethernet-Core und die passende DMA-Engine das andere. Wenn du dir wirklich an einer Selbstbau-Switch-Architektur die Nase blutig rennen willst (sprich, lernen :-) ) dann läge der Ansatz per FPGA ev. näher (z.B. ECP5 Versa Kit mit 2 GigE Interfaces).
RISC-V ist super, wenn du einen eigene Prozessor im FPGA implementieren, und keine Lizenzprobleme bekommen willst, oder wenn du Chip Hersteller bist und ARM oder MIPS keinen Lizenzgebühren zahlen willst. Für den Anwender des Prozessors ist es aber egal was da für eine Architektur verwendet wird. Für nächstes Jahr sind einige RISC-V Chips angekündigt, sooo lange muss man also nicht mehr warten. Aber ob da welche für Netzwerke optimierte dabei sind, weiss ich auch nicht.
S. R. schrieb: > Der Linux-Kernel wird nur RV64G unterstützen, was für das bisschen > Management übertrieben ist; einen Port für RV32G wird es nicht geben. Hab das nicht mehr mitverfolgt, aber angekündigt war auch Unterstützung für RV32: http://lkml.iu.edu/hypermail/linux/kernel/1705.2/05551.html
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.