Washington WASHINGTON UNIVERSITY IN ST LOUIS GigE for the MSR Fred Kuhns

Slides:



Advertisements
Similar presentations
Computer Networks20-1 Chapter 20. Network Layer: Internet Protocol 20.1 Internetworking 20.2 IPv IPv6.
Advertisements

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.
Internet Control Protocols Savera Tanwir. Internet Control Protocols ICMP ARP RARP DHCP.
TCP/IP Protocol Suite 1 Chapter 7 Upon completion you will be able to: ARP and RARP Understand the need for ARP Understand the cases in which ARP is used.
Chapter 5 The Network Layer.
Oct 21, 2004CS573: Network Protocols and Standards1 IP: Addressing, ARP, Routing Network Protocols and Standards Autumn
Oct 19, 2004CS573: Network Protocols and Standards1 IP: Datagram and Addressing Network Protocols and Standards Autumn
Spring Routing & Switching Umar Kalim Dept. of Communication Systems Engineering 03/04/2007.
Lecture 20: Network Primer 7/8/2003 CSCE 590 Summer 2003.
Chapter 3 Review of Protocols And Packet Formats
IP Address 0 network host 10 network host 110 networkhost 1110 multicast address A B C D class to to
Internet Command Message Protocol (ICMP) CS-431 Dick Steflik.
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,
Packet Analysis with Wireshark
ICMP (Internet Control Message Protocol) Computer Networks By: Saeedeh Zahmatkesh spring.
© Janice Regan, CMPT 128, CMPT 371 Data Communications and Networking Network Layer ICMP and fragmentation.
1 Computer Communication & Networks Lecture 20 Network Layer: IP and Address Mapping (contd.) Waleed.
G64INC Introduction to Network Communications Ho Sooi Hock Internet Protocol.
The Network Layer. Network Projects Must utilize sockets programming –Client and Server –Any platform Please submit one page proposal Can work individually.
TCOM 509 – Internet Protocols (TCP/IP) Lecture 03_a
1 IP Forwarding Relates to Lab 3. Covers the principles of end-to-end datagram delivery in IP networks.
TCOM 515 IP Routing Lab Lecture 1. Class information Instructor: Wei Wu –Lecture and Lab session 2 – Instructor:
1 IP: putting it all together Part 1 G53ACC Chris Greenhalgh.
CMPT 471 Networking II Address Resolution IPv4 ARP RARP 1© Janice Regan, 2012.
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.
10/13/2015© 2008 Raymond P. Jefferis IIILect 07 1 Internet Protocol.
Fall 2005Computer Networks20-1 Chapter 20. Network Layer Protocols: ARP, IPv4, ICMPv4, IPv6, and ICMPv ARP 20.2 IP 20.3 ICMP 20.4 IPv6.
Washington WASHINGTON UNIVERSITY IN ST LOUIS Packet Routing Within MSR Fred Kuhns
TCOM 515 IP Routing. Syllabus Objectives IP header IP addresses, classes and subnetting Routing tables Routing decisions Directly connected routes Static.
Hyung-Min Lee ©Networking Lab., 2001 Chapter 8 ARP and RARP.
Chapter 81 Internet Protocol (IP) Our greatest glory is not in never failing, but in rising up every time we fail. - Ralph Waldo Emerson.
Internetworking Internet: A network among networks, or a network of networks Allows accommodation of multiple network technologies Universal Service Routers.
CS4550 Computer Networks II IP : internet protocol, part 2 : packet formats, routing, routing tables, ICMP read feit chapter 6.
Internetworking Internet: A network among networks, or a network of networks Allows accommodation of multiple network technologies Universal Service Routers.
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.
1 Network Layer Lecture 16 Imran Ahmed University of Management & Technology.
IP1 The Underlying Technologies. What is inside the Internet? Or What are the key underlying technologies that make it work so successfully? –Packet Switching.
Chapter 7 ARP and RARP.
Washington WASHINGTON UNIVERSITY IN ST LOUIS Fred Kuhns Applied Research Laboratory NSP packet Formats.
Jan 15, 2008CS573: Network Protocols and Standards1 The Internet Protocol: Related Protocols and Standards (IP datagram, addressing, ARP) Network Protocols.
Transport Layer3-1 Chapter 4: Network Layer r 4. 1 Introduction r 4.2 Virtual circuit and datagram networks r 4.3 What’s inside a router r 4.4 IP: Internet.
Internet Protocols (chapter 18) CSE 3213 Fall 2011.
CSC 600 Internetworking with TCP/IP Unit 5: IP, IP Routing, and ICMP (ch. 7, ch. 8, ch. 9, ch. 10) Dr. Cheer-Sun Yang Spring 2001.
1 Kyung Hee University Chapter 8 ARP(Address Resolution Protocol)
Network Layer: Address Mapping, Error Reporting, and Multicasting
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 Internetworking: IP Packet Switching Reading: (except Implementation; pp )
IP Protocol CSE TCP/IP Concepts Connectionless Operation Internetworking involves connectionless operation at the level of the Internet Protocol.
Washington WASHINGTON UNIVERSITY IN ST LOUIS Gigabit Ethernet Interface for the MSR Fred Kuhns Applied Research Laboratory Washington.
Network Layer Protocols COMP 3270 Computer Networks Computing Science Thompson Rivers University.
Chapter 20 Network Layer: Internet Protocol Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Packet Switch Network Server client IP Ether IPTCPData.
Network Layer session 1 TELE3118: Network Technologies Week 5: Network Layer Forwarding, Features Some slides have been taken from: r Computer.
Behrouz A. Forouzan TCP/IP Protocol Suite, 3rd Ed.
Scaling the Network Chapters 3-4 Part 2
IP: Addressing, ARP, Routing
Instructor Materials Chapter 5: Ethernet
Scaling the Network: The Internet Protocol
Chapter 8 ARP(Address Resolution Protocol)
Net 323: NETWORK Protocols
CS 457 – Lecture 10 Internetworking and IP
Some slides have been taken from:
IP : Internet Protocol Surasak Sanguanpong
Internetworking Outline Best Effort Service Model
Chapter 7 ARP and RARP Prof. Choong Seon HONG.
Chapter 15. Internet Protocol
Scaling the Network: The Internet Protocol
Ch 17 - Binding Protocol Addresses
Chapter 4: outline 4.1 Overview of Network layer data plane
Presentation transcript:

