ECE 3323 EXAM 2

Lakukan tugas rumah & ujian kamu dengan baik sekarang menggunakan Quizwiz!

3.8-2 QUIC streams. What are advantages of the streams concept in QUIC? Select all that apply. Streams allow concurrent retrieval of web objects, while avoiding Head of the Line (HOL) blocking. With N streams, the overall throughput can be increased by a factor of N, since each stream has its own separate congestion control. Since each stream has its own error control, if one stream experiences an error (e.g., lost or damaged segment), the other streams are unaffected.

Streams allow concurrent retrieval of web objects, while avoiding Head of the Line (HOL) blocking. Since each stream has its own error control, if one stream experiences an error (e.g., lost or damaged segment), the other streams are unaffected.

2.2-3 The HTTP GET. What is the purpose of the HTTP GET message? The HTTP GET request message is sent by a web server to a web client to get the next request from the web client. 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. The HTTP GET request message is sent by a web server to a web client to get the identity of the web client. The HTTP GET request message is used by a web client to post an object on a web server.

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.

2.6-4 Manifest file. What is the purpose of a manifest file in a streaming multimedia setting? Allows a video service to log the video and the server from which a client streams a video. To allow a client to reserve bandwidth along a path from a server to that client, so the client can view a stream video without impairment. To let a client know where it can retrieve different video segments, encoded at different rates To let a OTT (Over-the-top) video server know the video that the client wants to view.

To let a client know where it can retrieve different video segments, encoded at different rates

3.1-2 Transport-layer functionality. True or False: The transport layer provides for host-to-host delivery service?

True

3.3-7 UDP Checksum: how good is it? True or False: When computing the Internet checksum for two numbers, a single flipped bit (i.e., in just one of the two numbers) will always result in a changed checksum

True

3.5-7 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 always limits 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

2.2-1 "HTTP is stateless." What do we mean when we say "HTTP is stateless"? In answering this question, assume that cookies are not used. Check all answers that apply. An HTTP server does not remember anything about what happened during earlier steps in interacting with this HTTP client. We say this when an HTTP server is not operational. The HTTP protocol is not licensed in any country. An HTTP client does not remember anything about what happened during earlier steps in interacting with any HTTP server. An HTTP client does not remember the identities of the servers with which it has interacted.

An HTTP server does not remember anything about what happened during earlier steps in interacting with this HTTP client.

3.5-5 TCP RTT Estimation: EWMA. Consider TCP 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

False

3.7-3 TCP's Slowstart algorithm. Which of the following best completes this sentence: "In the absence of loss, TCP slow start increases the sending rate ... " ... slower than AIMD, that's why it's called Slowstart." "... at the same rate as AIMD." " ... faster than AIMD. In fact, slowstart increases the sending rate exponentially fast per RTT."

" ... faster than AIMD. In fact, slowstart increases the sending rate exponentially fast per RTT."

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 is a local (to the querying host) server that caches name-to-IP address translation pairs, so it can answer authoritatively and can do so quickly. It provides the definitive answer to the query with respect to a name in the authoritative name server's domain. It provides the IP address of the DNS server that can provide the definitive answer to the query. It provides a list of TLD servers that can be queried to find the IP address of the DNS server that can provide the definitive answer to this query.

It provides the definitive answer to the query with respect to a name in the authoritative name server's domain.

3.1-1 Location of transport-layer functionality. Where is transport-layer functionality primarily implemented? Transport layer functions are implemented primarily at each end of a physical link connecting one host/router/switch to another one host/router/switch. Transport layer functions are implemented primarily at the routers and switches in the network. Transport layer functions are implemented primarily at the hosts at the "edge" of the network.

Transport layer functions are implemented primarily at the hosts at the "edge" of the network.

HTTP/3: QUIC connection establishment. How many RTTs are needed to establish an HTTP/3 connection (i.e., before data can begin to flow between client and server) using QUIC? Two RTTs - one to establish reliability and congestion control parameters, and one to establish TLS security parameters. One RTT. Reliability, congestion control, flow control, and security parameters are established in the first two parts of the setup handshake, which takes one RTT. Zero RTTs. HTTP is stateless.

One RTT. Reliability, congestion control, flow control, and security parameters are established in the first two parts of the setup handshake, which takes one RTT.

7.2-1. Characteristics of wireless links. Which of the following statements about the characteristics of wireless links are true?

