27
1 2011 RMMQoS-chap1 1 Réseaux Multimédia et Qualité de Service M2 RISE 2011-2012 JJ Pansiot 2011 RMMQoS-chap1 2 Références Analyse structurée des réseaux, Jim Kurose, Keith Ross Pearson Education (en particulier chapitre 6 Les réseaux et le multimédia). Réseaux, 4ème édition, Andrew S. Tanenbaum, Pearson Education, (en particulier chapitre 7.4 Multimédia). An Engineering Approach to Computer Networking, S. Keshav, Addison Wesley, (en particulier chapitres 8 switching et 9 scheduling). 2011 RMMQoS-chap1 3 Objectifs Applications multimédia caractéristiques des flux multimédia Protocoles de bout en bout signalisation multimédia Dans le réseau mécanismes de commutation et ordonnancement = > QoS (Quality of Service = QdS ) architectures de QoS Application et signalisation multimédia (en particulier VoIP) : Emil Ivov Mécanismes et architectures pour la QoS : JJP

Réseaux Multimédia et Qualité de Servicepansiot/enseignement/RMM/RMM_c… · 1 2011 RMMQoS-chap1 1 Réseaux Multimédia et Qualité de Service M2 RISE 2011-2012 JJ Pansiot 2011

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Réseaux Multimédia et Qualité de Servicepansiot/enseignement/RMM/RMM_c… · 1 2011 RMMQoS-chap1 1 Réseaux Multimédia et Qualité de Service M2 RISE 2011-2012 JJ Pansiot 2011

1

2011 RMMQoS-chap1 1

Réseaux Multimédia et Qualité de Service

M2 RISE

2011-2012

JJ Pansiot

2011 RMMQoS-chap1 2

Références

•  Analyse structurée des réseaux, Jim Kurose, Keith Ross Pearson Education (en particulier chapitre 6 Les réseaux et le multimédia).

•  Réseaux, 4ème édition, Andrew S. Tanenbaum, Pearson Education, (en particulier chapitre 7.4 Multimédia).

•  An Engineering Approach to Computer Networking, S. Keshav, Addison Wesley, (en particulier chapitres 8 switching et 9 scheduling).

2011 RMMQoS-chap1 3

Objectifs •  Applications multimédia

–  caractéristiques des flux multimédia •  Protocoles de bout en bout

–  signalisation multimédia •  Dans le réseau

–  mécanismes de commutation et ordonnancement –  = > QoS (Quality of Service = QdS ) –  architectures de QoS

•  Application et signalisation multimédia (en particulier VoIP) : Emil Ivov

•  Mécanismes et architectures pour la QoS : JJP

Page 2: Réseaux Multimédia et Qualité de Servicepansiot/enseignement/RMM/RMM_c… · 1 2011 RMMQoS-chap1 1 Réseaux Multimédia et Qualité de Service M2 RISE 2011-2012 JJ Pansiot 2011

2

2011 RMMQoS-chap1 4

Remarque préliminaire •  Média :

–  texte, image fixe, son, vidéo, … •  Multimédia

–  présence de plusieurs média •  texte et image …. •  problèmes de codage, synchronisation, …

•  ce qui va nous intéresser –  média continus (audio, vidéo) –  interaction avec le réseau

2011 RMMQoS-chap1 5

Multimédia, Qualité de Service? Applications multimédia : flux continus audio/ vidéo à travers le réseau

Le réseau fournit aux applications le niveau de performance nécessaire à leur bon fonctionnement

QoS

2011 RMMQoS-chap1 6

Applications Multimédia Principales caractéristiques: •  sensibles aux délais

–  délai de bout en bout –  variation de délai :

•  gigue (jitter) •  Tolérants aux pertes

redondance de l’information, adaptation récepteur

•  Inverse des applications informatiques classiques : –  peu sensibles aux délais –  sensibles aux pertes

Classes d’applications MM 1) Streaming audio et/ou video pré-

enregistrés 2) Streaming audio et/ou video en

direct (“live”) 3) Applications audio et/ou video

interactives “temps-réel”

Page 3: Réseaux Multimédia et Qualité de Servicepansiot/enseignement/RMM/RMM_c… · 1 2011 RMMQoS-chap1 1 Réseaux Multimédia et Qualité de Service M2 RISE 2011-2012 JJ Pansiot 2011

3

2011 RMMQoS-chap1 7

Streaming de média enregistrés

Streaming •  media stocké à la source (ex VoD) •  transmis au client •  streaming: le client commence à

“jouer” (restituer) avant que toutes les données soient arrivées

•  pas de stockage en réception •  contrainte temporelle : les données

doivent arriver à temps pour être jouées (playout) de façon continue

Note : Si on attend le flux complet

<=> transfert de fichier

2011 RMMQoS-chap1 8

Streaming de média enregistrés

1. video enregistrée

