Job admission control for service stability
4.1 A TOKEN BUCKET METHOD OF ADMISSION CONTROL IN DIFFSERV AND INTESERV MODELS
DiffServ is a per-aggregate based service model [1–3]. In the DiffServ model, a network consists of domains. A router at the edge of a domain, the edge router, classifies, marks and aggregates traffic data or jobs entering the domain by service priority. Typically, two classes of service priority are considered [2]: high priority and low priority, producing two separate traffic aggregates. Each core router inside the domain then provides service differentiation by providing the premium service to the aggregate of high priority traffic and serving the aggregate of low priority traffic on the best effort basis.
Figure 4.1 shows a basic DiffServ architecture which handles two classes of traffic in a core router [2]. Two queuing buffers in this architecture, high priority queuing buffer and low priority queuing buffer, are used to keep admitted traffic data before their transmission through the output port of the network interface. These two queuing buffers play a key role in enforcing service differentiation between two classes of traffic aggregates. Admitted high priority data packets are placed into the high priority queuing buffer, and form a queue there. Incoming low priority data packets are placed into the low priority queuing buffer. The output port transmits
Secure Computer and Network Systems: Modeling, Analysis and Design Nong Ye C
2008 John Wiley & Sons, Ltd
Core router
Input port Output port
Incoming traffic Forwarding Outgoing traffic
High priority queuing buffer
Low priority queuing buffer Admission
Contol
Figure 4.1 A basic DiffServ architecture for a core router.
traffic data in the high priority queue first, and serves traffic data in the low priority queue only when the high priority queue is empty. Typically, the First-In-First-Out (FIFO) scheduling method is used to determine the order of serving data packets in each queue. The sizes of the two queuing buffers are determined based on factors such as traffic characteristics and bandwidth allocation between two classes of traffic data. The high priority queuing buffer is typically set to a small size in order to limit the delay of transmitting high priority traffic data. In this architecture, a high priority data packet is dropped by the router if there is not enough space in the corresponding queuing buffer to hold the data packet. Hence, admission control is applied to high priority traffic for shaping admitted high priority traffic to ensure that the available service capacity (e.g., data transmission bandwidth and queuing buffer space) is sufficient to provide the premium service to admitted high priority traffic in terms of bounded delay. There is no need for admission control for low priority traffic data for the following reasons. First, low priority traffic data does not compete with high priority traffic data for the service capacity of the router. Second, dropping low priority data packets through admission control or due to a full low priority queue makes little difference to the service of low priority traffic.
A common admission control method of shaping traffic is the token bucket model [2] which considers two basic characteristics of traffic aggregate: traffic flow rate and traffic peak rate. The token bucket model performs admission control using two parameters: token rate r and bucket depth p. Token rate r determines the flow rate of admitted traffic, and bucket depth p sets the maximum burst amount of admitted traffic. The token bucket model makes admitted traffic compatible with the bandwidth capacity of the output port through the token rate and with the capacity of the high priority queuing buffer through the bucket depth. Admission control rejects and drops any incoming data packet which makes the token rate and the bucket
depth of admitted traffic exceed r and p,respectively. In [3], a feedback control mechanism is
added to the basic DiffServ architecture shown in Figure 4.1 to enable an adaptive token rate, r , to achieve a trade-off between resource allocation and packet loss.
The DiffServ model aims at service differentiation according to service priority and bound of service delay by setting a small size on the high priority queuing buffer and admitting high priority traffic to be compatible with the service capacity of the router. Service differentiation in the DiffServ model contrasts with no service differentiation in the best effort service model in which all data packets are served according to their arrival time rather than their service priority. The token bucket model of admission control guarantees the premium service to admitted high priority traffic which is compatible with the available service capacity, in contrast to no
Batch Scheduled Admission Control (BSAC) for service stability 55 Router Input por t Output por t
Incoming traffic Outgoing traffic
Traffic control Per-flow queuing buffer
Per-flow queuing buffer Forwarding
Traffic control
Packet Scheduler Reservation
Figure 4.2 A basic InteServ architecture for a router.
admission control in the best effort service model which can lead to denial of service to high priority traffic.
The InteServ model [3–6] is designed to provide the service guarantee for continuous flow jobs with a stringent requirement for Quality of Service (QoS). A continuous flow job has a data flow lasting a period of time, e.g., the job of transmitting audio and video data in a teleconferencing session. A flow is ‘a distinguishable stream of related datagrams that results from a single user activity and requires the same QoS’ [4]. A flow is often characterized by bandwidth (flow rate), peak rate, etc. The required bandwidth of a given flow is guaranteed in the InteServ model by requiring an end-to-end bandwidth reservation. Hence, InteServ is a per-flow-based service model.
Figure 4.2 shows a basic InteServ architecture in the Resource reSerVation Protocol (RSVP) [7] for a router which is a hop on the path of an end-to-end bandwidth reservation. In this architecture, a separate queue is required to hold data packets for each flow. Traffic control ensures that incoming traffic of each flow conforms to flow characteristics which are used to make the bandwidth reservation for the flow. Traffic control includes traffic policing and shaping. The token bucket model of admission control is one of traffic control methods for traffic policing and shaping. Some other methods of traffic control are discussed in [3, 8].
Since each flow has its state information (e.g., bandwidth, delay, etc.), large amounts of state information must be maintained for many flows passing through an intermediate router, especially a backbone router. A sophisticated scheduling algorithm is also required to pick a queue from which data packets are taken out at a given time for data transmission at the output port, while meeting the bandwidth and delay requirements of all flows with reservation. The management overhead of the InteServ model, including large amounts of flow state information and processing time in packet scheduling, produces the scalability problem of employing the InteServ model in large-scale computer networks.