John DeHart Computer Science & Engineering Washington University www.arl.wustl.edu GEC7: SPP Tutorial Hands On Exercises.

Slides:



Advertisements
Similar presentations
John DeHart Computer Science & Engineering Washington University GEC7: SPP Tutorial Notes.
Advertisements

Chapter 6: Static Routing
CPSC Network Layer4-1 IP addresses: how to get one? Q: How does a host get IP address? r hard-coded by system admin in a file m Windows: control-panel->network->configuration-
Static Routing Exercise. What will the exercise involve?  Unix network interface configuration  Cisco network interface configuration  Static routes.
Computer Networks21-1 Chapter 21. Network Layer: Address Mapping, Error Reporting, and Multicasting 21.1 Address Mapping 21.2 ICMP 21.3 IGMP 21.4 ICMPv6.
Static Routing Exercise Scalable Infrastructure Workshop AfNOG 2011.
Senior Project with the SPP Michael Williamson. Communicating with a Slice Slice-RMP library using a Unix Domain Socket ◦ RPC-Like ◦ Slice application.
John DeHart Computer Science & Engineering Washington University GEC7: SPP Tutorial.
SYSTEM ADMINISTRATION Chapter 19
Jon Turner Applied Research Lab Computer Science & Engineering Washington University Supercharged Planetlab Platform GENI Experimenters’
Diagnostics. Module Objectives By the end of this module participants will be able to: Use diagnostic commands to troubleshoot and monitor performance.
CSCE 515: Computer Network Programming Chin-Tser Huang University of South Carolina.
CSCE 515: Computer Network Programming Chin-Tser Huang University of South Carolina.
Introduction to Management Information Systems Chapter 5 Data Communications and Internet Technology HTM 304 Fall 07.
Chapter 23: ARP, ICMP, DHCP IS333 Spring 2015.
TCP/IP Protocol Suite 1 Chapter 6 Upon completion you will be able to: Delivery, Forwarding, and Routing of IP Packets Understand the different types of.
Patrick Crowley and Jon Turner and John DeHart, Mart Haitjema Fred Kuhns, Jyoti Parwatikar, Ritun Patney, Charlie Wiseman, Mike Wilson, Ken Wong, Dave.
IP ROUTING -1 STATIC ROUTING DEFAULT ROUTING.  A routing protocol is used by routers to dynamically find all the networks in the internetwork and to.
TCP/IP Tools Lesson 5. Objectives Skills/ConceptsObjective Domain Description Objective Domain Number Using basic TCP/IP commands Understanding TCP/IP3.6.
Lecture Week 8 The Routing Table: A Closer Look
Interior Gateway Routing Protocol (IGRP) is a distance vector interior routing protocol (IGP) invented by Cisco. It is used by routers to exchange routing.
© 2006 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. The ProCurve 3500yl/5400zl/6200yl.
John DeHart Computer Science & Engineering Washington University GEC7: SPP Tutorial Hands On Exercises.
DHCP: Dynamic Host Configuration Protocol
TUTORIAL # 2 INFORMATION SECURITY 493. LAB # 4 (ROUTING TABLE & FIREWALLS) Routing tables is an electronic table (file) or database type object It is.
ARP Scenarios CIS 81 and CST 311 Rick Graziani Fall 2005.
© 2009 FP Mailing Solutions. All rights reserved. Customer Service Training Basic Computer Training.
Microsoft Internet Security and Acceleration (ISA) Server 2004 is an advanced packet checking and application-layer firewall, virtual private network.
Lab How to Use WANem Last Update Copyright 2011 Kenneth M. Chipps Ph.D. 1.
1. 2 Device management refers to the IDS Sensor's ability to dynamically reconfigure the filters and access control lists (ACL) on a router, switch, and.
SNORT Tutorial Sreekanth Malladi (modifying original by N. Youngworth)
0Gold 11 0Gold 11 LapLink Gold 11 Firewall Service How Connections are Created A Detailed Overview for the IT Manager.
Jon Turner, John DeHart, Fred Kuhns Computer Science & Engineering Washington University Wide Area OpenFlow Demonstration.
Managing SPP Resources: System Resource Manager (SRM) Fred Kuhns Applied Research Laboratory Washington University in St. Louis.
1 Internet Protocol. 2 Connectionless Network Layers Destination, source, hop count Maybe other stuff –fragmentation –options (e.g., source routing) –error.
Copyright © Lopamudra Roychoudhuri
Transport Layer 3-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012  CPSC.
1 Pertemuan 26 Integrating Network using Routing Protocol.
Saeed Darvish Pazoki – MCSE, CCNA Abstracted From: Cisco Press – ICND 2 – 6 IP Access Lists 1.
Chapter 23: ARP, ICMP, DHCP CS332, IS333 Spring 2014.
Washington WASHINGTON UNIVERSITY IN ST LOUIS CP and Full MSR Test Status.
Washington WASHINGTON UNIVERSITY IN ST LOUIS MSR Tutorial Exercises Group 3.
1 Washington WASHINGTON UNIVERSITY IN ST LOUIS Jyoti Parwatikar January 7, MSR Tutorial Monitoring WUGS Switch Jyoti Parwatikar January 7, 2002.
Monitoring Troubleshooting TCP/IP Chapter 3. Objectives for this Chapter Troubleshoot TCP/IP addressing Diagnose and resolve issues related to incorrect.
Information Security 493. Lab # 4 (Routing table & firewalls) Routing tables is an electronic table (file) or database type object that is stored in a.
Linux Operations and Administration Chapter Eight Network Communications.
Washington WASHINGTON UNIVERSITY IN ST LOUIS LC/NPE Substrate Control: Substrate Control Daemon Fred Kuhns Applied.
January 9, 2001 Router Plugins (Crossbow) 1 Washington WASHINGTON UNIVERSITY IN ST LOUIS Exercises.
Washington WASHINGTON UNIVERSITY IN ST LOUIS Slice Interface to SPP Fred Kuhns Applied Research Laboratory Washington.
1 Washington WASHINGTON UNIVERSITY IN ST LOUIS Fred Kuhns - 3/15/2016 Allocate and free code option instance, NPE resources and interface bandwidth. Manage.
Source NAT Configuration Example Alcatel-Lucent Security Products Configuration Example Series.
John DeHart Computer Science & Engineering Washington University GEC7: SPP Tutorial User Handouts.
ROUTING AND ROUTING TABLES 2 nd semester
Jon Turner Applied Research Lab Computer Science & Engineering Washington University Forest – an Overlay Network for Real-time Distributed.
Windows Server 2003 { First Steps and Administration} Benedikt Riedel MCSE + Messaging
Configuration for routing example
6. The Open Network Lab Overview and getting started
Supercharged PlanetLab Platform, Control Overview
Chapter 6 – Routing.
Chapter 6 Delivery & Forwarding of IP Packets
Troubleshooting IP Communications
Chapter 6 Delivery & Forwarding of IP Packets
GEC7: SPP Tutorial Notes
Supercharged PlanetLab Platform, Control Overview
Wide Area Networks and Internet CT1403
ECE 544 Project3 Team member: BIAO LI, BO QU, XIAO ZHANG 1 1.
Design of a Diversified Router: November 2006 Demonstration Plans
DHCP and NAT.
DHCP: Dynamic Host Configuration Protocol
GEC7: SPP Tutorial User Handouts
Presentation transcript:

