L3 Addressing and data plane. Benjamin Baron

Size: px
Start display at page:

Download "L3 Addressing and data plane. Benjamin Baron"

Transcription

1 L3 Addressing and data plane Benjamin Baron

2 L3 addressing

3 IP Addressing Scalability Through Hierarchy Hierarchy through IP prefixes Routing between networks Allocation of address blocks Non-uniform hierarchy More efficient address allocation More complex packet forwarding Dealing with limited address space Larger address space (IPv6 with 128 bits) Sharing a small set of addresses (NAT) Dynamic assignment of addresses (DHCP)

4 Grouping Related Hosts The Internet is an inter-network Used to connect networks together, not hosts Needs a way to address a group of hosts host host... host host host... host LAN 1 router router router WAN WAN LAN 2 LAN = Local Area Network WAN = Wide Area Network

5 Scalability Challenge Suppose hosts had arbitrary IP addresses Then every router would need a lot of information to know how to direct packets toward the host host host... host host host... host LAN 1 router router router WAN WAN LAN forwarding table

6 Hierarchy Through Prefixes Divided into network and host portions /24 is 24-bit prefix (2 8 addresses) Network (24 bits) Host (8 bits)

7 Example IP Address and Subnet Mask Address Mask

8 Scalability Improved Number related hosts from a common subnet /24 on the left LAN /24 on the right LAN host host... host host host... host LAN 1 router router router WAN WAN LAN / /24 forwarding table

9 Easy to Add New Hosts No need to update the routers E.g., adding a new host on the right Doesn t require adding a new forwarding entry host host... host host host... host LAN / /24 router router router WAN WAN LAN 2 host forwarding table

10 Classful Addressing (and Dotted Quad Notation) In the olden days Class A: 0* Very large /8 blocks (e.g., MIT has /8) Class B: 10* Large /16 blocks (e.g,. Jussieu has /16) Class C: 110* Small /24 blocks (e.g., AT&T Labs has /24) Class D: 1110* Multicast groups Class E: 11110* Reserved for future use (sounds a bit scary ) And then, address space became scarce

11 Classless Inter-Domain Routing (CIDR) Use two 32-bit numbers to represent a network. Network number = IP address + Mask IP Address : IP Mask: Address Mask Network Prefix for hosts Usually written as /15

12 Subnetting (VLSM) vs. Supernetting Netid Natural Mask Subnetting Hostid Subnetid Subnet Mask Supernetting Net Mask

13 CIDR = Hierarchy in Address Allocation Prefixes are key to Internet scalability Routing protocols + packet forwarding based on prefixes Today, routing tables contain ~150, ,000 prefixes Recursive division of network prefixes / / / / / / / / / / / / / / / / /19

14 Routing Table Size Reduction

15 CIDR Route Aggregation

16 Scalability: Address Aggregation Provider is given /21 Provider / / / /23 Routers in the rest of the Internet just need to know how to reach /21. The provider can direct the IP packets to the appropriate customer.

17 But, Aggregation Not Always Possible / /23 Provider 1 Provider / / / /23 Multi-homed customer with /23 has two providers. Other parts of the Internet need to know how to reach these destinations through both providers.

18 Scalability Through Hierarchy Hierarchical addressing Critical for scalable system Don t require everyone to know everyone else Reduces amount of updating when something changes Non-uniform hierarchy Useful for heterogeneous networks of different sizes Initial class-based addressing was far too coarse Classless InterDomain Routing (CIDR) helps Next few slides Plots are # of prefixes vs. time

19 Pre-CIDR ( ) Steep Growth Growth faster than improvements in equipment capability

20 CIDR Deployed ( ) Much Flatter Efforts to aggregate (even decreases after IETF meetings!)

21 CIDR Growth ( ) Roughly Linear Good use of aggregation, and peer pressure in CIDR report

22 Boom Period ( ) Steep Growth Internet boom and increased multi-homing

23 Long-Term View ( ) Post-Boom 23

24 Long-Term View ( ) Post-Boom

25 Obtaining a Block of Addresses Separation of control Prefix: assigned to an institution Addresses (hostids): assigned to nodes by the institution Who assigns prefixes? Internet Corp. for Assigned Names and Numbers Allocates large blocks to Regional Internet Registries Regional Internet Registries (RIRs) E.g., ARIN (American Registry for Internet Numbers) Allocated to ISPs and large institutions in a region Internet Service Providers (ISPs) Allocate address blocks to their customers Who may, in turn, allocate to their customers

26 The Address Allocation Process IANA AfriNIC APNIC ARIN LACNIC RIPE AFNIC Renater UPMC Allocation policies of RIRs affect pressure on IPv4 address space

27 whois h whois.arin.net % Information related to ' /16AS2200' route: /16 descr: FR-LIP6-NET origin: AS2200 mnt-by: RENATER-MNT remarks: changed: RenSVP@Renater.fr remarks: changed: rensvp@renater.fr created: T00:00:00Z last-modified: T13:24:48Z source: RIPE

28 Hard Policy Questions How much address space per geographic region? Equal amount per country? Proportional to the population? What about addresses already allocated? Address space portability? Keep your address block when you change providers? Pro: avoid having to renumber your equipment Con: reduces the effectiveness of address aggregation Keeping the address registries up to date? What about mergers and acquisitions? Delegation of address blocks to customers? As a result, the registries are horribly out of date

29 Data Plane Lookup & Forwarding

30 What a big router looks like Juniper T320 (front) Juniper T320 (rear) Cisco Series (front)

31 Router s main components Juniper Routing Engine 2000 Juniper T320 SIB Processor Line card Line card Switching fabric Line card Line card Line card Line card Juniper1-Port Gigabit Ethernet PIC

32 3 Data plane vs Control plane Routing protocol process Forwarding information base updates with active routes Packet in Control plane (Routing engine) Routing table(s) Forwarding Information Base Data plane (Packet forwarding engines) Routing protocol packets Packet out

33 Generic Router Architecture Header Processing Data Hdr Data Hdr Lookup IP Address Update Header Queue Packet IP Address Next Hop 1M prefixes Off-chip DRAM Address Table Buffer Memory 1M packets Off-chip DRAM

34 Life of a Packet in a Router Router gets packet Looks at packet header for destination Looks up forwarding table for output interface Modifies header (TTL, IP header checksum) Passes packet to appropriate output interface Header Processing Data Hdr Lookup IP Address Update Header Queue Packet Data Hdr IP Address Next Hop 1M prefixes Off-chip DRAM Address Table Buffer Memory 1M packets Off-chip DRAM

35 Data Plane Streaming algorithms that act on packets Matching on some bits, taking a simple action at behest of control and management plane Wide range of functionality Forwarding Access control Mapping header fields Traffic monitoring Buffering and marking Shaping and scheduling Deep packet inspection

36 Packet Forwarding Control plane computes a forwarding table Maps destination address(es) to an output link Handling an incoming packet Match: destination address Action: direct the packet to the chosen output link Switching fabric Directs packet from input link to output link

37 Switch Fabric Lookup Address Update Header Header Processing Address Table Lookup Address Update Header Header Processing Address Table Lookup Address Update Header Header Processing Address Table Queue Packet Buffer Memory Queue Packet Buffer Memory Queue Packet Buffer Memory Data Hdr Data Hdr Data Hdr 1 2 N 1 2 N

38 3 Packet in NIC L2/L3 Packet processing ASIC route lookup key Switch interface ASIC data Route look-up processor ASIC Queuing + memory interface ASIC Queuing + memory interface ASIC RDRAM next hop buffering Switch interface ASIC Switch fabric bandwidth grant Packet out NIC L2/L3 Packet processing ASIC route lookup key Switch interface ASIC data Queuing + memory interface ASIC Queuing + memory interface ASIC Route look-up processor ASIC RDRAM buffering Switch interface ASIC Switch fabric

