Using the WUGS-20 GigE Line Card

Slides:



Advertisements
Similar presentations
Everything.
Advertisements

Discussion Monday ( ). ver length 32 bits data (variable length, typically a TCP or UDP segment) 16-bit identifier header checksum time to live.
CMPE 150- Introduction to Computer Networks 1 CMPE 150 Fall 2005 Lecture 25 Introduction to Computer Networks.
Precept 3 Host Configuration 1 Peng Sun. What TCP conn. running? Commands netstat [-n] [-p] [-c] (Linux) lsof -i -P (Mac) ss (newer version of netstat)
IP Routing: an Introduction. Quiz
Chapter 23: ARP, ICMP, DHCP IS333 Spring 2015.
Everything. MACIP End-host IP: MAC: 11:11:11:11:11 gateway IP: MAC: 22:22:22:22:22 Google server IP: MACIP MACInterfaceMACInterface.
IST 228\Ch3\IP Addressing1 TCP/IP and DoD Model (TCP/IP Model)
SUSE Linux Enterprise Server Administration (Course 3037) Chapter 7 Connect the SUSE Linux Enterprise Server to the Network.
TCP/IP Networking sections 13.2,3,4,5 Road map: TCP, provide connection-oriented service IP, route data packets from one machine to another (RFC 791) ICMP,
Network Redundancy Multiple paths may exist between systems. Redundancy is not a requirement of a packet switching network. Redundancy was part of the.
DHCP: Dynamic Host Configuration Protocol
Managing Network connections. Network Cabling Ethernet Topology Bus topology – Connects each node in a line – Has no central connection point Star topology.
Network Layer – Subnetting and Control Protocols Dr. Sanjay P. Ahuja, Ph.D. Fidelity National Financial Distinguished Professor of CIS School of Computing,
ARP Scenarios CIS 81 and CST 311 Rick Graziani Fall 2005.
1 IP: putting it all together Part 2 G53ACC Chris Greenhalgh.
Washington WASHINGTON UNIVERSITY IN ST LOUIS January 7, MSR Tutorial John DeHart Washington University, Applied Research Lab
PA3: Router Junxian (Jim) Huang EECS 489 W11 /
1 IP Forwarding Relates to Lab 3. Covers the principles of end-to-end datagram delivery in IP networks.
Examining TCP/IP.
IP Forwarding.
CDPA 網管訓練 駭客任務 2 Ethernet Switching ARP, IP, LAN, Subnet IP Header, Routing ICMP
Applied research laboratory David E. Taylor Users Guide: Fast IP Lookup (FIPL) in the FPX Gigabit Kits Workshop 1/2002.
Washington WASHINGTON UNIVERSITY IN ST LOUIS Packet Routing Within MSR Fred Kuhns
Day 14 Introduction to Networking. Unix Networking Unix is very frequently used as a server. –Server is a machine which “serves” some function Web Server.
Washington WASHINGTON UNIVERSITY IN ST LOUIS June 17, 2002 MSR Tutorial MSR Tutorial: MSR_Config and the AAL5_Download Utilitiy John DeHart Washington.
1 Internet Control Message Protocol (ICMP) Used to send error and control messages. It is a necessary part of the TCP/IP suite. It is above the IP module.
Internet Protocols. Address Resolution IP Addresses are not recognized by hardware. If we know the IP address of a host, how do we find out the hardware.
Washington WASHINGTON UNIVERSITY IN ST LOUIS GigE for the MSR Fred Kuhns
1 - Charlie Wiseman - 05/11/07 Design Review: XScale Charlie Wiseman ONL NP Router.
Washington WASHINGTON UNIVERSITY IN ST LOUIS CP and Full MSR Test Status.
Washington WASHINGTON UNIVERSITY IN ST LOUIS MSR Tutorial Exercises Group 3.
The University of Bolton School of Games Computing & Creative Technologies LCT2516 Network Architecture CCNA Exploration LAN Switching and Wireless Chapter.
Linux Operations and Administration Chapter Eight Network Communications.
Ethernet switch Hosts Can talk using Ethernet addresses only.
1 Connectivity with ARP and RARP. 2 There needs to be a mapping between the layer 2 and layer 3 addresses (i.e. IP to Ethernet). Mapping should be dynamic.
Cisco Confidential © 2013 Cisco and/or its affiliates. All rights reserved. 1 Cisco Networking Training (CCENT/CCT/CCNA R&S) Rick Rowe Ron Giannetti.
1 Chapter 4: Internetworking (Introduction) Dr. Rocky K. C. Chang 16 March 2004.
Review of IPv4 Routing Veena S, MCA Dept, PESIT Mar 09-10, 2013.
3. INTERNETWORKING (PART 1) Rocky K. C. Chang Department of Computing The Hong Kong Polytechnic University 18 February
Washington WASHINGTON UNIVERSITY IN ST LOUIS Gigabit Ethernet Interface for the MSR Fred Kuhns Applied Research Laboratory Washington.
Cisco Routers Routers collectively provide the main feature of the network layer—the capability to forward packets end-to-end through a network. routers.
6. The Open Network Lab Overview and getting started
Behrouz A. Forouzan TCP/IP Protocol Suite, 3rd Ed.
Chapter 3: Packet Switching (overview)
Scaling the Network Chapters 3-4 Part 2
Troubleshooting ip Chapter 5e.
Lab 2: Packet Capture & Traffic Analysis with Wireshark
CIS 116 IPv6 Fundamentals 2 – Primer Rick Graziani Cabrillo College
Scaling the Network: The Internet Protocol
CS4470 Computer Networking Protocols
3. Internetworking (part 1)
MAC Addresses and ARP 32-bit IP address:
Chapter 6 – Routing.
ARP: Address Resolution Protocol
Introduction to Networking
Troubleshooting IP Communications
Introduction to Networking
Introduction to Networking
Introduction to Networking
Introduction to Networking
IP Network Layer and Ethernet Encapsulation
Troubleshooting IP Addressing
Net 323: NETWORK Protocols
Internetworking Outline Best Effort Service Model
2 - IP Routing.
Troubleshooting ip Chapter 5e.
Scaling the Network: The Internet Protocol
Networking Essentials For Firewall-1 Administrators
Figure 6.11 Configuration for Example 4
Presentation transcript:

Using the WUGS-20 GigE Line Card John DeHart Applied Research Laboratory Computer Science and Engineering Department http://www.arl.wustl.edu/arl/projects/techX

Introduction Really understanding how the WUGS-20 GigE line cards work requires understanding how ethernet, ARP, Routers and ethernet switches all work. This set of instructions can’t possibly teach all of that. If you require all the details you are going to have to do a lot of work/study on your own. These instructions will hopefully get you to the point where you can get the GigE line cards working for some useful experimentation. Questions are always welcome: Please keep in mind that we are continuing to support Kits users without support. The Kits program is officially over. The number of Kits users who have GigE cards is very small (2). If you have questions about the GigE cards, you should probably send them to John DeHart directly (jdd@arl.wustl.edu) and CC the other users: Ron Srodawa (srodawa@oakland.edu) Min Song (msong@odu.edu) Our standard configuration has migrated to use FPXs and SPCs on each port of an NSP (formerly called MSR) Linux for all end hosts used in our router testbeds NetBSD used ONLY for building kernels and plugins We will still try to help you with other configurations but it is becoming increasingly difficult to replicate other configurations

Configuring a GigE Line Card SUNI Config There is a SUNI chip on the GigE card which needs some configuration. We won’t go into the details, just don’t change the SUNI configuration commands in the configuration script. Don’t even change the order. Ethernet Config MAC Address Mask IP Address Next Hop IP Address

Configuring a GigE Line Card Utilities readWriteRegs: low level utility for configuring the GigE card(s) Src Directory: wu_arl/wugs/gige/src/utilities/ReadWriteRegisters Binary Linux/readWriteRegs configGigE.sh: script for configuring the GigE cards uses readWriteRegs wu_arl/wugs/gige/src/utilities/configScripts requires that WUARL environment variable be set to point to the root of your wu_arl tree. for me, I set: > setenv WUARL /d/jdd/wu_arl iperf: IP traffic generator useful for experimentation version 1.6.1 exists in CVS tree wu_arl/utilities/IP/iperf website: http://dast.nlanr.net/Projects/Iperf/ tcpdump: Useful for debugging run as root run it on the gigabit ethernet interface of your host, something like: tcpdump –i eth1 you’ll see things like the ARP messages and ping requests and replies. Just be careful of running it when you are sending LOTS of data