The bit error rate (BER) of a wireless channel decreases as the signal-to-noise ratio (SNR) increases. The "hidden terminal problem" happens when A sends to B over a wireless channel, and an observer, C (that can be even closer to A than B), does not detect/receive A's transmission because of physical obstacles in the path between A and C. Multipath propagation occurs when portions of the electromagnetic wave reflect off objects and the ground taking paths of different lengths between the sender and a receiver, and thus arriving at the receiver at slightly different points in time. Path loss refers to the decrease in the strength of a radio signal as it propagates through space.

3.3-4 Internet checksum and UDP. Over what set of bytes is the checksum field in the UDP header computed over? The entire UDP segment, except the checksum field itself, and the IP sender and receive address fields The entire UDP segment, except the checksum field itself. Just the UDP header but not the payload.

The entire UDP segment, except the checksum field itself, and the IP sender and receive address fields

3.3.10 How "good" are checksums? Suppose a sender computes a checksum (Internet checksum or some other checksum, which is essentially a sum of the bytes in a segment), puts the checksum in the segment header, and sends the segment to the receiver. The receiver receives the segment (with the checksum in the header). The receiver computes the checksum itself (i.e., performs the same calculation as the sender, but over the received data) and compares the checksum it has computed to the checksum it received in the header. It finds that its computed checksum and received checksum in the header are identical. Which of the following statements is true?

The receiver can't tell for certain whether errors (bit flips) have occurred in the received data in the segment, but can be relatively confident that no errors have occurred.

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 the client is authorized to received that object. 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. To allow a server to only send the requested object to the client if the server is not overloaded. To allow a server to only send the requested object to the client if the client has never requested that object before.

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.

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-UDP demultplexing happens solely on the basis of destination port number. Thus, segments with the same destination port number at a host will have their data demultiplexed to the same socket.

2.4-3 What's in the DNS type A resource record? What information does the type "A" resource record hold in the DNS database? Check all that apply. A name and the name of the SMTP server associated with that name. An alias name and a true name for a server. A hostname and an IP address. A domain name and the name of the authoritative name server for that domain.

A hostname and an IP address.

2.1-3 UDP service. When an application uses a UDP socket, what transport services are provided to the application by UDP?

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.

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. Uses server port 25. Is able to use a persistent TCP connection to transfer multiple objects. Has ASCII command/response interaction, status codes. Operates mostly as a "client pull" protocol. Uses CRLF.CRLF to indicate end of message. Uses a blank line (CRLF) to indicate end of request header. Operates mostly as a "client push" protocol. Uses server port 80.

Uses server port 80. Uses a blank line (CRLF) to indicate end of request header. Operates mostly as a "client pull" protocol.

3.3-6 Computing the Internet Checksum (2). Compute the Internet checksum value for these two 16-bit words: 01000001 11000100 and 00100000 00101011

10011110 00010000

Suppose also that after downloading the base file, the browser encounters a jpeg object in the base html file that is stored on gaia.cs.umass.edu, and therefore makes another GET request to gaia.cs.umass.edu for that referenced jpeg object. How many round trip times (RTTs) are needed from when the client first makes the request to when the base page and the jpeg file are completely downloaded, assuming the time needed by the server to transmit the base file, or the jpeg file into the server's link is (each) equal to 1/2 RTT and that the time needed to transmit the HTTP GET into the client's link is zero? You should assume that persistent HTTP 1.1 is being used.

4 RTTS

7.4-6. Reliable data transfer at the link layer. Which of the following statements is true about the link-level service of reliable data transfer (using ACKs) in WiFi (802.11) networks and in 4G cellular networks? Both WiFi and LTE provide link-level reliable data transfer. WiFi provides link-level reliable data transfer but LTE does not. LTE provides link-level reliable data transfer but WiFi does not. Neither WiFi nor LTE provide link-level reliable data transfer.

Both WiFi and LTE provide link-level reliable data transfer

2.1-4 TCP service. When an application uses a TCP socket, what transport services are provided to the application by TCP?

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.

3.3-1 Does UDP preserve application-layer message boundaries? True or False: On the sending side, the UDP sender will take each application-layer chunk of data written into a UDP socket and send it in a distinct UDP datagram. And then on the receiving side, UDP will deliver a segment's payload into the appropriate socket, preserving the application-defined message boundary.

True-UDP preserves application-defined message boundaries. That is, when a sending application passes a chunk of data into a UDP socket, that chunk of data (should it be received) will be presented as a unit of data at the receiving socket.

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.) The server's IP address A sequence number A response code A response phrase associated with a response code A checksum The name of the Web server (e.g., gaia.cs.umass.edu)

