2.5 Application Layer Protocols: FTP, Telnet, HTTP


2.5.1 Telnet/FTP

Telnet and FTP are two very commonly used application-layer protocols on the Internet. They have been around for over 20 years now.

Telnet is an application-layer protocol and allows a user to connect to an account on another remote mechine. A client program on one machine can connect with a server program running on another machine using this protocol. Users utilizing Telnet interact with the remote machine in the same way as they would with a local machine. Telnet was one of the earliest protocols and in the early days was used primarily to allow users in one location to access accounts or machines in another location.

The Telnet client has two primary functions:

  • Interacting with the user terminal on the local host

  • Communicating with the remote telnet server

The default port (reserved by IANA) that the telnet client connects to on the server side is port 23. The client/server TCP connection is maintained throughout the telnet session. Since telnet can work across different platforms, telnet assumes that the hosts run a general network virtual terminal, which is a simple character device with a keyboard and printer. Data typed by a user on the keyboard are transmitted to the remote server, and the received data from the server are output to the printer.

In order to differentiate between a telnet control message and user data, each control message is preceded with a special octet, eight bits of 1s. Initial control messages during a telnet setup indicate the capabilities of the two endpoints to each other. After this is completed, the server requests an ID and password for logging in. The user types in his or her ID and password, and this is transferred to the server over the TCP connection. Once authenticated at the server, the connection is opened and data start to flow in both directions.

The File Transfer Protocol (FTP), as the name indicates, is used to download or copy files between remote machines connected via an IP network. FTP is also a client/server protocol. One of the interesting aspects of FTP is that it uses separate TCP connections to send control messages and to send data. The default port assigned by IANA for FTP on an FTP server is 21. FTP also uses TCP as the underlying transport protocol. A file is transmitted as a stream of bytes, and the closing of the TCP connection setup indicates the completion of the transmission. The control connection persists across multiple file transfers. But every file transfer requires a separate data connection. FTP is in the process of being enhanced in the IETF by a working group known as FTPext.

2.5.2 HTTP

The Hypertext Transfer Protocol (HTTP) is the request-response protocol underlying the World Wide Web and was proposed by Tim Berners-Lee in March 1990 at the CERN laboratories, as a mechanism to access documents anywhere on the Internet and to help navigate between them via hypertext links. HTTP is an application layer protocol similar to FTP, SMTP, or NNTP. HTTP can use any underlying transport protocol to transmit the messages from the sender to the receiver. However, most known implementations of HTTP today use TCP as the transport protocol. It is important to understand the difference between HTTP and the World Wide Web. The Web itself consists of three parts : HTTP, HTML, and the universal resource identifier (URI) naming scheme. Browsers with graphical interfaces for example are a component of the Web in addition to proxies and servers.

The key propoerties of HTTP are as follows :

  • It is primarily a request-response protocol ”HTTP requests are sent by clients and result in responses from servers. The direction of the flow is from clients to servers.

  • It depends on the global URI infrastructure.

  • It relies on the URI naming mechanism. All transactions use URIs to identify the resources on the Web.

  • It does not require maintenance of state across requests. No state is maintained by clients or servers across requests and responses. Each pair of request and response is treated as an independent message exchange.

  • The notion of metadata is important: Information about the resources is often included in Web transfers and can be used in multiple ways.

HTTP relies on the concept of an URI. This naming mechanism allows resources to reside anywhere on the Internet. A resource can have the same URI associated with it forever, although the contents of the resource or its representation can change over its lifetime. A URI denotes a resource independent of its current location or the name by which it is known. A URI is a combination of a uniform resource locator (URL) and a uniform resource name (URN). The most poular from of a URI is a URL, which is represented, for example, as http://www.nokia.com. A Web request for a resource requires more than one protrocol, such as DNS to look up the host name where the resource resides and TCP to fetch it over a transmission link.

While HTTP was designed as a stateless protocol, there was a need to maintain state for certain applications, such as banking and financial transactions. A transaction-based mechanism using cookies was introduced to enhance HTTP, and with the addition of SSL (Secure Socket Layer) for security, the use of HTTP for banking and other financial transactions (e-commerce) has become successful.



IP in Wireless Networks
IP in Wireless Networks
ISBN: 0130666483
EAN: 2147483647
Year: 2003
Pages: 164

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net