RARP and Transport Layer in Computer Networking

Dr. Naveed Ahmad
Assistant Professor
Department of Computer Science
University of Peshawar
RARP finds the logical address for a machine that
RARP finds the logical address for a machine that
only knows its physical address.
only knows its physical address.
The RARP request packets are broadcast;
the RARP reply packets are unicast.
Note:
Note:
TCP/IP Protocol Suite
7
 
 Transport layer is located between the network
layer and the application layer.
 The transport layer is responsible for providing
services to the application layer; it receives services
from the network layer.
Provide
 logical communication
between application processes
running on different hosts
Run on end hosts
Sender: breaks application
messages into 
segments
,
and passes to network layer
Receiver: reassembles
segments into messages,
passes to application layer
Multiple transport protocol
available to applications
Internet: TCP and UDP
Purpose:
      Track individual communication between
applications on source/destination hosts
Segment data and manage each piece of data –
prepares it to be sent across the network
(network layer).
Re-assemble segments back into streams of
application data at the receiving host.
Identify the different applications using port
numbers.  Each software process that needs to
access the network is assigned a port # that is
unique in that host.  Indicates which application
that piece of data is associated with.
TCP/IP Protocol Suite
11
 
 
Web browsers
E-mail
File transfers
DNS
VoIP
Video streaming
UDP – Connectionless
 
Advantage – low overhead data delivery
 
pieces – datagrams
 
‘Best Effort’ delivery
 
Used by application that don’t require reliable
delivery
 
Minimal delays
TCP – connection-oriented
 
More overhead
 
Same order delivery
 
Reliability
 
flow-control
Source ports –
Dynamically and randomly assigned by the originating device
from port #’s > 1023
Must not conflict with other ports in use at the time
Acts as a ‘return address’ of sorts for the requesting application
Destination port
Port # assigned to the service daemon running on the remote
host
Must know which layer 4 protocol (TCP/UDP) and which
application (port #)
Many common applications have default port # assignments
Socket - combination of IP address and port #
192.168.100.48:80 would be HTTP on that IP address
 
9
  
Discard
   
Discard all incoming data port
7
  
Echo
   
Echo
19
  
Chargen
  
Exchange streams of data port
20
  
FTP-Data
  
File transfer data port
21
  
FTP-CMD
  
File transfer command port
23
  
Telnet
   
Telnet remote login port
25
  
SMTP
   
Simple Mail Transfer Protocol port
53
  
DOMAIN
  
Domain Name Service
79
  
Finger
   
Obtains information about active users
80
  
HTTP
   
Hypertext Transfer Protocol port
88
  
Kerberos
  
Authentication Protocol
110
  
POP3
   
PC Mail retrieval service port
119
  
NNTP
   
Network news access port
161
  
SMTP
   
Network Management
179
  
BGP
   
Border Gateway Protocol
513
  
Rlogin
   
Remote Login In
Port
  
Application
     
Description
IANA – Internet Assigned Numbers Authority
– assign port #’s
Port #’s
0-1023 – Well know ports reserved for
services & applications
1024-49151 – registered ports assigned to user
processes or applications.  May be used as a
dynamically selected source port
49152-65535 – Dynamic or private ports (Ephemeral
ports).
TCP
20&21 – FTP
23 – Telnet
25 – SMTP
80 – HTTP
110 – POP3
443 - HTTPS
UDP
69 – TFTP
520 – RIP
TCP/UDP
53 – DNS
161 – SNMP
Utility that can be used to verify connections.
Lists the protocol, the local address and port
#, foreign address & port #, and the state of
the connection
Drop out to command line and try it
>netstat
>netstat –n (notice the port # after the : in the
foreign ip address) (you will have to identify
port # here on your test!)
Dividing data into manageable pieces
ensures data is transmitted within the limits
of the media and can be multiplexed onto the
media.
TCP & UDP do this differently
TCP – sequence #’s are used for reassembly at
the destination in the correct order.  Data is
ensured to be in the exact form the sender
intended.
UDP – not concerned with order or maintaining
a connection.  Generates less overhead which
means faster data transfer.  Applications that use
UDP must tolerate the fact that data may not
arrive in the order that it was sent.  Does NOT
require reliable delivery of packets
.
The key distinction between UDP and TCP is the reliability you get with
TCP…discuss the fields.
Source/destination port #’s are on TCP and UDP Headers
An individual server can’t have 2
services assigned to the same port #
within the same transport layer services.
Steps to establish a connection
1)
The sender sends an initial SEQ value (set
by TCP) to begin communication!
2)
The receiver responds with an ACK value
= to the SEQ value + 1.  The ACK should
always be the NEXT expected Byte.
3)
Sender responds with an ACK value = to
SEQ value it received + 1.
Three-way handshake to establish connection
Host A sends a 
SYN
 (open) to the host B