Washington WASHINGTON UNIVERSITY IN ST LOUIS GigE for the MSR Fred Kuhns

2 Washington WASHINGTON UNIVERSITY IN ST LOUIS Fred Kuhns - 1/9/01 Ethernet Forwarding Scenario 1 Ethernet Switch Host IP: MAC: 08:00:20:7C:E3:25 Host IP: MAC: 08:00:20:7C:F2:45 Router Port 0: IP: MAC: 00:01:03:7C:23:03 Port 1: IP: MAC: 00:01:03:7C:56:34 Ethernet Switch Port 1: IP: MAC: 00:00:5E:04:00:01 MSR P1 Host IP: MAC: 00:40:33:A3:4C:04 P0 P1 Host IP: MAC: 08:00:20:54:6C:4A P3 Use the Address Resolution Protocol to Map to 08:00:20:7C:E3:25. Encapsulation datagram in Ethernet frame and send. Destination Addr: IP hdr data Packet arrives with destination host on local network. Output port must map destination IP address to MAC address.

3 Washington WASHINGTON UNIVERSITY IN ST LOUIS Fred Kuhns - 1/9/01 Ethernet Forwarding Scenario 2 Ethernet Switch Host IP: MAC: 08:00:20:7C:E3:25 Host IP: MAC: 08:00:20:7C:F2:45 Router Port 0: IP: MAC: 00:01:03:7C:23:03 Port 1: IP: MAC: 00:01:03:7C:56:34 Ethernet Switch Port 1: IP: MAC: 00:00:5E:04:00:01 MSR P1 Host IP: MAC: 00:40:33:A3:4C:04 P0 P1 Host IP: MAC: 08:00:20:54:6C:4A P3 Forwards to final destination host Next hop router IP address must be used in the ARP request: Map to 00:01:03:7C:23:03. Encapsulate datagram in Ethernet frame and send. Destination Addr: IP hdr data Packet arrives with destination host NOT on locally attached network. Output port must send to the next hop router.