A response code A response phrase associated with a response code

3.7-1 TCP's AIMD algorithm. Which of the following statements about TCP's Additive-increase-multiplicative-decrease (AIMD) algorithm are true? Check all that are true. AIMD is a network-assisted approach to congestion control. AIMD is a end-end approach to congestion control. AIMD always cuts the congestion window size, cwnd, in half whenever loss is detected. AIMD cuts the congestion window size, cwnd, in half whenever loss is detected by a triple duplicate ACK. AIMD cuts the congestion window size, cwnd, i to 1 whenever a timeout occurs. AIMD uses the measured RTT delay to detect congestion. AIMD uses observed packet loss to detect congestion.

AIMD is a end-end approach to congestion control. AIMD cuts the congestion window size, cwnd, in half whenever loss is detected by a triple duplicate ACK. AIMD cuts the congestion window size, cwnd, i to 1 whenever a timeout occurs.

3.3-5 Computing the Internet Checksum (1). Compute the Internet checksum value for these two 16-bit words: 11110101 11010011 and 10110011 01000100

01010110 11100111

3.06.a.2 Consider again rdt3.0 and the diagram of messages exchanges above. What is the ACK number on the packet sent by the receiver at time t1? (Note: there is only one correct answer below). 0 2 There is no ACK number in this packet. 1

0

3.7-5 TCP CUBIC. Assuming that the congestion window size, cwnd, has not yet reached Wmax, TCP CUBIC will ... (check all that apply) ... always have a window size, cwnd, and hence a sending rate, higher than that of AIMD (assuming a given window size, Wmax, at which loss would occur). ... have a sending rate that always increases faster than that of AIMD. ... increase its sending rate faster than AIMD when cwnd is far away from Wmax, but increase slower than AIMD when cwnd is closer to Wmax

... always have a window size, cwnd, and hence a sending rate, higher than that of AIMD (assuming a given window size, Wmax, at which loss would occur). ... increase its sending rate faster than AIMD when cwnd is far away from Wmax, but increase slower than AIMD when cwnd is closer to Wmax

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 receives multiple video chunks (encoded at different rates) and plays out the chunks that best fit the screen size. ... are downloaded just before their playout time. Chunking is used primarily because a viewer may jump around (e.g., fast forward) in a video. ... 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. ... are download smallest-chunk-first in order to maximize the number of chunks received. ... allow premium users to avoid watching chunks that contain commercials.

...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.

2.2-1 Simple HTTP GET request response time. Suppose an HTTP client makes a request to the gaia.cs.umass.edu web server. The client has never before requested a given base object, nor has it communicated recently with the gaia.cs.umass.edu server. You can assume, however, that the client host knows the IP address of gaia.cs.umass.edu. How many round trip times (RTTs) are needed from when the client first makes the request to when the base page is completely downloaded, assuming the time needed by the server to transmit the base file into the server's link is equal to 1/2 RTT and that the time needed to transmit the HTTP GET into the client's link is zero? (You should take into account any TCP setup time required before the HTTP GET is actually sent by the client, the time needed for the server to transmit the requested object, and any propagation delays not accounted for in these amounts of time.)

2.5 RTT 1 RTT(TCP SETUP) + 1/2 RTT(SERVER TRANSMISSION) + 1RTT(PROPAGATION) = 2.5 RTT

7.4-5. Connecting 4G cellular networks together. Which of the following statements is true about how 4G cellular networks (operated by different carriers/companies) connect together? 4G networks connect to each other using the existing phone interconnection networks from earlier 3G and 2G networks. In a 4G network, the radio access network connects to the legacy phone network for voice calls, but to the public Internet for data connections. 4G networks are generally all-IP, and so cellular networks interconnect (peer) directly to each other, or peer at the cellular equivalents of the Internet Exchange Points that we saw used for interconnecting wired networks in the public Internet

4G networks are generally all-IP, and so cellular networks interconnect (peer) directly to each other, or peer at the cellular equivalents of the Internet Exchange Points that we saw used for interconnecting wired networks in the public Internet.

7.4-2. IMSI. In 4G LTE cellular systems, what is an International Mobile SubscriberIdentity (IMSI)? A fancy name for a globally unique phone number, including country code. A 64-bit identifier stored on a cellular SIM (Subscriber Identity Module) card that identifies the subscriber in the worldwide cellular carrier network system. Assigned by a mobile carrier network to a device, when the device attaches to the radio access network, serving a similar link-layer role as MAC addresses in a wired network. A 64-bit identifier that identifies the cellular network to which an mobile subscriber is attaching. Somewhat analogous to the Autonomous System (AS) number used in BGP to identify/name networks.

