2. TCP/IP Protocol Suite 2
ADDRESSING PADA TCP/IP
Terdapat 4 level pengalamatan yang digunakan
pada internet menggunakan protokol TCP/IP:
1. Alamat fisik/ physical address,
2. Alamat logika/ logical address,
3. Alamat port/ port address,
4. Alamat khusus aplikasi/ application-specific
address.
Setiap alamat dihubungkan dengan salu layer pada
arsitektur TCP/IP
5. 5
Data Link and
Physical Layers
Application
Transport
Network
Network Interface
Message
Segments
h M h M h M
h M
h h M
h h M
h
Packets
h M
h h M
h
h h
Frames
7. TCP/IP Protocol Suite 7
Sebagian besar LAN menggunakan alamat fisik 48-bit (6-byte)
yang ditulis sebagai digit 12 hexadecimal; dimana setiap byte
(2 hexadecimal digits) dipisahkan dengan colon, sbb:
07:01:02:01:2C:4B
A 6-byte (12 hexadecimal digits) physical address
8. 8
â˘Hanya alamat hardware (MAC address) yang
unik untuk setiap host
â˘Perlu mengubah alamat jeringan ke alamat MAC
Ethernet
Ethernet
Frame
Ethernet address = ?
Packet
Destination IP = 158.132.148.132
Source IP =
158.132.148.66
Packet
9. 9
ARP â Address Resolution
Protocol
1. Broadcast: Who has got IP address
8. . 8. ? What s your
Ethernet address?
2. Reply: I do. My Ethernet address is
00-60-8C-41-37-52
Case 1
Ethernet Frame
3.
Ethernet address = 00-60-8C-41-37-52
10. 10
ARP â Address
Resolution Protocol
Case 2
1. Broadcast: Who has got IP address
8. . 8. ? What s your
Ethernet address?
2. Reply: The IP you indicated is not in your network. You
can give the packet to me first. My MAC address is 00-
60-8C-12-34-56
Router
3.
Ethernet Frame
Ethernet address = 00-60-8C-12-34-56
11. 11
ARP Cache
â˘Will have a heavy traffic if so many ARP
broadcast messages are generated
â˘Each host will have a cache to store the
mappings (from IP to MAC address) that were
obtained before
â˘An entry will only be kept in the cache for a
limited amount of time (say, 2 minutes)
IP Address MAC Address
158.132.148.80 00-60-8C-27-35-9A
158.132.148.28 02-60-8C-1A-37-49
15. 15
â˘Total Length â Total length of a packet (up to
65535 bytes)
â˘Time to Live â How many times this packet can
be routed on the network (up to 255)
â˘Protocol â The transport layer protocol that the
packet belongs to
⢠TCP: 6
⢠UDP: 17
⢠ICMP: 1
â˘Source address â the network address of the
computer that sends the data
â˘Destination address â the network address of
the computer that the data is sending to
16. 16
â˘(Already mentioned)
â˘Each computer (host) must have a unique network
address (or IP address for TCP/IP suite)
â˘Each IP address is 32-bit long (four bytes)
â˘The four-byte address is written out as a.b.c.d
â˘e.g. Byte 1 Byte 2 Byte 3 Byte 4
158 132 161 99
â˘IP addresses are hierarchical
â˘network I.D. and host I.D.
â˘Each Network I.D. on the Internet needs to be
registered to the Internet Assigned Number
Authority
17. 17
Net I.D.
Class A â for very large network
Host I.D.
0
1 bit 7 bits 24 bits
â˘Only 27 (63) networks can belong to this class
â˘Each network, there are 224 hosts or computers
â˘Very few class A networks in the world
â˘e.g. Arpanet â the earliest packet switched
WAN (started 40 years ago)
18. 18
Net I.D.
Class B â for medium size network
Host I.D.
0
2 bits 14 bits 16 bits
â˘214 (16384) networks can belong to this class
â˘Each network, there are 216 (65536) hosts or
computers
â˘Polyu s address elo gs to this group
â˘e.g. 158.132.14.1
1
1001 1110 1000 0100 0000 1110 0000 0001
Network I.D. Host I.D.
19. 19
Class C â for small network
Net I.D. Host I.D.
0
3 bits 21 bits 8 bits
â˘221 networks can belong to this class
â˘Each network, there are only 28 (256) hosts or
computers
1
1
20. 20
Class D â for multicast network
Group no.
0
4 bits 28 bits
â˘Packets are addressed to a multicast group
â˘Not often supported on Internet
1
1
1
ENG224
INFORMATION TECHNOLOGY â Part I
9. TCP/IP
21. 21
Special Addresses
â˘Host I.D. = all s ď Directed broadcast
Broad ast to all hosts i the etwork or
su etwork , ot assig ed
â˘Host I.D. = all s ď This etwork , ot assig ed
â˘Network I.D. = 127 is reserved for loopback and
diagnostic purposes, not assigned
â˘Network I.D. + Host I.D. = all s ď Limited
broadcast
Broad ast to all hosts i the urre t etwork ,
not assigned
ENG224
INFORMATION TECHNOLOGY â Part I
9. TCP/IP
22. 22
Subnets
â˘A class B address can have 65536 hosts
â˘Difficult to manage
â˘Usually subdivide into a few small subnets
â˘Subnetting can also help to reduce broadcasting
traffic
All traffic to
158.132.0.0
158.132.0.0
Total 65536 hosts
Router
Router
All traffic to
158.132.0.0
158.132.1.0
158.132.2.0
158.132.3.0
Each subnet 256 hosts
ENG224
INFORMATION TECHNOLOGY â Part I
9. TCP/IP
23. 23
Subnet Mask
â˘How does the router know which subnet a packet
should go?
â˘For each interface of the router, a subnet mask is
provided to redefine which part of the address is
Net ID and which part is Host ID
â˘Become classless addressing
A subnet mask: 255.255.255.0
1111 1111.1111 1111. 1111 1111. 0000 0000
s Net ID s Host ID
25. 25
F. Routing
â˘How a packet finds its way to a computer in a
network?
â˘By using Routers
â˘Routing is the selection of a path to guide a
packet from the source to the destination
â˘Criteria in selecting a path may be:
â˘Shortest path
â˘Quickest path
â˘Cheapest path
ENG224
INFORMATION TECHNOLOGY â Part I
9. TCP/IP
27. 27
â˘Each router has a table that records the
estimated distance to all other routers
â˘If a router knows the entire network topology,
the shortest path can be calculated
â˘To achieve this, routers broadcast Link State
Advertisement to all other routers periodically
â˘By means of routing protocol
â˘Each router knows the exact topology, and then
calculates the shortest path
â˘In practice, it is not possible for a router to all
paths. Only the nearer ones are kept
â˘Hence can give wrong estimation
ENG224
INFORMATION TECHNOLOGY â Part I
9. TCP/IP
28. 28
Host A
158.132.148.66
Default gateway: Router C
Host B
160.64.123.98
Router C
S0
T1
T1
S1
T0
S1
S1
T0
S0
T0
T0
Router A
Subnet
160.64.123.0
Router B
Routing Table
Subnet
158.132.166.0
S1 158.132.166.0
255.255.255.0
Direct
T1 160. 64. 0. 0
255.255. 0. 0
Forward
Subnet
160.64.124.0
Routing Table
S0
S0
S1
160. 64.124.0
255.255.255.0
160. 64.123.0
255.255.255.0
Direct
Direct
ENG224
INFORMATION TECHNOLOGY â Part I
9. TCP/IP
30. Obtaining an Internet Address
⢠Static addressing
â Each individual device must be configured with an IP
address.
⢠Dynamic addressing
â Reverse Address Resolution Protocol (RARP)
â Bootstrap Protocol (BOOTP)
â Dynamic Host Configuration Protocol (DHCP)
â DHCP initialization sequence
â Function of the Address Resolution Protocol
â ARP operation within a subnet
31. Static Assignment of IP Addresses
⢠Each individual device
must be configured
with an IP address.
32. Reverse Address Resolution Protocol
(RARP)
MAC HEADER IP HEADER
RARP REQUEST
MESSAGE
Destination
FF-FF-FF-FF-FF-FF
Source
FE:ED:FD:23:44:EF
Destination
255.255.255.255
Source
????????
What is my IP
address?
33. BOOTP IP
⢠The Bootstrap Protocol (BOOTP) operates in a
client/server environment and only requires a single
packet exchange to obtain IP information.
⢠BOOTP packets can include the IP address, as well as
the address of a router, the address of a server, and
vendor-specific information.
34. Dynamic Host Configuration Protocol
⢠Allows a host to obtain an IP address using a defined
range of IP addresses on a DHCP server.
⢠As hosts come online, contact the DHCP server, and
request an address.
35. Problems in Address Resolution
⢠In TCP/IP communications, a datagram on a local-area
network must contain both a destination MAC address and
a destination IP address.
⢠There needs to be a way to automatically map IP to MAC
addresses.
⢠The TCP/IP suite has a protocol, called Address Resolution
Protocol (ARP), which can automatically obtain MAC
addresses for local transmission.
⢠TCP/IP has a variation on ARP called Proxy ARP that will
provide the MAC address of an intermediate device for
transmission outside the LAN to another network segment.
36. Address Resolution Protocol (ARP)
⢠Each device on a network maintains its
own ARP table.
⢠A device that requires an IP and MAC
address pair broadcasts an ARP request.
⢠If one of the local devices matches the
IP address of the request, it sends back
an ARP reply that contains its IP-MAC
pair.
⢠If the request is for a different IP
network, a router performs a proxy ARP.
⢠The router sends an ARP response with
the MAC address of the interface on
which the request was received, to the
requesting host.
51. 51
D. TCP and UDP
â˘TCP is a connection-oriented protocol
⢠Does not mean it has a physical connection between sender and receiver
⢠TCP provides the function to allow a connection virtually exists â also called
virtual circuit
â˘TCP provides the functions:
⢠Dividing a chunk of data into segments
⢠Reassembly segments into the original chunk
⢠Provide further the functions such as reordering and data resend
â˘Offering a reliable byte-stream delivery service
TCP â Transmission Control Protocol
54. 54
â˘A Typical Procedure
â˘Sender
⢠TCP divides a message into segments
⢠Add sequence no.
⢠Send the segments in sequence and wait for acknowledgement
⢠If an acknowledgement for a segment is not received for a certain
period of time, resend it until an acknowledgement is received
â˘Recipient
⢠When receiving segments, send the acknowledgement with correct
number
⢠Reassembly the segments back to the message
55. 55
â˘A computer may perform a number of network
applications at the same time
⢠FTP + SMTP + HTTP, etc.
â˘Each computer has only one network address, how
can it serve so many applications at the same time?
Port Multiplexing
ď by port multiplexing
Network add:
158.132.161.99
Port 21 Port 25
Port 80
FTP SMTP
HTTP
56. 56
Well-known Port Numbers
â˘Some port numbers are reserved for some purposes
⢠Port 21: FTP â file transfer
⢠Port 25: SMTP â mail transfer
⢠Port 23: TELNET â remote login
⢠Port 80: HTTP â Web access
â˘These port numbers are well known to all
computers in the network
â˘E.g. whenever a client access port 25 of the server, it
means the client needs SMTP service
57. 57
Client SMTP Server
Located by: network
address + TCP port no.
Source Port
= 1357
Destination
Port = 25
Sequence Number
Acknowledgement
Number
Checksum
Message Data
SMTP port
= 1357
SMTP port
= 25
58. 58
Client A SMTP + FTP Server
Client B
SMTP port
= 1357
FTP port
= 1361
Network address:
158.132.161.99
SMTP port
= 25
FTP port
= 21
59. TCP
⢠Usual transport layer is Transmission Control Protocol
â Reliable connection
⢠Connection
â Temporary logical association between entities in different systems
⢠TCP PDU
â Called TCP segment
â Includes source and destination port (c.f. SAP)
⢠Identify respective users (applications)
⢠Connection refers to pair of ports
⢠TCP tracks segments between entities on each connection
60. UDP
⢠Alternative to TCP is User Datagram Protocol
⢠Not guaranteed delivery
⢠No preservation of sequence
⢠No protection against duplication
⢠Minimum overhead
⢠Adds port addressing to IP
63. 63
â˘Application layer protocols define the rules when
implementing specific network applications
â˘Rely on the underlying layers to provide accurate
and efficient data delivery
â˘Typical protocols:
⢠FTP â File Transfer Protocol
⢠For file transfer
⢠Telnet â Remote terminal protocol
⢠For remote login on any other computer on the network
⢠SMTP â Simple Mail Transfer Protocol
⢠For mail transfer
⢠HTTP â Hypertext Transfer Protocol
⢠For Web browsing
65. 65
â˘TCP/IP is uilt o connectionless te h ology, ea h
datagram finds its own way to its destination
â˘Transport Layer protocols define the rules of
⢠Dividing a chunk of data into segments
⢠Reassemble segments into the original chunk
â˘Typical protocols:
⢠TCP â Transmission Control Protocol
⢠Provide further the functions such as reordering and data resend
⢠UDP â User Datagram Service
⢠Use when the message to be sent fit exactly into a datagram
⢠Use also when a more simplified data format is required
66. 66
â˘Network layer protocols define the rules of how to
find the routes for a packet to the destination
â˘It only gives best effort delivery. Packets can be
delayed, corrupted, lost, duplicated, out-of-order
â˘Typical protocols:
⢠IP â Internet Protocol
⢠Provide packet delivery
⢠ARP â Address Resolution Protocol
⢠Define the procedures of network address / MAC address translation
⢠ICMP â Internet Control Message Protocol
⢠Define the procedures of error message transfer
68. 68
SMTP
TCP
IP, ARP, ICMP
Network Interface
SMTP
TCP
IP, ARP, ICMP
Network Interface
SMTP Server
Client
Actual
Virtual
B. Example: SMTP
69. 69
â˘The underlying layers have guaranteed accurate
data delivery
â˘We need to make a lot agreements with the server
in application layer before sending mail
1. Agree on how data is represented
⢠Binary or ASCII
2. Ensure the right recipient
⢠There may be 1000 users served by the server
3. Ensure the client has the right to send mail
⢠Some clients are not welcome
4. How to tell the server it is the end of the message
⢠All mail looks the same
:
70. 70
â˘Example: SMTP
The following mail is to be sent:
Date: Fri, 18 Jan 02 13:26:31 EDT
From: enpklun@polyu.edu.hk
To: tchsun@eee.hku.hk
Subject: meeting
Letâs get together Monday at 1pm.
71. 71
SMTP Server
Client
access port 25 of server
HELO polyu.edu.hk
MAIL From: <enpklun@polyu.edu.hk>
220 eee.hku.hk SMTP Service at 20 Jan
02 05:17:18 EDT
250 eee.hku.hk â Hello,
polyu.edu.hk
250 MAIL accepted
72. 72
Client SMTP Server
Date: Fri, 18 Jan 02 13:26:31 EDT
From: enpklun@polyu.edu.hk
To: tchsun@eee.hku.hk
Subject: meeting
Letâs get together Monday at 1pm.
.
RCPT To:<tchsun@eee.hku.hk>
DATA
250 Recipient accepted
354 Start mail input; end with
.
73. 73
â˘The agreement made in the SMTP protocol
⢠All messages use normal text
⢠All ASCII characters
⢠The responses all begin with numbers
⢠To indicate the status when receiving the command
⢠Some words are reserved words
⢠HELO, MAIL, âCPTâŚ
⢠Mail ends with a line that contains only a period
â˘The information passed with the SMTP messages
â˘The recipient name
â˘The sender name
â˘The mail
74. 74
C. Domain Name (mentioned before)
â˘Every computer has a network address
â˘e.g. 158.132.161.99
â˘To access a computer, we need to specify its
network address
â˘Human beings are weak in memorizing numbers
â˘We prefer computer name or domain name
â˘e.g. hkpu10.polyu.edu.hk
â˘Need a machine on the Internet to convert name to
number
75. 75
Domain name hierarchy
Example:
hkpu10.polyu.edu.hk
Root domain name
other examples:
com â commercial company
org â general organization
net â major network centre
gov â government org.
mil â militrary group
edu â education org.
â˘The domain
within hk
â˘Note: edu.hk is
not the same as
edu
â˘The domain within
edu.hk
â˘One of the
educational
institutions in H.K.
Computer name
76. 76
â˘An organization needs to register its domain name
â˘e.g. PolyU has registered its name to the domain
of edu.hk
â˘Once a domain name is assigned, the organization is
free to assign other names belong to its domain
â˘e.g. we can have
hkpu10.polyu.edu.hk
smtp.polyu.edu.hk
mail.polyu.edu.hk
77. 77
Client
Domain Name Server (DNS) of
polyu.edu.hk
Address of www.yahoo.com
Where is
www.yahoo.com?
usually UDP
DNS of com
DNS of Yahoo.com
Where is
www.yahoo.com?
Address of www.Yahoo.com
Where is yahoo.com?
Address of the DNS
of Yahoo.com
Become
client
78. 78
â˘Nevertheless, such a complicated procedure needs
not perform in most cases
â˘Client computers usually remember the answers
that it got before
â˘It reduces the loading to the root DNS
â˘To further reduce loading, there can be many root
DNS on the Internet
â˘e.g. there are a few o root DNâ