1
Hardware switches - the open-source approach
Jiří Pírko jiri@resnulli.us Red Hat
Proceedings of netdev 0.1, Feb 14-17, 2015, Ottawa, On, Canada
Hardware switches - the open-source approach Ji Prko - - PowerPoint PPT Presentation
Hardware switches - the open-source approach Ji Prko jiri@resnulli.us Red Hat Proceedings of netdev 0.1, Feb 14-17, 2015, Ottawa, On, Canada 1 Scope of talk Open-source Linux support for various switch and switch-ish chips.
1
Proceedings of netdev 0.1, Feb 14-17, 2015, Ottawa, On, Canada
2
–
–
–
–
–
–
Proceedings of netdev 0.1, Feb 14-17, 2015, Ottawa, On, Canada
3
–
–
–
–
–
–
–
Proceedings of netdev 0.1, Feb 14-17, 2015, Ottawa, On, Canada
4
NIC driver userspace kernel kernel hardware vendor X switch Y chip swp0phy swp1phy eth0 swpNphy
#ip #tc #bridge RT Netlink ethtool ioctl #ethtool custom app Network Manager eth0phy NIC vendor X proprietary SDK proprietary switch app
Proceedings of netdev 0.1, Feb 14-17, 2015, Ottawa, On, Canada
5
–
–
–
–
–
Proceedings of netdev 0.1, Feb 14-17, 2015, Ottawa, On, Canada
6
NIC driver userspace kernel kernel hardware vendor X switch Y chip swp0phy swp1phy eth0 swpNphy
#ip #tc #bridge RT Netlink ethtool ioctl #ethtool custom app Network Manager eth0phy NIC switch Y driver swp0 swpN swp1
Proceedings of netdev 0.1, Feb 14-17, 2015, Ottawa, On, Canada
7
–
–
switchdev infrastructure RT Netlink Ethernet bridge Open vSwitch datapath switch X driver int netdev_switch_*(...)
action event notifjer int call_netdev_switch_notifjers(...) notifjer
Proceedings of netdev 0.1, Feb 14-17, 2015, Ottawa, On, Canada
8
–
–
–
–
–
Proceedings of netdev 0.1, Feb 14-17, 2015, Ottawa, On, Canada
9
–
– Called by the core IPv4 FIB code when installing/removing FIB entries
–
–
–
–
–
–
Proceedings of netdev 0.1, Feb 14-17, 2015, Ottawa, On, Canada
10
userspace kernel kernel hardware RT Netlink TC fjlters: u32 bpf ... xfmows actions: police mirred ... xfmows xfmows backend API vendor X switch Y chip swp0phy swp1phy swpNphy
switch Y driver swp0 swpN swp1 xfmows backend implementation Open vSwitch datapath xfmows backend implementation br0 generic Netlink
userspace custom fmow managing app
Proceedings of netdev 0.1, Feb 14-17, 2015, Ottawa, On, Canada
11
–
–
–
–
Proceedings of netdev 0.1, Feb 14-17, 2015, Ottawa, On, Canada
12
NIC X driver kernel hardware phyPF NIC X embedded switch driver SR-IOV NIC X embedded switch swpPF VF0 swpVF0 VF1 swpVF1 VF2 swpVF2 ethPF ethVF0 ethVF1 ethVF2 swpPF swpVF0 swpVF1 swpVF2
Proceedings of netdev 0.1, Feb 14-17, 2015, Ottawa, On, Canada
13
–
–
–
–
Proceedings of netdev 0.1, Feb 14-17, 2015, Ottawa, On, Canada
14
kernel hardware switch Y chip swp0phy swp1phy swpNphy
switch X DSA driver swp0 swpN swp1 eth0 tagged
Proceedings of netdev 0.1, Feb 14-17, 2015, Ottawa, On, Canada
15
Proceedings of netdev 0.1, Feb 14-17, 2015, Ottawa, On, Canada