-
Notifications
You must be signed in to change notification settings - Fork 1
Home
Welcome to the project wiki!
This project aims to use an SDN controller (Ryu) and a physical OpenFlow SDN switch (Zodiac FX) to monitor NETFLIX usage among one or more users. A rough overview of the project is detailed below.
The setup is as follows:
Note 1: In some large establishments (eg. universities), it may be their policy to avoid having multiple users (i.e. multiple MAC addresses) connected to the same ethernet port. Thus, a switch would end up being blocked if connected directly. However, using a router in between the switch and the ethernet port can overcome this problem as the router would be seen only as one MAC address.
Note 2: Using a second router increases the number of users that can be connected instead of being limited by the number of ports on the Zodiac FX switch. Also, it simplifies the code that needs to be written on the Zodiac FX.
Note 3: The second router (right) has DHCP disabled to avoid double NAT which could be a problem while trying to stream NETFLIX. With single NAT, the user would be assigned an IP address by the first router (which has DHCP enabled).
Before we begin, the Zodiac FX must be configured (this can be done by accessing the CLI using a serial communication tool like minicom). While configuring the Zodiac FX, keep in mind that:
-
The Controller IP address must point to the IP address of the computer running RYU.
-
The Gateway IP must be set to the IP address of the first router (i.e. the router connected directly to the ethernet wall port)
Next, we need to insert flows on the Zodiac FX switch using REST APIs . To do this, we run an OpenFlow Controller REST API app on RYU called ofctl_rest.
Initially, there will be two basic flows on the Zodiac FX to make it act as a dumb switch. Packets coming in to Port 1 would be forwarded to Port 2 and packets coming in to Port 2 would be forwarded to Port 1. This would simply allow the users to access the internet.