2. video émise

3. video reçue et jouée par le client

Don

nées

cum

ulée

s

streaming : à cet instant le client joue alors que le serveur émet

délai réseau

temps

2011 RMMQoS-chap1 9

Streaming de média enregistrés : Interactivité

•  Fonctionnalité “magnétoscope”: le client peut faire pause, rembobiner, FF, etc –  10 sec délai initial OK –  1-2 sec avant effet commande OK –  Protocole RTSP souvent utilisé

•  contrainte : les données doivent arriver “à temps” pour le playout

Page 4: Réseaux Multimédia et Qualité de Servicepansiot/enseignement/RMM/RMM_c… · 1 2011 RMMQoS-chap1 1 Réseaux Multimédia et Qualité de Service M2 RISE 2011-2012 JJ Pansiot 2011

4

2011 RMMQoS-chap1 10

Streaming de média en direct

Exemples •  radio sur internet •  télé sur Internet Streaming •  buffer de réception (playback, playout buffer) •  délai de playback peut être > 10s Interactivité •  pas de FF ( publicités :-(( •  pause, rembobiner possibles (buffer cyclique)

2011 RMMQoS-chap1 11

Streaming de média en direct

•  En général 1 vers N – difficulté à étendre

•  duplication dans le réseau –  => multicast IP, routage multicast

•  multicast applicatif –  hiérarchie de serveurs de contenu

»  délais

2011 RMMQoS-chap1 12

Multimedia interactif “temps réel”

•  applications: téléphonie sur IP, vidéo conférence, applications distribuées interactives (jeu, …)

•  contraintes délais de bout en bout: –  audio: < 150 msec bon, < 400 msec acceptable

•  délai total : application (paquetisation, compression) et délai réseau

•  délai supérieur empêche interactivité (cf satellite)

Page 5: Réseaux Multimédia et Qualité de Servicepansiot/enseignement/RMM/RMM_c… · 1 2011 RMMQoS-chap1 1 Réseaux Multimédia et Qualité de Service M2 RISE 2011-2012 JJ Pansiot 2011

5

2011 RMMQoS-chap1 13

Multimedia interactif “temps réel”

•  initialisation de session –  comment l’appelé annonce son adresse/port,

codage ? - voir protocoles SIP, H323

2011 RMMQoS-chap1 14

Multimédia sur Internet “basique” TCP/UDP/IP: service “best effort” •  pas de garantie sur les délais (TCP,UDP), ni sur les

pertes (UDP) •  avec TCP :

–  correction de pertes => retransmission => augmente les délais et la gigue

•  Actuellement les applications multimédia utilisent des techniques de niveau applicatif –  codage redondant, playback buffer, –  réseaux de distribution de contenu

•  CDN Content Delivery Networks comme Akamai •  ou Pair à Pair

–  pour “cacher” les limitations d’internet

2011 RMMQoS-chap1 15

Solutions possibles pour le support du MM Architecture à intégration de

service (IntServ) •  Changements dans internet

pour que les applications puissent réserver de la Bande Passante (BP) de bout en bout (principes analogues à ATM)

•  Nécessite des nouveaux logiciels complexes dans le réseau et les clients

Architecture à différenciation de service (DiffServ)

•  Moins de changement que IntServ, classe de service “améliorée” pour le MM

Pas de changement du réseau • pas de changement interne • Surdimensionnement BP

« overprovisionning » • CDN, PàP, multicast applicatif

Page 6: Réseaux Multimédia et Qualité de Servicepansiot/enseignement/RMM/RMM_c… · 1 2011 RMMQoS-chap1 1 Réseaux Multimédia et Qualité de Service M2 RISE 2011-2012 JJ Pansiot 2011

6

2011 RMMQoS-chap1 16

Audio

2011 RMMQoS-chap1 17

Compression audio basique •  Signal analogique

échantillonné à intervalle constant –  téléphone classique : 8000

éch/sec –  CD audio : 44100 éch/sec

•  chaque échantillon quantifié (arrondi) –  ex 28=256 valeurs

possibles •  chaque échantillon codé

–  256 valeurs => 8 bits

•  Exemple du téléphone 8000 éch/sec, 256 valeurs =-> 64000 bps

•  Le récepteur retransforme en signal analogique (“interpolation”) –  perte de qualité

Exemples de débits •  CD: 1.411 Mbps •  MP3: 96, 128, 160 kbps •  téléphonie sur IP : 5,3 à 13

kbps

2011 RMMQoS-chap1 18

Exemple

(a) signal (b) échantillonnage. (c) quantification sur 4 bits

Page 7: Réseaux Multimédia et Qualité de Servicepansiot/enseignement/RMM/RMM_c… · 1 2011 RMMQoS-chap1 1 Réseaux Multimédia et Qualité de Service M2 RISE 2011-2012 JJ Pansiot 2011

7

2011 RMMQoS-chap1 19

Compression audio et l’oreille

(a)  seuil d’audibilité/fréquence ~ bande passante oreille

(b) effet de masquage

2011 RMMQoS-chap1 20

Compression audio

•  en pratique – échantillonnage/compression par sous

bande (par exemple 32 en Mpeg) – quantification dépend de la sous-bande – n’envoyer que ce qui est audible

2011 RMMQoS-chap1 21

Paquetisation et Streaming Audio

technique de l’”interleaving” la perte d’un paquet diminue le fréquence des paquets mais pas de trou “silence”(mais délai)

Page 8: Réseaux Multimédia et Qualité de Servicepansiot/enseignement/RMM/RMM_c… · 1 2011 RMMQoS-chap1 1 Réseaux Multimédia et Qualité de Service M2 RISE 2011-2012 JJ Pansiot 2011

8

2011 RMMQoS-chap1 22

Streaming Audio

Le logiciel client “média player” met les données dans un buffer, et les joue ensuite

2011 RMMQoS-chap1 23

Exemple téléphonie sur IP •  alternance périodes actives (parole) et silencieuses

–  p.e. 64 kbps pendant activité •  paquets générés seulement pendant activité

–  morceaux de 20 msec à 8 Ko/sec: 160 octets •  la couche appli ajoute un entête à chaque morceau •  puis encapsulé dans un datagramme UDP •  => un paquet UDP toutes les 20 ms

–  (160+entêtes ) octets

2011 RMMQoS-chap1 24

Influence du réseau (audio interactive) •  pertes : un paquet IP peut se perdre

(congestion réseau) •  pertes dues au délai un paquet arrivé trop

tard est ignoré (p.e. paquet suivant déjà joué) –  délais : traitements et files d’attentes dans le

réseau –  délais de traitement aux extrémités

(compression…) –  délai maximum tolérable environ: 400 ms

•  tolérance aux pertes: dépend du codage, les pertes peuvent être cachées –  de 1% à 10% peut être toléré

Page 9: Réseaux Multimédia et Qualité de Servicepansiot/enseignement/RMM/RMM_c… · 1 2011 RMMQoS-chap1 1 Réseaux Multimédia et Qualité de Service M2 RISE 2011-2012 JJ Pansiot 2011

9

2011 RMMQoS-chap1 25

transmission à débit constant

donn

ées

cum

ulée

s

temps

délai réseau variable (gigue)

réception au client joué à

un débit constant

délai de playout

donn

ées

buff

eris

ées

Gigue

•  délai de réception entre deux paquets –  > 20 ms ou < 20 ms

•  remplissage variable du buffer

2011 RMMQoS-chap1 26

Délai fixe de playout •  Le récepteur essaie de jouer chaque

morceau exactement d ms après sa génération –  le morceau a une estampille t (cf RTP)

•  jouer morceau à t+d . – si morceau arrive après t+d

•  morceau ignoré •  Compromis

– grand d : moins de pertes de paquet – petit d : meilleure interactivité

2011 RMMQoS-chap1 27

Délai de playout adaptatif •  Objectif : minimiser le délai de playout DP tout en

gardant un taux de paquets hors délai faible •  Idée : ajuster dynamiquement le délai de playout

–  Estimer le délai réseau et ajuster le DP au début de chaque période d’activité

–  Les périodes de silence sont allongées ou raccourcies •  suivant que DP augmente ou diminue

–  Les morceaux sont toujours joués tous les 20 ms pendant activité

–  estimation DP : moyenne glissante : –  nouveau_DP= (1-u)*ancien_DP + u*délai_dernier_paquet –  où u est un petit nombre p.e. 0,1 (contrôle la réactivité)

•  cf estimation RTT dans TCP

Page 10: Réseaux Multimédia et Qualité de Servicepansiot/enseignement/RMM/RMM_c… · 1 2011 RMMQoS-chap1 1 Réseaux Multimédia et Qualité de Service M2 RISE 2011-2012 JJ Pansiot 2011

10

2011 RMMQoS-chap1 28

DP adaptatif suite • On peut aussi raffiner en estimant la variation de délai (gigue) nouvelle_gigue = (1-u) * ancienne_gigue + u * | délai_paquet - DP| • le premier paquet d’une période d’activité est joué avec un délai

DP + K * nouvelle_gigue où K est un paramètre fixe

• Les paquets suivants de la même période d’activité sont joués à intervalle constant

2011 RMMQoS-chap1 29

DP adaptatif suite Comment déterminer le début d’une période d’activité •  en l’absence de pertes

–  différence des estampilles > 20 msec •  => nouvelle période

•  avec pertes : regarder estampilles et numéros de séquence –  différence des estampilles > 20 msec et séquence sans “trou”

=> nouvelle période.

2011 RMMQoS-chap1 30

Traitement des pertes Utilisation de ARQ (exemple TCP)

=> ajoute au moins un RTT inutilisable en interactif

Codes correcteurs (FEC):

codes simples pour corriger les pertes (≠ erreurs) exemple codes Reed-Solomon •  pour chaque groupe de n paquets créer un paquet de redondance

–  exemple OU exclusif des n paquets •  envoyer n+1 paquets, •  on peut reconstruire les n paquets si au plus un seul paquet perdu

–  inconvénient : débit utilisé augmenté de 1/n –  délai augmenté (groupe de n+1) au décodage

•  peut être généralisé à k redondance pour n info

Page 11: Réseaux Multimédia et Qualité de Servicepansiot/enseignement/RMM/RMM_c… · 1 2011 RMMQoS-chap1 1 Réseaux Multimédia et Qualité de Service M2 RISE 2011-2012 JJ Pansiot 2011

11

2011 RMMQoS-chap1 31

Traitement des pertes (2)

•  DP doit être augmenté pour traiter un groupe de n+1 paquets

•  Compromis –  augmenter n, moins de BP gaspillée –  augmenter n, DP + grand -interactif –  augmenter n, plus grande probabilité de perte d’au

moins deux paquets

2011 RMMQoS-chap1 32

Traitement des pertes (3) Autre idée : 2 codages de qualités (et volume) différentes

• le n-ième paquet contient le n-ième morceau haute qualité morceau précédent en basse qualité (redondance)

• en réception si (n-1)-ième paquet perdu, • remplacer par basse qualité paquet suivant

• perte devient baisse de qualité • DP augmenté d’un intervalle (ie 20 ms) • coût en BP dépend du rapport entre les deux qualités

• Idée généralisée dans le codage en couche • n qualités en couches complémentaires • récepteur adapte nombre de couches à la BP

2011 RMMQoS-chap1 33

Traitement des pertes (4) Entrelaçage (interleaving)

morceaux découpés en n sous-morceaux n sous-morceaux distribués dans n paquets consécutifs un paquet perdu => n morceaux altérés légèrement pas de BP supplémentaire augmente le DP traitement par groupe de n paquets au codage ET au décodage

Page 12: Réseaux Multimédia et Qualité de Servicepansiot/enseignement/RMM/RMM_c… · 1 2011 RMMQoS-chap1 1 Réseaux Multimédia et Qualité de Service M2 RISE 2011-2012 JJ Pansiot 2011

12

2011 RMMQoS-chap1 34

Média Vidéo

2011 RMMQoS-chap1 35

Video analogique

Format de balayage NTSC.

2011 RMMQoS-chap1 36

Codage vidéo

– une image de 1024 x 1024 pixels •  24 bits par pixel => 3 Mo /image

– 25 images par seconde •  => 75 Mo/s = 600 Mb/s

– Nécessité de compresser fortement le signal

•  redondance spatiale (plages uniformes) •  redondance temporelle (images successives) •  limitations de l’oeil

Page 13: Réseaux Multimédia et Qualité de Servicepansiot/enseignement/RMM/RMM_c… · 1 2011 RMMQoS-chap1 1 Réseaux Multimédia et Qualité de Service M2 RISE 2011-2012 JJ Pansiot 2011

13

2011 RMMQoS-chap1 37

Codage JPEG : vue générale

JPEG en mode avec pertes DCT = Transformée Cosinus Discrete RLE : Run Length Encoding AAAAAA => 6A Encodage statistique (ou entropique) Huffmann

blocs plus fréquents ont un code plus court

préparation des blocs DCT Quantification Quantification

différentielle RLE encodage statistique

2011 RMMQoS-chap1 38

Codage JPEG (décomposition en blocs)

(a) entrée RGB 24 bits/pixel. (b) découpage en YIQ (NTSC) ou YUV ou Y Cr Cb .

Luminance, chrominance, saturation

2011 RMMQoS-chap1 39

Codage JPEG : DCT

(a) Un bloc de la matrice Y (ou U, V) (b) les coefficients DCT

(a) (b)

Page 14: Réseaux Multimédia et Qualité de Servicepansiot/enseignement/RMM/RMM_c… · 1 2011 RMMQoS-chap1 1 Réseaux Multimédia et Qualité de Service M2 RISE 2011-2012 JJ Pansiot 2011

14

2011 RMMQoS-chap1 40

Codage JPEG : quantification

Quantification des coefficients obtenus après la DCT ⇒  les coeff en haut à gauche (les + importants) sont moins arrondis ⇒ Un coefficient de 2i élimine les i bits de poids faible (et arrondi)

2011 RMMQoS-chap1 41

Codage JPEG : sérialisation et RLE

Ordre de parcours en “zig-zag” des coefficients => sérialisation.

Suite de 0 : RLE

2011 RMMQoS-chap1 42

Codage MPEG

Synchronisation des flux audio et vidéo dans MPEG-1.

Page 15: Réseaux Multimédia et Qualité de Servicepansiot/enseignement/RMM/RMM_c… · 1 2011 RMMQoS-chap1 1 Réseaux Multimédia et Qualité de Service M2 RISE 2011-2012 JJ Pansiot 2011

15

2011 RMMQoS-chap1 43

MPEG : redondance temporelle

3 images consécutives •  peu de changements entre images successives •  idées

•  codage différentiel / image précédente (exemple fond) •  codage mouvement d’un bloc

2011 RMMQoS-chap1 44

Codeur MPEG

Pre processing

Mémoire image

+ - DCT

compensation mouvement

Estimation mouvement

mémoire image

+

IDCT

Quantificateur (Q)

Régulateur débit

Encodeur longueur variable

Buffer Q-1

Output Input

Imag

e pr

édite

Vect

eur m

ouve

men

t

2011 RMMQoS-chap1 45

Types de trames mpeg –  trame I (intra)

•  compressée en utilisant cette trame uniquement •  compression modérée mais décodage facile

–  trame P (predicted) •  Codée avec compensation de mouvement ( I ou P précédente) •  meilleure compression

–  trame B (bidirectional) •  Codée avec compensation de mouvement (I ou P précédente

ou suivante) •  entraîne des délais et un ré ordonnancement •  compression supplémentaire

Page 16: Réseaux Multimédia et Qualité de Servicepansiot/enseignement/RMM/RMM_c… · 1 2011 RMMQoS-chap1 1 Réseaux Multimédia et Qualité de Service M2 RISE 2011-2012 JJ Pansiot 2011

16

2011 RMMQoS-chap1 46

exemple de GOP (Group of Picture)

Remarque : on doit envoyer régulièrement des images I •  un récepteur peut arriver en cours de flux •  en cas de pertes de trames •  => compromis débit/fiabilité

2011 RMMQoS-chap1 47

Couches mpeg

Hiérarchie d’informations en couches (et donc entêtes) : •  couche Sequence : taille image, fréquence image, table de

quantification, … •  couche GOP (Group of Picture) : en général au moins une trame I •  couche image : estampillage, type d’image (I,P,B), résolution,

vecteurs de mouvements, … •  couche Slices (tranche): position de la tranche, quantification

–  codage tranche indépendant des autres : confinement d’erreur •  couche Macrobloc (16 x 16) : position, vecteur de mouvements, quels

blocs sont codés

2011 RMMQoS-chap1 48

codages et débits vidéo –  MPEG 1 : Qualité CD vidéo (1,5 Mbit/s) –  MPEG 2 : Qualité DVD (3 à 6 Mbit/s voir plus HDTV)

•  TNT gratuite –  MPEG 4 (5 Kb/s à 4 Mb/s) /DivX

•  TNT HD, HDTV, télé mobiles

–  H261 (norme UIT-T) •  adaptée à la visioconférence et visiophonie (bas débit) •  techniques similaires à MPEG

–  DCT, quantification, compensation mouvement, … •  format CIF (360 x 288) 30 trames/s

–  et QCIF (180 x 144)

Page 17: Réseaux Multimédia et Qualité de Servicepansiot/enseignement/RMM/RMM_c… · 1 2011 RMMQoS-chap1 1 Réseaux Multimédia et Qualité de Service M2 RISE 2011-2012 JJ Pansiot 2011

17

2011 RMMQoS-chap1 49

Architecture distribution VoD

2011 RMMQoS-chap1 50

Serveurs VoD

Hiérarchie de stockage Volume/rapidité.

2011 RMMQoS-chap1 51

Architecture Serveur VoD

Page 18: Réseaux Multimédia et Qualité de Servicepansiot/enseignement/RMM/RMM_c… · 1 2011 RMMQoS-chap1 1 Réseaux Multimédia et Qualité de Service M2 RISE 2011-2012 JJ Pansiot 2011

18

2011 RMMQoS-chap1 52

Caractéristiques des flux multimédia

–  contraintes de gigue •  playback buffer

–  et de délai si interactif •  limite sur le buffer

–  débits élevés (vidéo HD) –  débits variables (ex MPEG) –  tolérance aux pertes

•  persistance rétinienne, rafraîchissement •  importance variable des données (images I, P, B de

MPEG) –  diffusion (usage du multicast)

2011 RMMQoS-chap1 53

Multimédia et réseau •  Plusieurs mécanismes et protocoles •  Aux extrémités

–  codage (compression, paquetisation, …) •  MPEG, H261, …

–  transport de bout en bout •  RTP/UDP

–  contrôle du transport •  RTCP

–  gestion des utilisateurs, sessions, flux •  SIP, H323, RTSP …

2011 RMMQoS-chap1 54

MM et réseau

•  Dans le réseau – mécanismes de QoS (files, priorités, …)

•  dans les routeurs/switchs – gestion globale

•  Intserv (intégration de services) –  réservation de ressources (RSVP) depuis extrémités –  Par flux

•  Diffserv (services différenciés) – marquage des paquets –  politique de QoS par classe

Page 19: Réseaux Multimédia et Qualité de Servicepansiot/enseignement/RMM/RMM_c… · 1 2011 RMMQoS-chap1 1 Réseaux Multimédia et Qualité de Service M2 RISE 2011-2012 JJ Pansiot 2011

19

2011 RMMQoS-chap1 55

Multimédia : protocoles

IPv4, IPv6

UDP TCP

PPP ATM Ethernet

Media (H. 261, MPEG)

H. 323 SIP RTSP RSVP RTCP

RTP

signalisation Qualité de service Transport média

App

licat

ion

Noy

au

2011 RMMQoS-chap1 56

RTP/RTCP Paire de protocoles de l’ietf

groupe AVT Audio Video Transport RFC 1889 (1996)

RTP : Real Time Protocol transporte les données

RTCP: Real Time Control Protocol mécanismes de contrôle émetteurs et récepteurs

Nouvelle version RFC 3550 (2003)

2011 RMMQoS-chap1 57

Architecture émetteur

envoie RTP et RTCP reçoit RTCP

récepteur reçoit RTP et RTCP envoie RTCP

possibilité plusieurs récepteurs ⇒ multicast

Page 20: Réseaux Multimédia et Qualité de Servicepansiot/enseignement/RMM/RMM_c… · 1 2011 RMMQoS-chap1 1 Réseaux Multimédia et Qualité de Service M2 RISE 2011-2012 JJ Pansiot 2011

20

2011 RMMQoS-chap1 58

Multicast IP

•  adresses de groupe 224.0.0.0/4 •  un paquet envoyé à cette adresse

– dupliqué dans le réseau –  reçu par tous les récepteurs

•  nécessite routage multicast dans le réseau

•  extensibilité en nombre de récepteurs

2011 RMMQoS-chap1 59

Architecture (suite) RTP/RTCP + UDP =

fonctions de 3 couches OSI : transport + session + présentation

RTP/RTCP peut fonctionner au dessus de protocoles ≠ de UDP (en théorie)

RTP/RTCP fonctions dans l’application (ex: JMF)

Les messages RTP/RTCP –  ne sont pas interprétés par le réseau –  => pas d’influence sur la QoS réseau –  permettent aux applis de s’adapter

•  modèle ALF : Application Level Framing

2011 RMMQoS-chap1 60

RTP : Vue générale •  Fonctionne au dessus d’UDP (en général) •  Utilise l’unicast ou le multicast •  Les données applicatives sont encapsulées dans des paquets

RTP •  Protocole simple :

–  Permet de déterminer la base de temps des différents flux •  estampilles

–  Permet de détecter les pertes de paquets •  numérotation

–  Identifier le contenu des paquets (MPEG audio, JPEG animé, etc.) •  payload type

Page 21: Réseaux Multimédia et Qualité de Servicepansiot/enseignement/RMM/RMM_c… · 1 2011 RMMQoS-chap1 1 Réseaux Multimédia et Qualité de Service M2 RISE 2011-2012 JJ Pansiot 2011

21

2011 RMMQoS-chap1 61

Entête RTP 0 1 2 3! 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+! |V=2|P|X| CC |M| PT | sequence number |! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+! | timestamp |! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+! | synchronization source (SSRC) identifier |! +=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+!!

CC : Nombre de CSRC qui suivent l’entête RTP fixe P : padding présent X : extension d’entête présente CSRC : contributing SRC (utilisé par mixer)

PT : Identifie le format des données contenues dans le paquet RTP. Il existe un profil prédéfini pour assurer la

correspondance entre le type de données et leur format (RFC 3551) SN : Incrémenté de 1 pour chaque paquet RTP émis. Valeur initiale aléatoire TS : Instant d'échantillonnage du 1er octet du paquet de données (gestion de la synchronisation et de la gigue).

Valeur initiale aléatoire SSRC : Identifiant de la source d'émission des paquets synchronisés !

2011 RMMQoS-chap1 62

RTP : Exemples de profils (PT) audio/video

Type de profil Format audio Taux d'échantillonnage

Débit

0 MIC/PCMU Codage voix

8 kHz 64 kbit/sec

3 GSM 8 kHz 4,8 kbit/s

9 G.722 16 kHz 48 à 64 kbit/s

14 MPEG Audio 90 kHz --

15 G. 728 8 kHz 16 kbit/s

Type de profil Format vidéo

26 JPEG animé

31 H.261

32 MPEG 1 vidéo

33 MPEG 2 vidéo

0 à 23 audio

24- vidéo ou combiné

2011 RMMQoS-chap1 63

RTP •  Le SSRC identifie la source d’un flux

–  ≠ adresse IP –  plusieurs flux => plusieurs SSRC –  correspondance établie en début de session

•  RTCP (message SDES)

•  le TS dépend fréquence d’échantillonnage –  ex : audio à 8 KHz vidéo à 90 KHz

Page 22: Réseaux Multimédia et Qualité de Servicepansiot/enseignement/RMM/RMM_c… · 1 2011 RMMQoS-chap1 1 Réseaux Multimédia et Qualité de Service M2 RISE 2011-2012 JJ Pansiot 2011

22

2011 RMMQoS-chap1 64

RTP : exemple audio

•  audio échantillons 8 bits / 125 µs •  émetteur

–  initialement TS et NS aléatoires (sécurité) –  répéter:

•  noter timestamp premier échantillon TS •  accumule échantillons •  jusqu’à max (ex : 160 = 20 ms) ou silence

–  envoyer paquet RTP avec TS, NS •  NS := NS + 1 et recommencer

2011 RMMQoS-chap1 65

RTCP : RTP Control Protocol •  Protocole fonctionnant avec RTP

–  optionnel •  Pour chaque flux RTP reçu,

–  chaque récepteur génère un rapport de réception RTCP cyclique •  Pour chaque flux RTP émis,

–  la source génère un rapport RTCP cyclique •  Permet de

–  garder une trace de tous les participants à une session RTP –  Contrôler le débit auquel les participants transmettent leurs

données RTP –  Permet à une source de changer de politique (codecs, etc…) –  contrôler le contrôle RTCP …

2011 RMMQoS-chap1 66

RTCP : types de paquets –  SR : Sender Report = Rapport des émetteurs

•  Statistiques d’émission/réception

–  RR : Receiver Report = Rapport des récepteurs •  Statistiques de réception

–  BYE : Départ explicite –  SDES : Description de la source (CNAME, Email, etc.) –  APP: Extensions spécifiques à l’application

Page 23: Réseaux Multimédia et Qualité de Servicepansiot/enseignement/RMM/RMM_c… · 1 2011 RMMQoS-chap1 1 Réseaux Multimédia et Qualité de Service M2 RISE 2011-2012 JJ Pansiot 2011

23

2011 RMMQoS-chap1 67

RTCP (suite) •  Paquet RTCP

–  Partie fixe similaire à l’entête RTP –  Plusieurs paquets RTCP peuvent être concaténés

•  p.e. combiner SR et RR •  => paquet composé (dans un paquet UDP)

•  remarque : ports UDP –  port UDP pour un flux RTP

•  choisi dynamiquement, en général pair (ex : 10000) –  port UDP pour signalisation RTCP

•  en général RTP + 1 (ex : 10001) –  port doit être découvert au départ (voir SDP, SIP, …) –  => pas décodé automatiquement par wireshark/tcpdump

2011 RMMQoS-chap1 68

RTCP : Format message Sender Report SR

0 1 2 3! 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1!+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+!|V=2|P| RC | PT=SR=200 | length | header!+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+!| SSRC of sender |!+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+!| NTP timestamp, most significant word | sender!+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ info!| NTP timestamp, least significant word |!+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+!| RTP timestamp |!+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+!| sender's packet count |!+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+!| sender's octet count |!+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+!à suivre!

2011 RMMQoS-chap1 69

SR (suite) +=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+!| SSRC_1 (SSRC of first source) | report!+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ block!| fraction lost | cumulative number of packets lost | 1!-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+!| extended highest sequence number received |!+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+!| interarrival jitter |!+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+!| last SR (LSR) |!+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+!| delay since last SR (DLSR) |!+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+!| SSRC_2 (SSRC of second source) | report!+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ block!: ... : 2!+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+!| profile-specific extensions |!+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+!

Page 24: Réseaux Multimédia et Qualité de Servicepansiot/enseignement/RMM/RMM_c… · 1 2011 RMMQoS-chap1 1 Réseaux Multimédia et Qualité de Service M2 RISE 2011-2012 JJ Pansiot 2011

24

2011 RMMQoS-chap1 70

•  contient –  RC : Receiver Report count (# RR dans la paquet) –  Le SSRC du flux RTP –  La référence de temps quand le rapport a été émis

(NTP timestamp) •  NTP Network Time Protocol (RFC 1305)

–  le timestamp RTP –  Le nombre de paquets envoyés –  Le nombre d’octets envoyés –  un rapport pour chaque source reçue (similaire

RR)

SR (suite)

2011 RMMQoS-chap1 71

RTCP : Format message (RR) 0 1 2 3! 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1!+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+!|V=2|P| RC | PT=RR=201 | length | header!+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+!| SSRC of packet sender |!+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+!| SSRC_1 (SSRC of first source) | report!+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ block!| fraction lost | cumulative number of packets lost | 1!+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+!| extended highest sequence number received |!+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+!| interarrival jitter |!+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+!| last SR (LSR) |!+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+!| delay since last SR (DLSR) |!+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+!| SSRC_2 (SSRC of second source) | report!+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ block!: ... : 2!+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+!| profile-specific extensions |!+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+!

2011 RMMQoS-chap1 72

•  Pour chaque flux RTP reçu –  Le SSRC du flux RTP –  La proportion de paquets perdus (obtenue en divisant le

nombre de paquets perdus par le nombre de paquets envoyés au sein d’un même flux RTP)

•  -> peut déclencher un changement de codage de l’émetteur. –  Le dernier numéro de séquence du flux RTP –  La gigue à la réception –  Dernier SR reçu (en temps : NTP timestamp arrondi) –  Délai passé depuis le dernier SR reçu

RTCP : Format message (RR)

Page 25: Réseaux Multimédia et Qualité de Servicepansiot/enseignement/RMM/RMM_c… · 1 2011 RMMQoS-chap1 1 Réseaux Multimédia et Qualité de Service M2 RISE 2011-2012 JJ Pansiot 2011

25

2011 RMMQoS-chap1 73

RTCP : message SDES

•  Pour chaque flux (SSRC) émis –  fournit des informations –  seul info obligatoire CNAME

•  chaîne ASCII •  a priori de la forme user@host •  CNAME stable

–  entre flux différents –  changements d’IP, de SSRC

–  autres champs possibles : Email, Phone, …

2011 RMMQoS-chap1 74

Intérêt des différents rapports

•  Peuvent servir à la synchronisation des différents flux de données d’une session RTP –  NTP timestamp –  Permet par exemple de synchroniser une bande

audio avec une bande vidéo envoyés dans 2 flux RTP distincts par une source

•  les timestamp RTP ne sont pas synchronisés entre eux

•  Permet également d’avoir des informations d’identification des participants combien de récepteurs (s’il y en a :-))

2011 RMMQoS-chap1 75

RTP et QoS

•  Une source peut adapter son émission – Les sources reçoivent les RR – Si pertes ou gigue trop importante – possibilité de changer le PT

•  un network manager peut – exécuter un moniteur

•  écoute les rapports RTCP

Page 26: Réseaux Multimédia et Qualité de Servicepansiot/enseignement/RMM/RMM_c… · 1 2011 RMMQoS-chap1 1 Réseaux Multimédia et Qualité de Service M2 RISE 2011-2012 JJ Pansiot 2011

26

2011 RMMQoS-chap1 76

RTCP et multicast •  Extensibilité (passage au facteur d’échelle)

–  Le trafic RTCP ne doit pas représenter plus de 5% du total de la bande passante de la session

–  Au moins 25% du trafic RTCP est utilisé pour les rapports de l’émetteur

•  problème important pour de grandes sessions –  ex 10 000 récepteurs d’une vidéoconférence –  si chaque récepteur envoie RR tous les 100 paquets data

•  => 100 fois plus de paquets RR que de data

–  Comment limiter le débit global RTCP ?

2011 RMMQoS-chap1 77

RTCP et multicast (suite) •  calculer somme débit moyen sources

–  RTCP SR => D •  calculer nombre de récepteurs

–  RTCP RR => #R •  calculer taille moyenne RR L

–  dépend # sources •  fréquence rapports RR

< 0,05 * D /(#R *L) Que se passe-t-il si #R augmente brusquement ? => améliorations dans RFC 3550

2011 RMMQoS-chap1 78

RTP : Mixers et Translator •  2 services RTP •  Translator :

–  Envoie les flux de différentes sources séparément (transmet les paquets avec le SSRC intact : identification de la source initiale)

–  Invisible par les récepteurs –  Permet le transcodage de flux (ex : limiter débit)

Emetteur 1

Emetteur 2

Récepteur

E1: SSRC =12

E2 : SSRC =3

De E1 : SSRC =12

De E2 : SSRC =3

De E1 : SSRC =12

De E2 : SSRC =3

Translator 1 Translator 2

Page 27: Réseaux Multimédia et Qualité de Servicepansiot/enseignement/RMM/RMM_c… · 1 2011 RMMQoS-chap1 1 Réseaux Multimédia et Qualité de Service M2 RISE 2011-2012 JJ Pansiot 2011

27

2011 RMMQoS-chap1 79

RTP : Mixers et Translator •  Mixer :

–  Combine les flux de différentes sources pour former un seul flux –  Devient la source de synchronisation

•  Tous les paquets RTP sont « marqués » par le SSRC du mixer •  L’identité des sources originales est inclue dans les options de l’entête

RTP (liste CSRC : contributing SRC)

Emetteur 1

Emetteur 2

Récepteur

E1: SSRC =12

E2 : SSRC =3

De M1 : SSRC =32 CSRC {12,3}

Mixer 1