39 Switch: Match on Destination MAC MAC addresses are location independent Assigned by the vendor of the interface card Cannot be aggregated across hosts in the LAN mac1 mac2 mac3 host host... host mac1 mac2 host mac5 switch host mac4 mac3 mac4 mac5 Implemented using a hash table or a content addressable memory

40 IP Routers: Match on IP Prefix IP addresses grouped into common subnets Allocated by ICANN, regional registries, ISPs, and within individual organizations Variable-length prefix identified by a mask length host host host... host host host LAN 1 LAN 2 router router router WAN WAN / /24 forwarding table Prefixes may be nested. Routers identify the longest matching prefix

41 Hop-by-Hop Packet Forwarding Each router has a forwarding table Maps destination addresses to outgoing interfaces Upon receiving a packet Inspect the destination IP address in the header Index into the table Determine the outgoing interface Forward the packet out that interface Then, the next router in the path repeats And the packet travels along the path to the destination

42 Biggest Challenges Determining the appropriate output port IP Prefix Lookup Scheduling traffic so that each flow s packets are serviced. Two concerns: Efficiency: If there is traffic waiting for an output port, the router should be busy Fairness: Competing flows should all be serviced

43 Tables are Large and Growing

44 Lookups Must be Fast Year Line 40B packets (Mpkt/s) Cisco CRS-1 1-Port OC-768C (Line rate: 42.1 Gb/s) Mb/s 1.94 OC Gb/s 7.81 OC Gb/s OC Gb/s 125 OC-768 The number of memory accesses is very crucial in determining the lookup speed

45 Longest Prefix Match Forwarding Forwarding tables in IP routers Maps each IP prefix to next-hop link(s) Destination-based forwarding Packet has a destination address Router identifies longest-matching prefix Pushing complexity into forwarding decisions forwarding table destination / / / / /24 outgoing link Serial0/0.1

46 Lookup is Protocol Dependent Protocol Mechanism Techniques MPLS, ATM, Ethernet IPv4, IPv6 Exact match search Longest-prefix match search Direct lookup Associative lookup Hashing Binary/Multi-way Search Trie/Tree Radix trie and variants Compressed trie Binary search on prefix intervals

47 Exact Matches, Ethernet Switches Layer-2 addresses usually 48-bits long Address global, not just local to link Range/size of address not negotiable 2 48 > 10 12, therefore cannot hold all addresses in table and use direct lookup Advantages: simple expected lookup time is small Disadvantages inefficient use of memory non-deterministic lookup time Þ attractive for software-based switches, but decreasing use in hardware platforms

48 IP Lookups find Longest Prefixes / / / / / / Routing lookup: Find the longest matching prefix (aka the most specific route) among all prefixes that match the destination address.

49 IP Address Lookup routing tables contain (prefix, next hop) pairs address in packet compared to stored prefixes, starting at left prefix that matches largest number of address bits is desired match packet forwarded to specified next hop Problem: large routers may have 100,000 prefixes in their lists routing table prefix next hop 10* 7 01* 110* * * * * * * * * * * * * 9 address:

50 Longest Prefix Match Harder than Exact Match destination address of arriving packet does not carry information to determine length of longest matching prefix need to search space of all prefix lengths; as well as space of prefixes of given length

51 LPM in IPv4: exact match Use 32 exact match algorithms Exact match against prefixes of length 1 Network Address Exact match against prefixes of length 2 Priority Encode and pick Port Exact match against prefixes of length 32

52 Address Lookup Using Tries World Retrieval P1 111* H1 P2 10* H2 P3 1010* H3 P H4 prefixes spelled out by following path from root to find best prefix, spell out address in tree last orange node marks longest matching prefix Lookup adding prefix easy A C P2 G P next-hop-ptr (if prefix) B left-ptr 1 D E 0 P5 I H P4 Trie node right-ptr add P5=1110* F P1

53 Single-Bit Tries: Properties Small memory and update times Main problem is the number of memory accesses required: 32 in the worst case Way beyond our budget of approx. 4 (OC48 requires 160ns lookup, or 4 accesses)

54 Multi-bit Tries W Binary trie Depth = W Degree = 2 Stride = 1 bit W/k Multi-ary trie Depth = W/k Degree = 2 k Stride = k bits

55 4-ary Trie (k=2) 10 P2 10 A B D C E A four-ary trie node ptr00 11 next-hop-ptr (if prefix) F ptr01 ptr10 ptr11 Lookup P1 111* H1 P2 10* H2 P3 1010* H3 P H4 G P3 P1 1 P P P4 2 H

56 Prefix Expansion with Multi-bit Tries If stride = k bits, prefix lengths that are not a multiple of k must be expanded Prefix Expanded prefixes E.g., k = 2: 0* 00*, 01* 11* 11* k-bit trie improves the lookup by k times but a large space is required (next hop or 2 k children)

57 Leaf-Pushed Trie Trie node P1 111* H1 P2 10* H2 P3 1010* H3 P H4 P2 A C G B E P2 1 left-ptr or next-hop D P1 right-ptr or next-hop Lookup P3 P4

58 PATRICIA (practical algorithm to retrieve coded information in alphanumeric) Eliminate internal nodes with only one descendant Encode bit position for determining (right) branching position of the leftmost 1 in the prefix P1 111* H1 P2 10* H2 P3 1010* H3 P H4 PATRICIA Trie P2 Patricia tree internal node left-ptr bit-position right-ptr Lookup * 2 A Bitpos * B C 3 P1 0 1 E 111* 1010* 0 100* F P3 1010* ( = 10100) 5 1 P4 G 10101

59 Fast IP Lookup Algorithms Lulea Algorithm (SIGCOMM 1997) Key goal: compactly represent routing table in small memory (hopefully, within cache size), to minimize memory access Use a three-level data structure Cut the look-up tree at level 16 and level 24 Clever ways to design compact data structures to represent routing look-up info at each level Binary Search on Levels (SIGCOMM 1997) Represent look-up tree as array of hash tables Notion of marker to guide binary search Prefix expansion to reduce size of array (thus memory accesses)

60 Multi-Protocol Label Switching (MPLS) Multi-Protocol Encapsulate a data packet Could be IP, or some other protocol (e.g., IPX) Put an MPLS header in front of the packet Actually, can even build a stack of labels Label Switching MPLS header includes a label Label switching between MPLS-capable routers MPLS header IP packet

61 Goal of MPLS Switch packets instead of forwarding packets Use «label» to commute packets Use IP control plane: routing for signaling Virtual circuit MPLS Switching table Every frames can be used in MPLS network The label for switching is inserted into a specific field of the frames or a new header is added (Shim header)

62 Multi-Protocol Label Switching (MPLS) Key ideas of MPLS Label-switched path spans group of routers Explicit path set-up, including backup paths Flexible mapping of data traffic to paths Motivating applications Small routing tables and fast look-ups Virtual Private Networks Traffic engineering Path protection and fast reroute

63 Flows... Sequence of IP packets from a source IP address to a destination IP address It can be identified by the IP flow id <source IP address, destination IP address>, or <source IP address, source port number, destination IP address, destination port number> Using these parameters, the IP router decides whether an IP packet is an isolated packet, or the beginning of a sequence of IP packets

64 MPLS: Forwarding Equivalence Class (FEC) Rule for grouping packets Packets that should be treated the same way Identified just once, at the edge of the network Example FECs Destination prefix Longest-prefix match in forwarding table at entry point Useful for conventional destination-based forwarding Src/dest address, src/dest port, and protocol Five-tuple match at entry point Useful for fine-grain control over the traffic A label is just a locally-significant identifier for a FEC

65 Labels A label is a short, fixed-length identifier that has local significance (i.e. it is valid on a single hop interconnecting two routers) A label in a packet represents the FEC to which the packet has been assigned The label assigned to a packet is not an encoding of its destination address

66 The shim tag header Where is the label carried? No space in IPv4 packet for a label (tag) If the IP network is running on top of an ATM network/ Frame Relay, the tag is carried in the VPI/VCI field/dlci field For Ethernet, Token Ring, and point-to-point connections running a link layer protocol, such as PPP, the label is encapsulated and inserted between the LLC header and the IP header within a special shim header

