What are protocols?
When two humans make conversation with each other, they may have to use the same language but they generally understand each other without having to adhere to rigid rules of grammar or formal language frameworks. Computers, on the other hand, have everything openly defined and structured. If computers wish to communicate with one another, they have to know in advance exactly how information is to be exchanged and precisely what the format will be. Therefore, standard methods of transmitting and processing various kinds of information are used and these methods are called “protocols”. Protocols are established by international agreement and ensure that computers everywhere can talk to one another. There are many protocols for different kinds of information and functions. This article will discuss some of the common protocols.
Telnet is a terminal protocol used to access the resources of a remote host. A host, called the Telnet server, runs a telnet server application (or daemon in Unix terms) that receives a connection from a remote host called the Telnet client. This connection is presented to the operating system of the telnet server as though it is a terminal connection connected directly (using keyboard and mouse). It is a text-based connection and usually provides access to the command line interface of the host. Remember that the application used by the client is usually named telnet also in most operating systems. You should not confuse the telnet application with the Telnet protocol. Telnet is application layer protocol.
HTTP is also in application layer protocol. It is the foundation of the World Wide Web. It is used to transfer Web pages and such resources from the Web Server or HTTP server to the Web Client or the HTTP client. When you use a web browser such as Internet Explorer, Google Chrome or Firefox, you are using a web client. It uses HTTP to transfer web pages that you request from the remote servers.
File Transfer Protocol (FTP) lives up to its name and provides a method for copying files over a network from one computer to another. More generally, it provides for some simple file management on the contents of a remote computer. It is an old protocol and is used less than it was before the World Wide Web came along. Today, Its primary use is uploading files to a Web site. It can also be used for downloading from the Web but, more often than not, downloading is done via HTTP. Sites that have a lot of downloading (software sites, for example) will often have an FTP server to handle the traffic. If FTP is involved, the URL will have FTP: at the front.
Simple Mail Transfer Protocol is used to send e-mails. When you configure an email client to send emails you are using SMTP. The mail client acts as an SMTP client here. SMTP is also used between two emails servers to send and receive emails. However, the end client does not receive emails using SMTP. The end clients use the POP3 protocol to do that.
Trivial File Transfer Protocol is a stripped down version of FTP. Where FTP allows a user to see a directory listing and perform some directory related functions, TFTP only allows sending and receiving of files. It is a small and fast protocol, but it does not support authentication. Because of this inherent security risk, it is not widely used.
Every host in a network has a logical address called the IP address. These addresses are a bunch of numbers. When you go to a website such as www.cisco.com you are actually going to a host which has an IP address, but you do not have to remember the IP Address of every WebSite. This is because Domain Name Service (DNS) helps map a name such as www.google.com to the IP address of the host where the site resides. This obviously makes it easier to find resources on a network. When you type in the address of a website in your browser, the system first sends out a DNS query to its DNS server to resolve the name to an IP address. Once the name is resolved, an HTTP session is established with the IP Address.
As you know, every host requires a logical address such as an IP address to communicate in a network. The host gets this logical address either by manual configuration or by a protocol such as Dynamic Host Configuration Protocol (DHCP). Using DHCP, a host can be provided with an IP address automatically. To understand the importance of DHCP, imagine having to manage 5000 hosts in a network and assigning them IP address manually! Apart from the IP address, a host needs other information such as the address of the DNS server it needs to contact to resolve names, gateways, subnet masks, etc. DHCP can be used to provide all these information along with the IP address.
TCP will be discussed in detail in next lesson.
IP(Internet protocol) will be discussed in coming lesson and also be discussed in its own chapter in detail.
User Datagram Protocol (UDP) is used together with IP when small amounts of information are involved. It is simpler than TCP and lacks the flow-control and error-recovery functions of TCP. Thus, it uses fewer system resources. Different between UDP and TCP is that UDP is sending data without ack but TCP is ever required ack.
A different type of protocol is Internet Control Message Protocol (ICMP). It defines a small number of messages used for diagnostic and management purposes. It is also used by Ping and Traceroute.