Set 1 SOLVEDcomputer Network QP
Set 1 SOLVEDcomputer Network QP
Total Pages: 2
PART A
KTU ASSIST
4.      Give the classification based on transmission technology.
PART B
PART C
PART D
PART E
KTU ASSIST
ANSWER KEY
PART A
KTU ASSIST
 BASIS OF COMPARISON            CONNECTION-ORIENTED SERVICE           CONNECTION-LESS SERVICE
 Suitability                    Suitable for long and steady          Suitable for bursty Transmission.
                                communication.
  Packet forwarding             Packets sequentially travel to their           Packets reach the destination
                                destination node and follows the same          randomly without following the same
                                route.                                         route.
3. Service primitives
    A service is formally specified by a set of primitives (operations) available to a user process
    to access the service. These primitives tell the service to perform some action or report on
    an action taken by a peer entity. If the protocol stack is located in the operating system, as it
    often is, the primitives are normally system calls. These calls cause a trap to kernel mode,
    which then turns control of the machine over to the operating system to send the necessary
    packets. The set of primitives available depends on the nature of the service being provided.
    The primitives for connection-oriented service are different from those of connection less
KTU ASSIST
    service. As a minimal example of the service primitives that might be provided to
    implement a reliable byte stream in a client-server environment, consider the primitives
    listed in Fig
     There are two types of transmission technology that are in widespread use. They are as
     follows: 1. Broadcast links. 2. Point-to-point links. Broadcast networks have a single
     communication channel that is shared by all the machines on the network. Short messages,
     called packets in certain contexts, sent by any machine are received by all the others. An
     address field within the packet specifies the intended recipient. Upon receiving a packet, a
     machine checks the address field. If the packet is intended for the receiving machine, that
   machine processes the packet; if the packet is intended for some other machine, it is just
   ignored. As an analogy, consider someone standing at the end of a corridor with many
   rooms off it and shouting "Watson, come here. I want you." Although the packet, may
   actually be received (heard) by many people, only Watson responds. The others just ignore
   it. Another analogy is an airport announcement asking all flight 644 passengers to report to
   gate 12 for immediate boarding. Broadcast systems generally also allow the possibility of
   addressing a packet to all destinations by using a special code in the address field.. When a
   packet with this code is transmitted, it is received and processed by every machine on the
   network. This mode of operation is called broadcasting. Some broadcast systems also
   support transmission to a subset of the machines, something known as multicasting. One
   possible scheme is to reserve one bit to indicate multicasting. The remaining (n – 1)
   address bits can hold a group number. Each machine can "subscribe" to any or all of the
   groups. When a packet is sent to a certain group, it is delivered to all machines subscribing
   to that group.
KTU ASSIST
   point. Point-to-point transmission with one sender and one receiver is sometimes called
   uni-casting.
PART B
KTU ASSIST
                 
6. IEEE has produced 802.4 standards for Token Bus Local Area Networks. IEEE 802.4
   Token bus uses a broadband coaxial cable with analog transmission as shown in figure 4.2.
   Stations physically on a bus, but logically in a ring, with left and right neighbors. The
   stations on the bus or tree form a logical ring. It determines the logical ring of the physical
   bus by the numeric value of the address. Each station knows the identity of the stations
   preceding and following it. The TOKEN regulates the access rights (transmissions), the
   station received TOKEN can transmission time slot is granted, after transmission, pass the
   token to the next DTE. When a token is passed to a successor, the sender waits for evidence
   that it has been transmitted properly (i.e. the successor transmits the next frame). Otherwise
   it may establish a new successor (the next address to the problematic station).
    The access control byte contains a bit called the "token" bit, which is set to 0 if this frame
    is the token. When a station wants to send, it seizes the token and changes that bit to a 1. A
    station wishing to transmit waits until it detects a free token passing by. The operations are
    similar to token ring except more flexible for logical ring definition (can put in essentially
   any order) can recover single-node errors better cover phase-coherent, frequency shift
   keying - uses two frequencies, no phase mismatch. It can avoid much noise by filtering
   everything but these two frequencies similar to token ring mechanism. It has a complex
   maintenance scheme, which have to required: Ring initialization, Add/ delete station
   algorithm, Fault management, Based on predecessor and successor scheme, Recovery and
   Priority. Token Bus has major functions in MAC are Interface, Access Control, Receive,
   Transmit, and RRM Regenerative Repeater machine. Under light loads there is some
   inefficiency. Under heavy loads, the ring functions in a round-robin fashion. Provides a
   regulated access. Must provide for token maintenance. Token Bus has a special frame
   called the "token". When you have the token, you can transmit; when you don't have it,
   you can't.
