Computer Networking • CS 514

Test 1, 5 February 2014


This test has six questions. The test runs the entire period, ending at 6:20. When you finish the test, you may leave.

  1. Briefly (one or two sentences, 25 to 30 words) define:

    Pipelining

    Packet switching

    HTTP

    Socket interface

    Protocol


    Pipelining — A delay-reducing optimization that sends successive requests without waiting for the associated responses.

    Packet switching — A PDU-transmission technique that routes on a hop-by-hop basis.

    HTTP — The hyper-text transfer protocol, an application protocol providing simple request-response resource management.

    Socket interface — An operating-system-based interface to network services.

    Protocol — The rules (syntax and semantics) determining how data are transferred between two (or more) communicants.

  2. Describe the circumstances under which an HTTP request message has a no entry body (or has an empty entry body, or has a null entry body - they all mean the same thing).


    An HTTP request message has a null body when the sender makes a request in which all necessary information can be conveyed to the receiver in the request's command and header fields. Examples of such requests include GET and HEAD.

  3. Describe how the file-transfer protocol (FTP) can be used to implement the functions of SMTP.


    An SMTP server performs three functions in (roughly) order: collect the message from mail user agent (MUA), transmit the message to the receiver, and, on the receiving side, deliver the message to an MUA. If we assume messages are picked-up from and delivered to directories, an FTP-based mail server has the commands to accept and deliver messages. Transmission would be done by the FTP mail server as a file transfer.

  4. A video real-time application needs 5 Mbit/sec bandwidth and 100 msec end-to-end response time. What is the largest distance between application end-points that satisfies the application requirements given in the previous sentence? Justify your answer. Assume the network distance is equivalent to the physical distance between end-points; clearly state any other assumptions you make.


    Assuming a propagation speed of 2c/3 = 123,000 miles/sec, in 100 msec a signal travels (123,000 miles/sec)(100 msec) = 12,300 miles. This answer assumes there are no other end-to-end delays.

  5. An application makes n HTTP requests to receive n different resources; the elapsed time of the requests is the time between making the first request and getting the nth resource (assume no errors). What is the relation between the elapsed times if the application makes one request over each of n HTTP connections vs making n requests over the same HTTP connection. Show your work.


    Assume the elapsed time for a single request-response is t sec. Sending one request-response over each of n connections should take t sec. There are at least two techniques for sending n requests over a single connection. The first technique sends a request, waits for the response, sends the another request, and so on. The elapsed time for this technique is n*t sec. The second technique sends all n requests at once and then receives all n responses. The elapsed time for this technique is t sec, assuming it takes no time to transmit or receive data.

  6. Describe the changes you would make to time-division multiplexing (TDM) to better exploit statistical multiplexing. Justify your changes.


    The advantage statistical multiplexing brings to time-division multiplexing (TDM) is the ability to slots that have been allocated but are unused in a frame. One way to implement statistical TDM is to queue up senders in the order of slots in a TDM frame. If some queue positions are empty, they can be filled from senders in the queue (if any) that have not yet been slotted. This requires the slots be augmented with an addressing scheme because slot position alone is no longer sufficient to identify the sender.


This page last modified on 2014 February 5.