School:
Purpose and function of TCP/IP
The Transmission Control Protocol/Internet Protocol (TCP/IP) suite is a set of protocols that describe the functions necessary for sending data over a network. These protocols define acceptable data formats and standards for passing messages, handling errors and for communication. The suite provides the foundation for many crucial services such as file transfer, electronic mail, remote login, network monitoring among others[ CITATION Tan03 \l 1033 ]. It is designed to separate the functions of the various facets of data transmission. International open standards make is possible for different companies to write software that is compatible. When data is transmitted over the Internet, the sender and receiver have to communicate in a common language irrespective of hardware or operating system differences. The TCP/IP suite makes this possible.
TCP/IP consists of 3 fundamental protocols; Internet Protocol (IP), Transmission Control Protocol (TCP), and User Datagram Protocol (UDP)[ CITATION Int02 \l 1033 ]. TCP/IP also consists of other protocols that facilitate mail handling, naming services and network management among other crucial services. Details of the functions and purposes of TCP and IP UDP are described below.
The Internet Protocol (IP)
The Internet Protocol corresponds to the Network layer in the OSI model. It is the main protocol of the Internet Protocol Suite and it defines schemes for addressing and structures for encapsulating data packets.
Functions
IP protocol defines a data transmission system in which the sender and recipient are not essentially directly connected. IP is the primary communications protocol that is used to relay datagrams across internetworks using the IP Suite. It has the responsibility of routing data packets across network boundaries and is the principal protocol that institutes the Internet.
Fragmentation: IP packets are fragmented into smaller datagrams. This makes it possible for large packets to be transmitted across networks which are only capable of handling small packets. Data is fragmented and re-assembled into packets by IP in a transparent manner. IP also has the function of forwarding packets to the appropriate recipient.
IP addressing and routing: These are possibly the most complex functions of the Internet Protocol. Addressing refers to the process of assigning IP addresses to end hosts and the process of dividing and grouping sub-networks of IP host addresses. All hosts perform IP routing. Routing is however most notably performed by network routers, which characteristically use interior or external gateway protocols to assist in making decisions for forwarding IP packets across networks.
Why we need IP
No Internet communication can take place without the IP protocol. IP is needed when browsing the Internet. The IP address essentially distinguishes where we want to send information, and from where the information comes. There has to be a way to differentiate with which computer we want to communicate among the many computers connected to internet.
How it works
The Internet Protocol accepts data from UDP and TCP. The data to be transmitted is split into packets of specified size by the IP protocol before it is forwarded to the recipient via the network. The individual data packets, also called datagrams, are routed via several computers on the Internet to the target network and receiving computer. A given set of data, like a file, can be split into several datagrams which are transmitted independently.
A datagram comprises header information as well as a data segment. The header usually holds routing and processing information regarding the datagram. A datagram can have additional fragments. This is dependent on the physical requirements of the network through which a datagram is transmitted. For instance, when a gateway transmits data packets to a network which cannot accommodate them as single packets, the datagrams must be divided into smaller pieces for transmission[ CITATION Sta07 \l 1033 ]. The header contains information necessary to reconstruct the fragments into the original datagram. The fragments may not necessarily arrive in sequence at the recipient machine; the software module that implements the IP protocol on the recipient machine is responsible for reassembling the fragments into the original datagram. If a fragment is lost during transmission, the recipient discards the entire datagram.
The Transmission Control Protocol (TCP)
The Transmission Control Protocol corresponds to the Transport layer in OSI model. TCP protocol provides security and dependability to the IP protocol
Why we need it
We need TCP to establish a reliable end-to end link between communicating devices and to transfer data when communicating with other computers.
Functions
Reliable transmission: TCP works together with the IP protocol to provide reliable transmission of data. TCP provides a way of ensuring that the various datagrams that make up a message are reconstructed in the right order at the destination machine, and that any lost datagrams are re-transmitted. This protocol also provides a set of procedures which are implemented by devices in negotiating and establishing a TCP connection over which data packets can be transmitted. Once opened, the TCP protocol comprises logic that is used to manage connections and handle any resulting problems.
Error detection: Another function of TCP protocol is to ensure that data packets are not lost, damaged, duplicated, delayed, or disordered. By using sequence numbers and acknowledgments TCP is able to discard duplicate packets, retransmit lost packets, and transmit data in an orderly manner. A checksum field is also included to ensure correctness. Furthermore, TCP allows for implementation of security requirements such as restricting user access to certain computers.
Flow Control: TCP allows for the control and management of data flow between two devices. It also consists of features that manage congestion that may be experienced when devices are communicating. TCP offers dependability by making use of checksums on the data packets, sequence numbers in TCP headers, positive acknowledgments of received packets, and retransmission of unacknowledged packets.
How it works
TCP uses Internet Protocol, but appends a layer of control on top. Although TCP packets are lost from time to time, the TCP protocol requests for retransmission to ensure that every packet reaches its destination. TCP also keeps track of packet sequence numbers to ensure that they are delivered in the proper order.
TCP establishes connections between the two communicating devices. Negotiation is executed to set up a "socket", which remains open during the duration of the communication. The receiving machine acknowledges every packet. If packets are lost or reach their destination out of order, TCP retransmits the packets. Thus, TCP can allow applications to send as much data as they want. TCP breaks the data into packets, buffers the data, resends lost or disorderly packets, acknowledges receipt, and controls the rate of data flow by requesting the sender to transmit faster or slower in order that the application does not receive more than it can handle.
References
Internet Guide. (2002). What is TCP/IP. Retrieved April 3, 2011, from internet-guide.co.uk: http://www.internet-guide.co.uk/tcp-ip.html
Stallings, W. (2007). Data and computer communications (8, illustrated ed.). New Jersey, USA: Prentice Hall.
Tanenbaum, A. S. (2003). Computer networks (4, illustrated ed.). New Jersey, USA: Prentice Hall PTR.