├── README.md
├── doc
└── SDN Testbed(ONOS & OVX).pdf
└── img
├── pi-switch-0.jpg
├── pi-switch-1.jpg
├── pi-switch-2.jpg
├── pi-switch-3.jpg
├── pi-switch-4.jpg
├── pi-switch-5.jpg
├── pi-switch-6.jpg
├── pi-switch-component.jpg
└── pi-switch-process.jpg
/README.md:
--------------------------------------------------------------------------------
1 | #Pi-Switch
2 |
3 |
4 |
5 |
6 |
7 |
8 | ##What is Pi-Switch?
9 | __Pi-Switch__ is cost-effective switch for SDN networking testbed using Raspberry Pi2 and Open vSwitch. Pi-Switch can be controlled via the OpenFlow protocol because it is based on the Open vSwitch. Then, It is made with low-cost single board computer called Raspberry Pi. If you have Raspberry Pi and USB to Ethernet adapter, you can build easily your own testing environment for SDN networking. Raspberry Pi2 supports basically four USB ports. You can add USB to Ethernet adapter for expanding Ethernet ports(Network interfaces). As a result Pi-Switch has single built-in Ethernet port and four expanded Ethernet ports, total five Ethernet ports. If you need more Ethernet ports, you can use self-powered USB hub.
10 |
11 |
12 |
13 |
14 |
15 |
16 | ##Pi Stack Switch
17 | Single Pi-Switch has limitation of Ethernet port number and lack of processing power. If you test network performance with just single Pi-Switch that supports 4 or more Ethernet port using self-powered USB hub, you may experience performance degradation due to bottleneck situation in chip of Raspberry Pi. This is problem of hardware.
18 | So, We propose __Pi Stack Switch__ for solving these problems. If you want to test network with 4 or more Ethernet ports, we recommend Pi Stack Switch. Pi Stack Switch is made of stacked Pi-Switch and comprised of single main switch and 3 or 4 sub switch. Classification of main switch and sub switch is based on physical position.
19 |
20 | [SlideShare about Pi Stack Switch : Building SDN Testbed](http://www.slideshare.net/kairosfox/sdn-onos-openvirtex)
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 | ##Hardware Component of Pi Stack Switch
29 | 
30 |
31 |
32 |
33 |
34 |
35 |
36 | ##Deployment of Main / Sub switch
37 |
38 |
39 | ###Single main switch and three sub switch
40 |
41 |
42 |
43 |
44 |
45 |
46 | ##Process
47 |
48 |
49 | ※_[Caution] It may not function due to the difference in power consumption according to the type of the adapter's chipset._
50 |
51 | ---
52 |
53 | ##Installation
54 | 1. Set prerequisites
55 |
56 | `$ sudo rpi-update`
57 |
58 | `$ sudo apt-get update`
59 |
60 |
61 |
62 |
63 | 2. Install OpenvSwitch
64 |
65 | `$ sudo apt-get install openvswitch-switch openvswitch-controller openvswitch-common`
66 |
67 |
68 |
69 |
70 | 3. Add Network Interface(Hardware device) at Raspberry Pi. ex> USB to Ethernet adaptor
71 |
72 |
73 |
74 |
75 |
76 | 4. Check connection between Network Interface and Raspberry Pi
77 |
78 | `$ ifconfig`
79 |
80 |
81 |
82 |
83 | 5. Configure OVS in Raspberry Pi
84 |
85 | `$ sudo ovs-vsctl add-br `
86 |
87 | `$ sudo ifconfig up`
88 |
89 | `$ sudo ovs-vsctl add-port eth0`
90 |
91 | `$ sudo ovs-vsctl add-port eth1`
92 |
93 | ...
94 |
95 |
96 |
97 |
98 | 6. If Your Pis are allocated IP address, Set IP address/netmask on bridge. And deallocate eth0.
99 |
100 | `$ sudo ifconfig `
101 |
102 | `$ sudo ifconfig eth0 0`
103 |
104 | [example]
105 |
106 | `$ sudo ifconfig 192.168.0.101/24`
107 |
108 | `$ sudo ifconfig eth0 0`
109 |
110 |
111 |
112 |
113 | 7. Edit MAC address of Pi-eth0 and bridge's MAC address (Pi-eth0 MAC addr == Bridge MAC addr)
114 |
115 | `$ sudo ifconfig hw ether `
116 |
117 | [example]
118 |
119 | `$ sudo ifconfig hw ether 00:00:00:00:00:00`
120 |
121 |
122 |
123 |
124 |
125 |
126 | 8. Set controller of Pi Switch
127 |
128 | `$ sudo ovs-vsctl set-controller tcp:000.000.000.000:6633`
129 |
130 |
131 |
132 |
133 |
--------------------------------------------------------------------------------
/doc/SDN Testbed(ONOS & OVX).pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OpenWinCon/pi-switch/146639bf4324f13be94562bd4f11ebe586edc1b2/doc/SDN Testbed(ONOS & OVX).pdf
--------------------------------------------------------------------------------
/img/pi-switch-0.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OpenWinCon/pi-switch/146639bf4324f13be94562bd4f11ebe586edc1b2/img/pi-switch-0.jpg
--------------------------------------------------------------------------------
/img/pi-switch-1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OpenWinCon/pi-switch/146639bf4324f13be94562bd4f11ebe586edc1b2/img/pi-switch-1.jpg
--------------------------------------------------------------------------------
/img/pi-switch-2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OpenWinCon/pi-switch/146639bf4324f13be94562bd4f11ebe586edc1b2/img/pi-switch-2.jpg
--------------------------------------------------------------------------------
/img/pi-switch-3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OpenWinCon/pi-switch/146639bf4324f13be94562bd4f11ebe586edc1b2/img/pi-switch-3.jpg
--------------------------------------------------------------------------------
/img/pi-switch-4.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OpenWinCon/pi-switch/146639bf4324f13be94562bd4f11ebe586edc1b2/img/pi-switch-4.jpg
--------------------------------------------------------------------------------
/img/pi-switch-5.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OpenWinCon/pi-switch/146639bf4324f13be94562bd4f11ebe586edc1b2/img/pi-switch-5.jpg
--------------------------------------------------------------------------------
/img/pi-switch-6.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OpenWinCon/pi-switch/146639bf4324f13be94562bd4f11ebe586edc1b2/img/pi-switch-6.jpg
--------------------------------------------------------------------------------
/img/pi-switch-component.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OpenWinCon/pi-switch/146639bf4324f13be94562bd4f11ebe586edc1b2/img/pi-switch-component.jpg
--------------------------------------------------------------------------------
/img/pi-switch-process.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OpenWinCon/pi-switch/146639bf4324f13be94562bd4f11ebe586edc1b2/img/pi-switch-process.jpg
--------------------------------------------------------------------------------