Lifelong Learning
      Reports Written In Pursuit Of Professional Diploma On IT    
 

Contents

What is Lifelong Learning

Misguided Solution

Report on Educational Technology

Learn SQL Thru Query Analyzer

SQL Test Codes

SQL Review Notes

Java Test Codes

Notes on Learning Java

TCP/IP

C++ CGI Learning Project

Windows NT Overview

Working with Red Hat Linux

Overview of JINI Networking Technology

Remote Access for VPNs

The Author

TCP/IP

TCP/IP stands for Transmission Control Protocol/Internet Protocol. As its name implies, it is a set of protocols that govern the transfer of information from one computer to another. A protocol is a set of rules and conventions for implementing a task or function. In the context of computer networking, it defines a specific way of implementing computer-to-computer communications.

TCP/IP was developed in 1978 under the sponsorship of the United States Department of Defense to answer a need for a technology that will enable networks implementing proprietary and incompatible communication protocols to communicate with one another. It was first implemented in 1980 to link the educational and research institutions that comprised the DOD's Applied Research Projects Agency Network (ARPANET), the precursor to the present Internet. Soon, it was incorporated into the Unix operating system and became a standard in 1983. 

TCP/IP is composed of several protocols that cooperatively implement the task of computer-to-computer communication. Computer professionals agree that computer communication protocols are best implemented using a layered approach where two or more protocols are grouped into a functional layer which is then placed atop each other in a layered stack. This was the concept that moved the International Standards Organization (ISO) to develop and standardize the Open System Interconnection (OSI) reference model which divided the whole computer communication task into seven functional layers. 

Since it was developed ahead of the OSI reference model, some of TCP/IP's protocols span across several layers in the OSI model. In contrast to the OSI model which had seven layers, the TCP/IP protocol only had four. These are the application, transport, network, and data link layers all of which have also been defined in the more complete OSI model.

Layer Function Protocols
Application Common Services to End Users FTP, TELNET, SMTP, IMAP4/POP3, HTTP, DNS
Transport End-to-End Data Delivery TCP, UDP
Network Logical Addressing and Routing IP, ICMP, IGMP, RIP, OSPF, DHCP
Data Link Interfacing with Physical Medium ARP, RARP, SLIP/PPP

 TCP/IP Protocols 

TCP/IP's application layer specifies how user programs and processes interact with the lower layer protocols to provide data transfer services for the user. Its transport layer enables end to end data transfer by delivering data from an application to its remote peer. TCP/IP's network layer provides the inter-network's virtual image, specifies network addressing and implements the routing function. Its data link layer defines the interface to the network hardware.

 Application Layer Protocols 

TCP/IP's application layer includes protocols for implementing common user services such a electronic mail, terminal emulation and file transfer. Most of these applications implement a client-server model wherein clients request services from servers waiting for services at some pre-defined memory locations. 

The Simple Mail Transfer Protocol (SMTP) defines how electronic mail from other domains is submitted to a mail server of a particular domain. The mail server of one domain transfer mails to another domain using a standard request-reply method defined by SMTP. Electronic mail clients may use either the Internet Mail Application Protocol (IMAP) or the Post Office Protocol (POP) specifications to retrieve mail messages from the mail server. IMAP is a newer specification and provides more options and greater flexibility than the POP protocol.

Terminal Emulation (TELNET) enables a user to open and close a terminal session with another computer running a TELNET daemon. TELNET specifies the terminal characteristics that may be invoked during the TELNET session and how communication between the TELNET client and the TELNET server is to be conducted. File transfer Protocol (FTP) defines a client-server implementation for transferring files from one computer to another. Its client-server interaction follows the pattern used in the SMTP where each reply/request is identified using a three-digit code. 

The operation of the World Wide Web (WWW) is defined by the Hypertext Transfer Protocol (HTTP) which is strictly not part of the TCP/IP protocol suite. However, it uses the TCP/IP protocol in moving data between the web browser and the web server.  HTTP also makes use of TCP/IP's Domain Name Service (DNS) protocol to implement a hierarchical domain name to IP address resolution service. 

DNS uses TCP/IP to locate name servers that maintains host name to IP address mapping information for a particular domain. It defines a client-server mode of interaction for implementing domain name or IP address lookup. System administrators use the  nslookup and dig commands to query a name server for  host IP address and name information. They use the hosts and lmhosts files which contain IP address to host name mapping information as backup to the DNS when the network is not operational. 

Transport Protocols 

TCP/IP's transport protocols provide end-to-end data delivery service for the upper layer application protocols. 

Transmission Control Protocol (TCP) is a connection-oriented protocol that implements a reliable transfer of information from one computer to another. It defines how to set up and tear down a connection between the two peer layers in communicating computers through a standard exchange of  SYN, ACK and FIN commands. It specifies how a sliding window mechanism can control the amount of  data that flows from one computer to another so as not to flood the buffers of the receiving computer. It also provides ways of varying the amount of data sent when congestion occurs in the network medium. System administrators use the netstat command to display protocol statistics and current TCP/IP connections. 

User Datagram Protocol (UDP) makes available a connection-less mechanism for sending data from one computer to another. It specifies an unreliable method of data delivery without regard to whether the receiving computer received the data or whether the data was received out of sequence. It leaves to the higher level protocols the function of ensuring that the data are received completely. UDP offers an alternative to TCP for applications where loss of some data is acceptable. 

