Changes between Version 1 and Version 2 of GENIEducation/SampleAssignments/OpenFlowLoadBalancerAssignment/ForInstructors


Ignore:
Timestamp:
05/31/13 09:07:57 (6 years ago)
Author:
shuang@bbn.com
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • GENIEducation/SampleAssignments/OpenFlowLoadBalancerAssignment/ForInstructors

    v1 v2  
    122122    The experimenters can further try to change the ''tc'' token bucket filter parameters to test their load balancer.
    123123
     124 - '''Simplified Load Balancer: ''' [[BR]]
     125 The above question requires the user to implement a web server on both left node and right node to report the querying results about token bucket buffer statistics. At the same time, the openflow controller that the experimenter implemented should pull the web page, parse the content to get those statistics, which seems to be too complicated. [[BR]]
     126 An alternative way to accomplish this is, by querying Flow statistics directly from the OpenFlow switch. [[BR]]
     127 Upon the arrival of a new TCP flow, the OpenFlow controller should send out a `FlowStatsRequest` message to the OpenFlow switch. The OpenFlow switch will reply with statistics information about all flows in its flow table. This flow statistics message will be fetched by the `stats_reply` function in Trema. Based on the statistics, experimenters can apply their own policy on which path to choose in different situations. For more information about !FlowStatsRequest and !FlowStatsReply, please refer to http://rubydoc.info/github/trema/trema/master/Trema/FlowStatsRequest and http://rubydoc.info/github/trema/trema/master/Trema/FlowStatsReply. [[BR]]
     128 The difference between this Load Balancer and the Load Balancer introduced in the previous section is, this Load Balancer only reports the cumulated statistics of each flow over-time while the previous Load Balancer fetches the real-time network traffic information from both paths.
     129 
     130 We have already implemented a sample Load Balancer that decides path based on the accumulated number of bytes sent through left and right path (such that the new flow will go to the one path with less number of bytes sent). [[BR]]
     131 Experimenter can download the sample Load Balancer [http://www.gpolab.bbn.com/experiment-support/OpenFlowExampleExperiment/load-balancer-simple.rb HERE].
     132 
     133 '''Question: Try modify the downloaded load balancer so that it decides path based on the average per-flow throughput observed on each path'''
    124134
    125135 * Answers can be found [http://www.gpolab.bbn.com/experiment-support/OpenFlowExampleExperiment/forInstructors/ Here]