Download presentation
Presentation is loading. Please wait.
Published byCameron Andrea McDonald Modified over 8 years ago
1
Othman Othman M.M., Koji Okamura Kyushu University Proceedings of the 32 nd Asia-Pacific Advanced Network Meeting India, New Delhi, 2001/8/22
2
Outline: 1. Goal. 2. Motivation. 3. An attempt to solve the problem (3 enhancements). 1. First: Network Equipment to Equipment flow installation. 2. Second: Low Level Header Description. 3. Third: Inactive Flows. 4. Flow Aggregation Algorithm. 5. Evaluation. 6. Conclusion.
3
1- Goal: Improve OpenFlow. Support self-reactive behavior. Reduce load on controller. Giving researchers more flexibility. Step towards having wider adoption of OpenFlow.
4
2- Motivation: Tight coupling between OpenFlow switch and controller. Every thing is up to the controller. Controller might be bottleneck. number of flows that can be installed by the NOX controller as shown in [1] are 30K flow/sec, and the flow arrival rate in [2] that is 100K flow per second. OpenFlow supports MAC, VLAN, IP, TCP, UDP. Better to have; more room for researchers. [1].Tavakoli, A., Casado, M., Koponen, T., & Shenker, S. (n.d.). Applying NOX to the Datacenter. Proc. HotNets (October 2009). [2]. Kandula, S., Sengupta, S., Greenberg, A., Patel, P., & Chaiken, R. (2009). The nature of data center traffic: measurements & analysis. Proceedings of the 9th ACM SIGCOMM conference on Internet measurement conference (p. 202–208). ACM.
5
3-An attempt to solve the problem: (3 enhancements) 1. Network equipment to Network equipment Flow Programming: To create traffic-aware self-reactive network. Can be used to delegate some flows to less loaded network equipment. To easily program whole network without loading controller. 2. Low level description of Headers: To easily adopt new protocols. To be able to program flows in very exact way. 3. New type of Flows: Programed as inactive flows and later activated by the flow. To provide the controller with a more relaxed way to handle precisely timed tasks. Can cooperate with Device to Device programming.
6
3-1- First: Network Equipment to Equipment flow installation: To reduce load off the controller. Give the equipment ability to act by their own to reduce load off loaded equipment. Alternative way to install flows to whole network (e-e propagation). PE P P P Packet Flows to manipulate headers in packets Fig1. Equipment overloaded, due to many flows to carry out. PE P P P Fig2. Overloaded equipment delegates some flows to other equipment. PE P P P Packet Flows to manipulate headers in packets Fig3. Reduced load off the overloaded equipment.
7
3-2- Second: Low Level Header Description: OpenFlow can deal with headers of: Ethernet, IP, TCP, UDP, ICMP, ARP, VLAN This limits the usage to those protocols. Using Low level definition of header fields can be more usable in case of new protocols. Fig1: Fields from packets used to match against flow entries As shown in : OpenFlow Switch Specification Version 1.0.0, December 31, 2009 Offset form beginning Length Name Is wild- carded? Wildcard value Value 06MAC srcNo00:11:22: 33:44:55 164New L3 Protocol src YesFF:FF:00: 00:00 00:11:22: 33:44 ……..… 204New L4 protocol filed No111111 Fig2: Low level description of headers
8
3-3- Third: Inactive Flows: Original OpenFlow: flows activated by default, controller keeps track of time. Initially installed as inactive. (not usable). Activated on right time, by: Explicit activation packet. Activation Flow. Preset time. Migration Fig3. Migration and Redirection using OpenFlow and Inactive Flows. Inactive Flows Flows activation Migration Fig1. Migration and Redirection using OpenFlow. Migration Fig2. Delay due to controller overload in Migration.
9
4-1- Flow Aggregation Algorithm: Introduction: How to delegate flows? Aggregate flows that have common features, and responsible for some portion of traffic. i.e. to aggregate many flows to one. Delegate the aggregated flows to other equipment. Use Flow Aggregation Algorithm. Overloaded equipment flows = original flows – delegated flows. aggregated flow (one or more) Flow Table
10
4-2- Inputs of the FAA. Input is Flow Table. Flow table entry have one or more fields form Fig 1. Src IP and Dst IP can be wildcarded as defined by OpenFlow Fig1: Fields from packets used to match against flow entries As shown in : OpenFlow Switch Specification Version 1.0.0, December 31, 2009 aggregated flow (one or more) Flow Table
11
4-3-Outputs of the FAA. Aggregated Flow can use: Parts of Src IP, Dst IP using wildcards. Any other field as an exact match. Fig1: Fields from packets used to match against flow entries As shown in : OpenFlow Switch Specification Version 1.0.0, December 31, 2009 aggregated flow (one or more) Flow Table Range of portions of total traffic e.g. (20%-30%)
12
4-4-Details of the FAA. Start Build Histograms for all Fields Aggregation percentage? Finish Strict None Wide Aggregate SrcIP Aggregate DstIP Strict Wide Find common values from two wide aggregations. None Strict Wide Fail None Strict None, Wide
13
4-5-In-depth look: 1- IP aggregation: By Building a Trie. Find length of wildcard. Value of wildcarded IP. Start Add the most significant bit of each IP in each flow to trie. If exist increment trie node counter. Else create node and increment counter Is aggregation successful? Is memory limit reached? Add the next less significant bit of each IP in each flow to trie. If exist increment trie node counter. Else create node and increment counter Finish Yes No 1 2 3 4 5 7 Mark the trie node that has the best ratio. 6 Start Build Histograms for all Fields Aggregat ion %? Finish Strict None Wide Aggregate SrcIP Aggregate DstIP Strict Wide Find common values from two wide aggregations. None Strict Wide Fail None Strict None, Wide
14
4-6-In-depth look: 2- Other aggregation: By building Histogram. Start Build Histogram Is aggregation successful? Finish No Yes 1 2 3 4 7 Find nodes with right aggregation ratio Start Build Histograms for all Fields Aggregat ion %? Finish Strict None Wide Aggregate SrcIP Aggregate DstIP Strict Wide Find common values from two wide aggregations. None Strict Wide Fail None Strict None, Wide
15
5- Evaluation: Java Program to evaluate the efficiency of Flow Aggregation Algorithm. FAA success rate of aggregation = 79.7 % OMNet++ simulation to evaluate: Controller load reduction. Efficiency in reducing load off overloaded equipment. Traffic generated due to the new enhancements.
16
6- Conclusion: Aim to improve OpenFlow by reducing load off the controller, make it self-aware and self-reactive, enable researchers to support their own protocols, and enable an easier support for time critical functions. Achieving goals by proposing 3 new enhancements to OpenFlow: Network equipment to equipment flow installation. Low level Header description. Inactive flows. Proposing Flow Aggregation Algorithm, to enable the enhancements. Simulation shows the success rate of FAA is 79.7 %
17
Q & A: Thanks for listening.
18
Back up Slides:
19
3- OpenFlow Overview: Separates routing decision making (in controller) and the forwarding (in the switch or router). Matching in the switch or router is done according to Layer 2, 3 and VLAN headers. Figure 1: OpenFlow switch (ref: Nick McKeown et al, “OpenFlow: enabling innovation in campus networks”)
20
3- OpenFlow Overview: OpenFlow relies on the Flow-table, which is contains: Header fields are the ones the incoming packet is matched against: The actions can be : forwarding the packet to physical port, enqueue the packet in a physical port’s queue, dropping the packet or modifying incoming packet’s header fields Figure 2 Figure 1
21
6- First: Network Equipment to Equipment flow installation: To reduce load off the controller. Alternative way to install flows to whole network (e-e propagation). Controller Fig1. Regular way of installing flows. Controller installs to equipment one by one. Controller Fig2. Network equipment install flows to each other.
22
7- Second: Low Level Header Description: OpenFlow can deal with headers of: Ethernet IP TCP UDP ICMP ARP VLAN This limits the usage to those protocols. Fig1: Flowchart showing how header fields are parsed for matching. As shown in : OpenFlow Switch Specification Version 1.0.0, December 31, 2009
23
8- Third: Inactive Flows: Initially installed as inactive. (not usable). Activated on right time to use by: Explicit activation packet. Activation Flow. Preset time. Can use e-e for activating other equipment. Server 10.10.10.1 Candidate Server Fig1. Before beginning Candidate Server 10.10.10.1 Fig3. After migration and activation of redirections. Server 10.10.10.1 Candidate Server Fig2. Programming inactive redirection And migrating server. Activating redirection when migration finishes Server Migration
24
8- Third: Inactive Flows: Original OpenFlow: flows are activated by default (usable as soon as programmed). Controller have to install redirections exactly on time for time-critical applications. case of server migration. Migration Fig1. Migration and Redirection using OpenFlow. Migration Fig2. Delay due to controller overload in Migration and Redirection using OpenFlow.
25
Start Build Histograms for all Fields Aggregation percentage? Finish Strict None Wide Aggregate SrcIP Aggregate DstIP Strict Wide Find common values from two wide aggregations. None Strict Wide Fail None Strict None, Wide Start Build Histograms for all Fields Aggregation percentage? Finish Strict None Wide Aggregate SrcIP Aggregate DstIP Strict Wide Find common values from two wide aggregations. None Strict Wide Fail None Strict None, Wide
26
4-1-Introduction about flow aggregation algorithm (FAA). Goal: To represent a large # of flows (original) by a single or few flows (aggregated). In order to replace the original flows (large #) by the aggregated flow (one or more). Assign the original flows (large #) to another network equipment. original flows (large #) aggregated flow (one or more)
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.