John DeHart Computer Science & Engineering Washington University GEC7: SPP Tutorial Hands On Exercises

2 Connectivity to Neighbor Rtr Diagram of Your Network NPE Slice FastPath (GPE) FastPath Control Processor spphost# PlanetLab Host PlanetLab Host Your Laptop ssh

3 SPP Utilities, Daemons and Scripts Utilities: »scfg: Slice Config Generic: Not specific to any FastPath Add/remove fastpath interfaces (udp tunnels) Bind queues to fastpath interfaces Set queue parameters. »ip_fpc: ipv4 fastpath config Specific to the IPv4 FastPath Add filters to FastPath Daemons »ip_fpd: ipv4 fastpath daemon Specific to the IPv4 FastPath Create fast path Process local delivery and exception packets »sliced: slice daemon Generic: Not specific to any FastPath Process monitoring requests Scripts »configureRouter.sh Builds the fast path and configures it. Uses a lot of shell variables (may be confusing) »teardownRouter.sh

4 Utilities Just for This Tutorial pingit »Run on your spphost, causes an ICMP Request to be embedded in a UDP Tunnel and sent to an SPP tgit »Run on your spphost, causes a UDP packet to be sent to a PlanetLab host. »On these PlanetLab hosts we have a server running which will start a traffic generator when it receives one of these UDP packets. »The UDP payload contains parameters for the traffic generator: Destination address Number of packets to send Packet size Packet per second rate

