CS 453 KC - Exam 1
Cumulative ACK. What is meant by a cumulative acknowledgment, ACK(n)?
A cumulative ACK(n) acks all packets with a sequence number up to and including n as being received.
2.2-9 Why Web Caching? Which of the following are advantages of using a web cache? Select one or more answers.
Caching generally provides for a faster page load time at the client, if the web cache is in the client's institutional network, because the page is loaded from the nearby cache rather than from the distant server., Caching uses less bandwidth coming into an institutional network where the client is located, if the cache is also located in that institutional network.
2.4-2 Why does the DNS server perform caching? What is the value of caching in the local DNS name server? Check all that apply.
DNS caching provides for faster replies, if the reply to the query is found in the cache., DNS caching results in less load elsewhere in DNS, when the reply to a query is found in the local cache.
2.4-8 The DNS authoritative name server.What is the role of an authoritative name server in the DNS? (Check all that apply)
It provides the definitive answer to the query with respect to a name in the authoritative name server's domain.
1.1-3 What is a protocol? Which of the following human scenarios involve a protocol (recall: "Protocols define the format, order of messages sent and received among network entities, and actions taken on message transmission, receipt")? Select one or more answers below that are correct. [Hint: more than one of the answers below are correct.]
One person asking, and getting, the time to/from another person., Two people introducing themselves to each other., A student raising her/his hand to ask a really insightful question, followed by the teaching acknowledging the student, listening carefully to the question, and responding with a clear, insightful answer. And then thanking the student for the question, since teachers love to get questions.
3.2-1 Transport-layer demultiplexing.What is meant by transport-layer demultiplexing?
Receiving a transport-layer segment from the network layer, extracting the payload (data) and delivering the data to the correct socket.
2.1-1 The client-server paradigm. Which of the characteristics below are associated with a client-server approach to structuring network applications (as opposed to a P2P approach)?
There is a server that is always on., There is a server with a well known server IP address., HTTP uses this application structure.
3.1-1 Location of transport-layer functionality. Where is transport-layer functionality primarily implemented?
Transport layer functions are implemented primarily at the hosts at the "edge" of the network.
2.2-11 What's in an HTTP reply? Which of the following pieces of information will appear in a server's application-level HTTP reply message? (Check all that apply.)
A response code, A response phrase associated with a response code
The transport layer sits on top of the network layer, and provides its services using the services provided to it by the network layer. Thus it's important that we know what is meant by the network layer's "best effort" delivery service. True or False: The network layer's best-effort delivery service means that IP makes its "best effort" to deliver segments between communicating hosts, but it makes no guarantees. In particular, it does not guarantee segment delivery, it does not guarantee orderly delivery of segments, and it does not guarantee the integrity of the data in the segments.
Correct! The network layer's best effort service doesn't really provide much service at all, does it?
TCP reliability semantics. True or False: On the sending side, the TCP sender will take each application-layer chunk of data written into a TCP socket and send it in a single, distinct TCP segment. And then on the receiving side, TCP will deliver a segment's payload into the appropriate socket, preserving the application-defined message boundary.
False
2.4-9 DNS and HTTP Caching. We learned that in HTTP web browser caching, HTTP local web server caching, and in local DNS caching, that a user benefits (e.g., shorter delays over the case of no caching) from finding a local/nearby copy of a requested item. In which of the following forms of caching does a user benefit from its not only from its own recent requests (and cached replies) but also from recent requests made from other users?
Local DNS server caching, HTTP local web server caching
2.1-4 TCP service. When an application uses a TCP socket, what transport services are provided to the application by TCP? Check all that apply.
Loss-free data transfer. The service will reliably transfer all data to the receiver, recovering from packets dropped in the network due to router buffer overflow., Flow Control. The provided service will ensure that the sender does not send so fast as to overflow receiver buffers., Congestion control. The service will control senders so that the senders do not collectively send more data than links in the network can handle.
2.4-1 DNS functions. Match the function of a server to a given type of DNS server in the DNS server hierarchy.
Responsible for a domain (e.g., *.com, *.edu); knows how to contact authoritative name servers. Top Level Domain (TLD) servers Provides authoritative hostname to IP mappings for organization's named hosts. Authoritative DNS server Replies to DNS query by local host, by contacting other DNS servers to answer the query. Local DNS server Highest level of the DNS hierarchy, knows how to reach servers responsible for a given domain (e.g., *.com, *.edu). DNS root servers
2.2-3 The HTTP GET. What is the purpose of the HTTP GET message?
The HTTP GET request message is used by a web client to request a web server to send the requested object from the server to the client.
1.3-1 Routing versus forwarding. Choose one of the following two definitions that makes the correct distinction between routing versus forwarding.
The correct answer is: Forwarding is the local action of moving arriving packets from router's input link to appropriate router output link, while routing is the global action of determining the source-destination paths taken by packets.
2.2-12 If-Modified-Since. What is the purpose of the If-Modified-Since field in a HTTP GET request message?
The correct answer is: To indicate to the server that the client has cached this object from a previous GET, and the time it was cached.
1.3-2 Packet switching versus circuit switching (1). Which of the characteristics below are associated with the technique of packet switching? Select all correct answers. [Hint: more than one of the answers is correct].
The correct answers are: Resources are used on demand, not reserved in advance., Data may be queued before being transmitted due to other user's data that's also queueing for transmission., Congestion loss and variable end-end delays are possible with this technique., This technique is used in the Internet.
2.4-7 The local DNS server. Check all of the phrases below that state a true property of a local DNS server.
The local DNS server record for a remote host is sometimes different from that of the authoritative server for that host., The local DNS server can decrease the name-to-IP-address resolution time experienced by a querying local host over the case when a DNS is resolved via querying into the DNS hierarchy.
2.7-5 socket connect(). What happens when a socket connect() procedure is called/invoked?
This procedure creates a new socket at the client, and connects that socket to the specified server.
1.4-6 Computing throughput: a simple scenario. What is the maximum throughput achievable between sender and receiver in the scenario shown below?
1.5 Mbps
TCP RTT Estimation: EWMA.Consider TCP's use of an exponentially weighted moving average (EWMA) to compute the nth value of the estimated RTT:EstimatedRTTn = (1- a)*EstimatedRTTn-1 + a*SampleRTTnTrue or False: with this EWMA algorithm the value of EstimatedRTTn has no dependence on the earlier sample, SampleRTTn-1 [Hint: think about expanding the recurrence relation above by substituting in the recurrence relation for EstimatedRTTn-1]
False
1.2-2 Link Transmission Characteristics. Which of the following physical layer technologies has the highest transmission rate and lowest bit error rate in practice?
Fiber optic cable
1.3-6 What is a network of networks? When we say that the Internet is a "network of networks," we mean? Check all that apply (hint: check two or more).
The Internet is made up of a lot of different networks that are interconnected to each other., The Internet is made up of access networks at the edge, tier-1 networks at the core, and interconnected regional and content provider networks as well.
2.1-2 The peer-to-peer (P2P) paradigm.Which of the characteristics below are associated with a P2P approach to structuring network applications (as opposed to a client-server approach)?
There is not a server that is always on., A process requests service from those it contacts and will provide service to processes that contact it.
2.7-2 TCP Sockets. Which of the following characteristics below are associated with a TCP socket? Check one or more that apply
socket(AF_INET, SOCK_STREAM) creates this type of socket, a server can perform an accept() on this type of socket, provides reliable, in-order byte-stream transfer (a "pipe"), from client to server, when contacted, the server will create a new server-side socket to communicate with that client
1.4-8 Computing utlilization (1). Consider the scenario shown below, with four different servers connected to four different clients over four three-hop paths. The four pairs share a common middle hop with a transmission capacity of R = 300 Mbps. The four links from the servers to the shared link have a transmission capacity of RS = 50 Mbps. Each of the four links from the shared middle link to a client has a transmission capacity of RC = 90 Mbps.Assuming that the servers are all sending at their maximum rate possible, what are the link utilizations for the server links (with transmission capacity RS)? Enter your answer in a decimal form of 1.00 (if the utilization is 1) or 0.xx (if the utilization is less than 1, rounded to the closest xx).
1.00
2.2-5 A detailed look at an HTTP GET Requests. Suppose a client is sending an HTTP GET request message to a web server, gaia.cs.umass.edu. Suppose the client-to-server HTTP GET message is the following:GET /kurose_ross_sandbox/interactive/quotation2.htm HTTP/1.1Host: gaia.cs.umass.eduAccept: text/plain, text/html, text/xml, image/jpeg, image/gif, audio/mpeg, audio/mp4, video/wmv, video/mp4,Accept-Language: en-us, en-gb;q=0.1, en;q=0.7, fr, fr-ch, da, de, fiIf-Modified-Since: Wed, 09 Sep 2020 16:06:01 -0700User Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.11 (KHTML, like Gecko) Chrome/17.0.963.56 Safari/535.11What version of HTTP is the client using?
1.1
2.7-4 How many sockets? Suppose a Web server has five ongoing connections that use TCP receiver port 80, and assume there are no other TCP connections (open or being opened or closed) at that server. How many TCP sockets are in use at this server?
6
1.1-1 What is the Internet? Which of the following descriptions below correspond to a "nuts-and-bolts" view of the Internet? Select one or more of the answers below that are correct. [Hint: more than one of the answers below are correct].
A collection of billions of computing devices, and packet switches interconnected by links. A "network of networks". A collection of hardware and software components executing protocols that define the format and the order of messages exchanged between two or more communicating entities, as well as the actions taken on the transmission and/or receipt of a message or other event.
Pipelining. Which of the following statements about pipelining are true? One or more statements may be true.
A pipelined sender can have transmitted multiple packets for which the sender has yet to receive an ACK from the receiver. , With a pipelined sender, there may be transmitted packets "in flight" - propagating through the channel. These are packets that the sender has sent but that the receiver has not yet received.
2.1-3 UDP service. When an application uses a UDP socket, what transport services are provided to the application by UDP? Check all that apply.
Best effort service. The service will make a best effort to deliver data to the destination but makes no guarantees that any particular segment of data will actually get there.
3.1-2 Transport-layer functionality. True or False: The transport layer provides for host-to-host delivery service?
False
Congestion control versus flow control. Consider the five images below. Indicate which of these images suggest the need for flow control (the others would suggest the need for congestion control).
Glass overflowing and talking head
TCP timer management. Consider the TCP Telnet scenario below (from Fig. 3.36 in text). What timer-related action does the sender take on the receipt of ACK 120?
Nice. Your answer is correct. Because of the cumulative nature of the TCP ACK, the receiver knows that the segment with sequence number 92 was received -- even though its ACK was lost. Since there are no unACKed segments, there's no need for any running timers.
2.3-2 Comparing and contrasting HTTP and SMTP. Which of the following characteristics apply to HTTP only (and do not apply to SMTP)? Note: check one or more of the characteristics below.
Operates mostly as a "client pull" protocol., Uses a blank line (CRLF) to indicate end of request header., Uses server port 80.
Layers in the Internet protocol stack. Match the function of a layer in the Internet protocol stack to its name.
Protocols that are part of a distributed network application: Application Layer Transfer of data between one process and another process (typically on different hosts): Transport Layer Delivery of datagrams from a source host to a destination host (typically): Network Layer Transfer of data between neighboring network devices: Link Layer Transfer of a bit into and out of a transmission media: Physical layer
2.6-1 CDNs. What approach is taken by a CDN to stream content to hundreds of thousands of simultaneous users?
Store/serve multiple copies of videos at multiple geographically distributed sites.
3.2-2 Transport-layer multiplexing. What is meant by transport-layer multiplexing?
Taking data from one socket (one of possibly many sockets), encapsulating a data chuck with header information - thereby creating a transport layer segment - and eventually passing this segment to the network layer.
1.5-4 What is "encapsulation"? Which of the definitions below describe what is meant by the term "encapsulation"?
Taking data from the layer above, adding header fields appropriate for this layer, and then placing the data in the payload field of the "packet" for that layer.
2.7-3 Server reply (UDP). How does the networked application running on a server know the client IP address and the port number to reply to in response to a received datagram?
The application code at the server determines client IP address and port # from the initial segment sent by client, and must explicitly specify these values when sending into a socket back to that client.
Receiver operation in Selective Repeat. In the SR receiver window (see diagram part (b) below, taken from PPT slides and video), why haven't the received packets with red sequence numbers been delivered yet? Check the one or more reasons below that apply.
There is a packet with a lower sequence number than any of the red packets that has yet to be received, so in-order delivery of data in the red packets up to the application layer is not possible.
1.4-1 Components of packet delay. Match the description of each component of packet delay to its name in the pull down list.
Time needed to perform an integrity check, lookup packet information in a local table and move the packet from an input link to an output link in a router: Processing delay Time spent waiting in packet buffers for link transmission: Queueing Delay Time spent transmitting packets bits into the link: Transmission Delay Time need for bits to physically propagate through the transmission medium from end one of a link to the other: Propagation delay
2.6-4 Manifest file. What is the purpose of a manifest file in a streaming multimedia setting?
To let a client know where it can retrieve different video segments, encoded at different rates
3.2-3 Multiplexing/Demultiplexing: UDP port numbers. True or False: When multiple UDP clients send UDP segments to the same destination port number at a receiving host, those segments (from different senders) will always be directed to the same socket at the receiving host.
True
TCP Flow Control. True or False: with TCP's flow control mechanism, where the receiver tells the sender how much free buffer space it has (and the sender uses this information to limit the amount of outstanding, unACKed, in-flight data to less than this amount), it is not possible for the sender to send more data than the receiver has room to buffer.
True
Reliable data transfer protocol mechanisms. Consider the purposes/goals/use of the different reliable data transfer (RDT) protocol mechanisms shown below. For the given purpose/goal/use, match it to the RDT mechanism that is used to implement the given purpose/goal/use.
Used by the receiver to let the sender know that a packet was received correctly at the receiver: ACK Used to identify the reception of already received packets (duplicate detection) at the receiver: Sequence # Used by the receiver to let the sender know that a packet was NOT received correctly at the receiver: NAK Used by sender or receiver to detect bits flipped during a packet's transmission: Checksum Allows the receiver to eventually receive a packet that was corrupted or lost in an earlier transmission: Retransmission
2.7-1 UDP Sockets. Which of the following characteristics below are associated with a UDP socket? Check one or more that apply.
socket(AF_INET, SOCK_DGRAM) creates this type of socket, provides unreliable transfer of a groups of bytes ("a datagram"), from client to server, the application must explicitly specify the IP destination address and port number for each group of bytes written into a socket, data from different clients can be received on the same socket
2.6-3 What is DASH? In DASH (Dynamic, Adaptive Streaming over HTTP), a server divides a video file into chunks that ... (pick best completion from below)
... are stored, each encoded at multiple rates (video quality). The client plays the video chunk-by-chunk, with each chunk requested at encoding rate that fits the available bandwidth at the time.
1.4-2 Computing Packet Transmission Delay(1). Suppose a packet is L = 1500 bytes long (one byte = 8 bits), and link transmits at R = 1 Gbps (i.e., a link can transmit bits 1,000,000,000 bits per second). What is the transmission delay for this packet?
0.000012 secs
1.4-5 Computing Propagation Delay.Consider the network shown in the figure below, with three links, each with the specified transmission rate and link length. Assume the length of a packet is 8000 bits. The speed of light propagation delay on each link is 3x10^8 m/secWhat is the propagation delay at (along) link 2?
0.033 secs
2.7-2 TCP Sockets. Which of the following characteristics below are associated with a TCP socket? Check one or more that apply.
socket(AF_INET, SOCK_STREAM) creates this type of socket, a server can perform an accept() on this type of socket, provides reliable, in-order byte-stream transfer (a "pipe"), from client to server, when contacted, the server will create a new server-side socket to communicate with that client
Network-assisted or end-end congestion control? Which of the following actions are used in network-assistedcongestion control (versus end-end congestion control) to signal congestion. Check all that apply.
A router marks a field in the datagram header at a congested router., A router sends an ICMP message to a host telling it to slow down its sending rate.
Networking history - when did it happen? Match the networking event with the time frame when the event occurred.
Early studies of packet switching by Baran, Davies, Kleinrock. Early 1960's First ARPAnet node is operational. Late 1960's Internetting: DARPA researchers connect three networks together. 1970's The Internet Protocol (IP) is standardized in RFC 791. Early 1980's Congestion control is added to the TCP protocol. Late 1980's The WWW starts up (note: the WWW design started at the end of previous decade). 1990's Software-defined networking begins. 2000-2010 The number of wireless Internet-connected devices surpasses the number of connected wired devices. 2010 - 2020
3.2-4 Multiplexing/Demultiplexing: TCP port numbers. True or False: When multiple TCP clients send TCP segments to the same destination port number at a receiving host, those segments (from different senders) will always be directed to the same socket at the receiving host.
False
2.4-7 DNS local caches. We saw that a local DNS cache will respond immediately to a client when the local DNS has the name-to-address translation in its local cache. There are millions of such local DNS caches across the Internet. For a given Internet name, will the name-to-address translation pair stored in these local caches always be the same (i.e., are the contents of the local caches synchronized)?
No. The caches are not always synchronized. An entry in a local cache will eventually time out, and the local cache will again eventually go to the DNS hierarchy to get the name-to-address translation pair for this name. So if the name-to-address mapping changes in the DNS hierarchy, the new mapping will eventually (but not immediately) make its way into the local cache. Therefore, not all local caches may have the same value for name-to-address translation pair.
2.2-13 Cookies. What is the purpose of a cookie value in the HTTP GET request?
The cookie value itself doesn't mean anything. It is just a value that was returned by a web server to this client during an earlier interaction.
2.2-4 Conditional HTTP GET. What is the purpose of the conditional HTTP GET request message?
To allow a server to only send the requested object to the client if this object has changed since the server last sent this object to the client.