KTU ASSIST The access control byte contains a bit called the "token" bit, which is set to 0 if this
           frame is the token. When a station wants to send, it seizes the token and changes that
           bit to a 1. A station wishing to transmit waits until it detects a free token passing by.
           The operations are similar to token ring except more flexible for logical ring
           definition (can put in essentially any order) can recover single-node errors better
           cover phase-coherent, frequency shift keying - uses two frequencies, no phase
           mismatch. It can avoid much noise by filtering everything but these two frequencies
           similar to token ring mechanism. It has a complex maintenance scheme, which have
           to required: Ring initialization, Add/ delete station algorithm, Fault management,
           Based on predecessor and successor scheme, Recovery and Priority. Token Bus has
           major functions in MAC are Interface, Access Control, Receive, Transmit, and RRM
           Regenerative Repeater machine. Under light loads there is some inefficiency. Under
           heavy loads, the ring functions in a round-robin fashion. Provides a regulated access.
           Must provide for token maintenance.
7. The HDLC protocol is a general purpose protocol which operates at the data link layer of the
   OSI reference model. The protocol uses the services of a physical layer, and provides either a
   best effort or reliable communications path between the transmitter and receiver (i.e. with
   acknowledged data transfer). The type of service provided depends upon the HDLC mode
   which is used.
   Each piece of data is encapsulated in an HDLC frame by adding a trailer and a header. The
   header contains an HDLC address and an HDLC control field. The trailer is found at the end
   of the frame, and contains a Cyclic Redundancy Check (CRC) which detects any errors
   which may occur during transmission. The frames are separated by HDLC flag sequences
   which are transmitted between each frame and whenever there is no data to be transmitted.
   It is a transmission protocol used at the data link layer (layer 2) of the OSI seven layer model
   for data communications. The HDLC protocol embeds information in a data frame that
   allows devices to control data flow and correct errors. HDLC is an ISO standard developed
KTU ASSIST
   from the Synchronous Data Link Control (SDLC) standard proposed by IBM in the 1970’s.
   For any HDLC communications session, one station is designated primary and the other
   secondary. A session can use one of the following connection modes, which determine how
   the primary and secondary stations interact.
             Normal unbalanced: The secondary station responds only to the primary station.
             Asynchronous: The secondary station can initiate a message.
             Asynchronous balanced: Both stations send and receive over its part of a duplex line.
              This mode is used for X.25 packet-switching networks.
             Information frames, or I-frames, transport user data from the network layer. In
              addition they can also include flow and error control information piggybacked on
              data.
             Supervisory Frames, or S-frames, are used for flow and error control whenever
              piggybacking is impossible or inappropriate, such as when a station does not have
              data to send. S-frames do not have information fields.
             Unnumbered frames, or U-frames, are used for various miscellaneous purposes,
              including link management. Some U-frames contain an information field, depending
              on the type.
PART C
8.
     Subnet mask is a mask used to determine what subnet an IP address belongs to. An IP address
     has two components, the network address and the host address. For example, consider the IP
     address 150.215.017.009. Assuming this is part of a Class B network, the first two numbers
     (150.215) represent the Class B network address, and the second two numbers (017.009)
     identify a particular host on this network.
     Subnetting enables the network administrator to further divide the host part of the address
     into two or more subnets. In this case, a part of the host address is reserved to identify the
     particular subnet. This is easier to see if we show the IP address in binary format.
     The full address is:
     10010110.11010111.00010001.00001001
     The Class B network part is:
     10010110.11010111
     The host address is:
     00010001.00001001
     If this network is divided into 14 subnets, however, then the first 4 bits of the host address