A 64-bit identifier stored on a cellular SIM (Subscriber Identity Module) card that identifies the subscriber in the worldwide cellular carrier network system.

7.3-1. Beacon Frames. What is the purpose of a beacon frame in WiFi (802.11) networks? A beacon frame allows a mobile node to determine the direction in which it should move in order to obtain an increasing signal strength. A beacon frame allows an access point to advertise its existence, and the frequency channel it is operating on, to devices that want to connect to an access point. A beacon frame allows a node with a directional antenna to aim the antenna towards the beacon point to maximize the quality of the send and receive signal. A beacon frame allows a mobile device to signal that it is ready to receive a frame.

A beacon frame allows an access point to advertise its existence, and the frequency channel it is operating on, to devices that want to connect to an access point.

3.4-6 Cumulative ACK. What is meant by a cumulative acknowledgment, ACK(n)? A cumulative ACK(n) allows the receiver to let the sender know that it has not yet received an ACK for packet with sequence number n. A cumulative ACK(n) allows the receiver to let the sender know that it has not received any packets with a new sequence number since the last cumulative ACK(n) was sent. A cumulative ACK(n) acks all packets with a sequence number up to and including n as being received.

A cumulative ACK(n) acks all packets with a sequence number up to and including n as being received.

3.3-2 UDP header fields. Which of the fields below are in a UDP segment header? [Hint: note the use of the word "header" in this question statement.] Internet checksum Source IP address Source port number Destination port number Upper layer protocol Sequence number Length (of UDP header plus payload) Data (payload)

Internet checksum Source port number Destination port number Length (of UDP header plus payload)

3.02-3 TCP multiplexing and demultiplexing (c). Which of the following datagram and segment header fields are used, when demultiplexing data up to a TCP socket? None of the other answers is correct. Source and destination IP addresses, and source and destination port numbers. Destination IP address and port number only. Destination port number only.

Source and destination IP addresses, and source and destination port numbers.

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. HTTP uses this application structure. There is a server with a well known server IP address. There is a server that is always on. A process requests service from those it contacts and will provide service to processes that contact it.

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.2-12 If-Modified-Since. What is the purpose of the If-Modified-Since field in a HTTP GET request message To indicate to the server that the client has cached this object from a previous GET, and the time it was cached. To inform the HTTP cache that it (the cache) should retrieve the full object from the server, and then cache it until the specified time. To indicate to the server that the client wishes to receive this object, and the time until which it will cache the returned object in the browser's cache. To allow the server to indicate to the client that it (the client) should cache this object. To indicate to the server that the server should replace this named object with the new version of the object attached to the GET, if the object has not been modified since the specified time

To indicate to the server that the client has cached this object from a previous GET, and the time it was cached.

7.1-1. How fast is that wireless technology? Use the pulldown menus below to match the approximate transmission rate with the the wireless technology that achieves that rate. Of course, sender/receiver distance, noise and other factors determine actual transmission speed, so "your mileage may vary" (YMMV). 802.11 ax 5G celluar 802.11 ac 4G LTE 802.11 g Bluetooth

802.11 ax-14 Gbps 5G celluar-10 Gbps 802.11 ac-3.5 Gbps 4G LTE-hundreds of Mbps 802.11 g-54 Mbps Bluetooth-2 Mbps

3.3-4a. What is a checksum? Which of the following statements are true about a checksum? Hint: more than one statement is true.

A checksum is computed at a sender by considering each byte within a packet as a number, and then adding these numbers (each number representing a bytes) together to compute a sum (which is known as a checksum). The sender-computed checksum value is often included in a checksum field within a packet header. The receiver of a packet with a checksum field will add up the received bytes, just as the sender did, and compare this locally-computed checksum with the checksum value in the packet header. If these two values are different then the receiver knows that one of the bits in the received packet has been changed during transmission from sender to receiver.

2.2-2 HTTP cookies. What is an HTTP cookie used for? A cookies is a code used by a server, carried on a client's HTTP request, to access information the server had earlier stored about an earlier interaction with this person. [Think about the distinction between a browser and a person.] A cookie is a code used by a client to authenticate a person's identity to an HTTP server. Like dessert, cookies are used at the end of a transaction, to indicate the end of the transaction. A cookie is used to spoof client identity to an HTTP server. A cookie is a code used by a server, carried on a client's HTTP request, to access information the server had earlier stored about an earlier interaction with this Web browser. [Think about the distinction between a browser and a person.]

