Please Whitelist This Site?
I know everyone hates ads. But please understand that I am providing premium content for free that takes hundreds of hours of time to research and write. I don't want to go to a pay-only model like some sites, but when more and more people block ads, I end up working for free. And I have a family to support, just like you. :)
If you like The TCP/IP Guide, please consider the download version. It's priced very economically and you can read all of it in a convenient format without ads.
If you want to use this site for free, I'd be grateful if you could add the site to the whitelist for Adblock. To do so, just open the Adblock menu and select "Disable on tcpipguide.com". Or go to the Tools menu and select "Adblock Plus Preferences...". Then click "Add Filter..." at the bottom, and add this string: "@@||tcpipguide.com^$document". Then just click OK.
Thanks for your understanding!
Sincerely, Charles Kozierok
Author and Publisher, The TCP/IP Guide
NOTE: Using software to mass-download the site degrades the server and is prohibited.
If you want to read The TCP/IP Guide offline, please consider licensing it. Thank you.
BOOTP Client/Server Messaging and Addressing
(Page 2 of 3)
Use of Broadcasts and Ports
The fact that BOOTP servers may need
to broadcast back to the client necessitates a bit of a change from
the way most TCP/IP protocols use client ports. Recall that normally,
the client in a client/server transaction using UDP or TCP generates
or ephemeral port number that it uses
as the source port in its request. The server sends the reply back to
the client's IP address using that ephemeral port number. Ephemeral
port numbers must be unique for a particular IP address, but may not
necessarily be unique across all the devices on a network. For example,
device A may be using ephemeral port number 1,248 for an HTTP
request to a Web server, while device B may be using port number
1,248 on its TCP/IP stack to send a DNS request.
Since the server in BOOTP is broadcasting,
it is not targeting a particular device with a unicast transmission.
This means it cannot safely send to an ephemeral port number: some other
device on the network may have selected the same ephemeral port number
for some other transaction and may mistake the BOOTP server's response
as being intended for itself. To avoid this problem, another well-known
port number is used just for BOOTP clients: UDP port 68. Clients listen
on this port for broadcast or unicast transmissions, while of course
devices that have not sent a BOOTP request will ignore it. This dual
broadcast BOOTP communication process is illustrated in Figure 254.
Figure 254: General Operation Of the Boot Protocol
BOOTP is a relatively simple client/server protocol that relies on broadcasts to permit communication with devices that do not have an assigned IP address. In this example Device A is trying to determine its IP address and other parameters. It broadcasts a BOOTP request on the local network using UDP port 67 and then listens for a reply on port 68. Device D is configured as a BOOTP server and listens on this port. When it receives the request it sends a broadcast on port 68 telling A what its IP address is.
Key Concept: A BOOTP client use broadcasts to send its requests to any listening BOOTP server. In most cases, the BOOTP client device does not know its own IP address when it uses the protocol. For this reason, a BOOTP server will also typically use broadcast in sending its reply, to be sure it reaches the client.
|If you find The TCP/IP Guide useful, please consider making a small Paypal donation to help the site, using one of the buttons below. You can also donate a custom amount using the far right button (not less than $1 please, or PayPal gets most/all of your money!) In lieu of a larger donation, you may wish to consider purchasing a download license of The TCP/IP Guide. Thanks for your support!|
Table Of Contents - Contact Us
The TCP/IP Guide (http://www.TCPIPGuide.com)
Version 3.0 - Version Date: September 20, 2005
© Copyright 2001-2005 Charles M. Kozierok. All Rights Reserved.
Not responsible for any loss resulting from the use of this site.