67 The shim tag header LLC header Shim tag header IP header TCP header Tag (20 bits) CoS (3 bits) S (1 bit) TTL (8 bits) Tag (20 bits): label for commuting CoS (3 bits): use for experiments Could be use for QoS S (1 bits): Bit stacking 1 if last label in the label stack TTL (8 bits): Time to Live

68 MPLS: Forwarding Based on Labels Hybrid of packet and circuit switching Logical circuit between a source and destination Packets with different labels multiplex on a link Basic idea of label-based forwarding Packet: fixed length label in the header Switch: mapping label to an outgoing link 1 2 1: 7 2: 7 link 7 1: 14 2: 8 link 14 link 8

69 MPLS: Swapping the Label at Each Hop Problem: using label along the whole path Each path consumes a unique label Starts to use up all of label space in the network Label swapping Map the label to a new value at each hop Table has old label, next link, and new label Allows reuse of the labels at different links 1 2 1: 7: 20 2: 7: 53 link 7 20: 14: 78 53: 8: 42 link 14 link 8

70 MPLS: Pushing, Swapping, and Popping Pushing: add the initial in label Swapping: map in label to out label Popping: remove the out label IP Pushing IP Swapping IP Popping IP A R2 C IP edge R1 R4 B R3 D MPLS core

71 Status of MPLS Deployed in practice Small control and data plane overhead in core Virtual Private Networks Traffic engineering and fast reroute Challenges Protocol complexity Configuration complexity Difficulty of collecting measurement data Continuing evolution Standards Operational practices and tools

72 Are 32-bit Addresses Enough? Not all that many unique addresses 232 = 4,294,967,296 (just over four billion) Plus, some are reserved for special purposes And, addresses are allocated in larger blocks And, many devices need IP addresses Computers, PDAs, routers, tanks, toasters, Long-term solution: a larger address space IPv6 has 128-bit addresses (2128 = ) Short-term solutions: limping along with IPv4 Private addresses Network address translation (NAT) Dynamically-assigned addresses (DHCP)

73 Short-Term Solutions: Limping Along Network Address Translation (ARES) Allowing multiple hosts to share an IP address IP addresses not unique and not end-to-end NAT outside inside

74 Short-Term Solutions: Limping Along Dynamic Host Configuration Protocol Share a pool of addresses among many hosts Dynamically assign an IP address upon request arriving client DHCP server

75 Where do Forwarding Tables Come From? Routers have forwarding tables Map prefix to outgoing link(s) Entries can be statically configured E.g., map /24 to Serial0/0.1 But, this doesn t adapt To failures To new equipment To the need to balance load That is where other technologies come in Routing protocols, DHCP, and ARP (later in course)

76 What End Hosts Sending to Others? End host with single network interface PC with an Ethernet link Laptop with a wireless link Don t need to run a routing protocol Packets to the host itself (e.g., /32) Delivered locally Packets to other hosts on the LAN (e.g., /24) Sent out the interface Packets to external hosts (e.g., /0) Sent out interface to local gateway How this information is learned Static setting of address, subnet mask, and gateway Dynamic Host Configuration Protocol (DHCP)

77 How To Bootstrap an End Host? What IP address the host should use? What local Domain Name System server to use? How to send packets to remote destinations? How to ensure incoming packets arrive???? host host... DNS host host... DNS / / router router router

78 Bootstrapping Problem Host doesn t have an IP address yet So, host doesn t know what source address to use Host doesn t know who to ask for an IP address So, host doesn t know what destination address to use Solution: shout to discover a server who can help Broadcast a server-discovery message Server sends a reply offering an address host host... host DHCP server

79 What About Reaching the End Hosts? How does the last router reach the destination? host host... host LAN router Each interface has a persistent, global identifier MAC (Media Access Control) address Burned in to the adaptors Read-Only Memory (ROM) Flat address structure (i.e., no hierarchy) Constructing an address resolution table Mapping MAC address to/from IP address Address Resolution Protocol (ARP)

80 Motivation for a separate identifier LANs are designed for arbitrary network protocols Not just for IP and the Internet Using IP address would require reconfiguration Every time the adapter was moved or powered up Broadcasting all data to all adapters is expensive Requires every host on the LAN to inspect each packet

81 MAC Address vs. IP Address MAC addresses Hard-coded in read-only memory when adaptor is built Like a social security number Flat name space of 48 bits (e.g., 00-0E-9B-6E-49-76) Portable, and can stay the same as the host moves Used to get packet between interfaces on same network IP addresses Configured, or learned dynamically Like a postal mailing address Hierarchical name space of 32 bits (e.g., ) Not portable, and depends on where the host is attached Used to get a packet to destination IP subnet

82 MAC Addresses on a LAN 1A-2F-BB AD LAN = adapter F7-2B D7-FA-20-B0 0C-C4-11-6F-E3-98

83 Broadcasting Broadcasting: sending to everyone Special destination address: FF-FF-FF-FF-FF-FF All adapters on the LAN receive the packet Delivering a broadcast packet Easy on a shared media Like shouting in a room everyone can hear you E.g., Ethernet, wireless, and satellite links

84 Response from the DHCP Server DHCP offer message from the server Configuration parameters (proposed IP address, mask, gateway router, DNS server,...) Lease time (the time the information remains valid) Multiple servers may respond Multiple servers on the same broadcast media Each may respond with an offer The client can decide which offer to accept Accepting one of the offers Client sends a DHCP request echoing the parameters The DHCP server responds with an ACK to confirm and the other servers see they were not chosen

85 Dynamic Host Configuration Protocol arriving client DHCP server

86 Deciding What IP Address to Offer Server as centralized configuration database All parameters are statically configured in the server E.g., a dedicated IP address for each MAC address Avoids complexity of configuring hosts directly while still having a permanent IP address per host Or, dynamic assignment of IP addresses Server maintains a pool of available addresses and assigns them to hosts on demand Leads to less configuration complexity and more efficient use of the pool of addresses Though, it is harder to track the same host over time

87 Soft State: Refresh or Forget Why is a lease time necessary? Client can release the IP address (DHCP RELEASE) E.g., ipconfig /release at the DOS prompt E.g., clean shutdown of the computer But, the host might not release the address E.g., the host crashes (blue screen of death!) E.g., buggy client software And you don t want the address to be allocated forever Performance trade-offs Short lease time: returns inactive addresses quickly Long lease time: avoids overhead of frequent renewals

88 So, Now the Host Knows Things IP address Mask Gateway router DNS server And can send packets to other IP addresses But, how to learn the MAC address of the destination?

89 Sending Packets Over a Link IP packet host host... host host host... host LAN 1 LAN router WAN router Header IP Addresses (src and dest) cannot change! Still, packets need to travel trough a sequence of routers Where can the id of the next hop router fit? The link-level header! Translate the router IP address to its MAC address Encapsulate the IP packet inside a link-level frame

90 Address Resolution Protocol Table Every node maintains an ARP table (IP address, MAC address) pair Consult the table when sending a packet Map destination IP address to destination MAC address Encapsulate and transmit the data packet But, what if the IP address is not in the table? Sender broadcasts: Who has IP address ? Receiver responds: MAC address D7-FA-20-B0 Sender caches the result in its ARP table No need for network administrator to get involved

91 Relationship Between Layers IP address MAC address

92 Mapping Endpoints to a Path IP packet endpoints pair Forwarding(/ARP) IP address L2 frame ARP CC:CC:CC:CC:CC:CC ARP AA.AA: :AA CC:CC:..:CC path MAC address AA:AA:AA:AA:AA:AA BB:BB:BB:BB:BB:BB

93 Key Ideas in Both Protocols Broadcasting: when in doubt, shout! Broadcast query to all hosts in the local-area-network when you don t know how to identify the right one Caching: remember the past for a while Store the information you learn to reduce overhead Remember your own address & other host s addresses Soft state: eventually forget the past Associate a time-to-live field with the information and either refresh or discard the information Key for robustness in the face of unpredictable change

