Assignment 3
The assignment is due Thursday, March 6, 6.59 pm EDT, to be
submitted via CourseWorks.
Some of the questions below are research questions, where you are
asked to find information about a particular issue. You may use the
Engineering Library, any text books you have, one of the paper from the
class readings, or the web to come up with answers. Be sure to cite
your sources. Generally, a paragraph or two should be sufficient to
answer the question. There is no need to write a tutorial.
- Routing: Using a Looking Glas
site, determine the AS path to Columbia University from at least ten
origins (networks). About half your sources should be outside the US.
Identify the names of the networks (AS), possibly using other sources.
Draw a picture showing the "sink tree" of how the world reaches
Columbia. The Columbia prefix is 128.59.0.0/16.
- Public key cryptography: To experiment with public key
cryptography, you will install a public and private key pair for ssh
login without passwords. The process is described in a Linux Journal
article. Explain how this system works. If you have installed the
private key on your laptop, and the public key on, say, a CLIC host, can
you log in from the CLIC host into your laptop? Why or why not?
- Hashing: Experiment with the Java
hashCode() function
and compare it to the MD5 function, both operating on strings. You
should evaluate:
- The range returned;
- The effect of reversing two characters in the string;
- The CPU cost (time to, say, run 10,000 iterations of each function).
- IPv6: (a) Find out how IPv6 handles fragmentation? How
does this differ from IPv4? (b) What is an IPv6 jumbogram? Why and
when is this useful?
- IPv6: To support IPv6 access across an IPv4 "cloud", there are now
tunnel providers. Using, for example, the Hurricane Electric tunnel, access the
IPv6.org web site using IPv6. Document your success with a screen dump
- the web site indicates the IPv4 or IPv6 address you are using.
- IPv6: Extend the UDP/TCP client/server program from assignment 1
support IPv6, including AAAA records, using your experience from
assignment 2. It is desirable, but not required, to support DNS lookups
over IPv6. Hint: On Solaris and Linux systems, try man ipv6
to discover how to use IPv6 sockets, on MacOS man 4 ip6. See
also the various Linux
documents on this topic. As in the first assignment, include a packet
trace (tcpdump).
- HIP: We only sketched in class how HIP handles mobility. Research
how HIP interacts with mobility, citing papers, RFCs or Internet drafts
as necessary. You only need to provide an outline of the solution that
indicates how nodes convey address changes to each other and whether the
initial means of making contact is affected.