5 Neighbor Rtr Fastpath interface What we are going to do today: (GPE) FastPath Control Pingit FPIF TG Src FPIF TG Dst FPIF ping pingit Control Processor spphost# PlanetLab Host PlanetLab Host Ping the Slice Route Traffic through Slice FastPath Ping the SPP Route Traffic to/from neighbor Slice NPE Slice FastPath

6 Neighbor Rtr Fastpath interface Addressing in your Overlay Network NPE Slice FastPath (GPE) FastPath Control #.1 Pingit FPIF TG Src FPIF TG Dst FPIF ping pingit Control Processor spphost# #.17 PlanetLab Host #.2 PlanetLab Host #.3 Where # is replaced by the number From your user id. Example for user gec07: (Slice Router Addr) (Pingit host) (TG Src PL Host) (TG Dst PL Host)

7 Current SPP Network SALT WASH KANS Each SPP has 3 Public Internet2 Interfaces. Each SPP has 2 internal interfaces to each other SPP.

8 scfg –cmd get_ifaces ~]$ scfg --cmd get_ifaces Interface list: [ifn 0, type "inet", linkBW Kbps, availBW Kbps, ipAddr ] [ifn 1, type "inet", linkBW Kbps, availBW Kbps, ipAddr ] [ifn 2, type "inet", linkBW Kbps, availBW Kbps, ipAddr ] [ifn 3, type "p2p", linkBW Kbps, availBW Kbps, ipAddr ] [ifn 4, type "p2p", linkBW Kbps, availBW Kbps, ipAddr ] [ifn 5, type "p2p", linkBW Kbps, availBW Kbps, ipAddr ] [ifn 6, type "p2p", linkBW Kbps, availBW Kbps, ipAddr ] ifn: interface number type: »inet: Internet »p2p: Point to Point linkBW: total bandwidth on the link (1Gb/s) availBW: total bandwidth currently available ipAddr: This interface’s address on this SPP

9 Neighbor Rtr Fastpath interface fastpath interfaces (UDP Tunnels) SALT TG Src FPIF TG Dst FPIF SALT_SPP_IFN_1=" " … SPP_IFN_1=$SALT_SPP_IFN_1 … SPP_TGSRC_FPIF_IPADDR =$IP_RTR_PORT_9 … SPP_TGSRC_FPIF_PORT =21003 scfg --cmd setup_fp_tunnel --fp 0 --bw ipaddr $ SPP_TGSRC_FPIF_IPADDR --port $ SPP_TGSRC_FPIF_PORT This Fastpath interface defined as: /21003 From configureRouter.sh which we will be using later.

10 Neighbor Rtr Fastpath interface fastpath interfaces (UDP Tunnels) SALT TG Src FPIF TG Dst FPIF SALT_SPP_IFN_2=" " … SPP_IFN_2=$SALT_SPP_IFN_2 … SPP_TGDST_FPIF_IPADDR =$SPP_IFN_2 … SPP_TGDST_FPIF_PORT =21003 scfg --cmd setup_fp_tunnel --fp 0 --bw ipaddr $ SPP_TGDST_FPIF_IPADDR --port $ SPP_TGDST_FPIF_PORT This Fastpath interface defined as: /21003 From configureRouter.sh which we will be using later.

