Basic Internet Technical Details

The Internet utilizes a set of networking protocols called TCP/IP. The applications protocols that can be used with TCP/IP are described in a set of Internet Engineering Task Force (IETF) RFCs (Request For Comment). These documents describe the "standard" protocols and applications that have been developed to support these protocols.

Protocols provide a standard method for passing messages. They define the message formats and how to handle error conditions. Protocols are independent of vendor network hardware, this allows communication between various networks with different hardware as long as they communicate (understand) the same protocol.

TCP/IP : Transmission Control Protocol/Internet Protocol

TCP/IP is used to facilitate communication within a network of diverse hardware technology. Information is broken into packets (usually in the range of 1-1500 characters long) to prevent monopolizing of the network. TCP is a transport level protocol which allows a process on one computer to send data to a process on another computer.

It is a connection oriented protocol which means that a path must be established between the two computers. IP defines the datagram, the format of the data being transferred throughout the network and performs connectionless delivery.

Connectionless delivery requires each datagram to contain the source and destination address and each datagram is processed separately. TCP takes the information, and breaks it into pieces called packets, numbers the packets, and then sends them.

The receiving computer collects the packets, takes out the data and puts them in the proper order. If something is missing, the receiving computer asks the sender to retransmit. The packet sent also contains a checksum which is used to find errors that may have occurred during transmission.

If the receiving computer notices that an error has occurred when it computes and compares the checksum, it throws that packet away and asks for a retransmission. Once everything is received, the data is passed to the proper application (e.g. email).

UDP:User Datagram Protocol

The UDP has less overhead and is simpler than TCP. The concept is basically the same except that UDP is not concerned about lost packets or keeping things in order. It is used for short messages. If it does not receive a response, it just resends the request. Thjs type of protocol transfer method is called a “connectionless protocol.”

Internet Addressing

All computers on the Internet must have a distinct network address to be able to efficiently communicate with each other. The addressing scheme used within the Internet is a 32 - bit address segmented into a hierarchical structure. IP addresses consist of four numbers, each less than 256 which are separated by periods. (#.#.#.#)

At the lowest level, computers communicate with each other using a hardware address (on LANs, this is called the Medium Access Control or MAC address). Computer users, however, deal with 2 higher levels of abstraction in order to help visualize and remember computers within the network.

The first level of abstraction is the IP address of the computer (e.g. 131.136.196.2) and the second level is the human readable form of this address (e.g. manitou.cse.dnd.ca). This address scheme is currently under review as the address space is running out. Address Resolution Protocol (ARP) can be used by the computer to resolve IP addresses into the corresponding hardware addresses.

Routing

There are two types of routing used by the Internet: source routing and dynamic routing. The Internet is a very robust networking system. The network routers will automatically (dynamically) send out messages to other routers broadcasting routes to known domains and addresses.

If a network or router goes down, packets can be dynamically rerouted to the destination. The user does not usually know how a packet will be routed to the destination. The packet could be rerouted through an untrusted network and intercepted.

A router connected to the Internet should be configured to ignore dynamic routing changes and the routing tables should remain static. If the routing tables must be changed, then they should be changed by the network administrator after understanding the reasons for the changes.

Unfortunately this is not usually convenient for Internet connected routers. This is another example of when a tradeoff must be made. If the router is configured in this manner then the dynamic routing that the Internet depends on would be disabled.

In this situation your network could be cut off (completely or partially) until the Network Administrator makes the required changes in the routing tables. The second type of routing is known as source routing. In this method of routing a user is able to define a route for the packet between the source and destination.

All packets returning to the destination will follow the route information given. A hacker can use a source routed packet to spoof another address. Computers and routers connected to external networks should be configured to ignore source routed packets.