KTU ASSIST
     (0001) are reserved for identifying the subnet.
     The subnet mask is the network address plus the bits reserved for identifying the subnetwork
     -- by convention, the bits for the network address are all set to 1, though it would also work if
     the bits were set exactly as in the network address. In this case, therefore, the subnet mask
     would be 11111111.11111111.11110000.00000000. It's called a mask because it can be used
     to identify the subnet to which an IP address belongs by performing a bitwise AND
     operation on the mask and the IP address. The result is the subnetwork address:
     1. Each router learns about its own links (directly connected networks)
     2. Find directly connected neighbors
     3. Builds a Link-State Packet (LSP) with the state of each directly connected link
     4. Floods the LSP to all neighbors, who stores the received LSPs in a database
     5. Each router uses the database to construct a complete map of the network topology
     6. Computes the best path to each destination network
        b)
        A routing table can be either static or dynamic. A static routing table contains
        information entered manually. A dynamic routing table is updated periodically by
        using one of the dynamic routing protocols such as RIP, OSPF, or BGP
           Dijikstras algorithm
KTU ASSIST
11.     Dijikstras Algorithm:
PART D
OSPF use following five packet types to flow routing information between routers:
       • 3: LSR [Link State Request Packet] – Requests specific link-state records from router
      to router
• 4: LSU [Link State Update Packet] – Sends specifically requested link-state records
• 5: LSAck [Link State Ack Packet] – Acknowledges the above packet types
      LSA types
      There are 5 common LSA types:
KTU ASSIST
13.
Tunneling
If they are two geographically separate networks, which want to communicate with each
other, they may deploy a dedicated line between or they have to pass their data through
intermediate networks.
Tunneling is a mechanism by which two or more same networks communicate with each
other, by passing intermediate networking complexities. Tunneling is configured at both
ends.
When the data enters from one end of Tunnel, it is tagged. This tagged data is then routed
inside the intermediate or transit network to reach the other end of Tunnel. When data exists
the Tunnel its tag is removed and delivered to the other part of the network.
KTU ASSIST
Both ends seem as if they are directly connected and tagging makes data travel through
transit network without any modifications.
Packet Fragmentation
Most Ethernet segments have their maximum transmission unit (MTU) fixed to 1500 bytes.
A data packet can have more or less packet length depending upon the application. Devices
in the transit path also have their hardware and software capabilities which tell what amount
of data that device can handle and what size of packet it can process.
If the data packet size is less than or equal to the size of packet the transit network can
handle, it is processed neutrally. If the packet is larger, it is broken into smaller pieces and
then forwarded. This is called packet fragmentation. Each fragment contains the same
destination and source address and routed through transit path easily. At the receiving end it
is assembled again.
If a packet with DF (don’t fragment) bit set to 1 comes to a router which can not handle the
packet because of its length, the packet is dropped.
When a packet is received by a router has its MF (more fragments) bit set to 1, the router
then knows that it is a fragmented packet and parts of the original packet is on the way.
If packet is fragmented too small, the overhead is increases. If the packet is fragmented too
large, intermediate router may not be able to process it and it might get dropped.
14. Congestion control refers to techniques and mechanisms that can either prevent
    congestion, before it happens, or remove congestion, after it has happened. In general, we
    can divide congestion control mechanisms into two broad categories: open-loop
    congestion control (prevention) and closed-loop congestion control (removal).
KTU ASSIST
A leaky bucket algorithm shapes bursty traffic into fixed-rate traffic by averaging the data
rate. It may drop the
packets if the bucket is full.
Token bucket
15.
    Compare TCP and UDP protocols
