TCP/IP
Explaining what TCP/IP is and how it converts information for transfer through wires / web
Essentially, all information that is transferred over a network is converted to 'BITS' - the building block of data. A BIT of information may be either a 0 or a 1. Larger pieces of data are resolved to BITS - they are represented by a series of zeros and ones. Every piece of information stored on a computer has a unicode or hexadecimal representation that may easily be converted to bits. High level data like an audio file, passes through a number of stages of resolution into simpler data by different sorts of programs and is finally broken down to bits. It is sets of these bits of data that travel across wires as packets or datagrams. An 'on' pulse indicates a one, while an off pulse indicates a zero. Once they have reached their destination, they are translated back to the high level data by the same programs.
TCP/IP is an essential piece of the set of technologies that translate data to bits and make the data ready for travel through a wire. The language used by two computing devices to network is called a 'protocol'. Once a high level program (for example, a web browser) tries to connect to a network (by requesting a web page, for example), TCP establishes the connection through what is sometimes called a 'handshake' with the remote computer, sends the request across, and guarantees full delivery of the message. On the other side, TCP tests for errors and requests retransmission if errors are found. UDP is an alternative to TCP; however, it does not guarantee delivery. UDP may be used for data like voice and video - a few lost packets are not a big deal and it no sense to retransmit lost voice or video data. All data is encoded for travel along with a sixteen bit number that denotes the 'port' - the port is used to deliver data back to the appropriate high level application on the destination. Servers 'listen' on different ports for different sorts of requests. That is, file transfer requests are always directed to Port A, printing requests to Port B, HTML page requests to Port C, and so on.
Fig 1d: Data Route to the Wire
IP or Internet Protocol takes the packets of data from TCP or UDP and prepares the data for transmission by translating IP addresses to physical station addresses and breaking down the packets to an appropriate size. IP broadcasts an Address Resolution Protocol (or ARP) request onto the network, the machine with the IP address that is sought sends back its physical station (MAC or Ethernet) address. If the target machine is on a different network, the physical station address of a piece of hardware called a router that connects to the other network or is in the direction of the other network is sent back. Packets called "datagrams" are formatted by IP. Each datagram has a header with the source and destination IP addresses. If IP has to break down the packet further, many datagrams with sequence numbers are created so that they can be reassembled by IP on the other end. IP supports a "multicast" feature that allows messages to be delivered to multiple recipients.
Oft-used communication oriented programs that initiate communications with a network include FTP (File Transfer Protocol), SMTP (Simple Mail Transfer Protocol), Telnet, HTTP (Hypertext Transfer Protocol), DNS (Domain Name System) and WINS (Windows Internet Name System). FTP programs are used to copy files to remote locations. SMTP is used to send e-mail. Telnet provides access to a remote host through a terminal emulator window or console. HTTP or Hypertext Transfer Protocol is used to transfer HTML files, DNS and WINS allow Internet hosts to be represented by names rather than strings of numbers. In the next chapter, we will address HTTP , the protocol used most often for web development, and associated technologies in detail.