A cookie is a code used by a server, carried on a client's HTTP request, to access information the server had earlier stored about an earlier interaction with this Web browser. [Think about the distinction between a browser and a person.]

3.1-4 Transport-layer services using UDP. Check all of the services below that are provided by the UDP protocol. Reliable data delivery. In-order data delivery A guarantee on the maximum amount of time needed to deliver data from sender to receiver. A congestion control service to ensure that multiple senders do not overload network links. A guarantee on the minimum amount of throughput that will be provided between sender and receiver. A flow-control service that ensures that a sender will not send at such a high rate so as to overflow receiving host buffers. A byte stream abstraction, that does not preserve boundaries between message data sent in different socket send calls at the sender. A message abstraction, that preserves boundaries between message data sent in different socket send calls at the sender.

A message abstraction, that preserves boundaries between message data sent in different socket send calls at the sender.

3.4-10 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 pipelining, a receiver will have to send fewer acknowledgments as the degree of pipelining increases With pipelining, a packet is only retransmitted if that packet, or its ACK, has been lost. With a pipelined sender, there may be transmitted packets "in flight" - propagating through the channel - packets that the sender has sent but that the receiver has not yet received.

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 - packets that the sender has sent but that the receiver has not yet received.

3.8-3 QUIC: an application-layer protocol. What are advantages of implementing transport-layer functionality in QUIC at the application layer? Select all that apply. As an application-layer protocol, QUIC can be updated/modified at "app frequency" rather than at the frequency of operating system updates. QUIC's performance can be better optimized at the application-layer, so it will have better performance than if these functions were implremented in the operating system. QUIC performs both congestion control and error recovery different from TCP, leveraging all of the knowledge that has built up since TCP was first standardized, and therefore has better performance than TCP. QUIC can establish all connection parameters (security, reliability, flow and congestion control)in just one handshake rather than separately in two.

As an application-layer protocol, QUIC can be updated/modified at "app frequency" rather than at the frequency of operating system updates. QUIC can establish all connection parameters (security, reliability, flow and congestion control)in just one handshake rather than separately in two.

