computer network programmingsam/course/netp/lec_note/ipoverview.pdf · ppp 296 x.25 576 ethernet...
TRANSCRIPT
![Page 1: Computer Network Programmingsam/course/netp/lec_note/ipOverview.pdf · PPP 296 X.25 576 Ethernet 1,500 FDDI 4,352 Token ring (4 Mbps) 4,464 Token ring (16 Mbps) 17,914 Hyperchannel](https://reader033.vdocuments.us/reader033/viewer/2022052804/604f7920cd585c4f41110fee/html5/thumbnails/1.jpg)
Computer Network Programming
IP Overview
Dr. Sam HsuComputer Science & Engineering
Florida Atlantic University
![Page 2: Computer Network Programmingsam/course/netp/lec_note/ipOverview.pdf · PPP 296 X.25 576 Ethernet 1,500 FDDI 4,352 Token ring (4 Mbps) 4,464 Token ring (16 Mbps) 17,914 Hyperchannel](https://reader033.vdocuments.us/reader033/viewer/2022052804/604f7920cd585c4f41110fee/html5/thumbnails/2.jpg)
2
IP OverviewIntroductionIP Datagram FormatType of ServiceDatagram FragmentationIP OptionsIP ChecksumIP AddressesDomain Name SystemIP RoutingMapping Addresses
![Page 3: Computer Network Programmingsam/course/netp/lec_note/ipOverview.pdf · PPP 296 X.25 576 Ethernet 1,500 FDDI 4,352 Token ring (4 Mbps) 4,464 Token ring (16 Mbps) 17,914 Hyperchannel](https://reader033.vdocuments.us/reader033/viewer/2022052804/604f7920cd585c4f41110fee/html5/thumbnails/3.jpg)
3
Internet Protocol (1/2)IP (Internet Protocols) is the workhorse protocol of the TCP/IP protocol suite
TCP/IP is said to be an IP-based technology.
IP provides an unreliable, connectionless datagram delivery service
Unreliable since there is no guarantee that an IP datagram will get to its destination successfully. However, IP will make an earnest attempt to deliver packets, known as a best-effort service.
![Page 4: Computer Network Programmingsam/course/netp/lec_note/ipOverview.pdf · PPP 296 X.25 576 Ethernet 1,500 FDDI 4,352 Token ring (4 Mbps) 4,464 Token ring (16 Mbps) 17,914 Hyperchannel](https://reader033.vdocuments.us/reader033/viewer/2022052804/604f7920cd585c4f41110fee/html5/thumbnails/4.jpg)
4
Internet Protocol (2/2)
IP has three important functionalities:Specification of packet formats.Routing.Packet delivery.
![Page 5: Computer Network Programmingsam/course/netp/lec_note/ipOverview.pdf · PPP 296 X.25 576 Ethernet 1,500 FDDI 4,352 Token ring (4 Mbps) 4,464 Token ring (16 Mbps) 17,914 Hyperchannel](https://reader033.vdocuments.us/reader033/viewer/2022052804/604f7920cd585c4f41110fee/html5/thumbnails/5.jpg)
5
(LSB)0 4 8 16 19 24 31
Datagram FormatDataHeader
General form of an IP datagram
Format of an IP datagram header
PaddingIP Options (if any)
Destination IP Address
Source IP Address
Header ChecksumProtocolTime to Live
Fragment OffsetFlagsIdentification
Total LengthTOSHLENVERS
![Page 6: Computer Network Programmingsam/course/netp/lec_note/ipOverview.pdf · PPP 296 X.25 576 Ethernet 1,500 FDDI 4,352 Token ring (4 Mbps) 4,464 Token ring (16 Mbps) 17,914 Hyperchannel](https://reader033.vdocuments.us/reader033/viewer/2022052804/604f7920cd585c4f41110fee/html5/thumbnails/6.jpg)
6
Type of Service (TOS) (1/3)
UnusedRTDPrecedence
Original subfields of the TOS field
D: Minimize delayT: Maximize throughputR: Maximize reliability
![Page 7: Computer Network Programmingsam/course/netp/lec_note/ipOverview.pdf · PPP 296 X.25 576 Ethernet 1,500 FDDI 4,352 Token ring (4 Mbps) 4,464 Token ring (16 Mbps) 17,914 Hyperchannel](https://reader033.vdocuments.us/reader033/viewer/2022052804/604f7920cd585c4f41110fee/html5/thumbnails/7.jpg)
7
Type of Service (TOS) (2/3)
UnusedDSCP
Structure of the DS field
DSCP: differential services codepoint
The TOS field was redefined By the IETF in 1998 as the differentiated services(DS) field.
![Page 8: Computer Network Programmingsam/course/netp/lec_note/ipOverview.pdf · PPP 296 X.25 576 Ethernet 1,500 FDDI 4,352 Token ring (4 Mbps) 4,464 Token ring (16 Mbps) 17,914 Hyperchannel](https://reader033.vdocuments.us/reader033/viewer/2022052804/604f7920cd585c4f41110fee/html5/thumbnails/8.jpg)
8
Type of Service (TOS) (3/3)
The three administrative pools of DSCP(x refers to either ‘0’ or ‘1’)
The DSCP subfield is divided into three administrative groups, known as pools, for the purpose of codepointassignment and management.
Experimental or local use (for now)xxxx013
Experimental or local usexxxx112
Standard actionxxxxx01
Assignment PolicyCodepointPool
![Page 9: Computer Network Programmingsam/course/netp/lec_note/ipOverview.pdf · PPP 296 X.25 576 Ethernet 1,500 FDDI 4,352 Token ring (4 Mbps) 4,464 Token ring (16 Mbps) 17,914 Hyperchannel](https://reader033.vdocuments.us/reader033/viewer/2022052804/604f7920cd585c4f41110fee/html5/thumbnails/9.jpg)
9
Datagram Fragmentation (1/2)
An IP datagram may be fragmented due to limitations of the underlying network.
Different networks have different maximum transfer units (MTUs)
MTUs are in bytes.
![Page 10: Computer Network Programmingsam/course/netp/lec_note/ipOverview.pdf · PPP 296 X.25 576 Ethernet 1,500 FDDI 4,352 Token ring (4 Mbps) 4,464 Token ring (16 Mbps) 17,914 Hyperchannel](https://reader033.vdocuments.us/reader033/viewer/2022052804/604f7920cd585c4f41110fee/html5/thumbnails/10.jpg)
10
Datagram Fragmentation (1/3)An IP datagram may be fragmented due to limitations of the underlying network.
Different networks have different maximum transfer units (MTUs)
MTUs are in bytes.
An example
H1 R1 R2 H2Net 1 Net 2 Net 3
MTU=1500 MTU=1000 MTU=1000
![Page 11: Computer Network Programmingsam/course/netp/lec_note/ipOverview.pdf · PPP 296 X.25 576 Ethernet 1,500 FDDI 4,352 Token ring (4 Mbps) 4,464 Token ring (16 Mbps) 17,914 Hyperchannel](https://reader033.vdocuments.us/reader033/viewer/2022052804/604f7920cd585c4f41110fee/html5/thumbnails/11.jpg)
11
Datagram Fragmentation (2/3)Each fragment has the same format as the original datagram.All fragments travel as separate datagrams all the way to the ultimate destination where they will be reassembled.An example
IP Hdr Original datagram data
IP Hdr1 Data 1 IP Hdr2 Data 2 IP Hdr3 Data 3
![Page 12: Computer Network Programmingsam/course/netp/lec_note/ipOverview.pdf · PPP 296 X.25 576 Ethernet 1,500 FDDI 4,352 Token ring (4 Mbps) 4,464 Token ring (16 Mbps) 17,914 Hyperchannel](https://reader033.vdocuments.us/reader033/viewer/2022052804/604f7920cd585c4f41110fee/html5/thumbnails/12.jpg)
12
Datagram Fragmentation (3/3)MTUs for some networks
296PPP
576X.25
1,500Ethernet
4,352FDDI
4,464Token ring (4 Mbps)
17,914Token ring (16 Mbps)
65,535Hyperchannel
MTUProtocol
Ref: TCP/IP Protocol Suite, 2nd ed., Behrouz Forouzan, McGraw Hill, 2003, p. 199
![Page 13: Computer Network Programmingsam/course/netp/lec_note/ipOverview.pdf · PPP 296 X.25 576 Ethernet 1,500 FDDI 4,352 Token ring (4 Mbps) 4,464 Token ring (16 Mbps) 17,914 Hyperchannel](https://reader033.vdocuments.us/reader033/viewer/2022052804/604f7920cd585c4f41110fee/html5/thumbnails/13.jpg)
13
Flags
MFDFU
There are three subfields in the Flags field.
UnusedDo not fragmentMore fragments
U:DF:MF:
![Page 14: Computer Network Programmingsam/course/netp/lec_note/ipOverview.pdf · PPP 296 X.25 576 Ethernet 1,500 FDDI 4,352 Token ring (4 Mbps) 4,464 Token ring (16 Mbps) 17,914 Hyperchannel](https://reader033.vdocuments.us/reader033/viewer/2022052804/604f7920cd585c4f41110fee/html5/thumbnails/14.jpg)
14
0 1 2 3 4 5 6 7
IP Options (1/3)Used primarily for network testing and debugging.Length varies depending on options selected.Zero bits padded at the end to ensure header length to be in multiples of 32 bits.
Option NumberOption ClassCopy
The three subfields of an IP option code octet
![Page 15: Computer Network Programmingsam/course/netp/lec_note/ipOverview.pdf · PPP 296 X.25 576 Ethernet 1,500 FDDI 4,352 Token ring (4 Mbps) 4,464 Token ring (16 Mbps) 17,914 Hyperchannel](https://reader033.vdocuments.us/reader033/viewer/2022052804/604f7920cd585c4f41110fee/html5/thumbnails/15.jpg)
15
Meanings of the copy bit
IP Options (2/3)
Copy option to all fragments1
Copy option to 1st fragment only0
MeaningCopy
IP option classes
Reserved for future use11
Debugging and measurement10
Reserved for future use01
Datagram or network control00
MeaningOption Class
![Page 16: Computer Network Programmingsam/course/netp/lec_note/ipOverview.pdf · PPP 296 X.25 576 Ethernet 1,500 FDDI 4,352 Token ring (4 Mbps) 4,464 Token ring (16 Mbps) 17,914 Hyperchannel](https://reader033.vdocuments.us/reader033/viewer/2022052804/604f7920cd585c4f41110fee/html5/thumbnails/16.jpg)
16
IP Options (3/3)
Some IP option numbers
Timestamp00100
Record route00111
Strict source route01001
Loose source route00011
No operation00001
End of option00000
MeaningOption Number
![Page 17: Computer Network Programmingsam/course/netp/lec_note/ipOverview.pdf · PPP 296 X.25 576 Ethernet 1,500 FDDI 4,352 Token ring (4 Mbps) 4,464 Token ring (16 Mbps) 17,914 Hyperchannel](https://reader033.vdocuments.us/reader033/viewer/2022052804/604f7920cd585c4f41110fee/html5/thumbnails/17.jpg)
17
IP ChecksumIs used to ensure integrity of header values.
Formed by treating the header as a sequence of 16-bit integers, in network standard byte order, adding them together using 1's complement arithmetic, and then taking 1's complement of the result.
Network standard byte order uses big-endian in sending integers; that is, the most significant byte in an integer is sent first.
Error checking for the data area is left to the higher layer protocol.
![Page 18: Computer Network Programmingsam/course/netp/lec_note/ipOverview.pdf · PPP 296 X.25 576 Ethernet 1,500 FDDI 4,352 Token ring (4 Mbps) 4,464 Token ring (16 Mbps) 17,914 Hyperchannel](https://reader033.vdocuments.us/reader033/viewer/2022052804/604f7920cd585c4f41110fee/html5/thumbnails/18.jpg)
18
Internet Addresses (1/2)A means to identify hosts on the Internet.Also known as IP addresses.Each host on the Internet is assigned a 32-bit unique address
An IP address is assigned to a single host only.A host may have more than one IP address (multi-homed host).
![Page 19: Computer Network Programmingsam/course/netp/lec_note/ipOverview.pdf · PPP 296 X.25 576 Ethernet 1,500 FDDI 4,352 Token ring (4 Mbps) 4,464 Token ring (16 Mbps) 17,914 Hyperchannel](https://reader033.vdocuments.us/reader033/viewer/2022052804/604f7920cd585c4f41110fee/html5/thumbnails/19.jpg)
19
Internet Addresses (2/2)Five classes of IP addresses:
Class A: 8 16 24 31
Hostid0 Netid
Class B:
Hostid1 0 Netid
Class C:
Hostid1 1 0 Netid
Class D:
1 1 1 0 Multicast address
Class E:
1 1 1 1 Reserved for future use
The five classes of IP addresses
![Page 20: Computer Network Programmingsam/course/netp/lec_note/ipOverview.pdf · PPP 296 X.25 576 Ethernet 1,500 FDDI 4,352 Token ring (4 Mbps) 4,464 Token ring (16 Mbps) 17,914 Hyperchannel](https://reader033.vdocuments.us/reader033/viewer/2022052804/604f7920cd585c4f41110fee/html5/thumbnails/20.jpg)
20
Dotted Representation
Internet addresses are represented in the form of four integers separated by decimal points.
For readability by human.For example:
FAU machine = 131.91.deptid.hostid131.91.128.74 (FAU Web Server)131.91.96.106 (FAU CSE Dept.)
![Page 21: Computer Network Programmingsam/course/netp/lec_note/ipOverview.pdf · PPP 296 X.25 576 Ethernet 1,500 FDDI 4,352 Token ring (4 Mbps) 4,464 Token ring (16 Mbps) 17,914 Hyperchannel](https://reader033.vdocuments.us/reader033/viewer/2022052804/604f7920cd585c4f41110fee/html5/thumbnails/21.jpg)
21
The Domain Name System (1/2)
A high-level naming scheme.A sequence of characters grouped into sections delimited by decimal points.
Labeled in a meaningful wayFAU machine = hostid.deptid.fau.edu
A hierarchical naming systemWritten in the local-most level first and the top-most level last fashion.
![Page 22: Computer Network Programmingsam/course/netp/lec_note/ipOverview.pdf · PPP 296 X.25 576 Ethernet 1,500 FDDI 4,352 Token ring (4 Mbps) 4,464 Token ring (16 Mbps) 17,914 Hyperchannel](https://reader033.vdocuments.us/reader033/viewer/2022052804/604f7920cd585c4f41110fee/html5/thumbnails/22.jpg)
22
The Domain Name System (2/2) Top-level domain names
Generic domains: for use by the Internet public (.aero, .biz, .cat, .com, .coop, .edu, .gov, .info, .jobs, .mobi, .int, .mil, .museum, .name, .net, .org, .pro, & .travel).Country code domains: for use by each individual country (.uk, .de, .jp, .us, etc.)Infrastructure domain (.arpa)
Ref: http://www.iana.org/domain-names.htmhttp://www.norid.no/domreg.html
![Page 23: Computer Network Programmingsam/course/netp/lec_note/ipOverview.pdf · PPP 296 X.25 576 Ethernet 1,500 FDDI 4,352 Token ring (4 Mbps) 4,464 Token ring (16 Mbps) 17,914 Hyperchannel](https://reader033.vdocuments.us/reader033/viewer/2022052804/604f7920cd585c4f41110fee/html5/thumbnails/23.jpg)
23
More on IP Addresses (1/3) An IP address encodes both a network and a host on that network. It does not specify an individual machine, but a connection to a network.
Referred to as a network connection. If a host moves from one network to another, its IP address must change.
A weakness in Internet addressing.For a multi-homed host, knowing one address of it may not be sufficient to reach it when some network(s) are unavailable.
Another weakness in Internet addressing.
![Page 24: Computer Network Programmingsam/course/netp/lec_note/ipOverview.pdf · PPP 296 X.25 576 Ethernet 1,500 FDDI 4,352 Token ring (4 Mbps) 4,464 Token ring (16 Mbps) 17,914 Hyperchannel](https://reader033.vdocuments.us/reader033/viewer/2022052804/604f7920cd585c4f41110fee/html5/thumbnails/24.jpg)
24
More on IP Addresses (2/3) An IP address can refer to a network as well as to an individual host.By convention, the network address has hostid with all bits 0, and a broadcast address has hostid with all bits 1
All 0's mean “this”.All 1's mean “all”.
Class A network address 127.x.x.x is reserved for loopback, and is designed for testing and IPC on the local machine.
![Page 25: Computer Network Programmingsam/course/netp/lec_note/ipOverview.pdf · PPP 296 X.25 576 Ethernet 1,500 FDDI 4,352 Token ring (4 Mbps) 4,464 Token ring (16 Mbps) 17,914 Hyperchannel](https://reader033.vdocuments.us/reader033/viewer/2022052804/604f7920cd585c4f41110fee/html5/thumbnails/25.jpg)
25
More on IP Addresses (3/3) Some special address conventions
Netid Hostid Types of Address Purpose all 0s all 0s source host used during bootstrap all 0s specific destination host a specific host on local net
specific all 0s network identifies a network specific all 1s directed broadcast broadcast on specified net all 1s all 1s limited broadcast broadcast on local net 127 any loopback testing
![Page 26: Computer Network Programmingsam/course/netp/lec_note/ipOverview.pdf · PPP 296 X.25 576 Ethernet 1,500 FDDI 4,352 Token ring (4 Mbps) 4,464 Token ring (16 Mbps) 17,914 Hyperchannel](https://reader033.vdocuments.us/reader033/viewer/2022052804/604f7920cd585c4f41110fee/html5/thumbnails/26.jpg)
26
Internet Addressing AuthoritiesNetids may be obtained either via a domain name registrar authorized by the Internet Corporation for Assigned Names and Numbers (ICANN), or an Internet service provider (ISP).
A service used to be handled by the Internet Assigned Numbers Authority (IANA).Had been handled by Jon Postel until late 1998.
Hostids are assigned by the local authority.
![Page 27: Computer Network Programmingsam/course/netp/lec_note/ipOverview.pdf · PPP 296 X.25 576 Ethernet 1,500 FDDI 4,352 Token ring (4 Mbps) 4,464 Token ring (16 Mbps) 17,914 Hyperchannel](https://reader033.vdocuments.us/reader033/viewer/2022052804/604f7920cd585c4f41110fee/html5/thumbnails/27.jpg)
27
IP Address for Private Networks (1/2)What IP addresses should an organization choose for internal use only?
An organization may like to use TCP/IP protocols internally only without being connected to the Internet.
Three options:To apply for a unique network address for internal use only.
Problem: Classes A & B addresses are hard to get today.
To select an IP address arbitrarily.Problem: What if the organization decides to get connected to the Internet later?
![Page 28: Computer Network Programmingsam/course/netp/lec_note/ipOverview.pdf · PPP 296 X.25 576 Ethernet 1,500 FDDI 4,352 Token ring (4 Mbps) 4,464 Token ring (16 Mbps) 17,914 Hyperchannel](https://reader033.vdocuments.us/reader033/viewer/2022052804/604f7920cd585c4f41110fee/html5/thumbnails/28.jpg)
28
IP Address for Private Networks (2/2)
To use one of the following addresses, officially assigned to private networks:
192.168.0.0 to 192.168.255.255
172.16.0.0 to 172.31.255.255
10.0.0.0 to 10.255.255.255
Address ranges
![Page 29: Computer Network Programmingsam/course/netp/lec_note/ipOverview.pdf · PPP 296 X.25 576 Ethernet 1,500 FDDI 4,352 Token ring (4 Mbps) 4,464 Token ring (16 Mbps) 17,914 Hyperchannel](https://reader033.vdocuments.us/reader033/viewer/2022052804/604f7920cd585c4f41110fee/html5/thumbnails/29.jpg)
29
IP Routing (1/4)Routing refers to the process of selecting a path over which to send packets to the destination.
If both source and destination attach directly to the same physical network,
Sender maps the destination IP address onto its physical address and uses the network hardware to deliver the datagram directly.
Else if source and destination are on two different physical networks,
Sender needs to pass the datagram to a router for delivery.
![Page 30: Computer Network Programmingsam/course/netp/lec_note/ipOverview.pdf · PPP 296 X.25 576 Ethernet 1,500 FDDI 4,352 Token ring (4 Mbps) 4,464 Token ring (16 Mbps) 17,914 Hyperchannel](https://reader033.vdocuments.us/reader033/viewer/2022052804/604f7920cd585c4f41110fee/html5/thumbnails/30.jpg)
30
IP Routing (2/4) Datagrams pass from router to router until they reach a router that can deliver the datagram directly.Routing also applies between different subnets of the same network.IP routing is table-driven.
![Page 31: Computer Network Programmingsam/course/netp/lec_note/ipOverview.pdf · PPP 296 X.25 576 Ethernet 1,500 FDDI 4,352 Token ring (4 Mbps) 4,464 Token ring (16 Mbps) 17,914 Hyperchannel](https://reader033.vdocuments.us/reader033/viewer/2022052804/604f7920cd585c4f41110fee/html5/thumbnails/31.jpg)
31
IP Routing (3/4)
(a) An example internet with three routers connecting four physical networks, and (b) the conceptual routing table found in router R2. Each entry in the table lists a destination network and the next hop along a route to that network.
Ref: Computer Networks and Internets, 2nd ed., Douglas Comer, Prentice Hall, 1999, p. 243.
![Page 32: Computer Network Programmingsam/course/netp/lec_note/ipOverview.pdf · PPP 296 X.25 576 Ethernet 1,500 FDDI 4,352 Token ring (4 Mbps) 4,464 Token ring (16 Mbps) 17,914 Hyperchannel](https://reader033.vdocuments.us/reader033/viewer/2022052804/604f7920cd585c4f41110fee/html5/thumbnails/32.jpg)
32
IP Routing (4/4)
(a) An internet of four networks and three routers with an IP address assigned to each router interface, and (b) the routing table found in the center router. Each entry in the table lists a destination, a mask, and the next hop used to reach the destination .
Ref: Computer Networks and Internets, 2nd ed., Douglas Comer, Prentice Hall, 1999, p. 271.
![Page 33: Computer Network Programmingsam/course/netp/lec_note/ipOverview.pdf · PPP 296 X.25 576 Ethernet 1,500 FDDI 4,352 Token ring (4 Mbps) 4,464 Token ring (16 Mbps) 17,914 Hyperchannel](https://reader033.vdocuments.us/reader033/viewer/2022052804/604f7920cd585c4f41110fee/html5/thumbnails/33.jpg)
33
Some Routing Table Terminology (1/2)
Next-hop routingThe routing table holds only the address of the next hop (router), instead of the complete path to the destination.
Network-specific routingOnly the network address (netid) is entered into the routing table.
All hosts on the same network have only one entry in the table
![Page 34: Computer Network Programmingsam/course/netp/lec_note/ipOverview.pdf · PPP 296 X.25 576 Ethernet 1,500 FDDI 4,352 Token ring (4 Mbps) 4,464 Token ring (16 Mbps) 17,914 Hyperchannel](https://reader033.vdocuments.us/reader033/viewer/2022052804/604f7920cd585c4f41110fee/html5/thumbnails/34.jpg)
34
Some Routing Table Terminology (2/2)
Host-specific routingThe complete IP address, down to hostid, for the destination host is given in the table.To have a better control over routing; may be for security, debugging purposes, etc.
![Page 35: Computer Network Programmingsam/course/netp/lec_note/ipOverview.pdf · PPP 296 X.25 576 Ethernet 1,500 FDDI 4,352 Token ring (4 Mbps) 4,464 Token ring (16 Mbps) 17,914 Hyperchannel](https://reader033.vdocuments.us/reader033/viewer/2022052804/604f7920cd585c4f41110fee/html5/thumbnails/35.jpg)
35
Default Routing A catchall mechanism that matches none of the above.Must be the very last entry in the table.
An example: The following routing table in router R1, using the first network configuration (a) on Slide 31.
R2Net3Default
Net2
Net1
Destination
R2
Deliver Directly
Deliver Directly
Next hop
![Page 36: Computer Network Programmingsam/course/netp/lec_note/ipOverview.pdf · PPP 296 X.25 576 Ethernet 1,500 FDDI 4,352 Token ring (4 Mbps) 4,464 Token ring (16 Mbps) 17,914 Hyperchannel](https://reader033.vdocuments.us/reader033/viewer/2022052804/604f7920cd585c4f41110fee/html5/thumbnails/36.jpg)
36
IP Routing AlgorithmAlgorithm
RouteDatagram ( Datagram, RoutingTable)Extract destination IP address, D, from the datagram and compute the network prefix, N;
If N matches any directly connected network address, deliver datagram to destination D over that network (This involves resolving D to a physical address, encapsulating the datagram, and sending the frame.)
else if the table contains a host-specific route for D, send datagram to next-hop specified in tableelse if the table contains a route for network N, send datagram to next-hop specified in tableelse if the table contains a default route, send datagram to the default router specified in tableelse declare a routing error.
The algorithm IP uses to forward a datagram. Given an IP datagram and a routing table, this algorithm selects the next hop to which the datagram should be sent. All routes must specify a next hop that lies on a directly connected network.
Ref: Internetworking with TCP/IP Volume I, 4th ed., Douglas Comer, Prentice Hall, 2004, p. 122.
![Page 37: Computer Network Programmingsam/course/netp/lec_note/ipOverview.pdf · PPP 296 X.25 576 Ethernet 1,500 FDDI 4,352 Token ring (4 Mbps) 4,464 Token ring (16 Mbps) 17,914 Hyperchannel](https://reader033.vdocuments.us/reader033/viewer/2022052804/604f7920cd585c4f41110fee/html5/thumbnails/37.jpg)
37
Mapping Addresses (1/2) Mapping domain names to IP addresses
Between high-level domain names and low-level IP addresses.For local host itself
Done at system startup.
For hosts within the same subdomainLocal table lookup.
OthersMay need to go through a nameserver(s).
![Page 38: Computer Network Programmingsam/course/netp/lec_note/ipOverview.pdf · PPP 296 X.25 576 Ethernet 1,500 FDDI 4,352 Token ring (4 Mbps) 4,464 Token ring (16 Mbps) 17,914 Hyperchannel](https://reader033.vdocuments.us/reader033/viewer/2022052804/604f7920cd585c4f41110fee/html5/thumbnails/38.jpg)
38
Mapping Addresses (2/2) Mapping IP addresses to physical addresses
Application programs always use IP addresses.Hosts and routers use physical network addresses to deliver datagrams across underlying physical networks.IP addresses are independent of physical network addresses.
Need to map IP addresses to physical addresses, known as the address resolution problem.
A host obtains its IP and physical addresses at system startup
IP address is usually kept in a disk file.Physical address is provided by the network interface card.
![Page 39: Computer Network Programmingsam/course/netp/lec_note/ipOverview.pdf · PPP 296 X.25 576 Ethernet 1,500 FDDI 4,352 Token ring (4 Mbps) 4,464 Token ring (16 Mbps) 17,914 Hyperchannel](https://reader033.vdocuments.us/reader033/viewer/2022052804/604f7920cd585c4f41110fee/html5/thumbnails/39.jpg)
39
ARP/RARP Protocols (1/3)
An ARP message exchange. (a) Computer W begins to broadcast an ARP request that contains computer Y's IP address. (b) all computers receive the request, and (c) computer Y sends a response directly to W.
Ref: Computer Networks and Internets, 2nd ed., Douglas Comer, Prentice Hall, 1999, p. 258.
A host uses the Address Resolution Protocol (ARP) to learn the physical addresses of other machines.
![Page 40: Computer Network Programmingsam/course/netp/lec_note/ipOverview.pdf · PPP 296 X.25 576 Ethernet 1,500 FDDI 4,352 Token ring (4 Mbps) 4,464 Token ring (16 Mbps) 17,914 Hyperchannel](https://reader033.vdocuments.us/reader033/viewer/2022052804/604f7920cd585c4f41110fee/html5/thumbnails/40.jpg)
40
ARP/RARP Protocols (2/2)ARP cache timeout
An ARP cache contains a set of recently obtained IP-to-physical address bindings.
Is used to avoid successive ARP requests/responses for the same destinations.For the purpose of reducing communication cost.
Entries in an ARP cache are timed.Each ARP cache entry is associated with a timer, typically 20 minutes.An entry is removed if it has not been referenced before its timer expires.
A diskless host uses the Reverse Address Resolution Protocol (RARP) to obtain its IP address from its server.
![Page 41: Computer Network Programmingsam/course/netp/lec_note/ipOverview.pdf · PPP 296 X.25 576 Ethernet 1,500 FDDI 4,352 Token ring (4 Mbps) 4,464 Token ring (16 Mbps) 17,914 Hyperchannel](https://reader033.vdocuments.us/reader033/viewer/2022052804/604f7920cd585c4f41110fee/html5/thumbnails/41.jpg)
41
0 8 16 31
ARP/RARP Protocols (3/3)
An example of the ARP/RARP message format when used for IP-to-Ethernet address resolution. The length of address fields depends on the hardware and protocol address lengths, which are 6 octets for anEthernet address and 4 octets for an IP address. Ref: Internetworking with TCP/IP Volume I, 4th ed., Douglas Comer, Prentice Hall, 2000, p. 85.
ARP/RARP protocol format
Target IP (octets 0-3)
Target HA (octets 2-5)
Target HA (octets 0-1) Sender IP (octets 2-3)
Sender IP (octets 0-1)Sender HA (octets 4-5)
Sender HA (octets 0-3)
Operation PLEN HLEN
Protocol Type Hardware Type
![Page 42: Computer Network Programmingsam/course/netp/lec_note/ipOverview.pdf · PPP 296 X.25 576 Ethernet 1,500 FDDI 4,352 Token ring (4 Mbps) 4,464 Token ring (16 Mbps) 17,914 Hyperchannel](https://reader033.vdocuments.us/reader033/viewer/2022052804/604f7920cd585c4f41110fee/html5/thumbnails/42.jpg)
42
Reading Assignment
Read Chapters 3-5.
![Page 43: Computer Network Programmingsam/course/netp/lec_note/ipOverview.pdf · PPP 296 X.25 576 Ethernet 1,500 FDDI 4,352 Token ring (4 Mbps) 4,464 Token ring (16 Mbps) 17,914 Hyperchannel](https://reader033.vdocuments.us/reader033/viewer/2022052804/604f7920cd585c4f41110fee/html5/thumbnails/43.jpg)
43
For More InformationRFC 791 – Internet Protocol, Sep-01-1981.RFC 815 – IP datagram reassembly algorithms, Jul-01-1982.RFC 894 – Standard for the transmission of IP datagrams over Ethernet networks, Apr-01-1984.RFC 1034 – Domains names – concepts and facilities, Nov-01-1987.RFC 1042 – Standard for the transmission of IP datagrams over IEEE 802 networks, Feb-01-1988.RFC 1071 – Computing the Internet checksum, Sep-01-1988. RFC 1624 – Computation of the Internet Checksum via Incremental Update, May 1994.RFC 1918 – Address Allocation for Private Internets, February 1996. RFC 2474 – Definition of the Differentiated Services Field (DS Field) in the IPv4 and IPv6 Headers, December 1998. RFC 2517 – Building Directories from DNS: Experiences from WWWSeeker, February 1999.RFC 3007 – Secure Domain Name System (DNS) Dynamic Update. November 2000.RFC 3172 – Management Guidelines & Operational Requirements for the Address and Routing Parameter Area Domain ("arpa"). September 2001.RFC 3232 – Assigned Numbers: RFC 1700 is Replaced by an On-line Database, January 2002. RFC 3330 – Special-Use IPv4 Addresses. IANA, September 2002.
![Page 44: Computer Network Programmingsam/course/netp/lec_note/ipOverview.pdf · PPP 296 X.25 576 Ethernet 1,500 FDDI 4,352 Token ring (4 Mbps) 4,464 Token ring (16 Mbps) 17,914 Hyperchannel](https://reader033.vdocuments.us/reader033/viewer/2022052804/604f7920cd585c4f41110fee/html5/thumbnails/44.jpg)
44
For More InformationRFC 826 – Ethernet Address Resolution Protocol: Or converting network protocol addresses to 48.bit Ethernet address for transmission on Ethernet hardware, Nov-01-1982.RFC 903 – Reverse Address Resolution Protocol, Jun-01-1984.RFC 1166 – Internet number, Jul-01-1990.RFC 1390 – Transmission of IP and ARP over FDDI Networks, January 1993.RFC 1433 – Directed ARP, March 1993.RFC 1931 – Dynamic RARP Extensions and Administrative Support for Automatic Network Address Allocation, April 1996.RFC 2625 – IP and ARP over Fibre Channel, June 1999.
RFC 2835 – IP and ARP over HIPPI-6400 (GSN), May 2000..