The main difficulty that occurs when so many computers are interconnected is to find a common language to exchange information. This difficulty is resolved by adopting global standards. In the Internet world, as in other communities, defining these standards is done in a collaborative manner. Basic Internet standards are described in documents called RFCs (Request for Comments). There are people who are responsible for maintaining this documents, anyone is welcome to complete and comment.
These documents are to define the protocols used on the Internet. A protocol is a language (data format) that two computers use to send and receive information.
There are a variety of protocols from which to choose. Each has advantages and disadvantages; for example, some are easier than others, some are more secure, while the other is faster.
The place where you can find very comprehensive information about protocols is http://www.ietf.org/rfc.html. Here are the RFC documents for each Internet standard. Each of these documents has associated a number 3 or 4 digits. For example, RFC822 treats aspects of the format in which are shared emails.
To understand how the internet works, you must understand how computers communicate with each client and server. There are two communication types that are important: connectionless mode and connected mode. This is based on the transfer of packet data.
- TCP (Transmission Control Protocol) is the connected mode of communication. Customer is temporarily connected to a server, after negotiating a specific channel. Communication is made via packet data, but there is an order to them, their continuity being ensured. This mode is similar to the phone, meaning that in order to speak it establishes a temporary connection;
- UDP (User Datagram Protocol) is the connectionless mode of communication. It is similar to the postal system, meaning that packets of information (letters) are generally sent without acknowledgment, in the hope that they will arrive without a real connection between sender and receiver.
Most relevant protocols for the topic are based on TCP, the mode of transmission of information based on the connection.
Every computer and therefore each server has an IP address. How a computer can define multiple services, there must be a way to identify these services. It uses the concept of port, that is a number that identifies the service to be accessed. To best understand the reason why there is this concept, the easier it is to think of an address: to find a person is not enough to know the address of the building where they work – ie the IP address for the computer, but the number of office or room – that port.
In short, the port number indicates to the server the service you wish to access. For example, 80 is the port number for HTTP (HyperText Transport Protocol), used to transfer pages on the Web sites.
IP addresses are numerical in nature, to be easily used by computers. But people retain hardly the random numbers, and for this reason was designed a service, called DNS. DNS stands for Domain Name Service, and it is for the network which is agenda for the phone numbers of friends, the difference being the scale of operations performed. A DNS server contains the correspondence between name servers and thus their IP address, as phonebook contains correspondence between the names and their phone numbers.
Computers are organized into domains, nested each other. A server or a computer can belong to a domain even though it is not even on the same continent with the other.
To uniquely identify a computer, it is writing the domains separated by points, starting from the lower unit.
Similar to a regular mailing address, the e-mail adress is using the form email@example.com, eg firstname.lastname@example.org.