7.3-3. Why three addresses? Why does the WiFi (802.11) link-layer frame have three addresses? [Note: WiFi actually has four MAC addresses in the frame, but we're only focusing here on the three widely used ones] Because the sender of this frame can be either the access point or a link-layer host or router interface, and we need to identify which of these two is the sender. Because both the access point that will relay this frame to the intended link-layer receiving host or router interface, as well as that intended destination host or router interface need to be specified. Because there may be two hosts or routers that are possible destinations for this link-layer frame and we need to identify which of these is the intended receiver.

Because both the access point that will relay this frame to the intended link-layer receiving host or router interface, as well as that intended destination host or router interface need to be specified.

7.3-6. Bluetooth. Which of the following statement are true about the Bluetooth protocol? Bluetooth transmits all frames in the same frequency band. Bluetooth transmission rates can be as high as in WiFi networks. Bluetooth networks have a centralized controller that serves to coordinate the various client devices in a Bluetooth piconet. Bluetooth uses TDM, FDM, polling, error detection and correction, and has sleep modes to conserve device power. Pretty sophisticated for a consumer technology!

Bluetooth uses TDM, FDM, polling, error detection and correction, and has sleep modes to conserve device power. Pretty sophisticated for a consumer technology!

7.4-4. Power conserving "sleep modes". Which of the following statements is true about "sleep modes" that allow a wireless device to "sleep" and occasionally "wake up" as a technique for saving battery life? WiFi provides sleep modes but LTE does not. LTE provides sleep modes but WiFi does not. Neither WiFi nor LTE provide sleep modes. Both WiFi and LTE provide sleep modes.

Both WiFi and LTE provide sleep modes.

3.7-2 TCP's AIMD algorithm (2). How is the sending rate typically regulated in a TCP implementation? By using the retransmission timeout timer and counting the number of bytes sent since the last timeout to compute the sending rate since that last timeout, and then making sure its sending rate never exceed the rate set by AIMD. By keeping a window of size cwnd over the sequence number space, and making sure that no more than cwnd bytes of data are outstanding (i.e, unACKnowledged). The size of cwnd is regulated by AIMD.

By keeping a window of size cwnd over the sequence number space, and making sure that no more than cwnd bytes of data are outstanding (i.e, unACKnowledged). The size of cwnd is regulated by AIMD.

2.2-9 Why Web Caching? Which of the following are advantages of using a web cache? Sselect 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 allows an origin server to more carefully track which clients are requesting and receiving which web objects. Overall, caching requires fewer devices/hosts to satisfy a web request, thus saving on server/cache costs. Caching uses less bandwidth coming into an institutional network where the client is located, if the cache is also located in that institutional network.

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.

3.1-5 Network-layer functionality. 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:

Correct! The network layer's best effort service doesn't really provide much service at all, does it?

2.4-2 Why does the DNS perform caching? What is the value of caching in the local DNS name server? Check all that apply. DNS caching provides prioritized access to the root servers, since the DNS request is from a local DNS cache. DNS caching provides for faster replies, if the reply to the query is found in the cache. DNS caching provides the ability to serve as authoritative name server for multiple organizations. DNS caching results in less load elsewhere in DNS, when the reply to a query is found in the local cache.

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.

7.1-2. Infrastructure Mode. What is meant when we say that a network of devices is operating in "infrastructure mode"? The mobile device is operating in a reduced power mode, forcing the network base station and routers to take on additional functionality that would normally be done by the mobile. Devices communicate with each other and to the larger outside world via a base station (also known as an access point). All network equipment, except the mobile devices, must be racked in a temperature-controlled and power-smoothed building. Network devices can communicate directly with each other, with no need for messages to be relayed through a base station. The devices are the "infrastructure".

Devices communicate with each other and to the larger outside world via a base station (also known as an access point).

Overlapping WiFi networks. Suppose there are two ISPs providing WiFi access in a particular café, with each ISP operating its own AP and having its own IP address block. Further suppose that by accident, each ISP has configured its AP to operate over channel 11. Which of the following statements are true? Devices will still be able to associate with one network or the other. A device performing carrier sensing will only detect transmissions taking place to/from the AP to which it is associated. Two devices transmitting at the same time will interfere with each other, regardless of the network to which they are associated. Two devices transmitting at the same time will interfere with each other, only if they are associated with the same network Neither AP will be able to operate correctly, because it won't know which frames transmitted by a device are meant to be received at which AP.

Devices will still be able to associate with one network or the other. Two devices transmitting at the same time will interfere with each other, regardless of the network to which they are associated.

3.3-8 UDP Checksum: how good is it? True or False: When computing the Internet checksum for two numbers, a single flipped bit in each of the two numbers will always result in a changed checksum.

False

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-TCP demultiplexes on the basis of four values (a 4-tuple): source and destintation port number, source and destination IP addresses. Therefore, if two segments come from different IP addresses or have different source ports numbers, their payload will be demultiplexed to different sockets, even if the destination port numbers are the same.

3.5-1 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 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-TCP's reliability semantics is that of a reliable byte stream - that data bytes will be delivered in-order from sender to receiver. There is no notion of message boundaries in TCP's byte-stream view of the world. This contrasts with UDP, which does preserves application-defined message boundaries.

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)? HTTP uses this application structure. There is not a server that is always on. There is a server that is always on. There is a server with a well known server IP address. A process requests service from those it contacts and will provide service to processes that contact i

HTTP uses this application structure. There is a server that is always on. There is a server with a well known server IP address.

2.2-10 HTTP/2 versus HTTP/1.1. Which of the following are changes between HTTP 1.1 and HTTP/2? Note: select one or more answers. HTTP/2 allows a large object to be broken down into smaller pieces, and the transmission of those pieces to be interleaved with transmission other smaller objects, thus preventing a large object from forcing many smaller objects to wait their turn for transmission. HTTP/2 has many new HTTP methods and status codes. HTTP/2 provides enhanced security by using transport layer security (TLS). HTTP/2 allows objects in a persistent connection to be sent in a client-specified priority order.

HTTP/2 allows a large object to be broken down into smaller pieces, and the transmission of those pieces to be interleaved with transmission other smaller objects, thus preventing a large object from forcing many smaller objects to wait their turn for transmission. HTTP/2 allows objects in a persistent connection to be sent in a client-specified priority orde

2.6-3 Netflix Streaming. Which of the following (one or more) statements are true about Netflix streaming (check all that are true) or video streaming services in general. Once a video starts streaming from a Netflix server to a client player, the video quality remains constant throughout video playback. Once a video starts streaming from a given Netflix server to a given client player, that server will be the only server assigned to transmit that video to that client throughout the viewing session for this video. In many video streaming services, the client requests chunks of video from a server using the HTTP protocol.

