Vous êtes sur la page 1sur 6

Robert Spann September 29, 2013

COMP 204 Homework 2


Answer the following questions based on your reading of the text book, the module key points, and the instructors presentation this week. 1. [4 points] Domain Name Service (DNS) performs the translation of web names to IP addresses. Bring up a command window and enter the commands in yellow: C:\>nslookup Default Server: some.server.name.here Address: W.X.Y.Z > set debug > set recurse > www.amazon.com Insert a screen shot of the results. Explain in general the steps of how your computer finds the correct address for www.amazon.com. Once the nslookup command is issued, a name query begins at the client computer and is passed to a local resolver for resolution. When found, the computer then displays the default DNS server information (Dye, McDonald, & Rufi, 2008). When looking for the address of a host or domain, the computer will query the local host to see if the information being requested is in its cache. If the name cannot be resolved on the local host, the resolution process will continue with the client querying a DNS server in an attempt to resolve the query (Dye, McDonald, & Rufi, 2008).

What is the name server your machine consults?

The name server my machine consults cdns02.comcast.net. What is one authoritative name server for www.amazon.com?

The authoritative name server for www.amazon.com is cdns02.comcast.net.

How long can that name be cached?

That name will be cached for 7 days.

2. [2 points] What is a port in TCP and UDP? A port in TCP and UDP is a software operation that distinctively recognizes a software process on a computer that utilized TCP or UDP (Dye, McDonald, & Rufi, 2008).

3. [4 points] Describe the purpose of windowing in TCP/IP connections and its relationship to throughput, reliability, and retransmission. Not every host can send or receive data as fast as other hosts on the network for various reasons. TCP uses windowing to make possible for two hosts in a TCP/IP conversation to agree on how much data can be sent and received at a given time (Dye, McDonald, & Rufi, 2008). To maintain flow control, TCP can utilize dynamic window sizes. As network resources become strained, the window size can be reduced which would require more frequent acknowledgements; thus slowing the rate of transmission. TCP can also allow for larger window sizes when there is little network activity (Dye, McDonald, & Rufi, 2008). TCP windowing facilitates reliable conversations between hosts by resending the segments the receiver has not acknowledged. This ensures all data sent will be received. (Dye, McDonald, & Rufi, 2008). Windowing also helps manage data loss. Once a segment is received by the receiving host it will send an acknowledgement to the sending host. Should there be no acknowledgement from the receiving host, the sending host will resend unacknowledged data (Dye, McDonald, & Rufi, 2008).

4. [4 points] Explain the differences between TCP and UDP in terms of characteristics and the ISO Layers used. Where would you use TCP and where would you use UDP? The differences between TCP and UDP are the ways that each protocol performs its duties. TCP (Transmission Control Protocol) is very connections oriented. It has a high-overhead for data delivery (20 bytes); however, this allows TCP to gain functionality. These additional

functions include flow control, same order delivery, and reliable delivery (Dye, McDonald, & Rufi, 2008). UDP (User Datagram Protocol) sends segments of communication called datagrams. These datagrams provide UDP with low-overhead data delivery (8 bytes) by sending them "best effort". This means that UDP does not use an acknowledgement system to ensure the reliable delivery of information (Dye, McDonald, & Rufi, 2008). You would use TCP for file transfers, e-mail, and web browsers. You would use UDP for video streaming, Domain Name System (DNS), and voice over IP (VoIP) (Dye, McDonald, & Rufi, 2008).

5. [3 points] It is said that TCP offers reliable transport and UDP does not. In this context, what does reliable mean? Can you build reliable services on top of UDP? In the context "TCP offers 'reliable' transport" refers to TPC's efforts to ensure that all data that has been sent gets to its destination (Dye, McDonald, & Rufi, 2008). You cannot build reliable services on top of UDP because it is a connectionless protocol. It simply cannot provide the sophisticated processes that TCP can (Dye, McDonald, & Rufi, 2008).

6. [3 points] Explain how the TCP synchronizing handshake works. Why does UDP not have a similar handshake? The TCP synchronizing handshake works something like this. Host A sends a TCP SYN (SYNchronize) packet to Host B. When Host B receives Host A's SYN packet, it sends a SYN-ACK (SYNchronize-ACKnowledgement) packet to Host A. Once Host A receives the SYN-ACK packet from Host B, Host A sends an ACK (ACKnowledgement) packet to Host B, which it receives (Dye, McDonald, & Rufi, 2008).

UDP is a connectionless protocol. It doesn't establish a connection between hosts as TCP does, so UDP does not perform the 3-way handshake that TCP does. UDP just transmits its data out on the network and hopes for the best (Dye, McDonald, & Rufi, 2008).

7. [5 points] Using your Virtual Machine setup from Lab 1, capture the packets (using Router 0) in the conversation between PC0 and cs.franklin.edu as you visit http://cs.franklin.edu/~whittakt/http/ (using PC0). Examine the capture in Wireshark. Filter on the HTTP protocol only. Insert a screen shot of Wireshark showing these packets. What does the HTTP protocol look like? Draw a diagram showing the back-and-forth messages. What ports are being used for communication? What transport layer protocol is being used? Hint: see http://wiki.wireshark.org/DisplayFilters for details on how to filter in Wireshark.

What does the HTTP protocol look like? Draw a diagram showing the back-and-forth messages.

What ports are being used for communication? The ports being used for communication are ports 80, and 1045. What transport layer protocol is being used? The transport layer protocol being used is TCP.

Vous aimerez peut-être aussi