11 Neighbor Rtr Fastpath interface Filters SALT TG Src FPIF TG Dst FPIF ip_fpc --cmd write_fltr --fp 0 --fid $FID \ --key_type 0 --key_rxfpif $FPIF_SRC \ --key_daddr $ HOST_TGDST_OVLY_ADDR \ --key_saddr 0 --key_sport 0 --key_dport 0 --key_proto 0 \ --mask_daddr 0xFFFFFFFF --mask_saddr 0 --mask_sport 0 \ --mask_dport 0 --mask_flags 0 \ --txdaddr $HOST_TGDST_IPADDR \ --txdport $HOST_TGDST_UDPPORT –qid $QID_DST_FPIF --sindx $FID Key Filter Mask Result This adds a filter to the SRC FPIF to route packets to the DST FPIF

12 Neighbor Rtr Fastpath interface Filters (continued) SALT TG Src FPIF TG Dst FPIF ip_fpc --cmd write_fltr --fp 0 --fid $FID \ --key_type 0 --key_rxfpif $FPIF_SRC \ --key_daddr $ HOST_TGDST_OVLY_ADDR \ --key_saddr 0 --key_sport 0 --key_dport 0 --key_proto 0 \ --mask_daddr 0xFFFFFFFF --mask_saddr 0 --mask_sport 0 \ --mask_dport 0 --mask_flags 0 \ --txdaddr $HOST_TGDST_IPADDR \ --txdport $HOST_TGDST_UDPPORT –qid $QID_DST_FPIF --sindx $FID Key Filter Mask Result Key matches on DST Overlay Address

13 Neighbor Rtr Fastpath interface Filters (continued) SALT TG Src FPIF TG Dst FPIF ip_fpc --cmd write_fltr --fp 0 --fid $FID \ --key_type 0 --key_rxfpif $FPIF_SRC \ --key_daddr $ HOST_TGDST_OVLY_ADDR \ --key_saddr 0 --key_sport 0 --key_dport 0 --key_proto 0 \ --mask_daddr 0xFFFFFFFF --mask_saddr 0 --mask_sport 0 \ --mask_dport 0 --mask_flags 0 \ --txdaddr $HOST_TGDST_IPADDR \ --txdport $HOST_TGDST_UDPPORT –qid $ QID_DST_FPIF --sindx $FID Key Filter Mask Result qid is bound to Router DST FPIF That is what gets packet to go OUT that FPIF

14 Neighbor Rtr Fastpath interface Filters (continued) SALT TG Src FPIF TG Dst FPIF ip_fpc --cmd write_fltr --fp 0 --fid $FID \ --key_type 0 --key_rxfpif $FPIF_SRC \ --key_daddr $HOST_TGDST_OVLY_ADDR \ --key_saddr 0 --key_sport 0 --key_dport 0 --key_proto 0 \ --mask_daddr 0xFFFFFFFF --mask_saddr 0 --mask_sport 0 \ --mask_dport 0 --mask_flags 0 \ --txdaddr $ HOST_TGDST_IPADDR \ --txdport $ HOST_TGDST_UDPPORT –qid $QID_DST_FPIF --sindx $FID Key Filter Mask Result Addr/Port in Result are for host at other end (Next Hop) of that tunnel. Addr is what gets the Internet to deliver packet to end host and port gets the host to deliver to application

15 Neighbor Rtr Fastpath interface You will add… SALT TG Src FPIF TG Dst FPIF Filter New Fastpath interface to connect your router to a neighbor router. New Filter to direct traffic from your SRC to their DST New Filter to direct traffic from their SRC to your DST Filter

16 Directions for Hands On Exercises Note your User id: gec## Note your SPP Open THREE windows ssh to your spp host in EACH window Initiate your SSH Tunnel »You will want to leave this up for the duration of the Exercises. Window 1: ping »First, ping your SPP (refer to your “User: gec##” page for your SPP) ping sppkans1.arl.wustl.edu OR sppwash1.arl.wustl.edu OR sppsalt1.arl.wustl.edu »Run pingit cd GEC7./pingit –Notice the UDP Port number that it reports. –But don’t “press any key to continue” yet.

