Home > Computers & Networking > Introduction to TCP/IP > Bootstrap and Auto-configuration


An Introduction to TCP/IP ...page 5

10. Bootstrap and Auto-configuration

The BOOTstrap Protocol, BOOTP, provides an alternative to RARP for a computer that needs to determine its IP address. BOOTP is more general than RARP because it uses UDP, making it possible to extend bootstrapping across a router. BOOTP also allows a machine to determine a router address, a (file) server address, and the name of a program the computer should run. Finally, BOOTP allows administrators to establish a configuration database that maps a generic name, like ďUnix,Ē into the fully qualifies file name that contains a memory image appropriate for the client hardware.

BOOTP is designed to be small and simple enough to reside in a bootstrap ROM. The client uses the limited broadcast address to communicate with the server, and takes responsibility for transmitting requests if the server does not respond. Retransmission uses an exponential backoff policy similar to Ethernet to avoid congestion.

11. DNS(Domain Name System)

The Internet Domain Name System (DNS) offers a hierarchical naming scheme. DNS uses distributed lookup in which domain name servers map each domain name to an IP address or main exchanger address. Clients begin by trying to resolve names locally. When the local server cannot resolve the name, the client must choose to work through the tree of name servers iteratively or request the local name server to do it recursively.

TCP/IP Internet Domain Names:

The mechanism that implements a machine name hierarchy for TCP/IP Internets is called the Domain Name System. DNS has two conceptually independent aspects. The first is abstract: it specifies the name syntax and rules for delegating authority over names. The second is concrete: it specifies the implementation of a distributed computing system that efficiently maps names to addresses.

The domain name system uses a hierarchical naming scheme known as domain names. As in our earlier examples, a domain name consists of a sequence of subnames separated by a delimiter character, the period. The domain name


contains three labels: cs, columbia and edu. Any suffices of label in a domain name is also called a domain. In the above example the lowest level domain is cs.columbia.edu, the second level domain is columbia.edu, and the top-level domain is edu.

Domain Names:

The Internet authority has chosen to partition its top level into the domain listed in the following table.

Domain Name Meaning
COM Commercial organizations
EDU Educational institutions
GOV Government institutions
MIL Military groups
NET Major network support centers
ORG Organizations other than those above
ARPA Temporary ARPANET domain (obsolete)
INT International organizations
Country code Each Country (geographic scheme)

The top-level Internet domains and their meanings are shown in the above table. The DNS is case insensitive, so EDU is equivalent to edu.

Note that if you are implementing an internetwork that is not part of the bigger Internet (WorldWideWeb) then you are free to choose the domain naming scheme, as well as IP address scheme. However, if you want your network to be part of the Internet, you need to comply with the domain naming and IP addressing schemes, as determined by IANA.


1.Remote Login
  • Rlogin
2.File Transfer and Access
  • FTP
  • TFTP
  • NFS
3.Electronic Mail
  • SMTP
  • MIME
4.Internet Management
  • SNMP

1.Remote Login:

TELNET Protocol:

The TCP/IP protocol suite includes a simple remote terminal protocol called TELNET. TELNET allows a user at one site to establish a TCP connection to a login server at another. TELNET then passes keystrokes from the userís keyboard directly to the remote computer as if they had been typed on a keyboard attached to the remote machine. TELNET also carries output from the remote machine back to the userís screen. The service is called transparent because it gives the appearance that he userís keyboard and display attach directly to the remote machine.

The above figure shows, when a user invokes TELNET, an application program on the userís machine becomes the client. The client establishes a TCP connection to the server over which they will communicate. Once the connection has been established, the client accepts keystrokes from the userís keyboard and sends them to the server, while it concurrently accepts characters that the server sends back and displays them on the userís screen. Then server must accept a TCP connection from the client, and then relay data between the TCP connection and the local operating system.


Operating system derived from BSD UNIX includes a remote login service, rlogin, that supports trusted hosts. It allows system administrators to choose a set of machines over which login names and file access protections are shared and to establish equivalences among user logins. Users can control access to their accounts by authorizing remote login based on remote host and remote user name. Thus, it is possible for a user to have login name X on one machine and Y on another, and still be able to remotely login from one of the machines to the other without typing a password each time.

2.File Transfer And Access:

FTP (File Transfer Protocol):

File transfer is among the most frequently used TCP/IP applications, and it accounts for much network traffic. Standard file transfer protocols existed for the ARPANET before TCP/IP became operational. These early versions of file transfer software evolved into a current standard known as the File Transfer Protocol (FTP).

FTP features:

  1. Interactive Access
  2. Format Specification
  3. Authentication Control

FTP Process Model:

Like other servers, most FTP server implementations allow concurrent access by multiple clients. Clients use TCP to connect to a server.