There are two types of Internet Protocol (IP) traffic. They are TCP or Transmission Control
Protocol and UDP or User Datagram Protocol. TCP is connection oriented – once a
connection is established, data can be sent bidirectional. UDP is a simpler, connectionless
Internet protocol. Multiple messages are sent as packets in chunks using UDP.
              Function As a message makes its way across       UDP is also a protocol used in message
                       the internet from one computer to       transport or transfer. This is not
                       another. This is connection based.      connection based which means that
                                                               one program can send a load of packets
                Usage TCP is suited for applications that       UDP is suitable for applications that
                      require high reliability, and             need fast, efficient transmission, such
                      transmission time is relatively less      as games. UDP's stateless nature is
                      critical.                                 also useful for servers that answer
                                                                small queries from huge numbers of
                                                                clients.
           Use by other HTTP, HTTPs, FTP, SMTP, Telnet          DNS, DHCP, TFTP, SNMP, RIP,
              protocols                                         VOIP.
    Ordering of data TCP rearranges data packets in the         UDP has no inherent order as all
            packets order specified.                            packets are independent of each other.
                                                                If ordering is required, it has to be
                                                                managed by the application layer.
Speed of transfer The speed for TCP is slower than UDP is faster because error recovery is
KTU ASSIST
                      UDP.                                      not attempted. It is a "best effort"
                                                                protocol.
            Reliability There is absolute guarantee that the    There is no guarantee that the
                        data transferred remains intact and     messages or packets sent would reach
                        arrives in the same order in which it   at all.
                        was sent.
Header Size TCP header size is 20 bytes UDP Header size is 8 bytes.
    Common Header Source port, Destination port, Check          Source port, Destination port, Check
            Fields Sum                                          Sum
   Streaming of data Data is read as a byte stream, no          Packets are sent individually and are
                     distinguishing indications are             checked for integrity only if they
                     transmitted to signal message              arrive. Packets have definite
                     (segment) boundaries.                      boundaries which are honored upon
                                                                receipt, meaning a read operation at the
                                                                receiver socket will yield an entire
                                                                message as it was originally sent.
congestion control.
  Data Flow Control TCP does Flow Control. TCP requires UDP does not have an option for flow
                    three packets to set up a socket     control
                    connection, before any user data can
                    be sent. TCP handles reliability and
                    congestion control.
     Error Checking TCP does error checking and error                UDP does error checking but simply
                    recovery. Erroneous packets are                  discards erroneous packets. Error
                    retransmitted from the source to the             recovery is not attempted.
                    destination.
KTU ASSIST
  Acknowledgement Acknowledgement segments                           No Acknowledgment
IP Address
IP address is a unique logical address assigned to a machine over the network. An IP address
exhibits the following properties:
          Each of the 4 bytes is represented by a number from 0 to 255, separated with dots.
           For example 137.170.4.124
IP address is 32-bit number while on the other hand domain names are easy to remember
names. For example, when we enter an email address we always enter a symbolic string such
as webmaster@tutorialspoint.com.
Uniform Resource Locator (URL)
Uniform Resource Locator (URL) refers to a web address which uniquely identifies a
document over the internet.
URL Types
There are two forms of URL as listed below:
1. Absolute URL
2. Relative URL
ABSOLUTE URL
Absolute URL is a complete address of a resource on the web. This completed address
comprises of protocol used, server name, path name and file name.
KTU ASSIST
          tutorialspoint.com is the server name.
 FTP
 https
 Gopher
 mailto
 news
RELATIVE URL
Relative URL is a partial address of a webpage. Unlike absolute URL, the protocol and
server part are omitted from relative URL.
Relative URLs are used for internal links i.e. to create links to file that are part of same
website as the WebPages on which you are placing the link.
Domain Names
Domain Name is a symbolic string associated with an IP address. There are several domain
names available; some of them are generic such as com, edu, gov, net etc, while some
country level domain names such as au, in, za, usetc.
KTU ASSIST
In the above diagram each subtree represents a domain. Each domain can be partitioned into
sub domains and these can be further partitioned and so on.
Name Server
Name server contains the DNS database. This database comprises of various names and
their corresponding IP addresses. Since it is not possible for a single server to maintain
entire DNS database, therefore, the information is distributed among many DNS servers.
Zones
Zone is collection of nodes (sub domains) under the main domain. The server maintains a
database called zone file for every zone.
If the domain is not further divided into sub domains then domain and zone refers to the same
thing.
The information about the nodes in the sub domain is stored in the servers at the lower levels
however; the original server keeps reference to these lower levels of servers.
KTU ASSIST
TYPES OF NAME SERVERS
Following are the three categories of Name Servers that manages the entire Domain Name
System:
1. Root Server
2. Primary Server
    3. Secondary Server
