Floodlight Controller Application Wishlist SDN Dev Group Week

  • Slides: 13
Download presentation
Floodlight Controller; Application Wishlist SDN Dev Group, Week 3 Aaron Gember Aditya Akella University

Floodlight Controller; Application Wishlist SDN Dev Group, Week 3 Aaron Gember Aditya Akella University of Wisconsin-Madison 1

Testbed Experience thrush lyrebird vulture wings-openflow-1 Controller WINGS Pro. Curve 5400 • Controller and

Testbed Experience thrush lyrebird vulture wings-openflow-1 Controller WINGS Pro. Curve 5400 • Controller and application running? • Behaved as expected? • Lessons learned? 2

Controller 3

Controller 3

Floodlight Architecture 4

Floodlight Architecture 4

New Application • Create a new class in src/main/java – Package: edu. wisc. cs.

New Application • Create a new class in src/main/java – Package: edu. wisc. cs. wisdom. <appname> – Class name: <App. Name> – Interfaces: IOFMessage. Listener, IFloodlight. Module • Write get. Module. Dependencies() method – Depends on (at least) the loader: IFloodlight. Provider. Service. class • Register module – Add class name to loader and configuration 5

Important Methods • get. Name() – Return “<App. Name>” • init() – Initialize data

Important Methods • get. Name() – Return “<App. Name>” • init() – Initialize data structures – Get hook to main Floodlight service context. get. Service. Impl(IFloodlight. Provider. Service. class); 6

Important Methods • start. Up() – Register to receive relevant events from Open. Flow

Important Methods • start. Up() – Register to receive relevant events from Open. Flow switches (e. g. , packet in) or other modules – E. g. , add. OFMessage. Listener(OFType. PACKET_IN, this); • receive() – Receive and process Open. Flow events – Check the type of the message object 7

Application Wishlist 8

Application Wishlist 8

Distributed Firewall VLAN A VLAN B VLAN C Internet 9

Distributed Firewall VLAN A VLAN B VLAN C Internet 9

Stateful Firewall • Allow/deny is based on more than just the current packet –

Stateful Firewall • Allow/deny is based on more than just the current packet – E. g. , allow if TCP state is established • Extra state is not part of Open. Flow 10 -tuple • Install as many static rules as possible – Every packet should not go to controller 10

Anomaly Detection • Monitor for anomalous traffic – High traffic volumes, specific IPs, etc.

Anomaly Detection • Monitor for anomalous traffic – High traffic volumes, specific IPs, etc. • When anomalous traffic is found, route through a middlebox, then to destination • Anomalies determined by – Thresholds in policy file – Monitoring over time + machine learning 11

Stratos • Data center testbed – Network: tree topology of Open. Flow switches –

Stratos • Data center testbed – Network: tree topology of Open. Flow switches – Compute: Xen + Open v. Switch + – Management: Open Stack or Open Nebula • More efficient load balancing – Finish implementation of tagging • Scaling – GUI to show scaling as it happens – Receive SNMP messages from applications & middleboxes 12

SDN Dev Group Week 4 • Preparation – Skim Floodlight documentation http: //floodlight. openflowhub.

SDN Dev Group Week 4 • Preparation – Skim Floodlight documentation http: //floodlight. openflowhub. org/developing-floodlight/ http: //www. openflowhub. org/display/floodlightcontroller /For+Developers – Create high-level design for SDN application • Meeting topics – Present high-level design for SDN application 13