Larger Text
Normal Text
Smaller Text
IT 280 Web Development II, Spring 2008
THE INTERNET & TCP/IP
THE INTERNET
- Some inventions cause a fundamental change in the way that we view our world, and other inventions accrete around it.
- The Internet is one of these.
- It began as a scheme for a decentralized network.
- It supports a suite of transfer protocols (TCP/IP).
- This led to hypertext, the browser, and many new ideas.
- Key ideas
- Decentralized networking
- TCP/IP
- hypertext
- World Wide Web
- Beginnings in 1964 at the RAND corporation
- The Problem: communicating among networked computers when part of the network was out of commission.
- Researcher Paul Baran described"distributed" computing, in a group of computers ("nodes")
can be connected in such a way that damaged areas can be routed around.

Network Routing Configurations.
Source: Introduction to Distributed Communications Networks, Paul Baran
- The Question: How to control such a network? (Centralized control is
vulnerable.)
- The Solution:
- The network
- would have no central authority; all nodes would be equal
- would be designed from the beginning to operate with parts out of commission.
- The transmitted messages would be divided into
packets.
- Each packet would be sent individually; every packet might take a
different
route to the destination.
- The Pentagon's Advanced Research Projects Agency funded a network
using four high-speed supercomputers at ARPA contract sites. The
purpose was to share computer resources.
- In 1969 the ARPANET had four nodes. By 1972 it had 37.
- The ARPA structure could accommodate many different platforms.
- The researchers started using the network for news and personal messages.
- ARPANET's original standard for communication was known as Network Control Protocol
(NCP).
- NCP was replaced by a higher-level, more sophisticated standard known as TCP/IP.
- TCP/IP was being used by other networks to link to ARPANET, creating the
Internet (Interconnected Networks).
- ARPANET went out of existence in 1989, replaced by the NSFNET.
TCP/IP
- The basic communication protocol of the internet is called TCP/IP (Transmission Control Protocol/Internet Protocol).
- TCP /IP is a two-layered program.
- The TCP layer
- manages the assembling of a message or file into smaller packets that are transmitted over the internet
- reassembles packets into the original message.
- The IP layer
- handles the address part of each packet so that it gets to the right destination.
- works like an envelope, with addressing at the beginning of your
message. The addressing gives the network enough information to deliver the packet of data.
- packets are normally between 1 and 1500 characters long. This
- reduces the chance of lost data
- prevents any one user from monopolizing the network for a long period of time.
- IP addresses are 32-bit binary numbers (four bytes) , commonly written in
a "dotted quad" form, such as 144.175.9.72
- the first part tells the internet router what network the receiver is a part of.
- The second part tells the network which computer should receive the packet.
TCP:
- breaks the data into smaller chunks (the packets)
- numbers each packet, adding the number to the envelope (headers)
- calculates a value called a checksum, adding the number to the
envelope
- the checksum allows the receiving TCP to detect error s in the packets.
- passes the packets along to the IP layer
- collects received packets
- puts the data back into the original order
- checks to see if packets are missing
- asks the sender to retransmit the missing packets if necessary
- calculates what the checksum should be and compares it to the one received.
- discards the packet and requests a retransmission if they don't
match
- passes the data along to the application program using its services.
Domain Names
- we must have a way to identify locations on the Internet.
- numeric IP addresses accomplish this, but are difficult for humans to use.
- locations are be assigned names.
- names must be unique
- there must be a way to find a location (IP address) given a name
- there must be a way register new names.
- handled by the Domain Naming Scheme (DNS)
- similar to the way humans in the US are identified by both a fixed length number (SSN) and a name
- although human names are not necessarily unique, Internet names must be.
- when the Internet was still relatively small, dealing with names was simple.
- an agency called the Network Information Center (NIC) set up a registry.
- system administrators electronically submitted the desired hostname and corresponding IP address
- NIC added this to a file of names and addresses, called the hosts file
- the hostes file was distributed regularly to every machine on the network
- each computer used the hosts file to look up a name and find the corresponding IP address
- this is similar to looking someone's phone number up in a telephone book
- local networks still use this system. (all our Linux machines have a hosts file with the names of the others they are to communicate with.)
- as the Internet grew, this system became impractical
- this file got very large
- there were delays in getting name registereds
- it was very difficult to find names that weren't already used
- too much network time was spent distributing th is large file to every machine contained in it
- the last part of the name (.edu, .mil, .gov, .com, etc.) is called a primary domain.
- agencies maintain the lists of the names assigned within that primary domain
- for example, the registries for the .com and .net domains are operated by VeriSign Inc.
- the group to which a name is assigned
- can decide how to allocate the next level of names
- maintains its own registry
- For example
- names ending with the domain .hood.edu correspond to IP addresses beginning with 144.175.
- a request by an off-campus browser or email server for cs.hood.edu must first find the necessary IP address for the packets
- this is called a DNS Lookup
- it first checks its local registry (called the DNS Server) to see if the answer is there.
- if not, it must query the official registry for the primary domain (.edu) to find the first part of the address (144.175.)
- the official registry also tells where to find the DNS server for .hood.edu
- the lookup gets the next level of information from that registry. In the example, it is the rest of the IP address (.9.215).
- if the lookup begins on the Hood network (another 144.175. machine), it will get the answer as soon as it queries the local DNS server.
- there could be another level of lookup
- you can obtain DNS information at http://www.internic.net/whois.html