4 Washington WASHINGTON UNIVERSITY IN ST LOUIS Fred Kuhns - 1/9/01 Ethernet Frame Format Transport Header Fragment offset VersionH-lengthTOSTotal length IdentificationFlags TTLProtocolIP Header checksum IP Source Address IP Destination Address Destination Address cont. Destination (6 B) Source Address cont. Source Address - (6 B) Ether Type (2 B) IP Header Ethernet Header IP Datagram

5 Washington WASHINGTON UNIVERSITY IN ST LOUIS Fred Kuhns - 1/9/01 IP Encapsulation in Ethernet Frames FCS (4)Data ( ) type 0800 src address (6)dst address (6) len (2) src address (6)dst address (6)FCS (4)Data ( ) DSAP AA SSAP AA ctl 03 Org Code 00 type LLC802.2 SNAP LLC/SNAP Ethernet frame size: Bytes if type  1500, then IEEE frame, otherwise Ethernet V2. Ethernet Encapsulation, RFC 894 IEEE 803.2/802.2 encapsulation, RFC  len  1500 Pad (0-46) Pad (0-46)

6 Washington WASHINGTON UNIVERSITY IN ST LOUIS Fred Kuhns - 1/9/01 ARP Frame Destination Address (6B) Source Address (6B) Ether Type (2B) Hardware Address Space (2B) Protocol Address Space (2B) Byte length of Hardware address = 6 (1B) Byte length of Protocol address = 4 (1B) Hardware Address of Sender (6 B) Protocol Address of Sender (4 B) Hardware Address of Destination (6 B) Protocol Address of Destination (4 B) Operation Code 1/2(2B)

7 Washington WASHINGTON UNIVERSITY IN ST LOUIS Fred Kuhns - 1/9/01 ARP Message Formats ARP Request type 0806 src address dst address ff:ff:ff:ff:ff:ff FCS xx has 0001 pas 0800 hl 6 pl 4 op 01 sha spa tha tpa type 806 src address dst address FCS xx has 1 pas 800 hl 6 pl 4 op 02 sha spa tha tpa ARP Reply Host B Eth Reply (02) Request (01) Host A Eth Host A IP Host B IP Ethernet Header (14 B) pad ARP Message (28 Bytes for Request or Reply) Ethernet Data - Pad with zeros to 46 Bytes FCS (4B) Ethernet Frame with ARP Request/Reply - 64 Bytes 18 Byte Pad

8 Washington WASHINGTON UNIVERSITY IN ST LOUIS Fred Kuhns - 1/9/01 IP over ATM (rfc 791 and 2684) IP Header AAL5 Trailer IP Datagram Fragment offset VersionH-lengthTOSTotal length Identificationflags TTLprotocolHeader checksum Source Address Destination Address Options ?? IP data (transport header and transport data) AAL5 padding ( bytes) CPCS-UU (0) Length (IP packet + LLC/SNAP) CRC

9 Washington WASHINGTON UNIVERSITY IN ST LOUIS Fred Kuhns - 1/9/01 IP Header Fields (rfc 791) Version - support IPv4 (4) Header Length - Length in 32 bit words (>= 5) TOS - Total Length - Length of datagram in octets Id - Assists in reassembling fragments Flags - Fragment Offset - Where fragment belongs, offset is in octets 0 DFDF MFMF TOS Precedense Field: Network Control Internetwork Control Critic/ECP Flash Override Flash Immediate Priority Routine Remaining TOS Fields: D - 1 = Low delay T - 1 = High Throughput R - 1 = High Reliability 0Prec.DTR0 DF - 1 = Don’t Fragment, MF - 1 = More Fragments

