Icmp process, Computer Networking

Assignment Help:

Some of the ?elds of IP and ICMP datagrams will be ?xed, some will be settable by the application, and others will computed according to the situation. You must set all ?elds of the IP header correctly. Two ?elds have ?xed and known values: the version is 4, and all service type bits are always 0. The header's protocol ?eld will be set to 1 for ICMP datagrams and 17 for ordinary data-carrying datagrams.

(Seventeen denotes UDP-we'll pretend that there is a real UDP application above IP). Datagram IDs should start at 1 and go up with each new datagram sent. Implement only the "record route" option. Details of this option are discussed below.

Use the following IP addresses:

  • A = 192.168.0.2
  • B = 192.168.0.3
  • R1 interface to A and B = 192.168.0.1
  • C = 10.0.0.2
  • D = 10.0.0.3
  • R2 interface to C and D = 10.0.0.1
  • R1 interface to R2 = 172.16.20.49
  • R2 interface to R1 = 172.16.20.50

Remember that IP datagrams forwarded by a router retain their original IP source address; the router does not substitute its own address in the source ?eld.

A few ICMP messages must be implemented. If a router decrements a TTL ?eld down to 0, it should send an ICMP "time exceeded" message to the originating host and discard the datagram. Routers should also generate ICMP "destination unreachable" messages for three reasons:
1. "Destination network unknown" (i.e., the router has no route to the destination network).

2. "Destination host unknown" (i.e., the destination network is OK but the host part of the IP address is bogus).

3. "Fragmentation needed and don't-fragment bit set." Set the ICMP type and code values correctly. Routers must maintain a very small routing table. 2 R1 should have routes to 192.168.0.2, 192.168.0.3, and the network 10. If it receives a datagram whose destination network is anything but 10 or 192.168, it should send a "destination unreachable-destination network unknown" ICMP message to the source IP address then drop the datagram. R1 should route any datagram destined to network 10 to R2. It should route datagrams destined to 192.168.0.2 and 192.168.0.3 to A and B, respectively. Any datagram addressed to network 192.168 but not to hosts 0.2 or 0.3 should result in a "destination unreachable-destination host unknown" ICMP message. R2 should behave similarly. Your code must set all remaining IP ?elds according to conditions. In particular, routers must decrement the TTL, discard the datagram if TTL reaches zero, and re-compute the checksum otherwise. You must implement fragmentation at the routers and reassembly at the hosts.


Related Discussions:- Icmp process

Link state packet - network layer and routing , Link State Packet When ...

Link State Packet When  a router floods  the network  with information about its  neighbourhood. It is said to  be advertising. The basis of this  advertising is  a short  pack

Name the building blocks of client/server?, There are three building blocks...

There are three building blocks of client/server a) The client   b) The server and   c)  Middleware.

What is point to point link, What is point to point link? It refers to ...

What is point to point link? It refers to a direct connection among two computers on a network. A point to point connection does not require any other network devices other tha

Delivering message through lan, Delivering message through LAN: We hav...

Delivering message through LAN: We have to devise method for delivering message through LAN phase to single, specific destination device. Sending device uses a hardware addres

What is beaconing, Normal 0 false false false EN-IN X...

Normal 0 false false false EN-IN X-NONE X-NONE MicrosoftInternetExplorer4

What is cross over cable, Q. What is Cross over cable? - Cross the crit...

Q. What is Cross over cable? - Cross the critical pair to properly transmit, align and receive signals on devices with like connections. - Pin 1 connected to pin 3 as well a

What is multiplexing, What is Multiplexing? Multiplexing is the set of ...

What is Multiplexing? Multiplexing is the set of techniques that permits the simultaneous transmission of multiple signals across a single data link.

Show example on check sum, Q. Show Example on Check Sum? Data: 10...

Q. Show Example on Check Sum? Data: 10101001 00111001 Computing Checksum: 10101001 00111001 --------------- Sum 11100010 Receiver Side: 10101

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd