|
|
Copyright (C) 1987, Charles L. Hedrick. Anyone may reproduce this document, in whole or in part, provided that: (1) any copy or republication of the entire document must show Rutgers University as the source, and must include this notice; and (2) any other use of this material must reference this manual and Rutgers University, and the fact that the material is copyright by Charles Hedrick and is used by permission.
The Internet is a collection of networks, including the Arpanet, NSFnet, regional networks, local networks at a number of University and research institutions, and a number of military networks. The term "Internet" applies to this entire set of Networks. The Internet was originally built to allow sharing of ideas and resources among individuals and institutions that were separated by great distances, incipally Defense agencies and scientists located at large Research Institutions and University. These individuals needed to share ideas, files and resources. The original applications were meant to facilitate theses needs. Simple Mail Transfer Protocol, Email, allowed the sharing of ideas. File Transfer Protocol, FTP, allowed the sharing of files. Telenet allowed the sharing of Computer Resources. Later the Hypertext Transfer Protocol and web browser were developed to blend the services provided by these three protocols into one medium. The Internet is built on TCP/IP Protocol, Transfer Control Protocol/Internet Protocol. TCP/IP a set of protocols developed to allow cooperating computers to share resources across a network. The protocol was developed by a community of researchers centered that developed ARPAnet. TCP/IP is built on "connectionless" technology.
TCP/IP is a layered set of protocols used to communicate reliably between the two computers. TCP/IP is based on the "catenet model, which assumes that there are a large number of independent networks connected together by gateways. Users are able to access computers or other resources on any of these networks as though there was one network. Datagrams are passed through different networks before getting to their final destination. The routing needed to accomplish this is invisible to the user. The user needs to know an "Internet address" to access a computer. An example of an Internet address is 128.6.4.194, which is actually a 32-bit number, written as 4 decimal numbers, each representing 8 bits of the address, to make is easier for human. These addresses have a human readable name and network software looks it up in a data base (Domain Name Server) to come up with the corresponding Internet address. RFC 882 describes the name server technology used to handle this lookup. Information is transferred as a sequence of "datagrams" which is a collection of data that is sent as a single message. Each datagrams is sent through the network individually.
TCP Protocol responsible for breaking up the message into datagrams, which are manageable chunks. The TCP protocols at each end say how big a datagram they can handle and the smaller of the two is chosen. A header is placed at the front of each datagram. The header contains at least 20 octets. The most important octets are the source and destination port number, a sequence number and a checksum. The sequence number allows the receiver to ensure that it receives the datagrams in the right order, and that it hasn't missed any. A Checksum is a number that is computed by adding up all the octets in the datagram and is placed in the header. The receiving TCP computes the checksum again to make sure they agree. This ensures the datagrams was sent without any errors. The TCP Protocol at the receiving end reassembles the datagrams putting things back in the right order and requests resending anything that gets lost.
TCP sends each of these datagrams to IP. IP's job is to find a route for the datagram and route the datagram to the receiver. IP adds its own header, to allow gateways or other intermediate systems to forward the datagram, because the datagram may go through several networks. TCP simply hands IP a datagram with a destination. IP doesn't know how this datagram relates to any datagram before it or after it.
Internet addresses are 32-bit numbers, normally written as 4 octets (in decimal), e.g. 128.6.4.7. Addresses beginning with 1 to 126 use only the first octet for the network number, few normal organizations get one of these "class A" addresses. Class B addresses use the first two octets for the network number. Thus network numbers are 128.1 through 191.254 and last two octets are available for host addresses, giving 16 bits of host address. This allows for 64516 computers, which should be enough for most organizations. Class C addresses use three octets, in the range 192.1.1 to 223.254.254.which allow for 254 hosts on each network. Addresses above 223 were reserved for future use. Normaly hosts should never be given addresses containing 0 or 255.and addresses should never begin with 0, 127, or any number above 223.