In many video streaming services, the client requests chunks of video from a server using the HTTP protocol.

2.3-4 Comparing and contrasting HTTP and SMTP (3). Which of the following characteristics apply to both HTTP and SMTP? Note: check one or more of the characteristics below. Uses CRLF.CRLF to indicate end of message. Uses a blank line (CRLF) to indicate end of request header. Is able to use a persistent TCP connection to transfer multiple objects. Operates mostly as a "client pull" protocol. Has ASCII command/response interaction, status codes. Operates mostly as a "client push" protocol.

Is able to use a persistent TCP connection to transfer multiple objects. Has ASCII command/response interaction, status codes

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.

7.3-4. RTS/CTS frames. What is the purpose of RTS (request to send) and CTS (clear to send) frames in WiFi (802.11) networks? Select one or more of the answers below. [Hint: check two answers below]. RTC/CTS frames helps nodes in a wireless network mitigate the effects of the hidden terminal problem. A CTS allows a receiver to let the sender (who sent that RTS) know that it (the receiver) has enough buffers to hold a frame transmitted by that sender A CTS that is sent allows a receiver to force other nodes (other than the intended sender who sent the RTS) to refrain from transmitting, thus allowing the sender who sent the RTS to then transmit a frame with less likelihood of a collision. RTC/CTS frames allow a sender to gather CTS frames from all other network nodes, so that it knows it can then send without collisions.

RTC/CTS frames helps nodes in a wireless network mitigate the effects of the hidden terminal problem. A CTS that is sent allows a receiver to force other nodes (other than the intended sender who sent the RTS) to refrain from transmitting, thus allowing the sender who sent the RTS to then transmit a frame with less likelihood of a collision.

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, determining the destination IP address for the data, and then passing the segment and the IP address back down to the network layer. 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. Receiving a transport-layer segment from the network layer, extracting the payload (data) and delivering the data to the correct socket. Taking data from multiple sockets, all associated with the same destination IP address, adding destination port numbers to each piece of data, and then concatenating these to form a transport-layer segment, and eventually passing this segment to the network layer.

Receiving a transport-layer segment from the network layer, extracting the payload (data) and delivering the data to the correct socket.

3.1-3 Transport layer services using TCP. Check all of the services below that are provided by the TCP protocol. Reliable data delivery. In-order data delivery A guarantee on the maximum amount of time needed to deliver data from sender to receiver. A congestion control service to ensure that multiple senders do not overload network links. A guarantee on the minimum amount of throughput that will be provided between sender and receiver. A flow-control service that ensures that a sender will not send at such a high rate so as to overflow receiving host buffers. A byte stream abstraction, that does not preserve boundaries between message data sent in different socket send calls at the sender. A message abstraction, that preserves boundaries between message data sent in different socket send calls at the sender.

Reliable data delivery. In-order data delivery A congestion control service to ensure that multiple senders do not overload network links. A flow-control service that ensures that a sender will not send at such a high rate so as to overflow receiving host buffers. A byte stream abstraction, that does not preserve boundaries between message data sent in different socket send calls at the sender.

2.6-1 CDNs. What approach is taken by a CDN to stream content to hundreds of thousands of simultaneous users? Proactively push videos to a client device before they're requested, using machine learning to predict requested videos. Allow client devices to send requested content to each other, in order to offload the CDN infrastructure. Store/serve multiple copies of videos at multiple geographically distributed sites. Serve video from a single central "mega-server" with ultra-high-speed network connectivity, and high-speed storage.

Store/serve multiple copies of videos at multiple geographically distributed sites.

3.2-2 Transport-layer multiplexing. What is meant by transport-layer multiplexing? Receiving a transport-layer segment from the network layer, extracting the payload, determining the destination IP address for the data, and then passing the segment and the IP address back down to the network layer. 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. Receiving a transport-layer segment from the network layer, extracting the payload (data) and delivering the data to the correct socket. Taking data from multiple sockets, all associated with the same destination IP address, adding destination port numbers to each piece of data, and then concatenating these to form a transport-layer segment, and eventually passing this segment to the network layer.

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