Host B returns a SYN acknowledgment (
SYN ACK
)
Host A sends an
 
ACK
 to acknowledge the SYN ACK
SYN
SYN ACK
ACK
Data
A
B
Data
Each host tells
its ISN to the
other host.
A’s port
B’s port
A’s Initial Sequence Number
Acknowledgment
Advertised window
20
Flags
0
Checksum
Urgent pointer
Options (variable)
Flags:
SYN
FIN
RST
PSH
URG
ACK
A tells B it wants to open a connection…
B’s port
A’s port
B’s Initial Sequence Number
A’s ISN plus 1
Advertised window
20
Flags
0
Checksum
Urgent pointer
Options (variable)
Flags:
SYN
FIN
RST
PSH
URG
ACK
B tells A it accepts, and is ready to hear the next byte…
… upon receiving this packet, A can start sending data
A’s port
B’s port
B’s ISN plus 1
Advertised window
20
Flags
0
Checksum
Urgent pointer
Options (variable)
Flags:
SYN
FIN
RST
PSH
URG
ACK
A tells B it wants is okay to start sending
Sequence number
… upon receiving this packet, B can start sending data
 
Suppose the SYN packet gets lost
Packet is lost inside the network, or
Server rejects the packet (e.g., listen queue is full)
Eventually, no SYN-ACK arrives
Sender sets a timer and wait for the SYN-ACK
… and retransmits the SYN-ACK if needed
How should the TCP sender set the timer?
Sender has no idea how far away the receiver is
Hard to guess a reasonable length of time to wait
Some TCPs use a default of 3 or 6 seconds
 
User clicks on a hypertext link
Browser creates a socket and does a “connect”
The “connect” triggers the OS to transmit a SYN
If the SYN is lost…
The 3-6 seconds of delay may be very long
The user may get impatient
… and click the hyperlink again, or click “reload”
User triggers an “abort” of the “connect”
Browser creates a new socket and does  a “connect”
Essentially, forces a faster send of a new SYN packet!
Sometimes very effective, and the page comes fast
 
Timeout
 
Packet
 
Timeout
 
Timeout
 
Timeout
 
Timeout
 
Timeout
 
ACK lost
DUPLICATE
PACKET
Packet lost
 
Early timeout
DUPLICATE
PACKETS
 
Sender sets a timeout to wait for an ACK
Too short: wasted retransmissions
Too long: excessive delays when packet lost
TCP sets timeout as a function of the RTT
Expect ACK to arrive after an RTT
… plus a fudge factor to account for queuing
If an acknowledgement isn’t sent that data was
received, the host will RESEND the data because
it has reached a timeout
.
Window size – the amount of data a source
can transmit before an ACK must be
received. It enables the management of lost
data and flow control.
Go over characteristics of UDP – used by
DNS, SNMP, DHCP, RIP, TFTP, Online
games, streaming video, etc.
UDP doesn’t care if datagrams are out of
order!
Describe how servers use port numbers to
identify a specified application layer process
and direct segments to the proper service or
application
Slide Note
Embed
Share