10 Washington WASHINGTON UNIVERSITY IN ST LOUIS Fred Kuhns - 1/9/01 IP Header Fields TTL - router must decrement, if 0 then discard packet Protocol - UDP/TCP/ICMP/RSVP to name a few Header Checksum - 16 bit one’s complement of the one’s complement sum of all 16 bit words in header Source Address - Sending hosts IP address Destination Address - Destination hosts IP address

11 Washington WASHINGTON UNIVERSITY IN ST LOUIS Fred Kuhns - 1/9/01 SPC shim update shim demux Packet Routing Within MSR WUGS... out port + IntBase ( ) InVC... IngressEgress ATM uses VCs as link layer address. Ethernet: Base VC used for directly attached hosts, subports are for hext hop routers From previous hop router or endstation add shim rem shim FIPL shim proc. FPX SPC shim demux shim update OutVC Outbound VC = SPI + ExtBase 0 <= SPI<= 15 currently support at most 4 Link Interface IP processing for FPX 1.Broadcast and Multicast destination address 2.IP options 3.ICMP messages 4.Packet not recognized Inbound VC = SPI + ExtBase 0 <= SPI <= 15 Currently support at most 4 Inbound VCs: One for Ethernet or Four for ATM Current VCI Support 1) 64 Ports (PN) 2) 16 sub-ports (SP) FIPL IP proc plugins FIPL IP proc plugins in port + IntBase ( )

12 Washington WASHINGTON UNIVERSITY IN ST LOUIS Fred Kuhns - 1/9/01 GigE Link Interface ARP Table (M Entries) MACIP IP 1 MAC 1 IP M MAC M... Pkt VC = 50 Endsystem, broadcast or multicast address if VC != 50, Lookup VC in VIN table returns IP used for ARP lookup (support N = 4) Send to pkt->dst if bcast or mcast map to eaddr else resolve w/ARP IP Header data AAL5 trailer IP Header data Ethernet Add Ethernet header using the derived destination address and out source address. Protocol is IP. Software creates VIN table at boot time by writing to interface. From FPX/SPC To Next Hop or Endstation No ARP entry aging! To a next hop router NH #1 = Base + 1 = 51 NH #2 = Base + 2 = 52 NH #3 = Base + 3 = 53 VIN Table - 4 entries 50MyIP MyIP 2 NhIP 2 MyIPVCNhIP 52MyIP 1 NhIP 1 51MyIP 0 NhIP 0 Map multicast or broadcast to ethernet address If ARP table lookup fails, send ARP request to broadcast address, drop packet. No retries are made.

13 Washington WASHINGTON UNIVERSITY IN ST LOUIS Fred Kuhns - 1/9/01 Ethernet Assigned Numbers RFC1700 obsoleted by online database at IANA: – Ethernet Address - 6 octets: –3 high-order octets = Organizationally Unique Identifier (OUI) –3 low-order octets = the interface number Multicast bit = lsb of the MSB (xxxx xxx1) –first byte odd => multicast or broadcast –first byte even => unicast address –multicast address = ((OUI | 0x0100) << 24) & Group_ID Ethernet Broadcast: FF:FF:FF:FF:FF:FF

14 Washington WASHINGTON UNIVERSITY IN ST LOUIS Fred Kuhns - 1/9/01 IP and Ethernet Multicast IANA has allocated address block with OUI = 00:00:5E –Used for unicast addresses for ” IETF standard track protocols “ –Half of Multicast addresses reserved for IP, remaining for “special use”. Leaves 23 bits for multicast addresses: 01:00:5E:00:00:00 to 01:00:5E:7F:FF:FF –Could use this block for our interface, see ethernet numbers IP Multicast –Class D address, 0xE Bit Group ID – to (0xE xEFFFFFFF) IP to Ethernet Mapping –RFC Host Extensions for IP Multicasting –Non-unique mapping: 28 bit IP group to 23 bit Ethernet group 32 IP multicast groups per mapped ethernet multicast address.

