360 likes | 488 Views
Main Concepts for Multimedia Networking. Klara Nahrstedt cs598kn. Network Resource Management. Limited capacity in digital distributed systems (especially at the edges of networks) despite compression and utilization of new technologies
E N D
Main Concepts for Multimedia Networking Klara Nahrstedt cs598kn
Network Resource Management • Limited capacity in digital distributed systems (especially at the edges of networks) despite compression and utilization of new technologies • Need adherence for processing of continuous data by every hardware and software component along the data path • Resources are required at different levels of distributed multimedia systems
Quality of Service • Multimedia systems consist of a set of services. In order to provide more generic multimedia services, services get parameterized by Quality of Service (QoS) parameters • Examples: • Audio service: 8000 samples per second; sample resolution 8 bits per sample • Network service: throughput 100 Mbps, connection setup 50 ms. • Must Consider • Layered Model of QoS • Application QoS – media characteristics (sample rate, sample size), media relations (synchronization, conversion) , transmission characteristics (end-to-end delay, sample loss rate, costO • System QoS – task characteristics (deadlines, duration, period, priority) • Network QoS – throughput specs (throughput, burstiness), traffic specs (packet loss rate, jitter, packet end-to-end delay), performance specs (ordering, error control, cost, priority) • End-to-end QoS
QoS Classes • Guaranteed Service Class – QoS guarantees are provided based on deterministic QoS parameters • Predictive Service Class – QoS guarantees are statistical (or proportional) – QoS values are estimated and based on the past behavior of the service • Best effort Service Class – No QoS guarantees or only partial guarantees.
Deterministic QoS Specification • Single Value QoS1, where QoS1 is requested value • Example: average value (QoSave), contractual value, threshold value, target value • Pair Values <QoS1, QoS2> where QoS1 is required value and QoS2 is desired value • Example: <QoSave, QoSpeak>, <QoSmin, QoSmax> • Triple Values <QoS1, QoS2, QoS3>, where QoS1 is best value, QoS2 is average value, QoS3 is worst acceptable value • Example: <QoSpeak, QoSave, QoSmin>
Guaranteed QoS • We need 100% guarantees for QoS values (hard guarantees) or very close to 100% (soft guarantees) • Current QoS calculations and resource allocations are based on (1) hard upper bounds for imposed workloads, and (2) worst case assumptions about system behavior • Advantages: guaranteed QoS satisfy worst case, hence high reliability in guarantees • Disadvantages: over-reservation of resources, hence underutilization of resources
Predictive QoS Specification • Desired QoS is calculated based on past values (QoS1, …QoSn). The QoS bound at step K > n can be • QoSK = 1/n ∑j=1..n QoSj • QoSK = max i=1,…,n QoSj • QoSK = min j=1,…,n QoSj
Best effort QoS • No QoS bounds or possible soft QoS bounds • Possible calculations what kind of performance one might get is based on (1) average case with stochastic description of imposed workload, and (2) average case with stochastic assumptions about the system behavior • Advantages: resource capacities can be statistically multiplexed, hence very high resource utilization • Disadvantage: QoS may be temporarily violated, hence service guarantees are very unpredictable.
QoS-aware Service Model • Single Service Model • QoSin = (qos1,…qosn)in • QoSout = (qos1,…qosn)out • Resources R = {r1,…rm) • Composite Service Model Resources QoSin QoSout
Relation between QoS and Resources QoS Spec Probing Negotiation Translation QoS Routing Media Processing QoS Enforcement Monitoring Admission Control Resource Reservation Allocation Local Adaptation Global Adaptation
Translation • Human interface (user QoS) to application QoS • Application QoS to system QoS • System QoS to network QoS • Translation is bidirectional • Media scaling (reverse translation • Transparent scaling • Non-transparent scaling
Scaling • For audio transparent scaling is difficult, non-transparent scaling should be used • For video transparent scaling is possible • Temporal scaling • Spatial scaling • Frequency scaling ( reduction of DCT coefficients) • Amplitude scaling (reduction of color depth)
Negotiation • Bilateral peer-to-peer negotiation • Triangular negotiation • Triangular negotiation with bounded value • Negotiation may happen at each layer of the multimedia system • If one does negotiation at the application layer, the contracted values should be translated to network/system layers
Probing/Discovery of QoS Capabilities • QoS Routing – important service to probe and discovery QoS paths – accompanying protocol is a QoS link state protocol to distribute QoS/resource availability information • QoS routing has the goal to discover a path that meets QoS requirements such as throughput, delay, loss rate between two or more users • QoS routing: unicast routing and multicast routing • Unicast QoS Routing Problem: given a source node s, a destination t, a set of QoS constraints C, and possibly an optimization goal, we aim to find the best feasible bath from s to T which satisfies C.
QoS Routing • Bandwidth-aware routing (bandwidth is a concave QoS metric) • Bandwidth optimization problem to find a path that has the largest bandwidth on the bottleneck link (widest path) • Bandwidth constrained problem to find a path whose bottleneck bandwidth is above a required threshold • These problems are solved by slightly modified Dijkstra algorithm • Delay-aware routing (delay is an additive QoS metric) • Delay optimization problem to find a path whose total delay is minimized • Delay constrained problem to find a path whose delay is bounded by a required value • These problems are solvable via Dijstra.
QoS Routing • Composite problems – find bandwidth constrained least delay routing, etc • NP complete problems: • Path constrained path optimization routing problem • Multi-QoS constrained routing • Example: delay-constrained, least cost routing • Example: delay/jitter constrained routing to find a path with bounded delay and bounded jitter
QoS Routing • Multicast QoS Routing Problem: Find a tree in which the end-to-end QoS from the sender to any destination is bounded by a given value • Well-known routing problems: • Steiner Tree problem is to find the least cost tree where the tree is covering a group of destinations with the minimum total cost over all links • Example: least cost multicast routing • All Steiner tree problems are NP complete if the metrics under the constraints are independent and the QoS values are allowed to take on real numbers or unbounded integer numbers
QoS Routing Strategies • Source Routing – each node maintains global state and feasible path is computed at the source node • Distributed Routing – each node maintains local state information and feasible path is computed collectively by all nodes • Hierarchical Routing – nodes are clustered into groups which can be further clustered recursively creating multi-level hierarchy
Admission Control • Throughput QoS parameters maps to bandwidth resource. Packet rate and error rate map to scheduling and buffer resources • Bandwidth admission: Let bibe the reserved bandwidth for the i connection and Bmax the maximal bandwidth at the network interface • Admission is ∑i=1,..n bi ≤ Bmax • In the iterative fashion, we consider bi(alloc) bandwidth which is already allocated to the i connection and bj(req) bandwidth which is requested by the j connection. • Let Bavail = Bmax - ∑bi(alloc), where i is not equal j. • Admission is bj(req) ≤ Bavail
Admission Control • Admission control needed at switches to schedule packets – need schedulability tests – non-preemptive admission tests • Each node needs to consider (a) service time, (b) queuing time, and ( c) propagation time • Processing time at a network node is composition of input/output queuing times and service time
Resource Reservation and Allocation • Bandwidth Reservation • Pessimistic with maximal bandwidth allocation; i.e., if MA = maxi(MA)i, then • BN = MNx(MA/MN) x RA • Optimistic with average bandwidth allocation where MA = (1/n∑ i=1,..n (MA)i) • Reservation/Allocation Protocols • Sender initiated (ST-II) and receiver initiated (RSVP)
Management Plane Management Plane Management Plane Management Plane Transport Plane Transport Plane Transport Plane Transport Plane Reservation Protocols Sender-initiated Protocol reserve Admit/reserve Admit/Reserve allocate transmit Receiver-initiated Protocol reserve admit/reserve admit/reserve allocate
Reservation Styles • IETF (Internet Engineering Task Force) defines three types of reservation styles (defined in RSVP) • Wildcard filter – allows the receiver to create a single reservation along each link shared among all senders for the given session • Fixed filter – allows each receiver to create a single reservation from a particular sender whose data packets it wants to receiver • Dynamic filter – allows each receiver to create N reservations to carry flows from up to N different senders. This style allows the receiver to do channel switching similar to TV channel switching
QoS Enforcement – Traffic Shaping • In packet network that implements resource sharing, admission control and scheduling schemes by themselves are not sufficient to provide QoS guarantees • The reason is that users may attempt to exceed the rates specified at the time of connection establishment, also QoS is usually negotiated for average rate, but bursts occur during transmission, hence resource allocation becomes unbalanced • WE NEED TRAFFIC SHAPPING AT THE ENTRY OF THE NETWORK AND/OR WITHIN THE NETWORK.
Traffic Shaping • Purpose of traffic shaping: • A way of a flow to describe its traffic to the network • The network can determine if the flow should be allowed in • The network can periodically monitor the flow’s traffic • Example of different traffic shapes for transmitting 100 Mbps: • We take 1 packet of size 100 Mbits per second • We take 1 packet of size 1 Kbit per every 10 microseconds • Issues: • Regulating traffic • Deciding whether to accept a flows’ data • Policing Flows
Traffic Shapes • Continuous Sources (audio and video) belong to two traffic shape classes: • Constant Bit Rate (CBR) • Variable Bit Rate (VBR) • CBR traffic is a strong periodic, strongly regular stream • CBR traffic shape description: peak rate allocation of bandwidth for congestion free transmission • VBR is a strong periodic and weakly regular stream or weakly periodic and strongly regular stream • VBR traffic shape description: average rate of transmission λa and peak rate λp where average rate is a small fraction of peak rate
Traffic Shaping • In order to provide guaranteed services, resources must be reserved. • The resource reservation algorithm at end systems and routers takes into account • traffic envelopes (peak and average rate, burst length, and durations), and • service envelope (maximum tolerable delay, desirable delay, jitter).
Traffic Shaping Algorithms • Isochronous Traffic Shaping • Simple leaky bucket (Turner 1996) • Parameters: Bucket size, regulator (enforces rate to the network), rate at which data are drained out of the bucket • (r,T)-smooth traffic shaping (Golestani 1990) – corresponds to stop-and-go queuing • Parameters: T-bit frames (T is fixed), r bits packets of a flow are considered where r varies on a per flow basis; a flow is permitted to inject no more than r bits of data into the network in any T bit frames • Limitations • The range of behaviors is limited to fixed rate flows • Variable flows must request data rate = peak rate which is wasteful
Traffic Shaping Algorithms • Shaping Bursty Traffic Patters • Token Bucket • Parameters: (1) Token Bucket characterized by bucket capacity and rate at which tokens are placed in the bucket; (2) Data Buffer characterized by data rate (peak and average) • Token Bucket with Leaky Bucket Rate Control • Parameters: (1) Token Bucket with token rate and bucket capacity, (2) data buffer with data rate, and (3) leaky bucket • Limitations: • Complexity for implementation • We need two counters and two timers per bucket • Policing remains hard
QoS Enforcement – Queuing • Work-conserving services – send (schedule) the packet once the server has completed service. Hence, the server may not be idle if there is work in a queue. Examples of work conserving schemes are FIFO and LIFO • Non-work-conserving services – send the packet after random amount of time before serving the next packet in a queue, even if packets are waiting in the queue
QoS Enforcement – Rate Control • Conventional packet switching data networks use window-based flow control and FIFO mechanisms • Multimedia communication networks need rate-based mechanisms • Work-conserving rate-control • Weighted fair queuing • Virtual clock • Delay earliest due date • Non-work-conserving rate control • Jitter earliest due date • Stop-and-go • Hierarchical round robin
QoS Enforcement – Error Control • Error Detection • Traditional mechanisms: check-summing, PDU sequencing (out of order packet detection) • Multimedia mechanisms: time detection (not only a lost packet or corrupted packet represents an error, but also a late packet), byte error detection at the application PDU • Error Correction • Go-back-N retransmission • Selective retransmission • Partially reliable streams • Forward error correction • Priority channel coding • Slack automatic repeat request
QoS Monitoring and Adaptation • Network QoS Monitoring via network management • MIP (management Information Base) • Standard network management protocols • SNMP (Simple Network Management Protocol) • CMIS/CMIP (Common Management Information Services and Protocols) • Monitor IP routes, delay, loss, throughput • End-system QoS Monitoring at middleware or application layers or even lower layers (in wireless at MAC) • No standard protocols/services • Internal services monitor end-to-end delay, throughput end-to-end losses (part of protocols such as RTP/RTCP, SIP) • Internal services monitor channel time at MAC layer in wireless networks
QoS Adaptation • Network Adaptation • Dynamic re-routing • Load balancing control – redirecting load • RED – random early drop – adaptation to congestion at routers • May happen at • Routers, switches – dynamic rerouting, RED • Gateways, proxies – load balancing • End-System Adaptation • Adaptive rate control (e.g., PID – Proportional Integral Differentiated Control-theoretical approach) • Traffic shaping • Hierarchical coding • End-to-end or P2P Feedback • Network to End-system Feedback • May happen at • Source – hierarchical coding, adaptive coding • Middleware or transport - rate control, shaping, feedback
Adaptive Applications • If underlying layers do not provide strict QoS guarantees what can application do? • 1. Application asks for soft guarantees • 2. Application changes its behavior to accommodate how the network is currently delivering the data • Approaches: • Buffering at the receiver – adaptive applications buffer to avoid garbled output due to variation in transit times through the network • Recreation of inter-sampling timing and spacing at the receiver using sender’s time-stamps or other rate-related information (use OS soft-real-time scheduling) • Choosing adaptive playback points • Examples: vat – adaptive audio application, vic- adaptive video application
Conclusion • A lot of existing but improved protocols are used for multimedia networks • TCP, UDP, IP, IMCP (Internet Message Control Protocol) • New Protocols were developed for multimedia networks • IPng (IP version 6) – new IP protocol includes QoS and much larger addressing space • RTP – Real-time Transport Protocol (runs on top of UDP/IP) • RSVP/IntServ – Integrated Services with Resource Reservation Protocol – at IP layer • DiffServ – Differentiated Services – at IP layer • RTSP (Real-time Session Protocol) for VOD control – runs on top of RTP/UDP • SIP (Session Interaction Protocol) for Voice over IP – runs on top of RTP/UDP