ROOT SERVER
Root Server is the top level server which consists of the entire DNS tree. It does not contain
the information about domains but delegates the authority to the other server
PRIMARY SERVERS
Primary Server stores a file about its zone. It has authority to create, maintain, and update
the zone file.
SECONDARY SERVER
Secondary Server transfers complete information about a zone from another server which
may be primary or secondary server. The secondary server does not have authority to create
or update a zone file.
DNS Working
DNS translates the domain name into IP address automatically. Following steps will take
you through the steps included in domain resolution process:
          When we type www.tutorialspoint.com into the browser, it asks the local DNS
           Server for its IP address.
           Here the local DNS is at ISP end.
          When the local DNS does not find the IP address of requested domain name, it
           forwards the request to the root DNS server and again enquires about IP address of
           it.
          The root DNS server replies with delegation that I do not know the IP address of
           www.tutorialspoint.com but know the IP address of DNS Server.
 The local DNS server then asks the com DNS Server the same question.
          The com DNS Server replies the same that it does not know the IP address of
           www.tutorialspont.com but knows the address of tutorialspoint.com.
KTU ASSIST
          Then the local DNS asks the tutorialspoint.com DNS server the same question.
          Now, the local DNS sends the IP address of www.tutorialspoint.com to the computer
           that sends the request.
17. Two mail access protocols
E-mail Protocols are set of rules that help the client to properly transmit the information to
or from the mail server. various protocols such as SMTP, POP, and IMAP.
IMAP Protocol:
IMAP (Internet Message Access Protocol) – Is a standard protocol for accessing e-mail
from your local server. IMAP is a client/server protocol in which e-mail is received and held
for you by your Internet server. As this requires only a small data transfer this works well
even over a slow connection such as a modem. Only if you request to read a specific email
message will it be downloaded from the server. You can also create and manipulate folders or
mailboxes on the server, delete messages etc.
POP3 Protocol:
The POP (Post Office Protocol 3) protocol provides a simple, standardized way for users to
access mailboxes and download messages to their computers.
When using the POP protocol all your eMail messages will be downloaded from the mail
server to your local computer. You can choose to leave copies of your eMails on the server as
well. The advantage is that once your messages are downloaded you can cut the internet
connection and read your eMail at your leisure without incuring further communication costs.
On the other hand you might have transferred a lot of message (including spam or viruses) in
which you are not at all interested at this point.
SMTP Protocol:
The SMTP (Simple Mail Transfer Protocol) protocol is used by the Mail Transfer Agent
(MTA) to deliver your eMail to the recipient's mail server. The SMTP protocol can only be
used to send emails, not to receive them. Depending on your network / ISP settings, you may
only be able to use the SMTP protocol under certain conditions
HTTP Protocol:
The HTTP protocol is not a protocol dedicated for email communications, but it can be used
for accessing your mailbox. Also called web based email, this protocol can be used to
KTU ASSIST
compose or retrieve emails from an your account. Hotmail is a good example of using HTTP
as an email protocol.
SMPTP
SMTP stands for Simple Mail Transfer Protocol. It was first proposed in 1982. It is a
standard protocol used for sending e-mail efficiently and reliably over the internet.
Key Points:
          Apart from transferring e-mail, SMPT also provides notification regarding incoming
           mail.
          When you send e-mail, your e-mail client sends it to your e-mail server which further
           contacts the recipient mail server using SMTP client.
          These SMTP commands specify the sender’s and receiver’s e-mail address, along
           with the message to be send.
          In case, message cannot be delivered, an error report is sent to the sender which
            makes SMTP a reliable protocol.
SMTP Commands
The following table describes some of the SMTP commands:
        HELLO
1
        This command initiates the SMTP conversation.
        EHELLO
2       This is an alternative command to initiate the conversation. ESMTP indicates that the
        sender server wants to use extended SMTP protocol.
KTU ASSIST
        MAIL FROM
3
        This indicates the sender’s address.
        RCPT TO
