When configuring SOS, all the switches – whether hardware or software – must be connected to a central Floodlight controller. This controller is equipped with an SOS module that communicates with the four switches and with the SOS agents themselves. The following is a general guide to configure the SOS controller.
...
Code Block | ||
---|---|---|
| ||
net.floodlightcontroller.sos.SOS.agent-msg-port = 9998 net.floodlightcontroller.sos.SOS.agent-tcp-port = 9877 net.floodlightcontroller.sos.SOS.controller-mac = 00:26:b9:75:1d:45 net.floodlightcontroller.sos.SOS.controller-ip = 192.168.1.5 net.floodlightcontroller.sos.SOS.buffer-size = 512 net.floodlightcontroller.sos.SOS.queue-capacity = 2000 net.floodlightcontroller.sos.SOS.parallel-tcp-sockets = 64 net.floodlightcontroller.sos.SOS.flow-timeout = 15 net.floodlightcontroller.sos.SOS.dst-client-sw-port = 2 net.floodlightcontroller.sos.SOS.src-agent-mac = 02:b0:b6:91:cb:89 net.floodlightcontroller.sos.SOS.src-agent-ip = 10.10.1.2 net.floodlightcontroller.sos.SOS.src-agent-sw-port = 1 net.floodlightcontroller.sos.SOS.src-agent-ovs-port = 1 net.floodlightcontroller.sos.SOS.dst-agent-mac = 02:6b:11:90:99:05 net.floodlightcontroller.sos.SOS.dst-agent-ip = 10.10.2.2 net.floodlightcontroller.sos.SOS.dst-agent-sw-port = 1 net.floodlightcontroller.sos.SOS.dst-agent-ovs-port = 1 net.floodlightcontroller.sos.SOS.src-ntwk-switch-dpid = 00:00:00:00:00:00:00:11 net.floodlightcontroller.sos.SOS.dst-ntwk-switch-dpid = 00:00:00:00:00:00:00:22 net.floodlightcontroller.sos.SOS.src-agent-switch-dpid = 00:00:00:00:00:00:11:11 net.floodlightcontroller.sos.SOS.dst-agent-switch-dpid = 00:00:00:00:00:00:11:22 net.floodlightcontroller.sos.SOS.src-ntwk-sw-port = 3 net.floodlightcontroller.sos.SOS.dst-ntwk-sw-port = 3 |
First, let's clarify a couple of terms frequented in this configuration file: "source" and "destination." The "source" side of the network is where the request for the data originates from. It's the side of the network where the first TCP SYN packet is sent from the "source client" requesting the data. This TCP SYN packet (and other subsequent packets) are redirected to the local "source agent," which will act as a proxy for the real server hosting the data requested. On the contrary, the "destination" is the side of the network that will receive this first TCP SYN packet and respond to the request with data, files, etc. It contains the server the "source client" wants to pull data from – the "destination client" – as well as the "destination agent," which helps facilitate the data transfer on the "destination" side of the network. Note: These terms should arguably be renamed at this stage in the SOS project. They made more sense during initial testing, but should be changed now.
The first block of parameters from agent-msg-port to flow-timeout consist mostly of performance-tuning knobs that do not need to be changed under ordinary circumstances. The buffer-size, queue-capacity, and parallel-tcp-sockets parameters are directly related to SOS agent CPU and memory utilization. They can be tuned (raised or lowered) if the agents experience instability, which could be a sign of insufficient hardware resources.
The second small block consists of just a single parameter to configure the destination client called dst-client-sw-port. This is the in-network switch port, which is either an OVS or the physical switch. To set this parameter, ask yourself, "Where (on what switch port number) is the agent destination client machine plugged into the OpenFlow network?"
...