CSP 214 Written Homework 4 Solutions - Fall, 1997 1. Assume that node A is already using the address, when node B sends out the "duplicate" ARP request. The neighboring caches will become temporarily polluted since the ARP request from B host will cause all adjacent node's to replace A's link-layer in their caches with B's address. Thus, even if B chooses not to use the address after getting a response to its ARP request, other nodes will send traffic intended for A to B. This will last until either node A sends out a new ARP request (which will update all caches at once) or when replying to individual nodes that ARP for A's address. So yes, by the time B realizes that the IP address it wants to use is a duplicate, other nodes will have incorrect entries in their caches. 2. If the address is nonexistent, the router on the remote network would have to broadcast an ARP request for that address. Being unable to receive a reply, the router would possibly retry for some times, which generates further broadcast traffic. 3. The result will not be catastrophic. IP may process the packet incorrectly, but the result of that processing is unlikely to do any serious damage. For example, a datagram might be delivered to the wrong endpoint (if, for example, the destination address field became corrupted). However, higher layer protocols are likely to reject such packets due to higher layer checksums, etc. Note also that in IPv4, checksums reduce the probability that errors will slip byundetected. However, they do not reduce the probability to 0. Thus, if an erroneous packet could really cause serious problems, then even IPv4 wouldn't be immune even with the checksums it uses. 4. If a unicast IP packet is sent using link-layer broadcast (or multicast), it is likely that the same packet will be received by multiple nodes. If all of those nodes generated ICMP messages at the same time, a flood of messages (e.g., a "broadcast storm" -- if all those error messages triggered the generation of ARP messages) would result. Having one message trigger an explosion of response messages is generally considered to be bad thing. 5. Assigning a single CIDR address for NCREN is not possible as 60 is not a power of two and hence the 60 B addresses cannot be represented with a common prefix without also covering networks that do not belong to NCREN. 6. A host can connect to more than one physical link (network). Since an IP address is comprised of network part and the host part, multiple IP address is necessary for multiple network interfaces. Otherwise the redirect mechanism cannot work correctly. Also, multicast routers use different IP addresses to tell from which network a multicasting packet is coming in order to suppress duplicated packets. A host that responds to a multicast message sent to 'all host on the network' must know from which interface it receives the message. 7. No, the placement is not arbitrary. A different version might have completely different packet header layout (e.g., have a different header length), so fixing the version field as the first field of the header makes it possible to parse the version field without having to understand any other field.f 8. When the IP layer receives the fragmented packets without the fragment more bit set, it will just treat them as unfragmented packets, strip off the IP header and relay the remaining data up to the appropriate higher-layer protocol. The first fragment, which contains the TCP segment header will be handed to TCP, but the TCP layer will almost certainly reject it because the TCP checksum will not be correct. Subsequent fragments will likely be rejected for similar reasons. 9. No. ARP is used to determine the link-layer address of a unicast IP address. When sending IP multicast traffic, the Ethernet address of an IP multicast packet is determined algorithmically without sending additional packets on the wire. In the Ethernet case, for instance, the sender simply ORs the rightmost 23 bits of the IP multicast address to the well-known Ethernet address 01.00.5e.00.00.00. The IP multicast packet is then sent to the resultant link-layer addresss.