4       It identifies the recipient of the mail. In order to deliver similar message to multiple
        users this command can be repeated multiple times.
        SIZE
5
        This command let the server know the size of attached message in bytes.
        DATA
6       The DATA command signifies that a stream of data will follow. Here stream of data
        refers to the body of the message.
        QUIT
7
        This commands is used to terminate the SMTP connection.
        VERFY
8       This command is used by the receiving server in order to verify whether the given
        username is valid or not.
9       EXPN
        It is same as VRFY, except it will list all the users name when it used with a
distribution list.
IMAP
IMAP stands for Internet Mail Access Protocol. It was first proposed in 1986. There exist
five versions of IMAP as follows:
1. Original IMAP
2. IMAP2
3. IMAP3
4. IMAP2bis
5. IMAP4
Key Points:
          IMAP allows the client program to manipulate the e-mail message on the server
            without downloading them on the local computer.
KTU ASSIST
          The e-mail is hold and maintained by the remote server.
          It enables us to take any action such as downloading, delete the mail without reading
            the mail.It enables us to create, manipulate and delete remote message folders called
            mail boxes.
IMAP Commands
The following table describes some of the IMAP commands:
        IMAP_LOGIN
1
        This command opens the connection.
        CAPABILITY
2
        This command requests for listing the capabilities that the server supports.
        NOOP
3       This command is used as a periodic poll for new messages or message status updates
        during a period of inactivity.
        SELECT
4
        This command helps to select a mailbox to access the messages.
        EXAMINE
5
        It is same as SELECT command except no change to the mailbox is permitted.
        CREATE
6
        It is used to create mailbox with a specified name.
        DELETE
7
        It is used to permanently delete a mailbox with a given name.
        RENAME
8
        It is used to change the name of a mailbox.
LOGOUT
KTU ASSIST
        This command informs the server that client is done with the session. The server must
9
        send BYE untagged response before the OK response and then close the network
        connection.
POP
POP stands for Post Office Protocol. It is generally used to support a single client. There are
several versions of POP but the POP 3 is the current standard.
Key Points
          Since POP supports offline access to the messages, thus requires less internet usage
           time.
          POP commands are generally abbreviated into codes of three or four letters. Eg.
           STAT.
POP Commands
The following table describes some of the POP commands:
       LOGIN
1
       This command opens the connection.
       STAT
2
       It is used to display number of messages currently in the mailbox.
       LIST
3
       It is used to get the summary of messages where each message summary is shown.
       RETR
4
       This command helps to select a mailbox to access the messages.
       DELE
5
       It is used to delete a message.
KTU ASSIST
       RSET
6
       It is used to reset the session to its initial state.
       QUIT
7
       It is used to log off the session.
          One of the main responsibilities of ICMP is to report errors. Although technology has
           produced increasingly reliable transmission media, errors still exist and must be
           handled.
          IP is an unreliable protocol. This means that error checking and error control are not a
           concern of IP.
          ICMP was designed, in part, to compensate for this shortcoming. However, ICMP
           does not correct errors-it simply reports them. Error correction is left to the higher-
           level protocols.
          Error messages are always sent to the original source because the only information
           available in the datagram about the route is the source and destination IP addresses.
          ICMP uses the source IP address to send the error message to the source (originator)
           of the datagram.
          Five types of errors are handled: destination unreachable, source quench, time
           exceeded, parameter problems, and redirection (see figure1).