94 Handling IP address space depletion Local network addresses not globally unique E.g., private IP addresses (in /8) NAT box rewrites the IP addresses Make the inside look like a single IP address and change header checksums accordingly Outbound traffic: from inside to outside Rewrite the source IP address Inbound traffic: from outside to inside Rewrite the destination IP address

95 Active Component in the Data Path NAT outside inside

96 Using a Single Source Address NAT outside inside

97 What if Both Hosts Contact Same Site? Suppose hosts contact the same destination E.g., both hosts open a socket with local port 3345 to destination on port 80 NAT gives packets same source address All packets have source address Problems Can destination differentiate between senders? Can return traffic get back to the correct hosts?

98 Port-Translating NAT Map outgoing packets Replace source address with NAT address Replace source port number with a new port number Remote hosts respond using (NAT address, new port #) Maintain a translation table Store map of (source address, port #) to (NAT address, new port #) Map incoming packets Consult the translation table Map the destination address and port number Local host receives the incoming packet

99 Network Address Translation Example 2: NAT router changes datagram source addr from , 3345 to , 5001, updates table 2 NAT translation table WAN side addr LAN side addr , , 3345 S: , 5001 D: , S: , 3345 D: , : host sends datagram to , S: , 80 D: , : Reply arrives dest. address: , 5001 S: , 80 D: , : NAT router changes datagram dest addr from , 5001 to , 3345

100 Maintaining the Mapping Table Create an entry upon seeing a packet Packet with new (source addr, source port) pair Eventually, need to delete the map entry But when to remove the binding? If no packets arrive within a time window then delete the mapping to free up the port #s At risk of disrupting a temporarily idle connection Yet another example of soft state I.e., removing state if not refreshed for a while

101 Where is NAT Implemented? Home router (e.g., Linksys box) Integrates router, DHCP server, NAT, etc. Use single IP address from the service provider and have a bunch of hosts hiding behind it Campus or corporate network NAT at the connection to the Internet Share a collection of public IP addresses Avoid complexity of renumbering end hosts and local routers when changing service providers

102 Practical Objections Against NAT Port #s are meant to identify sockets Yet, NAT uses them to identify end hosts Makes it hard to run a server behind a NAT NAT Requests to on port Which host should get the request?

103 Running Servers Behind NATs Running servers is still possible Admittedly with a bit more difficulty By explicit configuration of the NAT box E.g., internal service at <dst , dst-port 80> mapped to <dst , dst-port 80> More challenging for P2P applications Especially if both peers are behind NAT boxes Though solutions are possible here as well Existing work-arounds (e.g., in Skype) Ongoing work on NAT traversal techniques

104 Principled Objections Against NAT Routers are not supposed to look at port #s Network layer should care only about IP header and not be looking at the port numbers at all NAT violates the end-to-end argument Network nodes should not modify the packets IPv6 is a cleaner solution Better to migrate than to limp along with a hack That s what you get when you design a network that puts power in the hands of end users!

105 IP address A 32-bit number Allocated in prefixes Conclusions Non-uniform hierarchy for scalability and flexibility Packet forwarding Based on IP prefixes Longest-prefix-match forwarding

Internet Addresses Reading: Chapter 4. 2/11/14 CS125-myaddressing

Internet Addresses Reading: Chapter 4. 2/11/14 CS125-myaddressing Internet Addresses Reading: Chapter 4 1 Internet Addresses Outline/Goals IP addresses RFC 950, STD 05 Dotted-quad notation IP prefixes for aggregation Address allocation Classful addresses Classless InterDomain

More information

CS 457 Networking and the Internet. Addressing. Topics 9/15/16. Fall 2016 Indrajit Ray

CS 457 Networking and the Internet. Addressing. Topics 9/15/16. Fall 2016 Indrajit Ray CS 457 Networking and the Internet Fall 2016 Indrajit Ray Addressing Topics IP addresses Dotted-quad notation IP prefixes for aggregation Address allocation Classful addresses Classless InterDomain Routing

More information

CS 457 Lecture 11 More IP Networking. Fall 2011

CS 457 Lecture 11 More IP Networking. Fall 2011 CS 457 Lecture 11 More IP Networking Fall 2011 IP datagram format IP protocol version number header length (bytes) type of data max number remaining hops (decremented at each router) upper layer protocol

More information

Computer Networks Prof. Ashok K. Agrawala

Computer Networks Prof. Ashok K. Agrawala Computer Networks Prof. Ashok K. Agrawala 2017 Ashok Agrawala September 13, 2018 1 Message, Segment, Packet, and Frame 2 Packet Switching (e.g., Internet) Data traffic divided into packets; each packet

More information

IP Addressing & Forwarding

IP Addressing & Forwarding IP Addressing & Forwarding EE 122: Intro to Communication Networks Fall 2006 (MW 4-5:30 in Donner 155) Vern Paxson TAs: Dilip Antony Joseph and Sukun Kim http://inst.eecs.berkeley.edu/~ee122/ Materials

More information

Announcements. IP Addressing & Forwarding. Designing IP s Addresses. Goals of Today s Lecture. Grouping Related Hosts. IP Addresses (IPv4)

Announcements. IP Addressing & Forwarding. Designing IP s Addresses. Goals of Today s Lecture. Grouping Related Hosts. IP Addresses (IPv4) Announcements IP Addressing & Forwarding EE 122 Intro to Communication Networks Fall 2006 (MW 4-530 in Donner 155) Vern Paxson TAs Dilip Antony Joseph and Sukun Kim http//inst.eecs.berkeley.edu/~ee122/

More information

Agenda. Forwarding (after a little more addressing) Follow-up from last time. Dealing with Address Scarcity. Sharing a Block of Addresses

Agenda. Forwarding (after a little more addressing) Follow-up from last time. Dealing with Address Scarcity. Sharing a Block of Addresses Agenda Forwarding (after a little more addressing) EE22 Fall 20 Scott Shenker http://inst.eecs.berkeley.edu/~ee22/ Materials with thanks to Jennifer Rexford, Ion Stoica, Vern Paxson and other colleagues

More information

Network Layer. IP Protocol Stack: Key AbstracHons. Best- Effort Global Packet Delivery. Circuit Switching (e.g., Phone Network)

Network Layer. IP Protocol Stack: Key AbstracHons. Best- Effort Global Packet Delivery. Circuit Switching (e.g., Phone Network) IP Protocol Stack Key AbstracHons Network Layer Mike Freedman COS 461 Computer Networks Application Transport Network Link Applications Reliable streams Messages Best-effort global packet delivery Best-effort

More information

Lecture 3: Packet Forwarding

Lecture 3: Packet Forwarding Lecture 3: Packet Forwarding CSE 222A: Computer Communication Networks Alex C. Snoeren Thanks: Mike Freedman & Amin Vahdat Lecture 3 Overview Paper reviews Packet Forwarding IP Addressing Subnetting/CIDR

More information

internet technologies and standards

internet technologies and standards Institute of Telecommunications Warsaw University of Technology 2017 internet technologies and standards Piotr Gajowniczek Andrzej Bąk Michał Jarociński Network Layer The majority of slides presented in

More information

Last Lecture: Network Layer

Last Lecture: Network Layer Last Lecture: Network Layer 1. Design goals and issues 2. Basic Routing Algorithms & Protocols 3. Addressing, Fragmentation and reassembly 4. Internet Routing Protocols and Inter-networking 5. Router design

More information

Introduction to Internetworking

Introduction to Internetworking Introduction to Internetworking Stefano Vissicchio UCL Computer Science COMP0023 Internetworking Goal: Connect many networks together into one Internet. Any computer can send to any other computer on any

More information

Router Architecture Overview

Router Architecture Overview Chapter 4: r Introduction (forwarding and routing) r Review of queueing theory r Router design and operation r IP: Internet Protocol m IPv4 (datagram format, addressing, ICMP, NAT) m Ipv6 r Generalized

More information

ECE 4450:427/527 - Computer Networks Spring 2017

ECE 4450:427/527 - Computer Networks Spring 2017 ECE 4450:427/527 - Computer Networks Spring 2017 Dr. Nghi Tran Department of Electrical & Computer Engineering Lecture 6.2: IP Dr. Nghi Tran (ECE-University of Akron) ECE 4450:427/527 Computer Networks

More information

RSC Part II: Network Layer 3. IP addressing (2nd part)

RSC Part II: Network Layer 3. IP addressing (2nd part) RSC Part II: Network Layer 3. IP addressing (2nd part) Redes y Servicios de Comunicaciones Universidad Carlos III de Madrid These slides are, mainly, part of the companion slides to the book Computer Networking:

More information

Lecture 4 - Network Layer. Transport Layer. Outline. Introduction. Notes. Notes. Notes. Notes. Networks and Security. Jacob Aae Mikkelsen

Lecture 4 - Network Layer. Transport Layer. Outline. Introduction. Notes. Notes. Notes. Notes. Networks and Security. Jacob Aae Mikkelsen Lecture 4 - Network Layer Networks and Security Jacob Aae Mikkelsen IMADA September 23, 2013 September 23, 2013 1 / 67 Transport Layer Goals understand principles behind network layer services: network

More information

Network layer: Overview. Network layer functions IP Routing and forwarding NAT ARP IPv6 Routing

Network layer: Overview. Network layer functions IP Routing and forwarding NAT ARP IPv6 Routing Network layer: Overview Network layer functions IP Routing and forwarding NAT ARP IPv6 Routing 1 Network Layer Functions Transport packet from sending to receiving hosts Network layer protocols in every

More information

Chapter 4: Network Layer

Chapter 4: Network Layer Chapter 4: Introduction (forwarding and routing) Review of queueing theory Routing algorithms Link state, Distance Vector Router design and operation IP: Internet Protocol IPv4 (datagram format, addressing,

More information

Network layer: Overview. Network Layer Functions

Network layer: Overview. Network Layer Functions Network layer: Overview Network layer functions IP Routing and forwarding NAT ARP IPv6 Routing 1 Network Layer Functions Transport packet from sending to receiving hosts Network layer protocols in every

More information

EC441 Fall 2018 Introduction to Computer Networking Chapter4: Network Layer Data Plane

EC441 Fall 2018 Introduction to Computer Networking Chapter4: Network Layer Data Plane EC441 Fall 2018 Introduction to Computer Networking Chapter4: Network Layer Data Plane This presentation is adapted from slides produced by Jim Kurose and Keith Ross for their book, Computer Networking:

More information

ECE 158A: Lecture 7. Fall 2015

ECE 158A: Lecture 7. Fall 2015 ECE 158A: Lecture 7 Fall 2015 Outline We have discussed IP shortest path routing Now we have a closer look at the IP addressing mechanism We are still at the networking layer, we will examine: IP Headers

More information

1 Connectionless Routing

1 Connectionless Routing UCSD DEPARTMENT OF COMPUTER SCIENCE CS123a Computer Networking, IP Addressing and Neighbor Routing In these we quickly give an overview of IP addressing and Neighbor Routing. Routing consists of: IP addressing

More information

Internet Technology 3/23/2016

Internet Technology 3/23/2016 Internet Technology // Network Layer Transport Layer (Layer ) Application-to-application communication Internet Technology Network Layer (Layer ) Host-to-host communication. Network Layer Route Router

More information

CSC 4900 Computer Networks: Network Layer

CSC 4900 Computer Networks: Network Layer CSC 4900 Computer Networks: Network Layer Professor Henry Carter Fall 2017 Chapter 4: Network Layer 4. 1 Introduction 4.2 What s inside a router 4.3 IP: Internet Protocol Datagram format 4.4 Generalized

More information

Last time. Network layer. Introduction. Virtual circuit vs. datagram details. IP: the Internet Protocol. forwarding vs. routing

Last time. Network layer. Introduction. Virtual circuit vs. datagram details. IP: the Internet Protocol. forwarding vs. routing Last time Network layer Introduction forwarding vs. routing Virtual circuit vs. datagram details connection setup, teardown VC# switching forwarding tables, longest prefix matching IP: the Internet Protocol

More information

Transla'ng Addresses. Goals of Today s Lecture

Transla'ng Addresses. Goals of Today s Lecture Transla'ng ddresses 1 Goals of Today s Lecture Three different kinds of addresses Host names (e.g., www.cnn.com) IP addresses (e.g., 64.236.16.20) MC addresses (e.g., 00-15- C5-49- 04-9) Protocols for

More information

Internet Network Protocols IPv4/ IPv6

Internet Network Protocols IPv4/ IPv6 Internet Network Protocols IPv4/ IPv6 Prof. Anja Feldmann, Ph.D. anja@inet.tu-berlin.de TCP/IP Illustrated, Volume 1, W. Richard Stevens http://www.kohala.com/start 1 IP Interfaces IP address: identifier

More information

CSCI-1680 Network Layer: IP & Forwarding John Jannotti

CSCI-1680 Network Layer: IP & Forwarding John Jannotti CSCI-1680 Network Layer: IP & Forwarding John Jannotti Based partly on lecture notes by David Mazières, Phil Levis, Rodrigo Fonseca Administrivia IP out today. Your job: Find partners, get setup with Github

More information

Goals of Today s Lecture. Transla'ng Addresses. Separa'ng Names and IP Addresses. Separa'ng IP and MAC Addresses

Goals of Today s Lecture. Transla'ng Addresses. Separa'ng Names and IP Addresses. Separa'ng IP and MAC Addresses Goals of Today s Lecture Transla'ng ddresses Three different kinds of addresses Host names (e.g., www.cnn.com) IP addresses (e.g., 64.236.16.20) MC addresses (e.g., 00-15- C5-49- 04-9) Protocols for transla'ng

More information

CSCI-1680 Network Layer: IP & Forwarding Rodrigo Fonseca

CSCI-1680 Network Layer: IP & Forwarding Rodrigo Fonseca CSCI-1680 Network Layer: IP & Forwarding Rodrigo Fonseca Based partly on lecture notes by David Mazières, Phil Levis, John Janno< Administrivia IP out today. Your job: Find partners and tell us Implement

More information

CMPE 150/L : Introduction to Computer Networks. Chen Qian Computer Engineering UCSC Baskin Engineering Lecture 12

CMPE 150/L : Introduction to Computer Networks. Chen Qian Computer Engineering UCSC Baskin Engineering Lecture 12 CMPE 150/L : Introduction to Computer Networks Chen Qian Computer Engineering UCSC Baskin Engineering Lecture 12 1 Chapter 4: outline 4.1 introduction 4.2 virtual circuit and datagram networks 4.3 what

More information

Subnets. IP datagram format. The Internet Network layer. IP Fragmentation and Reassembly. IP Fragmentation & Reassembly. IP Addressing: introduction

Subnets. IP datagram format. The Internet Network layer. IP Fragmentation and Reassembly. IP Fragmentation & Reassembly. IP Addressing: introduction The Network layer Host, network layer functions: Network layer Routing protocols path selection R, OSPF, BGP Transport layer: TCP, forwarding table Link layer physical layer protocol addressing conventions

More information

Internetworking Part 2

Internetworking Part 2 CMPE 344 Computer Networks Spring 2012 Internetworking Part 2 Reading: Peterson and Davie, 3.2, 4.1 19/04/2012 1 Aim and Problems Aim: Build networks connecting millions of users around the globe spanning

More information

IPv4 addressing, NAT. Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley.

IPv4 addressing, NAT. Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley. IPv4 addressing, NAT http://xkcd.com/195/ Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Some materials copyright 1996-2012 J.F Kurose and K.W. Ross, All Rights

More information

Communication Networks ( ) / Fall 2013 The Blavatnik School of Computer Science, Tel-Aviv University. Allon Wagner

Communication Networks ( ) / Fall 2013 The Blavatnik School of Computer Science, Tel-Aviv University. Allon Wagner Communication Networks (0368-3030) / Fall 2013 The Blavatnik School of Computer Science, Tel-Aviv University Allon Wagner Kurose & Ross, Chapter 4 (5 th ed.) Many slides adapted from: J. Kurose & K. Ross

More information

Link layer: introduction

Link layer: introduction Link layer: introduction terminology: hosts and routers: nodes communication channels that connect adjacent nodes along communication path: links wired links wireless links LANs layer-2 packet: frame,

More information

COMP/ELEC 429/556 Introduction to Computer Networks

COMP/ELEC 429/556 Introduction to Computer Networks COMP/ELEC 429/556 Introduction to Computer Networks Let s Build a Scalable Global Network - IP Some slides used with permissions from Edward W. Knightly, T. S. Eugene Ng, Ion Stoica, Hui Zhang T. S. Eugene

More information

Computer Networking Introduction

Computer Networking Introduction Computer Networking Introduction Halgurd S. Maghdid Software Engineering Department Koya University-Koya, Kurdistan-Iraq Lecture No.13 Chapter 4: outline 4.1 introduction 4.2 virtual circuit and datagram

More information

CS 43: Computer Networks. 21: The Network Layer & IP November 7, 2018

CS 43: Computer Networks. 21: The Network Layer & IP November 7, 2018 CS 43: Computer Networks 21: The Network Layer & IP November 7, 2018 The Network Layer! Application: the application (e.g., the Web, Email) Transport: end-to-end connections, reliability Network: routing

More information

IPv4. Christian Grothoff.

IPv4. Christian Grothoff. IPv4 christian@grothoff.org http://grothoff.org/christian/ Sites need to be able to interact in one single, universal space. Tim Berners-Lee 1 The Network Layer Transports datagrams from sending to receiving

More information

Computer Network Fundamentals Spring Week 4 Network Layer Andreas Terzis

Computer Network Fundamentals Spring Week 4 Network Layer Andreas Terzis Computer Network Fundamentals Spring 2008 Week 4 Network Layer Andreas Terzis Outline Internet Protocol Service Model Addressing Original addressing scheme Subnetting CIDR Fragmentation ICMP Address Shortage

More information

Transport and TCP. EE122 Fall 2011 Scott Shenker

Transport and TCP. EE122 Fall 2011 Scott Shenker Transport and TCP EE122 Fall 2011 Scott Shenker http://inst.eecs.berkeley.edu/~ee122/ Materials with thanks to Jennifer Rexford, Ion Stoica, Vern Paxson and other colleagues at Princeton and UC Berkeley

More information

Principles behind data link layer services

Principles behind data link layer services Data link layer Goals: Principles behind data link layer services Error detection, correction Sharing a broadcast channel: Multiple access Link layer addressing Reliable data transfer, flow control: Done!

More information

CSC 401 Data and Computer Communications Networks

CSC 401 Data and Computer Communications Networks CSC 401 Data and Computer Communications Networks Network Layer IPv4, Format and Addressing,, IPv6 Prof. Lina Battestilli Fall 2017 Chapter 4 Outline Network Layer: Data Plane 4.1 Overview of Network layer

More information

2/22/2008. Outline Computer Networking Lecture 9 IP Protocol. Hop-by-Hop Packet Forwarding in the Internet. Internetworking.

2/22/2008. Outline Computer Networking Lecture 9 IP Protocol. Hop-by-Hop Packet Forwarding in the Internet. Internetworking. Outline 5-44 Computer Networking Lecture 9 Protocol Traditional addressing CIDR addressing Peter Steenkiste Departments of Computer Science and Electrical and Computer Engineering Forwarding examples 5-44

More information

Data Link Layer. Our goals: understand principles behind data link layer services: instantiation and implementation of various link layer technologies

Data Link Layer. Our goals: understand principles behind data link layer services: instantiation and implementation of various link layer technologies Data Link Layer Our goals: understand principles behind data link layer services: link layer addressing instantiation and implementation of various link layer technologies 1 Outline Introduction and services

More information

Chapter 4 Network Layer

Chapter 4 Network Layer Chapter 4 Network Layer Computer Networking A Top-Down Approach These slides are based on the slides made available by Kurose and Ross. All material copyright 1996-2012 J.F Kurose and K.W. Ross, All Rights

More information

COMP211 Chapter 4 Network Layer: The Data Plane

COMP211 Chapter 4 Network Layer: The Data Plane COMP211 Chapter 4 Network Layer: The Data Plane All material copyright 1996-2016 J.F Kurose and K.W. Ross, All Rights Reserved Computer Networking: A Top Down Approach 7 th edition Jim Kurose, Keith Ross

More information

Chapter 4: network layer

Chapter 4: network layer Chapter 4: network layer chapter goals: understand principles behind network layer services: network layer service models forwarding versus routing how a router works routing (path selection) broadcast,

More information

CSCD58 WINTER 2018 WEEK 6 - NETWORK LAYER PART 1. Brian Harrington. February 13, University of Toronto Scarborough

CSCD58 WINTER 2018 WEEK 6 - NETWORK LAYER PART 1. Brian Harrington. February 13, University of Toronto Scarborough CSCD58 WINTER 2018 WEEK 6 - NETWORK LAYER PART 1 Brian Harrington University of Toronto Scarborough February 13, 2018 ADMIN Assignments Midterm after reading week (Feb 27) In class Covering everything

More information

CPSC 826 Internetworking. The Network Layer: Routing & Addressing Outline. The Network Layer

CPSC 826 Internetworking. The Network Layer: Routing & Addressing Outline. The Network Layer 1 CPSC 826 Intering The Network Layer: Routing & Addressing Outline The Network Layer Michele Weigle Department of Computer Science Clemson University mweigle@cs.clemson.edu November 10, 2004 Network layer

More information

CSEP 561 Internetworking. David Wetherall

CSEP 561 Internetworking. David Wetherall CSEP 561 Internetworking David Wetherall djw@cs.washington.edu Internetworking t Focus: Joining multiple, different networks into one larger network Forwarding models Application Heterogeneity Transport

More information

Chapter 4: network layer. Network service model. Two key network-layer functions. Network layer. Input port functions. Router architecture overview

Chapter 4: network layer. Network service model. Two key network-layer functions. Network layer. Input port functions. Router architecture overview Chapter 4: chapter goals: understand principles behind services service models forwarding versus routing how a router works generalized forwarding instantiation, implementation in the Internet 4- Network

More information

CSCD 330 Network Programming Spring 2017

CSCD 330 Network Programming Spring 2017 CSCD 330 Network Programming Spring 2017 Lecture 14 Network Layer IP Addressing Reading: Chapter 4 Some slides provided courtesy of J.F Kurose and K.W. Ross, All Rights Reserved, copyright 1996-2007 1

More information

Where we are in the Course

Where we are in the Course Network Layer Where we are in the Course Moving on up to the Network Layer! Application Transport Network Link Physical CSE 461 University of Washington 2 Network Layer How to connect different link layer

More information

TCP/IP Networking. Training Details. About Training. About Training. What You'll Learn. Training Time : 9 Hours. Capacity : 12

TCP/IP Networking. Training Details. About Training. About Training. What You'll Learn. Training Time : 9 Hours. Capacity : 12 TCP/IP Networking Training Details Training Time : 9 Hours Capacity : 12 Prerequisites : There are no prerequisites for this course. About Training About Training TCP/IP is the globally accepted group

More information

Unit C - Network Addressing Objectives Purpose of an IP Address and Subnet Mask Purpose of an IP Address and Subnet Mask

Unit C - Network Addressing Objectives Purpose of an IP Address and Subnet Mask Purpose of an IP Address and Subnet Mask 1 2 3 4 5 6 7 8 9 10 Unit C - Network Addressing Objectives Describe the purpose of an IP address and Subnet Mask and how they are used on the Internet. Describe the types of IP Addresses available. Describe

More information

Chapter 4 Network Layer: The Data Plane

Chapter 4 Network Layer: The Data Plane Chapter 4 Network Layer: The Data Plane A note on the use of these Powerpoint slides: We re making these slides freely available to all (faculty, students, readers). They re in PowerPoint form so you see

More information

Lecture 16: Network Layer Overview, Internet Protocol

Lecture 16: Network Layer Overview, Internet Protocol Lecture 16: Network Layer Overview, Internet Protocol COMP 332, Spring 2018 Victoria Manfredi Acknowledgements: materials adapted from Computer Networking: A Top Down Approach 7 th edition: 1996-2016,

More information

Department of Computer and IT Engineering University of Kurdistan. Network Layer. By: Dr. Alireza Abdollahpouri

Department of Computer and IT Engineering University of Kurdistan. Network Layer. By: Dr. Alireza Abdollahpouri Department of Computer and IT Engineering University of Kurdistan Network Layer By: Dr. Alireza Abdollahpouri What s the Internet: nuts and bolts view PC server wireless laptop cellular handheld millions

More information

Chapter 18. Introduction to Network Layer

Chapter 18. Introduction to Network Layer Chapter 18. Introduction to Network Layer 18.1 Network Layer Services 18.2 Packet Switching 18.3 Network Layer Performance 18.4 IPv4 Addresses 18.5 Forwarding of IP Packets Computer Networks 18-1 Communication

More information

Lecture 8 Network Layer: Logical addressing

Lecture 8 Network Layer: Logical addressing Data Communications ACOE412 Lecture 8 Network Layer: Logical addressing Spring 2009 1 0. Overview In this lecture we will cover the following topics: 14.Network Layer: Logical addressing 14.1 IPv4 Addresses

More information

TDC 563 Protocols and Techniques for Data Networks

TDC 563 Protocols and Techniques for Data Networks TDC 563 Protocols and Techniques for Data Networks Network Addressing TDC563 Autumn 2015/16 John Kristoff - DePaul University 1 Why have addresses at layer 3? Aren't there already globally unique addresses

More information

Lecture 17: Network Layer Addressing, Control Plane, and Routing

Lecture 17: Network Layer Addressing, Control Plane, and Routing Lecture 17: Network Layer Addressing, Control Plane, and Routing COMP 332, Spring 2018 Victoria Manfredi Acknowledgements: materials adapted from Computer Networking: A Top Down Approach 7 th edition:

More information

internet technologies and standards

internet technologies and standards Institute of Telecommunications Warsaw University of Technology 2015 internet technologies and standards Piotr Gajowniczek Andrzej Bąk Michał Jarociński Network Layer The majority of slides presented in

More information

ELEC / COMP 177 Fall Some slides from Kurose and Ross, Computer Networking, 5 th Edition

ELEC / COMP 177 Fall Some slides from Kurose and Ross, Computer Networking, 5 th Edition ELEC / COMP 177 Fall 2016 Some slides from Kurose and Ross, Computer Networking, 5 th Edition Presentation 2 Security/Privacy Presentations Nov 3 rd, Nov 10 th, Nov 15 th Upload slides to Canvas by midnight

More information

Data Communication & Networks G Session 7 - Main Theme Networks: Part I Circuit Switching, Packet Switching, The Network Layer

Data Communication & Networks G Session 7 - Main Theme Networks: Part I Circuit Switching, Packet Switching, The Network Layer Data Communication & Networks G22.2262-001 Session 7 - Main Theme Networks: Part I Circuit Switching, Packet Switching, The Network Layer Dr. Jean-Claude Franchitti New York University Computer Science

More information

Network Protocols - Revision

Network Protocols - Revision Network Protocols - Revision Luke Anderson luke@lukeanderson.com.au 18 th May 2018 University Of Sydney Overview 1. The Layers 1.1 OSI Model 1.2 Layer 1: Physical 1.3 Layer 2: Data Link MAC Addresses 1.4

More information

CSCI-1680 Network Layer: IP & Forwarding Rodrigo Fonseca

CSCI-1680 Network Layer: IP & Forwarding Rodrigo Fonseca CSCI-1680 Network Layer: IP & Forwarding Rodrigo Fonseca Based partly on lecture notes by David Mazières, Phil Levis, John Jannotti Today Network layer: Internet Protocol (v4) Forwarding Next 2 classes:

More information

Internet Protocol (IP) Computer Networking. What is an Internetwork? Designing an Internetwork. Lecture 8 IP Addressing and Forwarding

Internet Protocol (IP) Computer Networking. What is an Internetwork? Designing an Internetwork. Lecture 8 IP Addressing and Forwarding Internet Protocol (IP) 5- Computer Networking Lecture 8 IP Addressing and Forwarding Hour Glass Model Create abstraction layer that hides underlying technology from network application software Make as

More information

Internet Protocol (IP) Computer Networking. What is an Internetwork? Logical Structure of Internet. Lecture 8 IP Addressing and Forwarding

Internet Protocol (IP) Computer Networking. What is an Internetwork? Logical Structure of Internet. Lecture 8 IP Addressing and Forwarding Internet Protocol (IP) 5- Computer Networking Lecture 8 IP Addressing and Forwarding Hour Glass Model Create abstraction layer that hides underlying technology from network application software Make as

More information

The Network Layer Forwarding Tables and Switching Fabric

The Network Layer Forwarding Tables and Switching Fabric The Network Layer Forwarding Tables and Switching Fabric Smith College, CSC 249 February 27, 2018 1 Network Layer Overview q Network layer services v v Desired services and tasks Actual services and tasks

More information

Computer Networks and Data Systems

Computer Networks and Data Systems Computer Networks and Data Systems Network Addressing TDC463 Fall 2017 John Kristoff - DePaul University 1 Why have addresses at layer 3? Aren't there already globally unique addresses at L2? If not, should

More information

CSCE 463/612 Networks and Distributed Processing Spring 2018

CSCE 463/612 Networks and Distributed Processing Spring 2018 CSCE 463/612 Networks and Distributed Processing Spring 2018 Network Layer II Dmitri Loguinov Texas A&M University April 3, 2018 Original slides copyright 1996-2004 J.F Kurose and K.W. Ross 1 Chapter 4:

More information

Principles behind data link layer services:

Principles behind data link layer services: Data link layer Goals: Principles behind data link layer services: Error detection, correction Sharing a broadcast channel: Multiple access Link layer addressing Reliable data transfer, flow control Example

More information

Principles behind data link layer services:

Principles behind data link layer services: Data link layer Goals: Principles behind data link layer services: Error detection, correction Sharing a broadcast channel: Multiple access Link layer addressing Reliable data transfer, flow control Example

More information

Chapter 4 Network Layer: The Data Plane

Chapter 4 Network Layer: The Data Plane Chapter 4 Network Layer: The Data Plane A note on the use of these Powerpoint slides: We re making these slides freely available to all (faculty, students, readers). They re in PowerPoint form so you see

More information

Information Network Systems The network layer. Stephan Sigg

Information Network Systems The network layer. Stephan Sigg Information Network Systems The network layer Stephan Sigg Tokyo, November 1, 2012 Error-detection and correction Decoding of Reed-Muller codes Assume a second order (16, 11) code for m = 4. The r-th order

More information

CS 43: Computer Networks Switches and LANs. Kevin Webb Swarthmore College December 5, 2017

CS 43: Computer Networks Switches and LANs. Kevin Webb Swarthmore College December 5, 2017 CS 43: Computer Networks Switches and LANs Kevin Webb Swarthmore College December 5, 2017 Ethernet Metcalfe s Ethernet sketch Dominant wired LAN technology: cheap $20 for NIC first widely used LAN technology

More information

Switch and Router Design. Packet Processing Examples. Packet Processing Examples. Packet Processing Rate 12/14/2011

Switch and Router Design. Packet Processing Examples. Packet Processing Examples. Packet Processing Rate 12/14/2011 // Bottlenecks Memory, memory, 88 - Switch and Router Design Dr. David Hay Ross 8b dhay@cs.huji.ac.il Source: Nick Mckeown, Isaac Keslassy Packet Processing Examples Address Lookup (IP/Ethernet) Where

More information

NETWORK LAYER DATA PLANE

NETWORK LAYER DATA PLANE NETWORK LAYER DATA PLANE 1 GOALS Understand principles behind network layer services, focusing on the data plane: Network layer service models Forwarding versus routing How a router works Generalized forwarding

More information

CS 5114 Network Programming Languages Data Plane. Nate Foster Cornell University Spring 2013

CS 5114 Network Programming Languages Data Plane. Nate Foster Cornell University Spring 2013 CS 5114 Network Programming Languages Data Plane http://www.flickr.com/photos/rofi/2097239111/ Nate Foster Cornell University Spring 2013 Based on lecture notes by Jennifer Rexford and Michael Freedman

More information

Chapter 18 and 22. IPv4 Address. Data Communications and Networking

Chapter 18 and 22. IPv4 Address. Data Communications and Networking University of Human Development College of Science and Technology Department of Information Technology Chapter 18 and 22 Data Communications and Networking IPv4 Address 1 Lecture Outline IPv4 Addressing

More information

Summary of MAC protocols

Summary of MAC protocols Summary of MAC protocols What do you do with a shared media? Channel Partitioning, by time, frequency or code Time Division, Code Division, Frequency Division Random partitioning (dynamic) ALOHA, S-ALOHA,

More information

CSCD 330 Network Programming Spring 2018

CSCD 330 Network Programming Spring 2018 CSCD 330 Network Programming Spring 2018 Lecture 14 Network Layer IP Addressing Reading: Chapter 4 Some slides provided courtesy of J.F Kurose and K.W. Ross, All Rights Reserved, copyright 2017 Network

More information

Chapter 3 - Implement an IP Addressing Scheme and IP Services to Meet Network Requirements for a Small Branch Office

Chapter 3 - Implement an IP Addressing Scheme and IP Services to Meet Network Requirements for a Small Branch Office ExamForce.com 640-822 CCNA ICND Study Guide 31 Chapter 3 - Implement an IP Addressing Scheme and IP Services to Meet Network Requirements for a Small Branch Office Describe the need and role of addressing

More information

COMP 631: NETWORKED & DISTRIBUTED SYSTEMS 9/6/16 COMP 631: NETWORKED & DISTRIBUTED SYSTEMS. IP Addressing. Jasleen Kaur. Fall 2016

COMP 631: NETWORKED & DISTRIBUTED SYSTEMS 9/6/16 COMP 631: NETWORKED & DISTRIBUTED SYSTEMS. IP Addressing. Jasleen Kaur. Fall 2016 COMP 631: NETWORKED & DISTRIBUTED SYSTEMS IP Addressing Jasleen Kaur Fall 2016 1 How to Deal With Heterogeneity & Scale? Requirements from IP addressing: Should be globally unique Should facilitate easy

More information

Master Course Computer Networks IN2097

Master Course Computer Networks IN2097 Chair for Network Architectures and Services Prof. Carle Department for Computer Science TU München Master Course Computer Networks IN2097 Prof. Dr.-Ing. Georg Carle Christian Grothoff, Ph.D. Chair for

More information

CSC 401 Data and Computer Communications Networks

CSC 401 Data and Computer Communications Networks CSC 401 Data and Computer Communications Networks Link Layer, Switches, VLANS, MPLS, Data Centers Sec 6.4 to 6.7 Prof. Lina Battestilli Fall 2017 Chapter 6 Outline Link layer and LANs: 6.1 introduction,

More information

CS 348 Computer Networks. IP and Routing. Indian Institute of Technology, Bombay

CS 348 Computer Networks. IP and Routing. Indian Institute of Technology, Bombay Computer Networks IP and Routing Network Interconnections Data Link Layer Delivery of frames on the same LAN Extend reach using switches/bridges and hubs Limitations Solution? Cannot address heterogeniety

More information

COMP9332 Network Routing & Switching

COMP9332 Network Routing & Switching COMP9332 Network Routing & Switching Switching in IP Networks with MPLS http://www.cse.unsw.edu.au/~cs9332 1 Lecture Overview This lecture introduces the concept of switching, which allows faster processing

More information

MPLS MULTI PROTOCOL LABEL SWITCHING OVERVIEW OF MPLS, A TECHNOLOGY THAT COMBINES LAYER 3 ROUTING WITH LAYER 2 SWITCHING FOR OPTIMIZED NETWORK USAGE

MPLS MULTI PROTOCOL LABEL SWITCHING OVERVIEW OF MPLS, A TECHNOLOGY THAT COMBINES LAYER 3 ROUTING WITH LAYER 2 SWITCHING FOR OPTIMIZED NETWORK USAGE MPLS Multiprotocol MPLS Label Switching MULTI PROTOCOL LABEL SWITCHING OVERVIEW OF MPLS, A TECHNOLOGY THAT COMBINES LAYER 3 ROUTING WITH LAYER 2 SWITCHING FOR OPTIMIZED NETWORK USAGE Peter R. Egli 1/21

More information

Network Layer: Control/data plane, addressing, routers

Network Layer: Control/data plane, addressing, routers Network Layer: Control/data plane, addressing, routers CS 352, Lecture 10 http://www.cs.rutgers.edu/~sn624/352-s19 Srinivas Narayana (heavily adapted from slides by Prof. Badri Nath and the textbook authors)

More information

Computer Network Architectures and Multimedia. Guy Leduc. Chapter 2 MPLS networks. Chapter 2: MPLS

Computer Network Architectures and Multimedia. Guy Leduc. Chapter 2 MPLS networks. Chapter 2: MPLS Computer Network Architectures and Multimedia Guy Leduc Chapter 2 MPLS networks Chapter based on Section 5.5 of Computer Networking: A Top Down Approach, 6 th edition. Jim Kurose, Keith Ross Addison-Wesley,

More information

OSI Data Link & Network Layer

OSI Data Link & Network Layer OSI Data Link & Network Layer Erkki Kukk 1 Layers with TCP/IP and OSI Model Compare OSI and TCP/IP model 2 Layers with TCP/IP and OSI Model Explain protocol data units (PDU) and encapsulation 3 Addressing

More information

OSI Data Link & Network Layer

OSI Data Link & Network Layer OSI Data Link & Network Layer Erkki Kukk 1 Layers with TCP/IP and OSI Model Compare OSI and TCP/IP model 2 Layers with TCP/IP and OSI Model Explain protocol data units (PDU) and encapsulation 3 Addressing

More information

Network Layer PREPARED BY AHMED ABDEL-RAOUF

Network Layer PREPARED BY AHMED ABDEL-RAOUF Network Layer PREPARED BY AHMED ABDEL-RAOUF Network layer transport segment from sending to receiving host on sending side encapsulates segments into datagrams on receiving side, delivers segments to transport

More information

End-to-End Communication

End-to-End Communication End-to-End Communication Goal: Interconnect multiple LANs. Why? Diverse LANs speak different languages need to make them talk to each other Management flexibility global vs. local Internet Problems: How

More information

Network Layer: Internet Protocol

Network Layer: Internet Protocol Network Layer: Internet Protocol Motivation Heterogeneity Scale Intering IP is the glue that connects heterogeneous s giving the illusion of a homogenous one. Salient Features Each host is identified by

More information

Networking Potpourri: Plug-n-Play, Next Gen

Networking Potpourri: Plug-n-Play, Next Gen Networking Potpourri: Plug-n-Play, Next Gen 14-740: Fundamentals of Computer Networks Bill Nace Material from Computer Networking: A Top Down Approach, 6 th edition. J.F. Kurose and K.W. Ross Administrivia

More information