Linux Distributed Switch Architecture (DSA) List Explorer
Managed Ethernet switches are a core part of modern networks. Large data-center switches (24+ ports) commonly run Linux, and Linux is increasingly used on smaller consumer and industrial switches as well.
History and purpose
In 2008 Marvell introduced the Distributed Switch Architecture (DSA) as a kernel subsystem to make Ethernet switch chips appear and behave like ordinary Linux network interfaces. DSA exposes individual switch ports as logical interfaces, allowing standard tools such as ip and tc to configure them.
Over time, many DSA drivers for different switch chips were added to the kernel. Features like hardware offloading, VLAN handling, and traffic control integration vary by driver and chip.
On some devices the CPU-facing port is the master (for example eth0 in the RTL8267N example below) and the switch ports are exposed as lan1..lan4:
root@OpenWrt:~# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1508 qdisc fq_codel state UP qlen 1000
link/ether b8:27:eb:8f:43:df brd ff:ff:ff:ff:ff:ff
inet6 fe80::ba27:ebff:fe8f:43df/64 scope link
valid_lft forever preferred_lft forever
3: lan1@eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master switch state UP qlen 1000
link/ether b8:27:eb:8f:43:df brd ff:ff:ff:ff:ff:ff
4: lan2@eth0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue master switch state DOWN qlen 1000
link/ether b8:27:eb:8f:43:e0 brd ff:ff:ff:ff:ff:ff
5: lan3@eth0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue master switch state DOWN qlen 1000
link/ether b8:27:eb:8f:43:e1 brd ff:ff:ff:ff:ff:ff
6: lan4@eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master switch state UP qlen 1000
link/ether b8:27:eb:8f:43:e2 brd ff:ff:ff:ff:ff:ff
7: switch: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP qlen 1000
link/ether b8:27:eb:8f:43:df brd ff:ff:ff:ff:ff:ff
inet6 fe80::ba27:ebff:fe8f:43df/64 scope link
valid_lft forever preferred_lft forever
8: switch.1@switch: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP qlen 1000
link/ether b8:27:eb:8f:43:df brd ff:ff:ff:ff:ff:ff
inet 192.168.1.1/24 brd 192.168.1.255 scope global switch.1
valid_lft forever preferred_lft forever
inet6 fd8d:3fdb:486f::1/60 scope global noprefixroute
valid_lft forever preferred_lft forever
inet6 fe80::ba27:ebff:fe8f:43df/64 scope link
valid_lft forever preferred_lft foreverThe lan1–lan4 interfaces behave like regular Ethernet interfaces: you can assign IP addresses, create VLANs, add them to bridges, or configure mirroring and queuing with tc.
Why Linux Distributed Switch Architecture (DSA) List Explorer site exists
No single DSA driver implements every possible feature. When choosing a switch silicon or developing against DSA, it’s important to know which drivers and chips implement the features you need. To simplify that, I created the Linux DSA List Explorer: a web-based index of kernel drivers, supported chips, and per-driver feature support.
Visit the site: https://linux-dsa-list.albrechtloh.de/

Contributing
Found an issue or want to contribute? Open an issue or a pull request at https://github.com/AlbrechtL/linux-dsa-list — the project’s source code and issue tracker are there.
Enjoy using the Linux Distributed Switch Architecture (DSA) List Explorer.