CSE 461 15wi: Homework 1
Out: Friday, January 30, 2015
Due: Friday, February 6, 2015, 11:59 PM
Turnin: Online, .pdf or .txt file, course dropbox
Teams No, do this individually
Part 1: Questions from Chapter 2
- Questions P4 (HTTP), P5 (HTTP), and P26 (Bittorrent).
- (This is an adaptation of question P19, part a, from the text.)
In this problem we will use the dig tool available on Linux
hosts to explore the hierarchy of DNS servers. Recall that in Figure
2.21, a DNS server higher in the DNS hierarchy delegates a DNS query to
a DNS server lower in the hierarchy, by sending back to the DNS client
the name of that lower-level DNS server. First read the man page for
dig, and then answer the following questions:
- Starting at the root DNS server (from one of the servers
[a-m].root-servers.net), initiate a sequence of queries to
resolve the name attu.cs.washington.edu. to one or more IP addresses.
Show the list of the names and IP addresses of DNS servers in the delegation
chain in answering your query, as well as the IP addresses when the name
is finally resolved.
- Does attu.cs.washington.edu. have an IPv6 address?
- Does attu1.cs.washington.edu. have an IPv6 address?
Part 2: SIP questions
(There are many sources of information about SIP, including the text. The most
complete source is RFC 3261.)
-
The questions below ask you to demonstrate your understanding of the
importance of some of the components of a SIP header by giving an
example of something that could go wrong if that component were not
part of the header. To be specific, we use this example header (from
the example in Section 4 of the RFC, covered in more detail in Section
24):
INVITE sip:bob@biloxi.com SIP/2.0
Via: SIP/2.0/UDP pc33.atlanta.com;branch=z9hG4bK776asdhds
Max-Forwards: 70
To: Bob <sip:bob@biloxi.com>
From: Alice <sip:alice@atlanta.com>;tag=1928301774
Call-ID: a84b4c76e66710@pc33.atlanta.com
CSeq: 314159 INVITE
Contact: <sip:alice@pc33.atlanta.com>
Content-Type: application/sdp
Content-Length: 142
In each subquestion we imagine removing only the thing mentioned and sending the rest of the
header as shown above.
- the request method (INVITE, in the example)
(Sample Answer) If the header didn't specify a method, the receiver would have no way to
know if the sender wanted to start a dialog (INVITE) or terminate a previous
invitation (CANCEL).
- the Call-ID header
- the Via header
- the Content-Length header
- the Max-Forwards header
- the tag field in the From header
- When the INVITE shown above eventually reaches Bob, and he
answers, his device will append a tag field to the
To header, much like the one Alice appended to the
From header. Is it important that Bob append the To tag?
Could Alice simply have picked the tag and appended it to the To
header with her initial message?