Download presentation
Presentation is loading. Please wait.
Published byLaura Skinner Modified over 8 years ago
1
1 Today’s Topics* r ICMP r DHCP r Domain Naming DNS r Byte ordering * Based in part on slides by Paul D. Paulson.
2
2 Error detection r IP provides best-effort delivery r Internet layer can detect a variety of errors: Checksum TTL expires No route to destination network Can't deliver to destination host (e.g., no ARP reply) r Internet layer discards datagrams with certain types of problems
3
3 ICMP r Some types of errors can be detected and reported r Internet Control Message Protocol (ICMP) provides error-reporting mechanisms r Router sends control message back to source Encapsulated in IP datagram Contains coded information about the type of problem
4
4 ICMP Header Example r Type 3 r Code 0 = net unreachable 1 = host unreachable 2 = protocol unreachable 3 = port unreachable 4 = fragmentation needed and DF set 5 = source route failed r Checksum the 16-bit one's complement of the one's complement sum of the ICMP message starting with the ICMP Type. r Original IP Header + 64 bits of Data Datagram IP header is at least 20 bytes. Remainder is used by host to match message to appropriate process.
5
5 ICMP message types
6
6 Types of messages r Internet Control Message Protocol (ICMP) defines 2 classes of messages error messages informational messages
7
7 Error message examples r Destination unreachable router sends when it determines that a datagram cannot be delivered to its final destination r Fragmentation required Router sends when it determines datagram is too large for outbound network r Time exceeded message is sent in two cases 1.router sends when the TTL is reduced to zero 2.destination host sends when the reassembly timer expires before all fragments arrive.
8
8 Informational messages r Echo request/reply Sent to ICMP software on any computer In response to a request, the ICMP software is required to send an ICMP echo reply message. r Address mask request/reply Broadcast when a host boots Router replies with the mask used in that subnet r Router path MTU discovery Distributed path discovery
9
9 ICMP Applications r ping r echo r traceroute r Discovery path, MTU, etc. r etc.
10
10 Reachability r An internet host, A, is reachable from another host, B, if datagrams can be delivered from A to B r ping program tests reachability - sends datagram from B to A and A echoes it back to B Uses ICMP “echo request” and “echo reply” messages Internet layer includes code to reply to incoming ICMP “echo request” messages Does not have to go to application layer / port
11
11 traceroute r Uses UDP with TTL field set and sends to a non-existent port r Finds route via expanding ring search Sends ICMP “echo” messages with increasing TTL r Router that decrements TTL to 0 sends ICMP “time exceeded” ICMP message, with router's address as source address
12
12 Expanding ring search r First datagram TTL = 1 gets to first router is discarded and ICMP “time exceeded” message is returned r Next datagram TTL = 2 gets through first router to second router is discarded and ICMP “time exceeded” message is returned r Continue until message from destination received
13
13 ”Path MTU” discovery r Fragmentation should be avoided if possible r Source can determine path MTU - smallest MTU on path from source to destination Probes path using IP datagrams with don't fragment flag set Router responds with ICMP “fragmentation required” message Source sends smaller probes until destination reached
14
14 Today’s Topics r ICMP r DHCP r Domain Naming DNS r Byte ordering
15
15 IP addresses: how to get one? Q: How does a host get IP address? r hard-coded by system admin in a file Windows: control-panel->network->configuration- >tcp/ip->properties UNIX: /etc/rc.config r DHCP: Dynamic Host Configuration Protocol: dynamically get address from as server “plug-and-play”
16
16 DHCP: Dynamic Host Configuration Protocol Goal: allow host to dynamically obtain its IP address from network server when it joins network Can renew its lease on address in use Allows reuse of addresses (only hold address while connected an “on”) Support for mobile users who want to join network (more shortly) DHCP overview: host broadcasts “DHCP discover” msg DHCP server responds with “DHCP offer” msg host requests IP address: “DHCP request” msg DHCP server sends address: “DHCP ack” msg
17
17 DHCP client-server scenario 223.1.1.1 223.1.1.2 223.1.1.3 223.1.1.4 223.1.2.9 223.1.2.2 223.1.2.1 223.1.3.2 223.1.3.1 223.1.3.27 A B E DHCP server arriving DHCP client needs address in this network
18
18 DHCP client-server scenario DHCP server: 223.1.2.5 arriving client time DHCP discover src : 0.0.0.0, 68 dest.: 255.255.255.255,67 yiaddr: 0.0.0.0 transaction ID: 654 DHCP offer src: 223.1.2.5, 67 dest: 255.255.255.255, 68 yiaddrr: 223.1.2.4 transaction ID: 654 Lifetime: 3600 secs DHCP request src: 0.0.0.0, 68 dest:: 255.255.255.255, 67 yiaddrr: 223.1.2.4 transaction ID: 655 Lifetime: 3600 secs DHCP ACK src: 223.1.2.5, 67 dest: 255.255.255.255, 68 yiaddrr: 223.1.2.4 transaction ID: 655 Lifetime: 3600 secs yiaddr is “your internet address”
19
19 Today’s Topics r ICMP r DHCP r Domain Naming DNS r Byte ordering
20
20 The need for naming r IP assigns 32-bit addresses to host interfaces r All applications use IP addresses through the TCP/IP protocol software r Binary addresses easy for computers to manage r … but difficult for humans to remember: E.G.: telnet 134.82.11.70
21
21 The Domain Name System r The computer needs 32-bit binary addresses r Humans "need" mnemonics r DNS provides translation between symbolic names and IP addresses
22
22 Structure of DNS names r Each name consists of a sequence of alphanumeric components separated by periods r Examples: comcast.com www.oregonstate.edu www.cnn.com classes.engr.oregonstate.edu r Note: There is not a correspondence between the DNS name components and the fields of an IP address (dotted decimal notation)
23
23 Structure of DNS names r Names are hierarchical, with most significant component on the right Top-Level Domain (TLD) r Second from right is the domain name within the TLD Approved by a global authority
24
24 Structure of DNS names r Other names may be added by the organization that owns the name hierarchical structure r Left-most component is computer name r NOTE: www does not necessarily imply web services. It’s just a computer name in a domain.
25
25 Structure of DNS names r Organizations apply for names in a TLD. E.G.: oregonstate.edu mozilla.com r Organizations determine own internal structure. E.G.: eecs.oregonstate.edu classes.eecs.oregonstate.edu www.mozilla.com en-US.www.mozilla.com
26
26 Top-level domains (TLD)
27
27 Geographic structure http://www.iana.org/cctld/cctld-whois.htm http://www.iana.org/cctld/cctld-whois.htm r TLDs are USA-centric r Geographic TLDs (ccTLD) are used for organizations in other countries. Examples: TLDCountry.ukUnited Kingdom.cnChina.inIndia.jpJapan.pgPapua New Guinea.clChile.keKenya
28
28 Geographic structure r Countries define their own internal hierarchy: r.ac.jp and.edu.au are used for academic organizations in Japan and Australia, respectively
29
29 Internal names r Authority for creating new subdomains is delegated to each domain r Administrator of oregonstate.edu has authority to create classes.engr.oregonstate.edu does not have to contact any central naming authority
30
30 Physical location r DNS domains are logical concepts and need not correspond to physical location of organizations E.G., chinatoday.com is hosted partly in Beijing, partly in San Francisco r Note: some countries sell domain names in their ccTLDs e.g. www.verisign.tv
31
31 DNS: Domain Name System Internet routers: r Use IP addresses to forward/route datagrams (e.g., 123.14.44.2) People: r Use names (e.g., www.amazon.com) Question: r How to map between IP addresses and name ? Answer: r DNS Domain Name System: r distributed database: implemented in hierarchy of many name servers r application-layer protocol: running at host, routers, & name servers to resolve names (address/name translation)
32
32 DNS Why not centralize DNS? r single point of failure r traffic volume r distant centralized database r maintenance doesn’t scale! DNS services r hostname to IP address translation r Web server aliasing Canonical, alias names r mail server aliasing r load distribution replicated Web servers: set of IP addresses for one canonical name
33
33 Root DNS Servers com DNS servers org DNS serversedu DNS servers poly.edu DNS servers umass.edu DNS servers yahoo.com DNS servers amazon.com DNS servers pbs.org DNS servers Distributed, Hierarchical Database Client wants IP for www.amazon.com; 1 st approx: r client queries a root server to find com DNS server r client queries com DNS server to get amazon.com DNS server r client queries amazon.com DNS server to get IP address for www.amazon.com
34
34 DNS: Root name servers r contacted by local name server that can not resolve name 13 root name servers worldwide b USC-ISI Marina del Rey, CA l ICANN Los Angeles, CA e NASA Mt View, CA f Internet Software C. Palo Alto, CA (and 36 other locations) i Autonomica, Stockholm (plus 28 other locations) k RIPE London (also 16 other locations) m WIDE Tokyo (also Seoul, Paris, SF) a Verisign, Dulles, VA c Cogent, Herndon, VA (also LA) d U Maryland College Park, MD g US DoD Vienna, VA h ARL Aberdeen, MD j Verisign, ( 21 locations)
35
35 TLD and Authoritative Servers r Top-level domain (TLD) servers: responsible for com, org, net, edu, etc, and all top-level country domains uk, fr, ca, jp. Network Solutions maintains servers for 'com' TLD r Authoritative DNS servers: organization’s DNS servers, providing authoritative hostname to IP mappings for organization’s servers (e.g., Web, mail). can be maintained by organization or service provider
36
36 Local Name Server r does not strictly belong to hierarchy r each ISP (residential ISP, company, university) has one. also called “default name server” r when host makes DNS query, query is sent to its local DNS server acts as proxy, forwards query into hierarchy
37
37 requesting host eecs.oregonstate.edu gaia.cs.umass.edu root DNS server local DNS server dns1.oregonstate.edu 1 2 3 4 5 6 authoritative DNS server dns.cs.umass.edu 7 8 TLD DNS server DNS name resolution example iterated query: r Host at eecs.oregonstate.edu wants IP address for gaia.cs.umass.edu r Each server replies with name of server to contact
38
38 requesting host eecs.oregonstate.edu gaia.cs.umass.edu root DNS server local DNS server dns1.oregonstate.edu 1 2 4 5 6 authoritative DNS server dns.cs.umass.edu 7 8 TLD DNS server 3 r puts burden of name resolution on contacted name server heavy load? DNS name resolution example recursive query:
39
39 DNS: caching and updating records name servers cache mappings as they learn them cache entries timeout (disappear) after some time TLD servers typically cached in local name servers Thus root name servers not often visited
40
40 Today’s Topics r ICMP r DHCP r Domain Naming DNS r Byte ordering
41
41 Byte-ordering r In all modern computer architectures, strings are stored in contiguous memory addresses in byte (character) order r However … storage of numeric values is architecture dependent 16-bit integer (2 bytes) 32-bit integer (4 bytes) etc. r Different architectures store numeric values in different byte order
42
42 Big-endian, Little-endian r Big-endian Numeric (multi-byte) values are stored in "normal" byte order most significant byte first Example: Decimal 1523 = 05F3 (hex) Big-endian byte order is 05 F3 r Little-endian Numeric (multi-byte) values are stored in "reverse" byte order least significant byte first Example: Decimal 1523 = 05F3 (hex) Little-endian byte order is F3 05 r NOTE: this refers to byte-order, NOT to the order of bits within the bytes.
43
43 Big-endian, Little-endian r Example: 32-bit dotted-decimal 128.193.35.203 = 80C123CB (hex) Big-endian byte order is 80 C1 23 CB Little-endian byte order is CB 23 C1 80
44
44 Big-endian, Little-endian r Intel architectures use little-endian r Sparc, Solaris (and other) architectures use big-endian r Problem with communication among various architectures. r Data sent over a network is a sequence of bytes (characters, integers, etc.) r Network order is always Big-endian
Similar presentations
© 2024 SlidePlayer.com Inc.
All rights reserved.