configGigE.sh utility Usage Message Running configGigE.sh with no arguments will give the Usage message: > ./configGigE.sh ./configGigE.sh -vci <VCI> -mac <MAC_H16> <MAC_L32> [-{0,1,2} <MYIP#> <MASK#> <NHIP#>] -vci VCI : VCI on which to send GigE control packets from the CP -mac MAC_H16 MAC_L32: hex MAC address to assign to GigE card, high 16 bits first then low 32 bits -0 MYIP0 MASK0 NHIP0: hex values for MYIP0 MASK0 NHIP0 -1 MYIP1 MASK1 NHIP1: hex values for MYIP1 MASK1 NHIP1 -2 MYIP2 MASK2 NHIP2: hex values for MYIP2 MASK2 NHIP2 Example> ./configGigE.sh -vci 100 -mac 0x4400 0x5E040001 -0 0xC0A82801 0xFFFFFF00 0xC0A82805 -1 0 0 0 -2 0 0 0 this would assign: MAC address: 44 00 5e 04 00 01 MYIP0 : 192.168.50.1 MASK0 : 255.255.255.0 (24 bits) NHIP0 : 192.168.50.5 MYIP1 : 0 MASK1 : 0 NHIP1 : 0 MYIP2 : 0 MASK2 : 0 NHIP2 : 0

Control Connection for GigE Configuration CP VCI=N VCI=N VCI=30 P0:GLink P1:GigE APIC VCI=N+1 VCI=N+1 Commands to read/write registers in GigE card VCI=30 P2:GigE Each GigE card needs a separate bidirectional control connection between it and the CP. At the GigE end it must use VCI=30 In the example above we have two GigE cards and we are using VCI N and VCI N+1 at the CP end. There are two connections on P0 mapping VCI N  P1, VCI 30 VCI N+1  P2 VCI 30 And one connection on each of P1 and P2: P1 VCI 30  P0 VCI N P2 VCI 30  P0 VCI N+1 Remember: You still need at least one ATM interface on your switch so you can connect a CP that can send ATM control cells!

A Simple Configuration Host1 VCI=128 GigE-1 IP: 192.168.40.2 24 bit netmask MAC: <as defined by hw> route: 192.168.50.0/24 gw: 192.168.40.1 GE Eth MYIP0: 192.168.40.1 MYMAC: 00:00:5E:04:00:01 MASK0: * (Don’t care) NHIP0: * (Don’t care) Host2 VCI=128 GigE-2 IP: 192.168.50.2 24 bit netmask MAC: <as defined by hw> route: 192.168.40.0/24 gw: 192.168.50.1 GE Eth MYIP0: 192.168.50.1 MYMAC: 00:00:5E:04:00:02 MASK0: * (Don’t care) NHIP0: * (Don’t care)

Simple Configuration: Ping When Host1 tries to ‘ping’ Host2 for the first time: Host1 has a route that tells it to use 192.168.40.1 as the next hop to get to Host 2 (192.168.50.2) Host1 has no ARP entry for 192.168.40.1 Host1 generates an ARP request asking for MAC address of 192.168.40.1 and sends it out its GE Ethernet interface GigE-1 receives the ARP request which matches its MYIP0 address and responds with its MAC address Host1 receives the ARP reply Host1 then sends out the ping packet. GigE-1 receives the ping packet and formulates an AAL5 frame and sends the cells of the frame out on VPI/VCI 0/128. WUGS-20 is configured to send VPI/VCI 0/128 to port of GigE-2 GigE-2 receives first ping packet destined for 192.168.50.2 GigE-2 has no ARP entry for 192.168.50.2 GigE-2 generates an ARP request asking for the MAC address of 192.168.50.2 and sends it out its ethernet interface. Host2 receives the ARP request which matches its IP address and responds with its MAC address GigE-2 receives the ARP reply and puts an entry in its ARP table.

Simple Configuration: Ping When Host1 tries to ‘ping’ Host2 for the second time: Host1 has a route that tells it to use 192.168.40.1 as the next hop to get to Host 2 (192.168.50.2) Host1 has an ARP entry for 192.168.40.1 Host1 sends out an ethernet frame for the ping packet with a next hop MAC address of GigE-1. GigE-1 receives the ethernet frame and formulates an AAL5 frame and sends the cells of the frame out on VPI/VCI 0/128 WUGS-20 is configured to send VPI/VCI 0/128 to the port of GigE-2 GigE-2 receives first ping packet destined for 192.168.50.2 GigE-2 has an ARP entry for 192.168.50.2 GigE-2 sends the ping packet out its ethernet interface ETC… (similar stuff happens for the ping reply except some ARP information was gleaned on the forward path…)

A Configuration with a Switch IP: 192.163.204.10 MAC: 08:00:20:7C:E3:25 Host1 IP: 192.163.204.2 MAC: 08:00:20:7C:E3:25 IP: 192.163.204.3 MAC: 08:00:20:7C:F2:45 Host2 Host3 P3 Ethernet Switch MSR P1 Port 1: MAC: 00:00:5E:04:00:01 MYIP0: 192.163.204.1 MASK0: * (Don’t care) NHIP0: * MYIP1: * MASK1: NHIP1: * MYIP2: * MASK2: * NHIP2: * Host4 IP: 192.163.204.4 MAC: 00:01:03:7C:23:03

A Configuration with a Switch: Ping When Host1 tries to ‘ping’ Host2: The MSR Port 3 is configured to route packets destined for Host2 to Port 1 on the base VPI/VCI of 0/128. Port 1 has a GigE interface. Port 1 initially does not have an ARP entry for Host2. Port 1 sends an ARP request looking for Host2 and drops this first ping packet. The Ethernet switch sends this packet to Host2 which sends an ARP reply. The Ethernet switch sends the ARP reply back to the MSR Port 3. The next ping from Host1 to Host2 will go through. Similar for when Host1 pings Host3 or Host4. This configuration still does not need to use the Next Hop information in the GigE card.

A Configuration with Routers Host 1 192.168.100.10 192.168.202.0/24 Hosts 192.168.210.0/24 Hosts 192.168.201.0/24 Hosts P3 Ethernet Switch2 P0 Router2 P1 Ethernet Switch1 MSR P0 192.168.200.0/24 Hosts Ethernet Switch3 P0 Router3 P1 192.168.220.0/24 Hosts

A Configuration with Routers In this configuration we have Ethernet Switch1 supporting three subnets: 192.168.200.0/24 192.168.201.0/24 192.168.202.0/24 Each of the Routers (Router1, Router2, MSR) has a presence in each of the subnets (200, 201, 202) on their P0 interfaces MSR P0 (limited to three): 192.168.200.1 192.168.201.1 192.168.202.1 Router2 P0: 192.168.200.2 192.168.201.2 192.168.202.2 Router3 P0: 192.168.200.3 192.168.201.3 192.168.202.3 MSR also supports hosts on the 192.168.100.0/24 subnet such as Host1 192.168.100.10 Router2 also supports the 192.168.210.0/24 subnet Router3 also supports the 192.168.220.0/24 subnet

A Configuration with Routers (con’t) MSR P0 GigE Card Configuration MAC: 44 00 5E 04 00 01 MYIP0: 192.168.200.1 MASK0: 0xffffff00 NHIP0: 192.168.200.2 used for Egress VCI 129 MYIP1: 192.168.201.1 MASK1: 0xffffff00 NHIP1:192.168.201.3 used for Egress VCI 130 MYIP2: 192.168.202.1 MASK2: 0 NHIP2:0 used for Egress VCI 131 (unused in this example)

Example Commands to Configure P0 GigE Assume that VCI 101 is set up in the MSR switch to go from the CP port to P0 VCI 30. cd $WUARL/wugs/gige/src/configScripts ./configGigE.sh -vci 101 -mac 0x4400 0x5E040001 -0 0xc0A8C801 0xffffff00 0xc0A8C802 -1 0xc0A8C901 0xffffff00 0xc0A8C903 -2 0xc0A8CA01 0 0

A Configuration with Routers: Ping When Host1 tries to ‘ping’ any host in the (200, 201, 202) subnets Just like our earlier example where there were no routers.

A Configuration with Routers: Ping When Host1 tries to ‘ping’ a host in the 210 subnet The MSR P3 is configured to route packets destined for the 210 subnet to P0 on the VPI/VCI of 0/129. This will cause P0 to use MYIP0, MASK0 and NHIP0. NHIP0 is the IP address of Router2 A function applied to (MYIP0, MASK0, NHIP0) is used to generate an index into the ARP table in the GE card to store the MAC address of Router2 details are not important at this point. P0 has a GigE interface. P0 GigE initially does not have an ARP entry for Router2. P0 GigE sends an ARP request looking for Router2 and drops this first ping packet. Router2 sends an ARP reply with the MAC address from its P0. The next ping from Host1 to the 210 subnet will go through.

A Configuration with Routers: Ping When Host1 tries to ‘ping’ a host in the 220 subnet The MSR P3 is configured to route packets destined for the 220 subnet to P0 on the VPI/VCI of 0/130. This will cause P0 to use MYIP1, MASK1 and NHIP1. NHIP1 is the IP address of Router3 A function applied to (MYIP1, MASK1, NHIP1) is used to generate an index into the ARP table in the GE card to store the MAC address of Router3 details are not important at this point. P0 has a GigE interface. P0 GigE initially does not have an ARP entry for Router3. P0 GigE sends an ARP request looking for Router3 and drops this first ping packet. Router3 sends an ARP reply with the MAC address from its P0. The next ping from Host1 to the 220 subnet will go through.

Performance In our tests we have seen the following: Using two 2.4 GHz Athlon machines Using iperf UDP: packet size 512 bytes sending rate: ~720 Mb/s receiving rate: ~720 Mb/s with about 0.2% drops at receiver receiving host couldn’t keep up TCP: 700 Mb/s - 770 Mb/s using the iperf defaults 8K buffer size MSS set by TCP based on MTU