September 7, 2013

Introduction To Protocols

In the networking and communications area, a protocol is the formal specification that defines the procedures that must be followed when transmitting or receiving data. Protocols define the format, timing, sequence, and error checking used on the network
There are hundreads of protocols out there and it is impossible to list them all here, but instead we have included some of the most popular protocols around so you can read up on them and learn more about them.
Following are the protocols:

Internet Protocol (IP)
DNS
TCP
UDP
ICMP
FTP
TFTP
Ethernet
RIP
OSPF

Internet Protocol (IP): 
One of the most important and well known protocols is the Internet Protocol or, if you like, IP. IP gives us the ability to uniquely identify each computer in a network or on the Internet.
When a computer is connected to a network or the Internet, it is assigned a unique IP address.
If you're connecting to the Internet, chances are you're given an IP automatically by your ISP, if you're connecting to your LAN then you're either given the IP automatically or you manually configure the workstation with an assigned IP.

Internet Protocol Classes - (Network ID & Host ID)
Network-ID' and 'Host-ID' concept found in IP addressing and subnetting.
We analyse the structure of IP addresses and network classes and show their Network-IDs and Host-IDs in binary format to make evident how the system works
There are five classes of available IP ranges Class A, Class B, Class C, Class D and Class E.
The first 3 classes ( A, B and C) are used to identify workstations, routers, switches and other devices whereas the last 2 Classes ( D and E) are reserved for special use.
As you would already know an IP Address consists of 32 Bits, which means it's 4 bytes long
The first octect (first 8 Bits or first byte) of an IP Address is enough for us to determine the Class to which it belongs. And, depending on the Class to which the IP Address belongs, we can determine which portion of the IP Address is the Network ID and which is the Host ID.

Domain Name System (DNS): 
The Domain Name System converts machine names to IP addresses. The mapping is done from name to address and address to name. The difference between just plain hosts IP mapping and Domain mapping is that DNS uses a hierarchichal naming standard. This hierarchy works from right-to-left with the highest level being on the right. As an example, here is a simple domain break-out:
 TOP-LEVEL                                  .org
                                                           |
  MID-LEVEL                             .diverge.org
                      _______________________|_______________________________________
                      |                          |                              |                                           |
      BOTTOM-LEVEL   strider.diverge.org    samwise.diverge.org   wormtongue.diverge.org     


It seems simple enough, however, the system can also be logically divided even further if one wishes at different points. The example shown above shows three nodes on the diverge.org domain, but we could even divide diverge.org into subdomains such as strider.net1.diverge.org, samwise.net2.diverge.org and wormtongue.net2.diverge.org, in this case, 2 nodes reside on net2.diverge.org and one on net1.diverge.org.


User Datagram Protocol (UDP)

User Datagram Protocol (UDP) is a protocol used for transport of data across an Internet Protocol (IP) based network. User Datagram Protocol (UDP) does not perform handshaking as TCP does, or check for errors, or even to see if the transmitted data was received, so User Datagram Protocol (UDP) is referred to as an unreliable, connectionless protocol. However, because User Datagram Protocol (UDP) skips the handshaking and is focused on pure transmission, User Datagram Protocol (UDP) has lower overhead and is thus faster than TCP. UDP will provide better throughput on a network where the physical and datalink layer protocols are reliable.

Domain Name Service, Trivial File Transfer Protocol and Simple Network Management Protocol all use User Datagram Protocol (UDP).

UDP DATAGRAM FORMAT

A User Datagram Protocol (UDP) datagram is encapsulated within an IP datagram and therefore is prefixed with IP header information.

    UDP DATAGRAM FORMAT
A User Datagram Protocol (UDP) datagram isencapsulated within an IP datagram and therefore is prefixed with IP header information.




   0      7 8     15 16    23 24    31
   +--------+--------+--------+--------+
   |     Source      |   Destination   |
   |      Port       |      Port       |
   +--------+--------+--------+--------+
   |                 |                 |
   |     Length      |    Checksum     |
   +--------+--------+--------+--------+
   |
   |          data octets ...
   +---------------- ...
 

Source Port:

The source port is the virtual port number assigned by the local computer when it transmits data to a remote machine. This is typically a number above 1023 and is the next highest number not already in use. This field is not always used, but when it is, it should indicate the port number the remote machine should use when sending any replies back to the source.

Destination Port:

The destination port is usually a 'well known port number' of a service, such as 69 for Trivial File Transfer Protocol (TFTP), or 53 for Domain Name Service (DNS). These virtual port numbers allow the remote machine to recognize a request for a particular type of service and to match up endpoints for multiplexed connections. When used with a source port, this allows a remote machine to recognize a data connection.

Length:

Length is specified as a number of octets, and since it's a 16-bit value, it provides for a datagram of up to 65,535 bytes, including the UDP datagram header and data payload.

Checksum:

A checksum is calculated using the the 16-bit one's complement of the one's complement sum of data pulled from the IP header, the User Datagram Protocol (UDP) header, and some of the data. This data is padded with zeroes so that it is a multiple of two octets before the checksum algorithm is run.
The purpose of UDP is to break up a stream of data into datagrams, add a source and destination port information, a length and a checksum. It is the receiving application's responsibility to detect and recover lost or damaged packets, as UDP doesn't take care of this.


You can think of UDP as riding "inside" IP. The networking layer protocol IP handles packet ordering, segmentation and re-assembly, as well as the routing between the source and destination computer systems.



No comments:

Post a Comment

Introduction to OSPF Part 2