Skip to content

Linux Bridge : TODO

Kentaro Ebisawa edited this page Mar 21, 2015 · 1 revision

Function of Linux bridge.

https://github.com/ebiken/doc-network/wiki/Linux-Bridge-:-Introduction

  • dev which can be attached to bridge. (eth/virtual etc.)
  • non-compliant part of STP standard.
    ?? can a NIC connected to 2 or more linux bridges? (was not possible in 2.6) ?? what exactly mean by "dev is attached to bridge" ? (dev->br_port)

Done: What's done during module init. (during modprobe/insmod?)

https://github.com/ebiken/doc-network/wiki/Linux-Bridge-:-Initialization

Interaction with user space tools.

via both IOCTL and netlink.
Start with netlink ... iproute2 (bridge) utility.

  • Adding bridge. (what will be done in background. default values.)
  • Adding ports.
  • IOCTL or sysfs (/sys) ??
  • IOCTL command routing paths.
  • files created under /sys /dev /proc.

bridge related EVENTS o netdevice Notification Chain: NETDEV_UP/NETDEV_CHANGE ...

Linux Bridge implementation details

  • Forwarding Database (fdb) o data structure of fdb. o logic to insert/remove/lookup fdb entry. (lookup=__br_fdb_get, br_fdb_get, fdb_find) br_add_if -> br_fdb_insert, br_fdb_update. o limit to number of fdb entries. (no hard limit in 2.6) o aging (gc_timer, br_fdb_cleanup)
  • Forwarding o br_handle_frame (Special handling of BPDU etc. depending on stp enabled/disabled) o hard_start_xmit / br_dev_xmit.

misc FAQs.

????

Clone this wiki locally