Skip to content
This repository has been archived by the owner on Jan 27, 2023. It is now read-only.

Latest commit

 

History

History

assignment2

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 

Assignment 2 (Clos topology)

Overview

In this assignment we had to implement a Clos topology for data centers using the OpenFlow protocol. The topology had to be implemented using the POX. The topology is created using the following two parameters:

  • c or --core : The number of core switches.
  • f or --fanout : The number of child nodes each node has.

The Clos topology has the following three layers:

  • Core layer: The core layer is the top layer of the topology. It contains the c number of core switches.
  • Aggregation layer: The aggregation layer is the middle layer of the topology. It contains the c*f number of aggregation switches.
  • Edge layer: The edge layer is the bottom layer of the topology. It contains the c*f*f number of edge switches. Each edge switch is connected to f hosts.

The topology of a network with parametes c=1 and f=2 is the following: Assignment 2 topology

Files Structure (from assignmen2 foler)

How to run

  1. Requirements:
  2. Run the following commands:
    • sudo python clos_topo.py -c <# of core switches> -f <# of fanout> (to create the topology)
    • /pox.py openflow.discovery CloudNetController --firewall_capability=<True|False> --migration_capability=<True|False> (to run the load balancer) (This command needs to be run from the pox folder)