wiki:GeniExperiments/Pathlet/EagerCampusTopology

Version 36 (modified by nriga@bbn.com, 13 years ago) (diff)

--

This is an example topology of a campus OpenFlow network, that is configured to support the Pathlet experiment. This experiment will run through GEC12 (from now till November 30th). The configuration described here is in addition to the basic campus topology setup for the Plastic slices project, but uses the same infrastructure, i.e. the host in the diagram is one of the existing myPlc hosts that is connected to an OpenFlow switch in your campus. Currently only HP switches can support the Pathlet experiment, so if you only have an NEC or a quanta switch, please let us know. After the initial setup described in this page, only routine experimental support is expected from participating site contacts (e.g. authorizing opt-in traffic). We will use this page to keep track of all relevant information for this experiment (configuration, IP addresses etc).

Pathlet Experiment

Pathlet routing is an exciting new routing protocol, proposed by Brighten Godfrey, a professor at the University of Illinois at Urbana-Champaign. Pathlet Routing is designed to provide more flexibility to both internet providers and users. In a nutshell, it's source routing over a virtual topology (http://www.cs.uiuc.edu/homes/pbg/pathlets/)

After its initial appearance at the HotNets workshop in 2008 and its complete presentation in SIGCOMM 2009, Brighten and his team are interested in making a performance evaluation of their protocol. Their experiment requires as many mesoscale campuses as possible, connected over the internet in a mesh topology.

This is a very simplified diagram of the desired connection between two random campuses :

host@campus1 -- OpenFlow Switch -- Internet -- OpenFlow Switch -- host@campus2

In a nutshell they would like to run their pathlet routing algorithm, which is implemented as a Nox OpenFlow controller, to route their traffic between different GENI sites, where the links between sites are over the Internet, instead of the GENI backbone. They have already run experiments using their overlay deployment on general-purpose PlanetLab, but they can not compare these results with their in-network deployment because those nodes have no OpenFlow support. The application they have been using for their experiments is a video streaming application, over UDP, with a maximum data rate of 200kbps.

Diagram

The following diagram shows a single OpenFlow switch configuration that implements the infrastructure to support Pathlet experiments. The host refers to one of the existing myPlc hosts and the switch can be any of the OpenFlow switches that are used for Plastic slices.

In this diagram VLAN X is used as an example of a "routable" VLAN, i.e. a VLAN that carries routable (over the internet) traffic. Look at the Vlan X Section for more details.

port connects to VLAN(s)
1 regional T 3704 3711 3712 3715 3716 X (etc)
2 nothing this port intentionally left blank
9 a host T 1700 1734 1750 3715 3716
15 port 16 1734
16 port 15 X

Each of the following sections refers to this diagram to explain how the various options are implemented. The precise port numbers aren't actually important, they're just selected for ease of explanation here.

See below for examples of how to configure the interfaces on HP switches to implement the above topology.

Host

Port 9 is the port that is connected to the dataplane interfaces on a myPlc host.

You will need to add one more subinterface to the myPlc host connected on port 9. For more information on how to configure the dataplane interfaces on myPlc hosts look here.

The IP address on the subinterface should be 10.17.34.yy, where yy is the hosts default IP that is used for HelloGeni, e.g. at GPO we are using bain and so the IP is 10.17.34.54. Althought the IP assigned on this interface is a private IP, the pathlet OF controller will replace it with a routable IP address (look at the table in the end of the page).

Using the GPO myplc as an example the pliconfig command would be

plifconfig  add -n bain.gpolab.bbn.com -i 10.17.34.54 -m 255.255.255.0 -d eth1 --vlan 1734

VLAN X

VLAN X is the Vlan that will carry routable IP traffic. The assumption is that VLAN X will correspond to a routable IP subnet. There are two options for the routable IP subnet

I. Separate dataplane IP subnet

If it is easy in your campus to assign a small IP subnet (we only need two IP addresses on that subnet) that is routable over the internet, and that it will be part of your dataplane network that is the best, so that we keep the data plane and the control plane separate. As an example consider the case where we use 192.1.241.0/30 as the routable subnet. Then you can assign a new VLAN id for this subnet.

This VLAN except from reaching the OF switch as described above, it should also include a router that has an interface that can reach the internet.

Let IP of the router be 192.1.241.1. We would also need a second IP address, 192.1.241.2 to use for sourcing traffic.

II. Controlplane IP subnet

If in your campus it's not easy to come up and configure a separate routable subnet, you can use the current subnet used for your control plane, i.e. the control interface of the myPlc hosts. In this case you will have to use the same VLAN that you are using for your control network and interconnect that VLAN to the OF switch as described above.

That subnet already has a default router for routing traffic, we would just need an extra IP address to use for sourcing traffic.

When you have decided of the IP address that should be used by pathlet for sourcing traffic, and the router that will be used please update the table in the bottom of this page, or send us the information.

Router

Whether you are using a separate dataplane routable subnet, or the controlplane subnet the router should be able to route traffic sourced by any of the other pathlet public addresses, i.e. it should be configured to accept and forward packets whose src IP can be any of the IP listed in the bottom of this page.

Example HP switch configurations

The following configuration, on an HP switch, will implement the additional topology of the diagram above :

vlan X
  tagged 1
  untagged 16

vlan 1734
  tagged 9
  untagged 15

Note that many times after adding new DPIDs and ports pointing to an Expedient, Expedient might not pick up the changes. Look at http://groups.geni.net/geni/wiki/OpenFlow/Expedient#Aggregatechanges for how to address this.

Table with Pathlet IP addresses

Site Host Pathlet routable IP addr router IP addr router mac
GPO bain.gpolab.bbn.com 192.1.240.2 192.1.240.1 00:0C:29:6A:34:E7
Clemson planetlab4.clemson.edu 130.127.3.230 130.127.3.229 00:23:5e:a9:5c:c6
GaTech plnode1.cip.gatech.edu 128.61.159.194 128.61.159.193 00:17:95:e4:0d:70

Table with AM

Site Aggregate URL rspec
GPO myplc http://myplc.gpolab.bbn.com:12346 link
GPO openflow https://tulum.gpolab.bbn.com:1443/openflow/gapi/ link
Clemson myplc http://myplc.clemson.edu:12346 link
Clemson openflow https://expedient.clemson.edu:1443/openflow/gapi/ link
GaTech myplc http://myplc.cip.gatech.edu:12346 link
GaTech openflow https://expedient.oflow.cip.gatech.edu:1443/openflow/gapi/ link
Stanford myplc https://myplc.stanford.edu:12346 link
Stanford openflow https://endpoint.stanford.edu:1443/openflow/gapi/ link

Final Deployment Plan

Sites that might be involved with this experiment include : Clemson, Georgia Tech, GPO, Indiana, Rutgers, Stanford, Washington, Wisconsin.

Attachments (12)

Download all attachments as: .zip