[[PageOutline]] == Path Controller == As an example experiment, we have set up a [http://geminiportal.uky.emulab.net/path_controller Path Controller] tool. Click on the link or goto http://geminiportal.uky.emulab.net/path_controller . Accept the self-signed certificate. === Logging On === Log on using the information on your handout. [[Image(path_controller_logon.png, 300)]] The tool consist of a web interface that connects to the slice's nodes and allows you to change the routing paths and generate traffic between selected nodes. The interface has desktop-like windows that can be moved around and resized as you please. [[Image(path_controller_init_view.png, 300)]] === Topology Window === The first window we will examine contains the slice's topology. [[Image(topo_init_view.png, 200)]] Each circle represents a node in the network. The lines represent links. Note that the global node (GN) does not have links, it acts in the background. Left click and drag a node to rearrange them. For this tutorial arrange them so they match the geminiportal layout like so: [[Image(topo_rearranged_view.png, 200)]] [[Image(gemini_portal_map.png, 350)]] As you rearrange the nodes, note the window directly below the topology window. This is the information (Info) window. === Info Window === [[Image(info_window.png, 300)]] This window has some brief information about the node or link that the cursor is currently over. This case has information about '''VM-1'''. The icon represents a virtual machine. The hostname is pcvm63-2.uky.emulab.net. [[Image(info_window_vm1.png, 200)]] This next case is for '''lan1'''. The icon represents a link. The ids are displayed for the two end points, along with each interface's ip address. [[Image(info_window_lan1.png, 200)]] == Create Traffic == === Traffic Generator === The window with the [[Image(add_generator_button.png)]] button is the Traffic Generator. Click the button to add a Traffic Generator. [[Image(new_generator.png, 200)]] The Traffic Generator has a traffic source (Src) node and destination (Dst) node, both of which must be set. The File Size defaults to 500MB and can be anything from 1 to 1000MB. To set the Src or Dst, left click on the desired node. Once the node is highlighted, click on the [[Image(set_src_button.png)]] or [[Image(set_dst_button.png)]] to set your choice. Set the traffic from Src '''VM-1''' to Dst '''VM-4'''. [[Image(set_vm1_src_arrows.png, 300)]] [[Image(traffic_choices_arrows.png, 300)]] Start the traffic by clicking the [[Image(transfer_button.png)]] button. The button color will pulse and the text will change to Transferring while the transfer is in progress. === View Default Traffic (lan1) on Gemini Portal === Switch to Gemini Portal tab in the browser. Left click on the link line that connects '''VM-1''' to '''VM-4'''. This brings up the Graph Control for '''lan1'''. Check the checkbox for '''linkoctets'''. [[Image(lan1_graphs_traffic_control_node.png, 400)]] The interface traffic graphs for both ends of the '''lan1''' will be added to the left side of the page. Mouseover the graph to enlarge for a better view. Since we started a transfer using the Traffic Generator, we see a burst of traffic on these graphs. The green bars represent incoming traffic. The blue lines represent outgoing traffic. === Add Custom Route (lan3, lan5, lan4) === Switch back to the Path Controller tab in your browser. === Traffic Path === The Traffic Path window allows you to add custom routes to the slice. [[Image(path_window.png, 200)]] The [[Image(add_path_button.png)]] button adds a new path based on the links that are selected in the topology window. The [[Image(reset_all_paths_button.png)]] button will reset the slice back to its default routes. As we saw earlier, the default route between '''VM-1''' and '''VM-4''' follows the direct route via '''lan1'''. Now we will alter that route. Set the path from '''VM-1''' to '''VM-4''' to follow links '''lan3''', '''lan5''', '''lan4'''. Do this by left clicking on the links while holding the shift key. Once the three links are selected, click the [[Image(add_path_button.png)]] button. The results should look like this: [[Image(path_354.png, 300)]] Start traffic between '''VM-1''' and '''VM-4''' by pressing the [[Image(transfer_button.png)]] button. === View Custom Path on lan4 in Gemini Portal === Switch to Gemini Portal tab in the browser. Click on the link connecting '''VM-3''' to '''VM-4'''. Check the linkoctets checkbox to add the traffic graphs for '''lan4''' to the left side of the window. [[Image(lan1_lan4_traffic_control.png, 300)]] Since we added the custom route through '''lan4''' we now see the traffic crossing '''lan4''' instead of '''lan1'''. === Add Custom Route (lan3, lan0) === Switch back to the Path Controller tab in your browser. Set the File size to 1000MB. Start traffic by pressing the [[Image(transfer_button.png)]]. Now add another path (in addition to the existing path) between '''VM-1''' and '''VM-4''' that follows links '''lan3''' and '''lan0'''. [[Image(path_30.png, 300)]] === View Custom Path Switch from lan4 to lan0 === Switch to the Gemini Portal tab in the browser. Looking at the graphs for '''lan4''' and '''lan0''', you will see the traffic start on '''lan4'''. After the path was added through '''lan3''', '''lan4''', you will see the traffic drop off '''lan4''' and move to '''lan0'''. [[Image(lan1_lan0_lan4_traffic.png, 400)]] Details of '''lan4''' and '''lan0''' traffic graphs showing the switch of traffic. [[Image(lan4_switch_to_lan0.png)]] === Reset All Custom Paths === Switch back to the Path Controller tab in your browser. Click the [[Image(remove_path_button.png)]] by each path to remove them. Or, click the [[Image(reset_all_paths_button.png)]] to remove all the paths in one step. As an exercise left to you, check that traffic will once again default to '''lan1'''.