The above figure shows, the client control process connects to the server process using one TCP connection, while the associated data transfer processes use their own TCP connection. In general, the control processes and the control connection remain alive as long ad the user keeps the FTP session going. However, FTP establishes a new data transfer connection for ach file transfer. In fact, many implementations create a new pair of data transfer processes, as well as a new TCP connection, whenever the server needs to send information to the client.

TFTP (Trivial File Transfer Protocol):

The TCP/IP suite contains a second file transfer protocol that provides inexpensive, unsophisticated service. Known as the Trivial File Transfer Protocol, it is intended for applications that do not need complex interactions between the client and sever. TFTP restricts operations to simple file transfers and does not provide authentication. Because it is more restrictive, TFTP software is much smaller that FTP.

Unlike FTP, TFTP does not need a reliable stream transport service. It runs on top of UDP or any other unreliable packet delivery system, using timeout and retransmission to ensure that data arrives. The sending side transmits a file in fixed size blocks and awaits an acknowledgement for each block before sending the next. The receiver acknowledges each block upon receipt.

NFS (Network File System):

NFS provides on-line shared file access that is transparent and integrated; many TCP/IP sites use NFS to interconnect their computers file system. Form the userís perspective NFS is almost invisible. A user can execute an arbitrary application program and use arbitrary files for input or output. The file names themselves do not show whether he files are local or remote.

3.Electronic Mail

Electronic mail is among the most widely available application services. Like most TCP/IP services, it uses the client-server paradigm. The mail system buffers outgoing and incoming messages, allowing the transfer from client and server to occur in background.

SMTP: Simple Mail Transfer Protocol is the TCP/IP standard protocol for transferring electronic mail messages from one machine to another. SMTP specifies how two mail systems interact and the format of control messages they exchange to transfer mail.

MIME: Multipurpose Internet Mail Extensions is a standard used to encode data such as images as printable. MIME provides a mechanism that allows arbitrary data to be transferred using SMTP. MIME adds lines to the header of an e-mail message to define the type of the data and encoding used. MIMEís mixed multipart type permits a single message to contain multiple data types.

4. Internet Management

In addition to protocols that provide network level services and application programs that use those services, an internet needs software that allow managers to debug problems, control routing and find computers that violate protocol standards. Such activities are referred as Internet Management.

SNMP: Simple Network Monitoring Protocol is a standard protocol used to monitor hosts, routers and the networks to which they attach. A router being managed must keep control and status information that the manager can access. For example, router keeps statistics on the status of its network interfaces, incoming and outgoing traffic, dropped datagrams, and error messages generated. Although it allows a manager to access these statistics, SNMP does not specify exactly which data can be accessed. Instead, a separate standard specifies the details. Known as Management Information Base (MIB), the standard specifies the data items a host or router must keep and the operations allowed on each.

13. The Future of TCP/IP

Neither the global Internet nor the TCP/IP protocols are static. Through its Internet Engineering Task Force, the Internet Architecture Board provides active, ongoing efforts that keep the technology evolving. Most notable is the introduction of IP v6 protocol. IP v4 supports only a limited number of IP addresses, and the IP address space is fast depleting. To accommodate for future expansion, IP v6 has been introduced.

Motivation for changing IPv4:

Version 4 of the Internet Protocol (Ipv4) provides the basic communication mechanism of the TCP/IP suite and the global Internet. Although the need for a large address space is forcing an immediate change in IP, other factors are contributing to the design as well. In particular, IP v6 can support new services, and applications.

Features of Ipv6:

  1. Larger Addresses
  2. Flexible Header Format
  3. Improved Options
  4. Support for Resource Allocation
  5. Provision for protocol extension
  6. In the above Figure,

    VERS: Specifies the version of the protocol

    FLOW LABEL: The base header contains information that routers use to associate a datagram with a     specific flow and priority.

    PAYLOAD LENGTH: Specifies the number of octets carried in the datagram.

    NEXT HEADER: Specifies the type of the following header.

    HOP LIMIT: This field interprets a time-to-live as a combination of hop count and maximum time.

    SOURCE ADDRESS: It requires 16 octets to specify the sender address.

    DESTINATION ADDRESS: It requires 16 octets to specify the recipient address.

    IPv6 Address Types:

     The destination address on a datagram falls into one of the three categories:

    Unicast: The destination address specifies a single computer

    Cluster: The destination is a set of computers that all share a single address prefix

    Multicast The destination is a set of computers, possibly at multiple locations.

    IPv4 Vs IPv6:

    IPv6 retains many of the basic concepts from IPv4, but changes most details. Like IPv4, IPv6 provides a connectionless, best-effort datagram delivery service. However, the IPv6 datagram format is completely different than the IPv4 format, and IPv6 provides new features such as authentication, a mechanism for flow-controlled streams of datagrams, and support for security.

    Author:suba at anandsoft dot com.

     Home                                                Copyright © 2003-2018 TutorialsWeb.com                                   Disclaimer                                           Sitemap