Server-side Intelligent Switching using Windows Azure
for High Availability Cluster Networking
16 Nov, 2012
SAKURA Internet Research Center
Senior Researcher / Naoto MATSUMOTO
The 7 Things I Know About Cyber Security After 25 Years | April 2024
Server-side Intelligent Switching using Windows Azure
1. 16 Nov, 2012
SAKURA Internet Research Center
Senior Researcher / Naoto MATSUMOTO
2. Inteligent Switching Overview
Process Process Process Process Process Process
Azure VM Azure VM
Region-B Region-C
Process Process Process
Tunnel Tunnel Tunnel
Azure VM
Bridge + IEEE 802.1w(Rapid STP)
Region-D
Virtual Ethernet NIC
Process Process Process
Azure VM
Region-A Source: SAKURA Internet Research Center. 08/2012: Project THORN
3. How does it works?
Tunnel Interface + Linux Bridge+IEEE 802.1w (Rapid STP) Daemon =
Server-side Intelligent Switching
AzureVM# sudo rstpctl showport br0
Tunnel Tunnel Tunnel
* eoip1 8001 Fwd 8000-027a0b4f3269 8...3269 8001 D
Bridge + IEEE 802.1w(Rapid STP) * eoip2 8001 Fwd 8000-027a0b4f3269 8...3269 8002 D
:
Virtual Ethernet NIC
veth1 8004 Fwd 8000-027a0b4f3269 8...3269 8004 D
Process Process Process
Azure VM
Source: SAKURA Internet Research Center. 08/2012: Project THORN
4. Packages for Inteligent Switching
Tunnel Tunnel Tunnel - Tunneling Protocol:
GRETAP ..etc
Bridge + IEEE 802.1w - Bridging Daemon: bridge-utils
(Rapid STP) - Rapid STP Daemon: rstpd
http://git.kernel.org/?p=linux/kernel/git/shemminger/rstp.git
Virtual Ethernet NIC - Virtual Interface: iproute2
http://kernel.org/pub/linux/utils/net/iproute2/
Process Process Process
Azure VM(Ubuntu 12.04LTS)
Source: SAKURA Internet Research Center. 08/2012: Project THORN
5. Install rstpd and switch-setup
$ uname -a
Linux AzureVM 3.2.0-24-virtual #39-Ubuntu SMP Mon May 21 18:44:18 ..
$ sudo aptitude install bridge-utils module-assistant ; sudo module-assistant prepare
Download rstpd pacakge from http://git.kernel.org/?p=linux/kernel/git/shemminger/rstp.git
$ cd rstpd
$ sudo make ; sudo make install
$ sudo ip link add eoip0 type gretap remote X.X.X.X local Y.Y.Y.Y
$ sudo ip link add type veth
$ sudo ifconfig veth0 mtu 1462
$ sudo ifconfig veth1 mtu 1462
$ ifconfig veth0 up up
$ ifconfig veth0 up up
$ ifconfig eoip0 up up
$ sudo brctl addbr br0
$ sudo brctl addif br0 veth1
$ sudo brctl addif br0 eoip0
$ sudo rstpd
$ sudo rstpctl rstp br0 on
$ sudo rstpctl showport br0