17 Directions for Hands On Exercises (continued) Window 2: ssh to slice on your assigned SPP » ssh -i ~/.ssh/gec##_id_rsa Also show on your “User: gec##” page »Ping something back on your campus that your firewalls will allow you to ping… Or ping something on our campus: –> ping drn06.arl.wustl.edu »See what interfaces your SPP has: >scfg --cmd get_ifaces –TWO DASHES before cmd!! » cd HandsOnSession/UserScripts/User_##/ »./configureRouter.sh »Now, just for practice, tear down the router:./teardownRouter.sh »Then re-run the configureRouter.sh script On your laptop, start SPPMon.jar Load monitoring file »Under File menu select Open »Double Click on User##.exp Go back to ‘pingit’ window (Window 1) and hit Enter »You should see the monitoring graph counting the ping requests and responses. The lines may be on top of each other. Placing your mouse on a label on the right margin brings the corresponding line to the front »Try hitting ‘Enter’ multiple times if you like.

18 Directions for Hands On Exercises (continued) Window 3: Traffic Generator Run the traffic generator: »cd GEC7 »./tgit Notice the values that it reports for –Number of packets –Packet per second rate –Packet payload length –Destination address tgit is actually a script that runs a java app on your spphost. The java app sends a request to a server on the TG SRC host asking it to start a traffic generator. Look at monitoring graph to see the tg pkts being counted. Look at the command line arguments for tgit: »./tgit --help Try running tgit and change the parameters of the traffic. »Leave the destination address the same as original run reported.