KTU ASSIST
    
    
           Destination Unreachable: When a router cannot route a datagram or a host cannot
           deliver a datagram, the datagram is discarded and the router or the host sends a
           destination-unreachable message back to the source host that initiated the datagram.
           Source Quench: The source-quench message in ICMP was designed to add a kind of
           flow control to the IP. When a router or host discards a datagram due to congestion, it
           sends a source-quench message to the sender of the datagram. This message has two
           purposes. First, it informs the source that the datagram has been discarded. Second, it
           warns the source that there is congestion somewhere in the path and that the source
           should slow down (quench) the sending process.
          Time Exceeded: When the time-to-live value reaches 0, after decrementing, the
           router discards the datagram. However, when the datagram is discarded, a time-
           exceeded message must be sent by the router to the original source. Second, a time-
           exceeded message is also generated when not all fragments that make up a message
           arrive at the destination host within a certain time limit.
          Parameter Problem: Any ambiguity in the header part of a datagram can create
           serious problems as the datagram travels through the Internet. If a router or the
           destination host discovers an ambiguous or missing value in any field of the datagram,
           it discards the datagram and sends a parameter-problem message back to the source.
          Redirection: This concept of redirection is shown in Figure 2. Host A wants to send a
           datagram to host B. Router R2 is obviously the most efficient routing choice, but host
           A did not choose router R2. The datagram goes to R1 instead. Router R1, after
           consulting its table, finds that the packet should have gone to R2. It sends the packet
           to R2 and, at the same time, sends a redirection message to host A. Host A's routing
           table can now be updated.
II) Query:
In addition to error reporting, ICMP can diagnose some network problems. This is
accomplished through the query messages, a group of four different pairs of messages, as
shown in Figure3
KTU ASSIST
    
    
           Echo Request and Reply: The echo-request and echo-reply messages are designed
           for diagnostic purposes. Network managers and users utilize this pair of messages to
           identify network problems.
           Timestamp Request and Reply: Two machines (hosts or routers) can use the
           timestamp request and timestamp reply messages to determine the round-trip time
           needed for an IP datagram to travel between them. It can also be used to synchronize
           the clocks in two machines.
          Address-Mask Request and Reply: If the host knows the address of the router, it
           sends the request directly to the router. If it does not know, it broadcasts the message.
           The router receiving the address-mask-request message responds with an address-
           mask-reply message, providing the necessary mask for the host.
          Router Solicitation and Advertisement: A host that wants to send data to a host on
           another network needs to know the address of routers connected to its own network.
           Also, the host must know if the routers are alive and functioning. The router-
           solicitation and router-advertisement messages can help in this situation.
          Checksum: In ICMP the checksum is calculated over the entire message (header and
           data).
The following table lists the important differences between IPv4 and IPv6.
IPv4 IPv6
IPv4 addresses are 32 bit length. IPv6 addresses are 128 bit length.
IPv4 addresses are binary numbers represented       IPv6      addresses are binary         numbers represented
in decimals.                                        in hexadecimals.
KTU ASSIST
                                                    No option     fields,    but IPv6   Extension    headers are
Options fields are available in IPv4 header.
                                                    available.
Internet Group Management Protocol (IGMP) is        IGMP is replaced with Multicast Listener Discovery
used to manage multicast group membership.          (MLD) messages.
         The address resolution protocol (arp) is a protocol used by the Internet Protocol (IP),
         specifically IPv4, to map IP network addresses to the hardware addresses used by a data link
protocol. The protocol operates below the network layer as a part of the interface between the
OSI network and OSI link layer. It is used when IPv4 is used over Ethernet.
The term address resolution refers to the process of finding an address of a computer in a
network. The address is "resolved" using a protocol in which a piece of information is sent by
a client process executing on the local computer to a server process executing on a remote
computer. The information received by the server allows the server to uniquely identify the
network system for which the address was required and therefore to provide the required
address. The address resolution procedure is completed when the client receives a response
from the server containing the required address.
There are four types of arp messages that may be sent by the arp protocol. These are
identified by four values in the "operation" field of an arp message. The types of message are:
    1.     ARP request
    2.     ARP reply
    3.     RARP request
    4.     RARP reply
KTU ASSIST
     Format of an arp message used to resolve the remote MAC Hardware Address (HA)
ARP working
When an incoming packet destined for a host machine on a particular local area network
arrives at a gateway, the gateway asks the ARP program to find a physical host or MAC
address that matches the IP address. The ARP program looks in the ARP cache and, if it finds
the address, provides it so that the packet can be converted to the right packet length and
format and sent to the machine. If no entry is found for the IP address, ARP broadcasts a
request packet in a special format to all the machines on the LAN to see if one machine
knows that it has that IP address associated with it. A machine that recognizes the IP address
as its own returns a reply so indicating. ARP updates the ARP cache for future reference and
then sends the packet to the MAC address that replied.