Hints for Exercises: Chapter 6

  1. Write detailed notes on each field of the IPv4 header. What limitations do the sizes of each field imply?

    Limits include

  2. Investigate the effect that packet size and therefore fragmentation has on performance: find a machine where you can alter the MTU and discover the effect it has on the speed of sending large files.

    Experimental. Tools to measure performance. We would expect to see that fragmentation degrades performance and larger MTUs increase performance.

    It is still observed that a MTU that is too large can simply fail due to ICMP "Fragmentation needed but DF set" being blocked.

  3. Find the most distant host (in terms of hops) that you can (using traceroute). Does geographic distance have any bearing on the TTL distance? Explain with examples.

    Often traceroute is set to give up after 30 hops, so you may need to set the limit higher. Routes of more than 30 hops are common.

    Geographic distance has only a weak correlation with hop count. Some routes go via ATM (or other) tunnels and this can either decrease or increase the overall hop count. It can decrease hop count by tunnelling a long distance in a single IP hop. On the other hand it can increase the count: this is particularly true for ADSL (IP over ATM over ADSL) from the home in the UK. You may find that the route from home to work (just along the road from where you live) is via your ISP which can be hundreds of miles and a dozen hops away.

    Other ISPs have complicated internal routing: one route from the UK to New Zealand spins though a dozen Sprintlink routers in the USA before it crosses the Pacific.

  4. IP optional headers are not often used. Look in detail at the record route and timestamp options and formulate reasons why this is so.

    The space to store optional headers is quite limited (by the size of the header length field). Thus useful items such as record route don't have much space to store their results.

    Source routing options are/were used to debug routing in the Internet, but now better tools exist. Source routing is making a slight comeback due to mobile IP.

    Security and authentication headers are rarely used: IPSec is to be preferred, but even this is taking its time in being adopted.

  5. Write down the differences between
    • (a) uni-
    • (b) broad-
    • (c) multi- and
    • (d) anycasts.

    Give examples of applications that each are best suited to.

  6. Describe the issues related to broadcast on
    • (a) an Ethernet,
    • (b) a Token Ring,
    • (c) a point-to-point connection, such as PPP,
    • (d) a tunnel over a connection-based protocol, such as ATM.

  7. Some TV and radio broadcasters are starting to support multicasting to distribute their programmes. Find out the level of support for multicasting for various machines that are available to you.

    Multicast is pretty well supported on modern operating systems and fairly well in modern routers. There are questions of how well multicast will scale to very large numbers of sources: will routers be able to cope with the amount of information that this will require them to store?

    The BBC has experimented with multicast streaming of its TV and radio stations. The result is fairly good, but there are issues of quality of service to be addressed: it is not unusual for the stream to stutter or halt temporarily due to congestion upstream.

  8. Discuss the problems and solutions of connection-oriented multicasting. How far have proposed solutions progressed?

    Problems: with multicasting you don't really want to know how many hosts are listening to the multicast stream. The major advantage of multicasting is that it only requires minimal resources from the server, so adding in extra state for each client is defeating some of the purpose.

  9. Discuss the problems and solutions of connection-oriented anycasting. How far have proposed solutions progressed?

    Problems: anycast should really distribute load amongst the servers, but a connection is to just one server. And the routers along the path from client to server would need to remember which host is connected to which server. Compare with multicast, where a router need only know that some host needs packets to be relayed, while anycast needs to know which hosts and where they are.

  10. Look at the IP addresses on several machines that are available to you. Determine which classes of network they are in, or whether they are CIDR. Next, look at their router tables and determine the kind of subnetting your machines employ.

    Experimental. Various operating system tools (like ifconfig and route) give information about network configurations.

  11. Repeat Question 1 but for IPv6.

    Limits include

    Having fewer header fields actually means fewer limitations than IPv4.

  12. If your machine has DHCP, find out what the lease time is. Also find out what other information the DHCP server has provided to your machine.

    There is usually a log file somewhere that contains information about the workings of DHCP. Check your system's documentation. At a minimum, DHCP supplies IP address, netmask, DNS servers and gateway, though some installations provide more.

  13. Investigate the way your mobile phone copes with mobile networking. This may involve digging into the way GSM works.

    Somewhat open-ended. Much documentation exists on the Web.

  14. Write detailed notes of the purpose of each type and code of ICMP message.

    Links. Only a few of the ICMP messages are common in practice: echo request; echo reply; destination unreachable; time exceeded.

  15. Use ping to find out whether various machines across the Internet are alive. Sometimes ping reports a machine down, but nevertheless the machine is active in some other way, e.g., serving Web pages. Explain what is happening and discuss other ways of determining is a machine is live.

    ICMP is often blocked by paranoid systems administrators, so ping (echo request) would not work. Workarounds include sending UDP packets to unlikely ports (as in traceroute) or trying to connect to common services (such as mail or Web). Some tools allow the user to choose between a variety of probes.

  16. Use traceroute to find the route that packets take to various machines across the Internet. Try remote countries. Do the routes taken correspond to your intuition?

    Routing is often driven by political and economic requirements rather than technical ones, so often you find rather strange routes. For example, many routes from the UK to other countries pass through the USA, probably because the USA has a good Internet infrastructure and can provide good connections and cheap transit.

  17. Find a destination such that packets regularly take more than one route to get there. Investigate why.

    This might be quite difficult as most routes appear to be quite stable these days.

  18. Some systems administrators block ICMPs as they think they are a security risk. Go through the list of ICMP messages and determine those for which this is true and those for which this view is counterproductive.

    For example: it doesn't make sense to block "time expired" ICMPs as these are included in the IP for good reasons; on the other hand "echo request" is primarily used to determine the existence of hosts rather than essential control (but it does play a useful part in DHCP).

Previous Index Next

Creative Commons License This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 License.