Beruflich Dokumente
Kultur Dokumente
Signaling Admission
QoS Routing
Protocol Control
Admission
Control
Plane
Data
QoS
Routing
packet
TIME
arrival departure
packets packets
Queuing Discipline
Enqueue Black Pipe Dequeue
FIFO Queue
Single FIFO FIFO Queue
Queue C S
FIFO Queue
Queuing Discipline
DifferentialService (DiffServ)
DS field, per hop forward behavior,
Ingress, interior, exgress router
Comparison
Application B C Server
A
Reservation
request Y-> Forward the request
Accept?
QoS-Aware Router
N-> Reject the request
Data Plane of
Fq1 IntServ Router
Flow Fq2
Identifier scheduler
Fqn
Best Effort Q
policer
marker
scheduler
Core Routers
Ingress Router Forward Packet Egress Router
Police, Mark,
Shape, Drop
Packets
Core Router
Edge Router
DiffServ Domain
IP TOS Precedence D T R 0 0
1 2 3 4 5 6 7 8
DS DSCP 0 0
12
12 AF
AFPHBs
PHBs
11EF
EFPHB
PHB
26 = 64 behaviors
11Best
BestEffort
Effort PHB
PHB
88Class
Class SelectorPHBs
Selector PHBs
Dynamic SLA
Static SLA
Policing, classification, FIFO
Traffic Control Policing, classification, marking,
marking, Priority/WFQ scheduling
RIO/WRED scheduling
scheduling
Non-
conforming Re-mark as Best-Effort Drop Forward
Traffic
Router
Meter DSCP
Packet DSCP Classifier
Shaper
Classifier Marker
Class
Dropper Scheduler
Routing
Database Control Plane
Traffic Forwarding
Major Issues
1) How to get the information about link resource usage
efficiently ?
2) How to know the residual resource is enough to satisfy a
user’s request under OVERBOOKING?
Detail Version:
- Average/Peak Rate Combinatory
- Additive Effective Bandwidths
- Engineering the loss Curve
- Maximum-Variance-Based Approaches Drawbacks
Sometimes, it is difficult to give a
accurate and tight traffic model.
It may cause low utilization of
network in order to meet the
worst-case requirements.
- Time Window
Estimated rate=max[C1,C2,C3….Cn]
Drawbacks
It can not be used to provide
tight guarantee constraints
Measurement is expensive.
h1
rsvp_session
X
RF RF
return value
rsvp_session
RF
h2=hash_src( srcaddr
) tcf_result
h2 tcf_police info.
RF
RF RF
modify
Has rsvp_filter
sequential search in N adjust classid
assigned ?
the rsvp_session list
create
Y
Has rsvp_session
hash_src() existed ?
sequential search in N N
the rsvp_filter list insert a rsvp_session
Y
match nomatch insert a rsvp_filter
Peak Rate p
Flow Queue
h=10
h=5
Flow Queue Flow Queue
p=2 p=2
5 9 10 5 9 10
h=0 h=0
Flow Queue Flow Queue
p=2 p=2
5 9 10 5 9 10
N
skb->len >
q->max_size
Y
full
qdisc_enqueue(skb, q->qdisc) drop
Y
Estimate the admitted tx time
ptoks given the pkt is sent out
ptoks = ptokens + toks
– (len(pkt)/P)
Flow Queue N
Flow Queue N
F3
300 200
S 200
200 100
Flow Queue N
Flow Queue N
Based)
It provides perfect fairness in bandwidth allocation
C1 A1 B1 A2 C2 A3 B2 C3 Packetized Model
V (t1 ) 0
Virtual Time Implementation
tj is the time where V (t j 1 ) V (t j 1 ) ,
iB
i
the jth event occurs. t j t j 1 , j 2,3,....
VFT
F1 F1 F1 F2 F3 F3 F2 F1 F4 F2 F3 F4
4, 200 3, 200 2, 200 7, 300 11,200 10, 200 9, 400 6, 200 1, 200 13,200 5, 200 8, 200 12, 200
csz_insert_start() :
skb_queue_tail()
Wake up the flow
Set delay to the time escaped Assume all flows are active and
from last arrival packet calculate the current VST
N
VST<F
If any active flow exists
Y
The first flow in the list f
is inactive
Get the minimum VFT, F,
from the headed flow
of the list f Calculate VST at the time that
the flow became inactive and
adjust delay.
Drop queue
(b) Early Drop : To early drop packets before queue is full
Queue
Drop
with P
queue
Drop
B B B B
C C C C C
Logic Memory Pool
A A A A
B B B B
C C C C C
Rules
1. To Drop or Mark all packets as Qlengthavg>max_threshold
2. To Queue all packets as Qlengthavg<min_threshold
3. To Drop packets with p as min_threshold < Qlengthavg<max_threshold
where p = maxp * ( Qlengthavg – min_threshold)
/ (max_threshold-min_threshold)
Drop
3
(c) qave = 6; then Pb=0.1*(4-1)/(4-1)=0.1
Queue (min{qave, qth_max} qth_min )
13 12 11 Drop
9 7 6 5 4 2 Pb max_P
with P (qth_max qth_min)
Drop qth_max=4 qth_min=1
Let qth_min=1, qth_max=4, max_P=0.1 and w=1.
8 Such a w implies that qave is always equal to the
10
present queue length.