Download presentation
Presentation is loading. Please wait.
Published byNigel Hoover Modified over 9 years ago
1
WHY AN IP LAYER? Rocky K. C. Chang 20 September 2010 1
2
The internetworking problem 2 Problem: How to interconnect heterogeneous networks “effectively”? Interconnect homogeneous networks directly, e.g., Multiple Ethernet LAN segments Multiple Fibre Channels Multiple Token Rings Two wireless LANs … Switching / bridging LAN switches Transparent bridging, spanning tree algorithm and source routing
3
The internetworking problem 3 Interconnect heterogeneous networks directly, e.g., DIX Ethernet with IEEE Ethernet Ethernet with Token Ring Wired LAN with wireless LAN Three problems with interconnection at data-link layer: Do not scale to the number of data-link technologies. Do not scale to the number of hosts (networks). Do not have a common addressing space.
4
The internetworking problem 4 S2 S1 H4 H5 H3 H2 H1 Network 2 (Ethernet) Network 1 (Ethernet) H6 Network 3 (FDDI) Network 4 (point-to-point) H7S3H8
5
Scaling to data-link technologies 5 Conversion between frame structures. Scalability problem as the number of data-link technologies supported increases, e.g., Ethernet FDDI PPP Token ring Frame conversion
6
Scaling to network size 6 A switched LAN is a “flat” network---A single broadcast frame reaches every LAN. Virtual LAN (VLAN) can relieve this problem at the expense of managing VLAN membership. Spanning tree protocol does not scale well to network size. Take a longer time for the protocol to converge. Take a longer time to respond to network state changes.
7
Uncommon MAC address spaces 7 Different structures and number of bits used in MAC address space Ethernet: 48/64 bits FDDI: 48 bits ATM: 160 bits Each address in a data-link technology must be universally unique.
8
A layer-3 solution to internetworking 8 R2 R1 H4 H5 H3 H2 H1 Network 2 (Ethernet) Network 1 (Ethernet) H6 Network 3 (FDDI) Network 4 (point-to-point) H7R3H8
9
IP: Scaling to data-link technologies 9 Ethernet FDDI PPP Token ring IP Encapsulation and demultiplexing
10
IP: Scaling to network size 10 IP network uses hierarchies to achieve scalability. There are at least three levels: A single IP host (csultra6.comp.polyu.edu.hk) A IP subnet (four subnets in comp.polyu.edu.hk) An autonomous system (polyu.edu.hk)
11
IP: Uncommon MAC address spaces 11 Create a logical (unicast) address space to identify network interfaces. Classes A-C for unicast and class D for multicast: NetworkHost 724 0 (a) NetworkHost 1416 10 (b) NetworkHost 218 110 (c) 28 110 (d) 1
12
Directly connected IP hosts 12 IP ETH TCP H1 IP ETH TCP H2 FTP TCP IP Ethernet protocol
13
Indirectly connected IP hosts 13 R1 ETH FDDI IP ETH TCP R2 FDDI ETH IP H1 IP ETH TCP H2 FTP TCP IP FDDI protocol
14
Encapsulation 14 Data is processed at each layer through the protocol stack, until it is sent as a stream of bits across the network. Each layer adds information to the data by prepending headers (and sometimes trailers) to the data that it receives. A lower-level protocol does not interpret the message it is given by some higher-level protocol.
15
Encapsulation 15 IP ETH TCP FTP Appl. data TCP hdr Appl. dataTCP hdrIP hdr Appl. dataTCP hdrIP hdrEth. hdr user input Send out to the network interface
16
Demultiplexing 16 Appl. data TCP hdr Appl. dataTCP hdrIP hdr Appl. dataTCP hdrIP hdrEth. hdr Received from the network interface Other nonIP network protocols UDP-based applications Other TCP-based application processes
17
Internet addresses and port numbers 17 Each network interface has at least one IP address. Both TCP and UDP use 16-bit port numbers to identify applications. Servers are normally known by their well-known port numbers, usually between 1 and 1023. Client ports are referred to ephemeral ports, i.e., short lived, which use port numbers above 1023.
18
IP software at end hosts 18 The IP software mainly consists of modules for Application layer, such as DNS Transport layer: TCP, UDP Routing layer: IP, ICMP, and others. Data-link layer: MAC-IP-addresses binding IP addresses MAC addresessHost names DNS ARP RARP
19
An example 19 A HTTP client is running in m1.sun.com to connect to a HTTP server at www.sun.com. The DNS client at m1.sun.com first obtains the IP address of www.sun.com. The application data (HTTP+TCP) will then be encapsulated by an IP datagram with www.sun.com m1.sun.com 140.20.1.1140.20.1.2
20
An example 20 IP source address = 140.20.1.2 IP destination address = 140.20.1.1 Now m1.sun.com needs to run ARP to obtain the MAC address of www.sun.com’s network interface to the LAN. The IP datagram is then encapsulated in an Ethernet frame with MAC source address = that of m1.sun.com MAC destination address = that of www.sun.com
21
IP Software at routers 21 The software at routers is mainly used for routing and datagram forwarding. Each router is running at least a “routing protocol” to construct a routing (or forwarding) table. Each entry in a routing table consists of IP destination address and the next-hop’s IP address. Upon receiving a datagram, a router forwards it based on a set of forwarding rules and the routing table.
22
Network programming 22 Two most common network APIs: Sockets and X/Open Transport Interface (XTI), a slight modification of AT&T’s Transport Layer Interface (TLI). The APIs allows programmers to easily make “connections” with another application process, without knowing how the underlying network operates.
23
Basic socket calls for a client 23 socket connect recv send peer sockaddr_in{} obtain a socket establish a connection to the peer receive and send data
24
Basic socket calls for a server 24 socket listen recv send peer sockaddr_in{} obtain a socket mark the socket as a listening socket receive and send data bind accept local sockaddr_in{} bind the server’s IP address and port to the socket accept new connections
25
10 choices that were critical to the Internet’s success 25
26
10 right choices (by Scott Bradner) 26 1. Make it all work on top of existing networks (about networks, not a network). 2. Use packets, not circuits. 3. Create a routing function. 4. Split TCP and IP. 5. The NSF funded the UC/Berkeley to put TCP/IP into the Unix OS. 6. CSNET connected with ARPANET (email only).
27
10 right choices (by Scott Bradner) 27 7. The NSF required users of the NSFNET to use TCP/IP. 8. Intl. telecomm standard bodies rejected TCP/IP, then created OSI. 9. The NSF created an “Acceptable Use Policy” restricting NSFNET use to noncommercial activities. 10. Once things started to build, government stayed mostly out of the way.
28
Summary 28 Explained the need for an IP layer. Discussed the additional requirements for running an IP layer. Discussed the factors responsible for IP’s success in solving the internetworking problem.
29
Exercises this week 29 Try out the following commands (with various options) and network diagnosis tools: ipconfig netstat arp ping (ICMP, UDP, TCP, HTTP) traceroute (tracert, pathping, ICMP/TCP/UDP, etc) wireshark
30
Acknowledgments 30 Thanks to all the sources where the diagrams were extracted from. URL for the 10 choices http://www.interesting- people.org/archives/interesting- people/200209/msg00018.html
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.