7.3-5. The 802.11 Media Access Control protocol. Which of the following statement are true about the 802.11 (WiFi) MAC protocol? The 802.11 MAC protocol performs collision avoidance. That is, an 802.11 sender and receiver can use approaches such as RTS/CTS, inter-frame spacing, and explicit acknowledgments to try avoid, rather than detect, colliding transmissions from another node. The 802.11 MAC protocol performs collision detection. That is, an 802.11 sender will listen to the channel while it is transmitting, and stop transmitting when it detects a colliding transmission from another node. The 802.11 MAC protocol performs carrier sensing. That is, it listens before transmitting and will only transmit if the channel is sensed idle.

The 802.11 MAC protocol performs collision avoidance. That is, an 802.11 sender and receiver can use approaches such as RTS/CTS, inter-frame spacing, and explicit acknowledgments to try avoid, rather than detect, colliding transmissions from another node.

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. As the result of performing the accept() statement, the server has created a new socket that is bound to that specific client, and so sending into this new socket (without explicitly specifying the client IP address and port number) is sufficient to ensure that the sent data will be addressed to the correct client. The server will query the DNS to learn the IP address of the client. The server will know the port number being used by the client since all services have a well-known port number.

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.

2.2-13 Cookies. What is the purpose of a cookie value in the HTTP GET request? The cookie value encodes a default set of preferences that the user has previously specified for this web site. The cookie value is an encoding of a user email address associated with the GET request. The cookie value encodes the format of the reply preferred by the client in the response to this GET request. The cookie value indicates whether the user wants to use HTTP/1, HTTP/1.1, or HTTP/2 for this 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.

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.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 is only contacted by a local host if that local host is unable to resolve a name via iterative or recursive queries into the DNS hierarchy. 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. The local DNS server holds hostname-to-IP translation records, but not other DNS records such as MX records. 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. The local DNS server record for a remote host is sometimes different from that of the authoritative server for that host.

3.2-5 Multiplexing UDP with identical port numbers. True or False: It is possible for two UDP segments to be sent from the same socket with source port 5723 at a server to two different clients.

True-Recall that the application-layer program explicitly specifies the destination host IP address and port number when sending into a UDP socket, and that a single UDP socket (with a given source port number) can therefore be used to send to multiple UDP clients.

3.2-6 Multiplexing TCP with identical port numbers. True or False: It is possible for two TCP segments with source port 80 to be sent by the sending host to different clients.

True-Recall that two different processes may have different sockets, both associated with the same local port number (say 80, for HTTP) on a host. But, if there are two sockets with the same local port number, how is it that when segments arrive for that host, that data is demultiplexed to the correct port? Anwser: because TCP demultiplexing happens on the basis of four values (source and destination port numbers, and IP addresses) rather than just on the basis of the destination port number, as is done for UDP.

2.3-3 Comparing and contrasting HTTP and SMTP (2). Which of the following characteristics apply to SMTP only (and do not apply to HTTP)? Note: check one or more of the characteristics below. Is able to use a persistent TCP connection to transfer multiple objects. Uses CRLF.CRLF to indicate end of message. Operates mostly as a "client push" protocol. Uses server port 80. Uses a blank line (CRLF) to indicate end of request header. Uses server port 25. Operates mostly as a "client pull" protocol. Has ASCII command/response interaction, status codes.

Uses CRLF.CRLF to indicate end of message. Operates mostly as a "client push" protocol. Uses server port 25.

7.3-2. Use of ACKs in WiFi. Why are link-layer ACKs used in WiFi (802.11) networks? [Hint: check two of the boxes below]. Wireless links are noisier than wired links, and so bit level errors are more likely to occur, making link-layer error recovery more valuable that in less-noisy wired links. Hearing a receiver ACK, all other stations will stop transmitting. This reduces collisions. The sender can used the differences in the signal strength in an ACK to infer whether the receiver is moving towards, or away from, the sender Because of the hidden terminal problem, a node that is transmitting and hears no collisions still doesn't know if there was a collision at the receiver

Wireless links are noisier than wired links, and so bit level errors are more likely to occur, making link-layer error recovery more valuable that in less-noisy wired links. Because of the hidden terminal problem, a node that is transmitting and hears no collisions still doesn't know if there was a collision at the receiver.

3.3-3 UDP segment length field. Why is the UDP header length field needed? a. To make the header and even number of bytes b. Because the payload section can be of variable length, and this lets UDP know where the segment ends. c. Because this field is needed in TCP as well. d. (a) and (b) above

b. Because the payload section can be of variable length, and this lets UDP know where the segment ends.


Set pelajaran terkait

Chapter 12 Physical Geography: River Systems

View Set

Chapter Nineteen Review + Quiz Questions

View Set

Intro to Business Test 4 Turnbull

View Set