19 Directions for Hands On Exercises (continued) Now lets pair up with another user gec01 – gec02 gec03 – gec04 Etc… We are going to try to join your Router to your Neighbor’s »To do this we need a new Fastpath interface on each router »We also need filters to be able to send traffic across both routers »We will make changes to configureRouter.sh »Before editing the configureRouter.sh script, fill in the work sheets on the following pages »As you go through the worksheets, note that parenthetical notes (ARG#) These will come in handy when you go to edit configureRouter.sh

20 Worksheet(s) – Page 1 TG Src FPIF TG Dst FPIF Filter1 Filter2 TG Src FPIF TG Dst FPIF Filter1 Filter2 We are going to list the parameters you will need for Building a new FPIF Adding a filter to route traffic from your src to your neighbor’s dst Adding a filter to route traffic coming from your neighbor’s src to your dst. Work with your partner. Figure out which one of you is UserN and which is UserN+1 srcN dstN srcN+1 dstN+1 UserN UserN+1 PEER FPIF

21 Worksheet(s) – Page 2 TG Src FPIF TG Dst FPIF Filter1 Filter2 TG Src FPIF TG Dst FPIF Filter1 Filter2 UserN FPIF to Neighbor My SPP Name: ___________ Other SPP Name: ___________ Link between SPPs: »Look at “Current SPP Network” Slide!!! »My Addr: _______________ (ARG0) »Other End(Next Hop) Addr: _______________ Pick a Port Number ________ (ARG1) »Do NOT use port #’s in range UserN+1 FPIF to Neighbor My SPP Name: ___________ Other SPP Name: ___________ Link between SPPs: »Look at “Current SPP Network” Slide!!! »My Addr: _______________ (ARG0) »Other End(Next Hop) Addr: _______________ Pick a Port Number ________ (ARG1) »Do NOT use port #’s in range srcN dstN srcN+1 dstN+1 UserN UserN+1 PEER FPIF

22 Worksheet(s) – Page 3 TG Src FPIF TG Dst FPIF Filter1 Filter2 TG Src FPIF TG Dst FPIF Filter1 Filter2 UserN Filter1 Key DADDR (dstN+1): »Overlay Dest Addr: ______________ (ARG2) Name of FPIF to send pkts to: ______ »QID: _____________ (ARG5) We have already used 0, 1, 2 for other FPIFs. Chose something else »Addr on other end of FPIF: __________ (ARG3) »Port on other end of FPIF: __________ (ARG4) UserN+1 Filter1 Key DADDR (dstN): »Overlay Dest Addr: ______________ (ARG2) Name of FPIF to send pkts to: ______ »QID: _____________ (ARG5) We have already used 0, 1, 2 for other FPIFs. Chose something else »Addr on other end of FPIF: __________ (ARG3) »Port on other end of FPIF: __________ (ARG4) srcN dstN srcN+1 dstN+1 UserN UserN+1 PEER FPIF

23 Neighbor Rtr Fastpath interface Before we do Filter2 Lets Review … SALT TG Src FPIF TG Dst FPIF ip_fpc --cmd write_fltr --fp 0 --fid $FID \ --key_type 0 --key_rxfpif FPIF_SRC \ --key_daddr $HOST_TGDST_OVLY_ADDR \ --key_saddr 0 --key_sport 0 --key_dport 0 --key_proto 0 \ --mask_daddr 0xFFFFFFFF --mask_saddr 0 --mask_sport 0 \ --mask_dport 0 --mask_flags 0 \ --txdaddr $ HOST_TGDST_IPADDR \ --txdport $ HOST_TGDST_UDPPORT –qid $ QID_DST_FPIF --sindx $FID Key Filter Mask Result Here is the filter for sending from your SRC FPIF to your DST FPIF. qid is bound to Router DST FPIF That is what gets packet to go OUT that FPIF Addr/Port in Result are for host at other end (Next Hop) of that tunnel. Addr is what gets the Internet to deliver packet to end host and port gets the host to deliver to application YOU WILL NEED THESE SAME VALUES to you have Filter2 send to your DST FPIF

24 Worksheet(s) – Page 4 TG Src FPIF TG Dst FPIF srcN dstN Filter1 Filter2 TG Src FPIF TG Dst FPIF Filter1 Filter2 UserN Filter2 Key DADDR (dstN): »Overlay Dest Addr: ______________ (ARG6) Name of FPIF to send pkts to: _______ »REUSE EXISTING VARIABLES!!! »QID: _____________ (ARG9) »Addr on other end of FPIF: ___________ (ARG7) »Port on other end of FPIF: ___________ (ARG8) UserN+1 Filter2 Key DADDR (dstN+1): »Overlay Dest Addr: ______________ (ARG6) Name of FPIF to send pkts to: _______ » REUSE EXISTING VARIABLES!!! »QID: _____________ (ARG9) »Addr on other end of FPIF: ___________ (ARG7) »Port on other end of FPIF: ___________ (ARG8) srcN+1 dstN+1 UserN UserN+1 PEER FPIF

25 Directions for Hands On Exercises (continued) Now make the necessary changes to configureRouter.sh »There are notes in configureRouter.sh to help you achieve this. »Editors available: vi, emacs, nano »Open configureRouter.sh in an editor and search for the word Updates. Start there… »Don’t forget to comment out the exit … Redo your configuration: »Close SPPmon session: Under File menu select ‘Close’ »Run./teardownRouter.sh to remove the previous configuration. »Run./configureRouter.sh to reconfigure with your new configuration. »Look for errors in log.out When all seems ok: »Reload the monitoring from the same file. »Add any new monitoring entries that you might need. Look at the output from your configureRouter.sh script to see what indices you need to add To add a new index to monitor, click on the center of the SPP icon and select StatsPreQPkt, fill in the index, select Rate, and click Enter »Change your dest. address argument to tgit and try to send through both of your routers. Try it from both directions (each of you try running tgit)

26 Directions for Hands On Exercises (continued) Now increase the packet per second rate until you think the rates you are seeing on the two routers are different. »Why are they different? Try adding some monitoring to look at the queues on each side of your new Fastpath interface. »Add a new monitoring graph Under the Monitoring Menu, select Add Monitoring Display »Add a monitor for the queue length in packets for your new qid Click on the center of the SPP icon and select QLengthPkt, fill in the qid and DO NOT select Rate Try your increased packet rate now. »Do you see the queue fill up? Now lets manipulate the queue parameters »scfg --cmd set_queue_params --fp 0 --qid --threshold bw »Try different values for threshold. »Changing the BW right now will not have any impact since there are no competing flows. This queue is the only queue on a FPIF that has a 10Mb/s rate. Even if you reduce this queue to less than 10Mb/s it will be capped by the FPIF rate if there is no other traffic for that FPIF.