Exploring Reverse Address Resolution Protocol (RARP) for mapping physical addresses to logical addresses in networking, along with insights on the Transport Layer's role in providing communication services to application processes. Learn about RARP packet formats, encapsulation, and the significance of the Transport Layer in managing data segments for efficient communication between hosts.

  • RARP
  • Transport Layer
  • Networking
  • Communication Services
  • Data Segments

Uploaded on Sep 12, 2024 | 0 Views


Download Presentation

Please find below an Image/Link to download the presentation.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author.If you encounter any issues during the download, it is possible that the publisher has removed the file from their server.

You are allowed to download the files provided on this website for personal or commercial use, subject to the condition that they are used lawfully. All files are the property of their respective owners.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author.

E N D

Presentation Transcript


  1. Dr. Naveed Ahmad Assistant Professor Department of Computer Science University of Peshawar

  2. RARP finds the logical address for a machine that only knows its physical address.

  3. Note: The RARP request packets are broadcast; the RARP reply packets are unicast.

  4. RARP Request and Reply

  5. RARP Packet format

  6. RARP encapsulation

  7. Transport Layer Transport layer is located between the network layer and the application layer. The transport layer is responsible for providing services to the application layer; it receives services from the network layer. TCP/IP Protocol Suite 7

  8. Transport Layer services

  9. Provide logical communication between application processes running on different hosts Run on end hosts Sender: breaks application messages into segments, and passes to network layer Receiver: reassembles segments into messages, passes to application layer Multiple transport protocol available to applications Internet: TCP and UDP application transport network data link physical network data link physical network data link physical network data link physical network data link physical network data link physical application transport network data link physical

  10. Purpose: Track individual communication between applications on source/destination hosts Segment data and manage each piece of data prepares it to be sent across the network (network layer). Re-assemble segments back into streams of application data at the receiving host. Identify the different applications using port numbers. Each software process that needs to access the network is assigned a port # that is unique in that host. Indicates which application that piece of data is associated with.

  11. Network layer versus transport layer TCP/IP Protocol Suite 11

  12. Web browsers E-mail File transfers DNS VoIP Video streaming

  13. UDP Connectionless Advantage low overhead data delivery pieces datagrams Best Effort delivery Used by application that don t require reliable delivery Minimal delays TCP connection-oriented More overhead Same order delivery Reliability flow-control

  14. Source ports Dynamically and randomly assigned by the originating device from port # s > 1023 Must not conflict with other ports in use at the time Acts as a return address of sorts for the requesting application Destination port Port # assigned to the service daemon running on the remote host Must know which layer 4 protocol (TCP/UDP) and which application (port #) Many common applications have default port # assignments Socket - combination of IP address and port # 192.168.100.48:80 would be HTTP on that IP address

  15. Port Application Description 9 7 19 20 21 23 25 53 79 80 88 110 119 161 179 513 Discard Echo Chargen FTP-Data FTP-CMD Telnet SMTP DOMAIN Finger HTTP Kerberos POP3 NNTP SMTP BGP Rlogin Discard all incoming data port Echo Exchange streams of data port File transfer data port File transfer command port Telnet remote login port Simple Mail Transfer Protocol port Domain Name Service Obtains information about active users Hypertext Transfer Protocol port Authentication Protocol PC Mail retrieval service port Network news access port Network Management Border Gateway Protocol Remote Login In

  16. IANA Internet Assigned Numbers Authority assign port # s Port # s 0-1023 Well know ports reserved for services & applications 1024-49151 registered ports assigned to user processes or applications. May be used as a dynamically selected source port 49152-65535 Dynamic or private ports (Ephemeral ports).

  17. TCP/UDP TCP 20&21 FTP 23 Telnet 25 SMTP 80 HTTP 110 POP3 443 - HTTPS UDP 69 TFTP 520 RIP 53 DNS 161 SNMP

  18. Utility that can be used to verify connections. Lists the protocol, the local address and port #, foreign address & port #, and the state of the connection Drop out to command line and try it >netstat >netstat n (notice the port # after the : in the foreign ip address) (you will have to identify port # here on your test!)

  19. Dividing data into manageable pieces ensures data is transmitted within the limits of the media and can be multiplexed onto the media.

  20. Multiplexing and de-Multilplexing

  21. TCP & UDP do this differently TCP sequence # s are used for reassembly at the destination in the correct order. Data is ensured to be in the exact form the sender intended. UDP not concerned with order or maintaining a connection. Generates less overhead which means faster data transfer. Applications that use UDP must tolerate the fact that data may not arrive in the order that it was sent. Does NOT require reliable delivery of packets.

  22. The key distinction between UDP and TCP is the reliability you get with TCP discuss the fields. Source/destination port # s are on TCP and UDP Headers

  23. An individual server cant have 2 services assigned to the same port # within the same transport layer services.

  24. Steps to establish a connection 1) The sender sends an initial SEQ value (set by TCP) to begin communication! 2) The receiver responds with an ACK value = to the SEQ value + 1. The ACK should always be the NEXT expected Byte. 3) Sender responds with an ACK value = to SEQ value it received + 1.

  25. B A Each host tells its ISN to the other host. Three-way handshake to establish connection Host A sends a SYN (open) to the host B Host B returns a SYN acknowledgment (SYN ACK) Host A sends an ACK to acknowledge the SYN ACK

  26. As port B s port A s Initial Sequence Number Flags: SYN FIN RST PSH URG ACK Acknowledgment Advertised window 20 Flags 0 Checksum Urgent pointer Options (variable) A tells B it wants to open a connection

  27. Bs port A s port B s Initial Sequence Number Flags: SYN FIN RST PSH URG ACK A s ISN plus 1 Advertised window 20 Flags 0 Checksum Urgent pointer Options (variable) B tells A it accepts, and is ready to hear the next byte upon receiving this packet, A can start sending data

  28. As port B s port Sequence number Flags: SYN FIN RST PSH URG ACK B s ISN plus 1 Advertised window 20 Flags 0 Checksum Urgent pointer Options (variable) A tells B it wants is okay to start sending upon receiving this packet, B can start sending data

  29. Suppose the SYN packet gets lost Packet is lost inside the network, or Server rejects the packet (e.g., listen queue is full) Eventually, no SYN-ACK arrives Sender sets a timer and wait for the SYN-ACK and retransmits the SYN-ACK if needed How should the TCP sender set the timer? Sender has no idea how far away the receiver is Hard to guess a reasonable length of time to wait Some TCPs use a default of 3 or 6 seconds

  30. User clicks on a hypertext link Browser creates a socket and does a connect The connect triggers the OS to transmit a SYN If the SYN is lost The 3-6 seconds of delay may be very long The user may get impatient and click the hyperlink again, or click reload User triggers an abort of the connect Browser creates a new socket and does a connect Essentially, forces a faster send of a new SYN packet! Sometimes very effective, and the page comes fast

  31. Timeout Timeout Timeout Timeout Timeout Timeout ACK lost DUPLICATE PACKET Early timeout DUPLICATE PACKETS Packet lost

  32. Sender sets a timeout to wait for an ACK Too short: wasted retransmissions Too long: excessive delays when packet lost TCP sets timeout as a function of the RTT Expect ACK to arrive after an RTT plus a fudge factor to account for queuing

  33. If an acknowledgement isnt sent that data was received, the host will RESEND the data because it has reached a timeout.

  34. Window size the amount of data a source can transmit before an ACK must be received. It enables the management of lost data and flow control.

  35. Go over characteristics of UDP used by DNS, SNMP, DHCP, RIP, TFTP, Online games, streaming video, etc.

  36. UDP doesnt care if datagrams are out of order!

  37. Describe how servers use port numbers to identify a specified application layer process and direct segments to the proper service or application

More Related Content

giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#