15 Washington WASHINGTON UNIVERSITY IN ST LOUIS Fred Kuhns - 1/9/01 Multicast: IP to Ethernet Mappings Network Byte Ordering, Internet Standard Bit order: (Big-Endian) xxx xxxx xxxx xxxx xxxx xxxx Multicast BitInternet Bit MSBLSB lsbmsb 1110 xxxx xxxx xxxx xxxx xxxx xxxx xxxx Class D (Multicast) Not Used in IP to Ethernet Mapping Block of Ethernet Multicast Address 08 LSB 23 bits

16 Washington WASHINGTON UNIVERSITY IN ST LOUIS Fred Kuhns - 1/9/01 IP Broadcast No Direct Impact on GigE Interface IP Broadcast : default, we will not forward directed broadcasts. –limited versus: {-1, -1}. Must not be forwarded, Destination address only –Directed broadcast: {Network-Number, -1}, destination address only. –Subnet Directed Broadcast: {Network-Number, Subnet-Number, -1} –Directed Broadcast to all subnets: {Network-Number, -1, -1}

17 Washington WASHINGTON UNIVERSITY IN ST LOUIS Fred Kuhns - 1/9/01 Unicast - If we use the IANA Block xxxx xxxx xxxx xxxx Multicast Bit set to 0 MSBLSB IANA Block of Ethernet Addresses 16 bits ARLInterface Number

18 Washington WASHINGTON UNIVERSITY IN ST LOUIS Fred Kuhns - 1/9/01 GigE Link Interface ARP Table (M Entries) MACIP IP 1 MAC 1 IP M MAC M... Base VC to FPX/SPC IP Header data Ethernet From Next Hop or Endstation To FPX/SPC receive ethernet frame: eth if (eth->type == ARP) if (eth->arp->has != Ethernet/0001) Drop Frame if (eth->arp->pas != IP/0800) Drop Frame update {eth->arp->spa, eth->arp->sha} in ARP table if (eth->arp->tpa NOT in {MyIP0, MyIP1, MyIP2}) Drop Frame // target IP not ours if (eth->arp->op == Request/01) { swap source and target ARP info set operation to Reply set ether header src and dst address send reply } // Already handled eth->arp->op == Reply/02 // when updated cache above else if (eth->type == IPv4) remove ethernet header, padding and CRC add AAL5 trailer and required padding break into cells and send on default Base VC else Error, drop packet *Unicast MAC address filtering IP Header data AAL5 trailer

19 Washington WASHINGTON UNIVERSITY IN ST LOUIS Fred Kuhns - 1/9/01 Notes Packet Received on ATM interface: –If received on Base_VC (i.e. 50) then map IP destination (ip->dst_addr) to ethernet representation. Unicast uses ARP table, multicast and broadcast use appropriate mapping. –Otherwise, lookup VC in VIN table: Table entry index = RX_VC - Base_VC. ARP the resulting Next Hop IP address. –This permits a simple mechanism for “tunneling” traffic to a gateway. This allows us to support directed broadcast and provides a convenient mechanism for testing. Packet received on Ethernet interface: –if IPv4 then send all (unicast, multicast and broadcast) to input port processor on the Base_VC (i.e. 50)

