Midterm

Sample Midterm

1. (a) Describe the end-to-end principle.

(b) Give one example in which implementing a particular functionality at a lower layer breaks this principle, and one example in which it does not. Explain.

2. (a) What problem does Fair Queueing address?

(b) Describe the Fair Queuing algorithm.

(c) What is the system virtual time and what it is used for?

3. Compare Assured and Premium services. How is each of them implemented at edge and core routers?

Sample Midterm Solutions

1. (a) Describe the end-to-end principle.

(b) Give one example in which implementing a particular functionality at a lower layer breaks this principle, and one example in which it does not. Explain.


Answer: In a system with many layers of functionality, some functionalities can be implemented at a lower layer only as a performance enhancement and they must be fully and correctly implemented.

Examples:

Doesn't break e-t-e principle: Link layer reliability in a wireless network.  Another example is the Snoop protocol. Snoop preserves end-to-end semantics; it sends acks only after the receiver has received the packet. It acts only as a performance enhancer. Yet, another example is providing QoS.  If a congested router does not have a way to differentiate between packets, it cannot support delay sensitive applications. (3 pts).

Breaks e-t-e principle: I-TCP breaks the end-to-end semantic. It can send acknowledgments to the sender even before the receiver has received the packet. (3 pts)

2. (a) What problem does Fair Queueing address?

(b) Describe the Fair Queuing algorithm.

(c) What is the system virtual time and what it is used for?


(a) Problem being solved: provide isolation between flows, thus protecting the well-behaved flows against the ill-behaved ones. At the same time it distributes the bandwidth "fairly" among the flows. In particular, the criteria used to distribute the bandwidth is max-min fairness. (9 pts)

Description of the Weighted Fair Queueing (WFQ) algorithm: Assume an idealized fluid flow system, i.e., a system in which flows are served by a bit-by-bit round-robin scheduler. Let the packet finishing time be the time when the last bit of the packet is served in the idealized system. Then, in the packet system, WFQ can be implemented by serving the packets in the increasing order of their finishing times. (6 pts)

(b) The virtual time represents the service time that a cretinous backlogged flow with weight 1 would receive in an idealized fluid flow system.

Alternatively, the virtual time V is defined by

    dV/dt = C/(\sum_{i \in B(t)} w_i)

where B(t) represents the set of flows that are backlogged in the idealized system at time t, and w_i represents the weight associated to flow i.

3. Compare Assured and Premium services. How is each of them implemented at edge and core routers?

Assured service provides one-to-many semantics, while Premium service provides one-to-one semantics (i.e., virtual lease line). (4 pts)

Assured service guarantees only that the assured traffic is delivered with a higher probability than the best-effort traffic; in the case of severe network congestion, the assured traffic can still experience losses. In contrast, the premium traffic is guranteed. (6 pts)

Ingress routers:

- Assured traffic: use a token bucket to shape the assured traffic. In-profile packets are marked with the A-bit. Out-of profile packets are un-marked and treated as best-effort packets.

- Premium traffic: use a token bucket to police the premium traffic. In-profile packets are marked with the P-bit. Out-of profile packets are enqueued, and when the buffer overflows, they are dropped.

- Core routers: Maintain two queues: one for the premium traffic, and the other for the assured and the best-effort traffic. The two queues are served by using a weighted fair queueing algorithm, or by using strict priorities. In either case the goal is to ensure that no premium packets are dropped.

For the assured and best-effort traffic, routers use a RIO buffer management scheme. This ensures that the best-effort packets are always dropped first in case of congestion.