Scribe Notes for Lecture 12:
Integrated Services
Tue, 26 August 2003
Name: Arindam Chakrabarty
Stochastic Fair Queue Scheduling (SFQ): It uses a small number of
queues at a router & hashes the flows at that router onto them.
Here the scheduling is primarily concerned with the number of
active flows at a router.
Deficit Round Robin (DRR):
It implements Round Robin over all the queues in the router.
For example, say quantum size = 500 bytes.
If a flow gets to send only say 400 bytes (because the next flow is say
200 bytes, leading to overflow), then these 100 bytes will be accrued or
credited to that flow in the next round of packet scheduling at that
router.
Core Stateless Fair Queueing (CSFQ):
Here there are no per-flow states in the core routers & only the
edge routers implement fair queueing.
As an example, say total available bandwidth at an edge router A is 100
Mbps & 40 flows pass through that router
=> each flow will be allocated 2.5 Mbps.
But if a flow F sends packets at 5Mbps, then the edge router A will
decide on the packet drop rate of flow F.
The information regarding the packet flow rate from a source is
provided by that source to the edge router. As a result, this
protocol depends on the reliability of the information provided by the
source of the flow F to the edge router A.
Integrated Services Network:
It's advantages are:
(1) Economies of scale: bandwidth can be
distributed as per requirement.
(2) Ubiquitious usage of the Network: integrating
all the services into one makes the usage of the network more obvious,
i.e., ubiquitious.
The
Architecture of the Integrated Services Packet Network has 4 key
components:
Type of service
provided: this refers to the nature of commitment made by
the network when it promises to deliver a certain quality of service.
2 types of service commitments are
identified: guaranteed & predictive
Service interface: This refers to the set of
paramaters passed between the source & the network, & includes
both
(a) the
characterization of the quality of service the network will deliver,
fulfilling the need of applications to know when their
packets will
arrive, &
(b) the
characterization of the source's traffic, thereby allowing the network
to knowleadgeably allocate resources.
Packet scheduling behaviour of the
network switches: this
component includes both the actual scheduling algorithms to be used at
the switches /
routers (the paper discusses a Unified Scheduling
Algorithm taking care of all types of traffic: guaranteed, predictive
& the traditional datagram
service), as well as the
information that must be carried in the packet headers (for example, the
difference between the expected arrival time & the
actual arrival
time of a packet at a router in the FIFO+ algorithm).
Admission Criteria:
Given that the total available bandwidth is fixed, the network, in order
to meet the service committments it has made to it's
clients (sources), needs to have a
policy to regulate the admission of new sources. The admission criteria
naturally depend, among other things, on
factors like the available bandwidth,
the number of real time flows present & the types of it's service
commitements to them, as well as the types
of service commitments
desired by the new sources intending to use the network.
Classification
of Real Time Traffic: Real time traffic can be classified along 2
lines:
Tolerant & Intolerant:
Certain applications like a video conference allowing one surgeon to
remotely assisting another surgeon during an
operation is intolerant to
service interruptions. But most other video applications (including
video conferencing in a less time-critical setup)
can tolerate some amount of interruptions in service.
Rigid & Adaptive: Rigid applications are those which
use a
priori delay bound
advertised to the network to set the playback point & keep it fixed
regardless of the actual delays
experienced. Naturally, this is expected to lead to unutilization of
bandwidth by real time traffic since playback will start at a fixed
point of time for each packet even if the delay encountered by the
packet was low & it reached it's destination much earlier than the
playback point.
In contrast, in other real time
applications, the receiver measures the network delay experienced by the
arriving packets & then adaptively moves the playback point to the
minimal delay that still produces a sufficiently low packet loss rate. Since
the post-facto delay
computed in this case is likely to be less than the a
priori delay bound pre-computed by the network in rigid
applications, the bandwidth utilization will likely be more in this
case. On the flip side, setting the delay too early may result
in higher packet loss & frequent jitters in the data transmitted may
lead to brief interruptions in service while the playback point is
re-adjusted, thereby requiring the applications involved to be tolerant
Normally,
applications exhibit either intolerance & rigidity, or tolerance
& adaptibility.
Types
of service commitments:
Guaranteed: In
this case, if the network hardware functions properly & the source
conforms to it's traffic characterization, then the network fulfills
it's service commitment to the client / source. It uses the Weighted
Fair Queueing (WFQ) algorithm. It is more appropriate for intolerant
& rigid applications.
One form of traffic characterization
is a traffic filter scheme. Here there is a token bucket filter
characterized by 2 parameters: rate r & depth b. The bucket is
filled up with tokens continuously at a rate r, with b being the
maximum depth of the bucket. Every time a packet is generated, p
tokens are removed from the bucket, where p is the size of the packet. A
traffic source conforms to a token bucket filter if there are always
enough tokens in the bucket whenever a packet is generated.
Parekh-Gallager's result: In
a network with arbitrary topology, if a flow gets the same clock rate
at every switch & the sum of the clock rates of all the flows at
every switch is less than or equal to the link speed, then the
queueing delay experienced by that flow is bounded above by b(r) / r,
where r is the clock rate allocated to that flow while b(r) is the
maximum depth of the bucket corresponding to that flow (say F) &
represents the level of burstiness that can be handled by a switch with
respect to F.
The significance of the above result
lies as follows: given bandwidth r, b(r) can be found, & then it can
be checked whether b(r) / r conforms to the delay requirements of the
source. If not, r can be increased i.e. greater bandwidth can be
provided to that source to meet it's guaranteeddelay
requirements.
Predictive: Here
the network commits that if the past is a guide to the future, then the
network will meet it's service characterization. Secondly, the network
attempts to deliver service that will allow the adaptive algorithms to
minimize their playback points. Clearly, this type of service is
more suited for tolerant & adaptive applications.
This service type makes use of FIFO
algorithm which spreads the delays (say introduced by bursty traffic
from one source) across all flows evenly. As a result, the playback
point is not deferred much for any of the receivers. In contrast, had it
used the WFQ algorithm (used in guaranteed service), the delay
encountered by packets from one bursty flow would have significantly
deferred their playback points at the receiver.
FIFO is efficient for implementing sharing among the flows (required
by adaptive applications) while WFQ efficiently implements isolation
among the flows (required by rigid applications).
Datagram service: This refers to the
traditional best-efforts datagram
service which is also included in the Unified Scheduling Algorithm, as
the lowest priority class among the priority classes corresponding to
predictive scheduling, which together in turn form a flow (labelled the
0th flow) along with the guaranteed service flows.