20 Washington WASHINGTON UNIVERSITY IN ST LOUIS Fred Kuhns - 1/9/01 ARP Cache IP Address = Network_Prefix.Host or simply Net.Host –Assume a prefix length of at least 24 bits, leaves 8 bits for the host –An interface can have at most 3 unique IP addresses Interface may communicate with at most 256 hosts per network Implement ARP cache as a table with 768 entries (3 * 256) See next slide VIN Table Prefix Mask Local IP Address Next Hop IP Address Mask 0 MyIP 0 NH 0 Mask 1 MyIP 1 NH 1 Mask 2 MyIP 2 NH 2 Entry Number Ethernet IP IP 0,0... IP 0,255 Ether 0,255 Ether 0,0 IP 1,0... IP 1,255 Ether 1,255 Ether 1,0 IP 2,0... IP 2,255 Ether 2,255 Ether 2,0 ARP Table Net 0 Net 1 Net 2 Net 0 = Mask 0 & MyIP 0 Net 1 = Mask 1 & MyIP 1 Net 2 = Mask 2 & MyIP 2

21 Washington WASHINGTON UNIVERSITY IN ST LOUIS Fred Kuhns - 1/9/01 ‘get next packet’: // received frame from ATM interface if (RX_VC == Base_VC) ipdst = ip->dst_addr; else ipdst = VIN_Table[RX_VC- Base_VC].NextHop // ipdst == IP Address of host we must send packet to // determine network for (i = 0; i < 3; i++) { if ((ipdst & Mask i ) == (MyIP i & Mask i )) { index = (i dst_addr & ~ Mask i ) break; } if i == 3 ; drop packet, goto get next packet // i corresponds to the Network Number (0 - 2) if (ArpTable[index].EtherAddress != 00:00:00:00:00:00) { construct ethernet frame send packet goto ‘get next packet’ } else { send ARP Request for ipdst drop packet, goto ‘get next packet’} Implementing the ARP Table VIN Table Ethernet IP IP 0,0... IP 0,255 Ether 0,255 Ether 0,0 IP 1,0... IP 1,255 Ether 1,255 Ether 1,0 IP 2,0... IP 2,255 Ether 2,255 Ether 2,0 ARP Table index Prefix Mask Local IP Address Next Hop IP Address Mask 0 MyIP 0 NH 0 Mask 1 MyIP 1 NH 1 Mask 2 MyIP 2 NH 2 Entry Number don’t need to store IP address

22 Washington WASHINGTON UNIVERSITY IN ST LOUIS Fred Kuhns - 1/9/01 Notes and Issues GigE Control Interface for Software configuration. 1.Reset interface to defaults 2.Clear ARP cache 3.Read ARP table 4.Read VIN table 5.Read ethernet address 6.set VIN table entries and other registers Set BASE VC (currently 50) Set Entries in the VIN table Add static ARP entries??

23 Washington WASHINGTON UNIVERSITY IN ST LOUIS Fred Kuhns - 1/9/01 Notes and Issues Comprehensive testing scenarios need defining verify multicast and broadcast VC to control line card

24 Washington WASHINGTON UNIVERSITY IN ST LOUIS Fred Kuhns - 1/9/01 References RFC Requirements for Internet Hosts –Must send and receive using RFC compliant –Should receive RFC-1042 mixed with RFC we do not –May send using RFC we do not –Must use ARP –Must flush out-of-date ARP cache entries - not compliant –Must prevent ARP floods - we only try once –Should have configurable ARP cache timeout - no –Should save at least one (latest) unresolved (by ARP) packet - no –Must report broadcasts to IP layer - compliant –IP layer Must pass TOS to link layer - via the header –Must Not report no ARP entry as “destination unreachable” - compliant

25 Washington WASHINGTON UNIVERSITY IN ST LOUIS Fred Kuhns - 1/9/01 References RFC-826 : Address Resolution Protocol –Maps to 48 bit Ethernet address –our processing differs in minor ways RFC 1700 : Assigned Numbers –Ethertype values defined by RFC 1700 –IP to ethernet multicast address mapping defined RFC-1812 : Requirements for IPv4 Routers –Must not believe ARP reply if contains multicast or broadcast address - not compliant –Must be compliant with RFC Partial Support Ethernet V2 only –RFC 894: IP encapsulation in Ethernet V2 - Supported –RFC 1042: IP encapsulation in frames - Not Supported