Both TCP and UDP define the concept of ports which are storage locations where servers wait for connections. The transport protocol used (TCP or UDP), IP address and port address makes for a unique combination that may be used to identify a particular connection in one computer system. Programmers use a programming construct called sockets which are IP address and port number combinations to uniquely identify one message from another inside a computer system. 

Network Protocols 

TCP/IP's network protocols concern themselves with logical addressing of devices in the network and the routing of data within a networked environment. 

Internet Protocol (IP) stands out as the most used protocol in the TCP/IP protocol suite. It defines the logical addressing of network devices and the mechanisms for segmenting and best-effort delivery of data from one computer system to another. IP requires that each network device be given an address in the form of four dotted decimal numbers that range from 1 to 255. The IP address is used in combination with a subnet mask to identify the subnetwork number, network number and host identification number of a particular network device. 

IP also specifies how IP packets are routed in the internetwork. Routers are internetwork devices that link two or more networks. They can move packets from one network to another using a routing table which may be manually configured or dynamically maintained by a routing protocol. Routing Information Protocol (RIP)  was among the first routing protocols to be deployed for intra-domain routing. However, its techniques left much to be desired particularly in metric measurement and speed of convergence. RIP was soon replaced by the Open Shortest Path First (OSPF) protocol which offered a more efficient distance metrics measurement and faster internetwork convergence. 

IP depends on the Internet Control Message Protocol (ICMP) specifications for tracking down and reporting status and errors in packet transmission. It uses the Internet Group Management Protocol (IGMP) to implement data delivery for multicast applications that send packets to a selected group of network devices. 

Dynamic Host Configuration Protocol (DHCP) defines the processes and data formats for implementing automatic distribution of IP configuration data in a network. A computer's TCP/IP stack need to be configured with valid IP configuration data for it to be able to actively exchange packets with other computers in the internetwork. DHCP specifies how system administrators can implement automatic IP host configuration for all devices in the network. 

Computer operating systems offers commands or utilities to ease host IP configuration and network fault troubleshooting. System administrators use the route commands to display or manually manage the entries in a computer's routing table. They also use the ifconfig/ipconfig command to find out how IP is currently configured in a computer system. They often use the ping command within or outside the network to find out a destination's reachability. Finally, they use the tracert/traceroute command to find out the route an IP packet is using to reach its target destination. 

Data Link Protocols 

TCP/IP's data link protocols bridges the requirements of the logical virtual network with the operation of the LAN or WAN protocols that actually move data physically from one network interface to another. 

While upper layer protocols use logical addressing to route packets to their destinations, physical network devices use physical addresses burned into their network interfaces to identify one another and exchange physical bits. TCP/IP's Address Resolution Protocol and Reverse Address Resolution Protocol (ARP/RARP) defines the means by which address mapping and translation services can be made available to upper layer protocols. ARP specifies how each device requests for and remembers the physical or logical address of a device that one computer needs to communicate with. System administrators use the arp command to query and manage a computer's ARP table. 

In the wide area network, IP uses the Point-to Point-Protocol (PPP) specifications to enable packets to be moved through an asynchronous communication line. In private homes, Internet browsers use PPP to open and close connection to the Internet through an Internet Service Provider. 

TCP/IP does not specify any local or wide area networking protocol but is able to avail of the transmission services of any underlying physical networking implementation. It will happily move data using Ethernet, Token Ring, Fiber Distributed Data Interface (FDDI), or System Network Architecture (SNA) type of physical network implementation. 

Because of its robustness and flexibility, TCP/IP has become the de facto computer-to- computer communication standard in both the local and wide area networks. As an open standard, TCP/IP has a built-in capability to evolve and adapt as changes in the physical layer move at an astounding pace. Unless a more robust, efficient, and acceptable protocol suite is developed that can surpass its power and flexibility, we feel that TCP/IP will remain useful in the years to come. 

References

A TCP/IP Tutorial by T. Socolofsky and C. Kale. URL: http://www.cis.ohio-state.edu/cgi-bin/rfc/rfc1180.html 

TCP/IP by Cisco Systems. URL: http://www.cisco.com/warp/public/535/4.html 

Introduction to TCP/IP by H. Gilbert URL: http://www.yale.edu.pclt/COMM/TCPIP.HTM 

TCP/IP Essentials by Laura Chappel. Network World Fusion. URL: http://www.nwfusion.com/cgi-bin/mailto/x.cgi 

Understanding TCP/IP by Liam Proven. PC Network Advisor. Issue 126:January 2001 

Understanding TCP/IP by Julian Moss. PC Network Advisor. Issue 87:September 1997, Issue 88:October 1997, Issue 93:March 1998 

TCP/IP Protocol Brief by Cisco Systems 

Internetworking Technology Overview, June 1999 by Cisco Systems 

TCP/IP FAQ Part 1 URL: http://www.faqs.org/faqs/internet/tcp-ip/tcp-ip-faq/part1/ 

TCP/IP FAQ Part 2 URL: http://www.faqs.org/faqs/internet/tcp-ip/tcp-ip-faq/part2/ 

Download MS Word Version (.doc) of this document.


 


 

     

Previous Article

Next Article

   
           
     

LEDAC    A Writer At Heart    My Doc Files    Optional

   
     

Copyright 2008 Aureo P. Castro Email: [email protected]

   
           
Hosted by www.Geocities.ws

1