Changes between Version 2 and Version 3 of GENIExperimenter/Tutorials/GettingStarted_PartII_Labwiki


Ignore:
Timestamp:
05/17/15 16:29:47 (9 years ago)
Author:
zink@cs.umass.edu
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • GENIExperimenter/Tutorials/GettingStarted_PartII_Labwiki

    v2 v3  
    33
    44== Introduction ==
    5 The goal of this assignment is to implement the learning switch capability that is used by Ethernet switches by using a software-based OpenFlow switch. In the topology shown in the figure, this software switch is to be implemented in node “switch”. All the other nodes represent regular hosts. To realize this implementation of a learning switch, Trema based Openflow controller written in Ruby has to be designed and implemented. The correct functionality of the learning switch can be verified by creating an experiment script in which a node A pings node B – node D in !LabWiki.
     5The goal of this assignment is to implement the learning switch capability that is used by Ethernet switches by using a software-based OpenFlow switch. In the topology shown in the figure, this software switch is to be implemented in node “switch”. All the other nodes represent regular hosts. To realize this implementation of a learning switch, a Trema based Openflow controller written in Ruby has to be designed and implemented. The correct functionality of the learning switch can be verified by creating an experiment script in which a node A pings nodes B, C, and D in !LabWiki.
    66
    77== Working ==
    8 In the topology shown in the figure, the switch node will act as the learning switch, which connect nodes A-D with each other. Whenever any of these nodes ping each other for the first time, the switch does not know the destination address of the node. At this point, the switch node floods the packet to all the nodes it is connected to. When it receives a reply to the flood, this information will be used to populate its switching table. Hereafter,whenever any node wants to ping any other nodes, the switch node will fetch the information from the table. For this purpose, a script called "fdb.rb" is pre-loaded in the switch node. The script offers rudimentary database functionality that is used to maintain the switching table
     8In the topology shown in the figure, the switch node will act as the learning switch, which connect nodes A-D with each other. Whenever any of these nodes ping each other for the first time, the switch does not know the destination address of the node. At this point, the switch node floods the packet to all the nodes it is connected to. When it receives a reply to the flood, this information will be used to populate its switching table. After the population of the switching table, whenever a node wants to ping any other node, the switch node will fetch the information from the table. For this purpose, a script called "fdb.rb" is pre-loaded in the switch node. The script offers rudimentary database functionality that is used to maintain the switching table
    99
    10 To learn about learning-switch, check out this link: [https://www.opennetworking.org/images/stories/downloads/sdn-resources/white-papers/wp-sdn-newnorm.pdf]
     10To learn more about learning-switches, check out this link: [https://www.opennetworking.org/images/stories/downloads/sdn-resources/white-papers/wp-sdn-newnorm.pdf]
    1111
    12 To learn about the Trema controller, check out this link:[http://trema.github.io/trema/]
     12To learn more about the Trema OpenFlow controller, check out this link:[http://trema.github.io/trema/]
    1313
    1414[[Image(http://groups.geni.net/geni/raw-attachment/wiki/GEC20Agenda/LabWiki/ModuleA/GEC20_simple_topo.png, 40%)]]