SlideShare une entreprise Scribd logo
1  sur  42
Télécharger pour lire hors ligne
© Slimane.bah@emi.ac.ma
Ingénierie des services télécoms
Pr. Slimane Bah, ing. PhD
1
Séance 7
Ecole Mohammadia d’Ingénieurs
Semaine 7
Semestre 5
GELEC – Réseaux et Télécoms
2022/2023
Annonce
2 Semestre 5
© Slimane.bah@emi.ac.ma
Semaine 8 à 14 :
Cours le Lundi de 10h à 12h
Media handling
3 Semestre 5
© Slimane.bah@emi.ac.ma
 Challenges
La transmission de paquets sur Internet implique les challenges
suivants :
• Ajout de délai
sol : udp ou tcp ?
• Perte de paquets
sol : udp ou tcp ?
• Arrivée des paquets en désordre
Affecte les media temps-réel et quasi-temps réel
Media handling
4 Semestre 5
© Slimane.bah@emi.ac.ma
 Jitter
› Il est définit comme étant la variation dans les délais de réception
des paquets
› Pour la transmission de la voix/vidéo le délai doit être constant
(échantillonnage : Théorème de Nyquist)
Freq. Voix humaine = 300 – 3400Hz  Freq. Échantillonnage = 8000 Hz
1 échantillon toute les 125 sec
Emission
Réception
Flux stable de paquet
Flux reçu : congestion, traitement intermédiaire
Media handling
5 Semestre 5
© Slimane.bah@emi.ac.ma
 Jitter
Scénario Idéal
Media handling
6 Semestre 5
© Slimane.bah@emi.ac.ma
 Jitter
Réalité
Media handling
7 Semestre 5
© Slimane.bah@emi.ac.ma
 Jitter
La solution consiste à utiliser un buffer
 A la réception, attendre un moment au lieu de jouer le media dès sa
réception
Playout
Buffer
Emission
Réception
Play
Media handling
8 Semestre 5
© Slimane.bah@emi.ac.ma
 Jitter
Playout Buffer
Media handling
9 Semestre 5
© Slimane.bah@emi.ac.ma
 Jitter
Playout Buffer
Plus le buffer est grand
Mieux le Jitter est contrôlé
Mais délai
 Borne Sup.
 Besoin du temps
Playout Buffer
Media handling
10 Semestre 5
© Slimane.bah@emi.ac.ma
 Jitter
Sans buffer
Media handling
11 Semestre 5
© Slimane.bah@emi.ac.ma
 Jitter
Avec buffer
RTP
12 Semestre 5
© Slimane.bah@emi.ac.ma
 Media transport : RTP (Real-Time Protocol)
• RTP est un protocole Internet pour le transport de media
temps-réel
• Il est composé d’une partie Data et une partie Contrôle
• RTP transporte les données
• RTCP contrôle ce transport (mesures : jitter, paquets perdus…)
• Le numéro de port de RTCP = port RTP + 1
• Over UDP
• L’Audio et la vidéo voyagent dans deux flux différents
RTP
13 Semestre 5
© Slimane.bah@emi.ac.ma
 Media transport : RTP (Real-Time Protocol)
• Apports de RTP :
• Multicasting
• Identification de la source
• Gestion de différents type de media (#codecs)
• Détection des pertes de données
• Ordonnancement des paquets
• Synchronisation : Timestamping
RTP
14 Semestre 5
© Slimane.bah@emi.ac.ma
 Media transport : RTP (Real-Time Protocol)
 version (Ver.) CSRC count (CC)
 padding (P) marker (M) : debut de talkspurt
 extension (X) payload type (PT) = codec
RTP
15 Semestre 5
© Slimane.bah@emi.ac.ma
 Media transport : RTP (Real-Time Protocol)
Payload type : Audio/video
RTP
16 Semestre 5
© Slimane.bah@emi.ac.ma
 Media transport : RTP (Real-Time Protocol)
Silence Vs perte de paquets
RTP
17 Semestre 5
© Slimane.bah@emi.ac.ma
 Media transport : RTP (Real-Time Protocol)
Silence Vs perte de paquets
Buffer récepteur
Seq 100 Seq 101 Seq 103
RTP
18 Semestre 5
© Slimane.bah@emi.ac.ma
 Media transport : RTP (Real-Time Protocol)
RTCP :
Synchronisation
Audio/video
TPs
19 Semestre 5
© Slimane.bah@emi.ac.ma
Phase 1:
a) Établir un flux RTP ;
b) Établir une liaison signalisation SIP (avant RTP)
c) Passer par un softswitch (SIP)
1. SIP
1. SIP
RTP
1. SIP
2.
20
Phase 2 : Choisir un VAS et l’implémenter dans le softswitch
SIP
SIP
SIP
SIP
SIP SIP SIP
RTP
RTP
SIP
Servlets
Semestre 5
© Slimane.bah@emi.ac.ma
TPs
RTP
RTP
21
Phase 3 : Ajout VAS dans le serveur d’application SIP servlets
SIP
SIP
SIP
SIP
SIP SIP SIP
RTP
RTP
Semestre 5
© Slimane.bah@emi.ac.ma
TPs
WebRTC
22 Semestre 5
© Slimane.bah@emi.ac.ma
Programmation RTP
23 Semestre 5
© Slimane.bah@emi.ac.ma
 Java Media Framework
• JMF est une API java pour gérer un flux multimédia
• JMF facilite le développement d’applications multimédia
• Supporte audio et vidéo
• Acquisition du media à partir de sa source
• Transmission et réception du media via RTP/RTCP
Programmation RTP
24 Semestre 5
© Slimane.bah@emi.ac.ma
 JMF
Principe
Input Processing Output
(De)multiplexage
(De)codage
Mise en paquet
Programmation RTP
25 Semestre 5
© Slimane.bah@emi.ac.ma
 JMF
Récap.
file
DataSource Processor
DataSource
DataSource
SessionManager
DataSink
file
Capture
(Mic, Camera)
RTP Transmission
Network
SessionManager
DataSource
DataSource
DataSource
Processor
Player
DataSink
DataSource DataSink
RTP Reception
file
file
Network
Programmation RTP
26 Semestre 5
© Slimane.bah@emi.ac.ma
 JMF
• Media streams
Pour obtenir un flux Media (input) il faut spécifier sa localisation et le
protocole pour y accéder sous forme de URL ou Media Locator
Ex : Obtenir un flux media à partir :
• D’un fichier  « file:// » URL
• D’un fichier dans un serveur  « http:// » URL
• Du réseau  « rtp:// » Media Locator
• D’une capture de la carte son  «dsound:// » « javasound:// »
Media Locator
Programmation RTP
27 Semestre 5
© Slimane.bah@emi.ac.ma
 JMF
• Media streams
Un flux média peut être composé de plusieurs canaux (audio, vidéo)
appelés track.
Un track est identifié par :
- Type : audio, vidéo
- Format : comment il est structuré, taux échantillonnage, bits
par échantillon…
Programmation RTP
28 Semestre 5
© Slimane.bah@emi.ac.ma
 JMF
• Media streams
Un flux média peut être composé de plusieurs canaux (audio, video)
appelés track.
Un track est identifié par :
- Type : audio, vidéo
- Format : comment il est structuré, taux échantillonnage, bits
par échantillon…
Programmation RTP
29 Semestre 5
© Slimane.bah@emi.ac.ma
 JMF
Architecture
Programmation RTP
30 Semestre 5
© Slimane.bah@emi.ac.ma
 JMF
Les entités du JMF
• Manager : Création du Player, processor, data sink, data source
• Data Source
• Player
• Processor
• Data Sink
• Session Manager
Programmation RTP
31 Semestre 5
© Slimane.bah@emi.ac.ma
 JMF
Manager
Programmation RTP
32 Semestre 5
© Slimane.bah@emi.ac.ma
 JMF
Data source encapsule un flux media.
Peut représenter le flux à différentes étapes du processus
MediaLocator ml=new MediaLocator("file://c:music.wav");
DataSource ds= Manager.createDataSource(ml);
Programmation RTP
33 Semestre 5
© Slimane.bah@emi.ac.ma
 JMF
La classe Format représente le format du flux media.
2 sous classes : AudioFormat et VideoFormat
Ex. un objet AudioFormat est créé en spécifiant :
- type d’encodage - nbr de bits par échantillon
- taux d’échantillonnage - nbr de canaux
AudioFormat af=new AudioFormat (AudioFormat.GSM, 8000, 8, 1);
Programmation RTP
34 Semestre 5
© Slimane.bah@emi.ac.ma
 JMF
Player traite et présente le media (joue le media)
Le media est présenté au player sous forme de Data source
Player p=Manager.createPlayer(ds);
p.start();
Programmation RTP
35 Semestre 5
© Slimane.bah@emi.ac.ma
 JMF
Processor peut contrôler le media.
Il peut multiplexer, démultiplexer, coder, décoder, appliquer des effets
sur un media
Processor p=Manager.createProcessor(ds);
//p.configure() ; p.realize() ; p.start(); p.getDataOutput();..
Programmation RTP
36 Semestre 5
© Slimane.bah@emi.ac.ma
 JMF
Data sink permet de mettre le flux à disposition d’une destination.
DataSink dsink=Manager.createDataSink(ds, ml);
dsink.open(); //ouvre la connection à la dest. spécifiée par ml (mediaLocator)
dsink.start(); //démarre le transfert
Programmation RTP
37 Semestre 5
© Slimane.bah@emi.ac.ma
 JMF
SessionManager est utilisé lors de réception/l’envoi d’un flux
du/vers le réseau.
• Il offre un contrôle sur la session RTP contrairement au DataSink
• Gère le canal RTCP
• Permet de : démarrer/Arrêter une session RTP, créer un flux à
envoyer, ajouter/supp. des pairs, obtenir des statistiques,…
Programmation RTP
38 Semestre 5
© Slimane.bah@emi.ac.ma
 JMF
SessionManager
• SessionManager est basé sur les objets RTP Stream et des Listeners.
• RTPStream class : SendStream et ReceiveStream
• Listeners pemettent d’alerter lors des événements relatifs à la
session RTP :
- SendStreamListener : informe sur l’état du flux envoyé
- ReceiveStreamListener : informé de la réception d’un paquet RTP
via la méthode update( )
Programmation RTP
39 Semestre 5
© Slimane.bah@emi.ac.ma
 JMF SessionManager : envoi
RTPSessionMgr sm =new RTPSessionMgr();
sm.initSession(rtpIPsrc, rtpPORTsrc, rtcpIPsrc, rtcpPORTsrc, …);
sm.startSession(rtpIPdest, rtpPORTdest, rtcpIPdest,
rtcpPORTdest,…);
//pour démarrer la transmission il faut créer un DataSource avec son MediaLocator
//puis créer le flux d’envoi
SendStream ss=sm.createSendStream(ds,1);
ss.start(); //début de la transmission
Sous forme de SessionAddress
Programmation RTP
40 Semestre 5
© Slimane.bah@emi.ac.ma
 JMF
SessionManager : réception
Un Stream entrant est détecté par le Listener qui génère un
événement ReceivedStreamEvent
public class MyReceiveStreamListener implements ReceiveStreamListener {
public void update(ReceiveStreamEvent event) {
if (event instanceof NewReceiveStreamEvent){
rs=event.getReceiveStream();
DataSource rDS=rs.getDataSource();
}
}
}
Programmation RTP
41 Semestre 5
© Slimane.bah@emi.ac.ma
 JMF
SessionManager : réception
Un Stream entrant est détecté par le Listener qui génère un
événement ReceivedStreamEvent
MySessionManager.addReceiveStreamListener(this);
…
ReceiveStream rs= event.getReceiveStream();
//Il suffit de convertir le flux obtenu en Data Source
DataSource ds=rs.getDataSource();
Programmation RTP
42 Semestre 5
© Slimane.bah@emi.ac.ma
 JMF
Récap.
file
DataSource Processor
DataSource
DataSource
SessionManager
DataSink
file
Capture
(Mic, Camera)
RTP Transmission
Network
SessionManager
DataSource
DataSource
DataSource
Processor
Player
DataSink
DataSource DataSink
RTP Reception
file
file
Network

Contenu connexe

Similaire à ServEng_S7.pdf

[Café Techno] TSM 7.1.1 : OPS Center et TSM Reporting & Analytics - Mars 2015
[Café Techno] TSM 7.1.1 : OPS Center et TSM Reporting & Analytics - Mars 2015[Café Techno] TSM 7.1.1 : OPS Center et TSM Reporting & Analytics - Mars 2015
[Café Techno] TSM 7.1.1 : OPS Center et TSM Reporting & Analytics - Mars 2015Groupe D.FI
 
Retour d'expérience : gérer des flux vidéos multiples de manière optimisée
Retour d'expérience :  gérer des flux vidéos multiples de manière optimiséeRetour d'expérience :  gérer des flux vidéos multiples de manière optimisée
Retour d'expérience : gérer des flux vidéos multiples de manière optimiséeSilicon Comté
 
Voip simulation
Voip simulation Voip simulation
Voip simulation Anas ABANA
 
CV Norman Bloch v1
CV Norman Bloch v1CV Norman Bloch v1
CV Norman Bloch v1norman bloch
 
Zv10 g formation-ibm-z-vm-et-linux-pour-zseries-connectivite-et-gestion-du-sy...
Zv10 g formation-ibm-z-vm-et-linux-pour-zseries-connectivite-et-gestion-du-sy...Zv10 g formation-ibm-z-vm-et-linux-pour-zseries-connectivite-et-gestion-du-sy...
Zv10 g formation-ibm-z-vm-et-linux-pour-zseries-connectivite-et-gestion-du-sy...CERTyou Formation
 
Presentation cynapsys
Presentation cynapsysPresentation cynapsys
Presentation cynapsysbaltagi
 
Messaging temps réel avec Go
Messaging temps réel avec GoMessaging temps réel avec Go
Messaging temps réel avec GoMickaël Rémond
 
Crouzet Automation - em4 Ethernet Brochure, version française
Crouzet Automation - em4 Ethernet Brochure, version françaiseCrouzet Automation - em4 Ethernet Brochure, version française
Crouzet Automation - em4 Ethernet Brochure, version françaiseCrouzet
 
Rapport fin de cours toip
Rapport fin de cours toip Rapport fin de cours toip
Rapport fin de cours toip assane fall
 
Implémentation de la QoS au sein d'un IP/MPLS - Présentation
Implémentation de la QoS au sein d'un IP/MPLS - PrésentationImplémentation de la QoS au sein d'un IP/MPLS - Présentation
Implémentation de la QoS au sein d'un IP/MPLS - PrésentationRihab Chebbah
 
Zv06 g formation-ibm-z-vm-et-linux-pour-zseries-bases-vm-pour-linux
Zv06 g formation-ibm-z-vm-et-linux-pour-zseries-bases-vm-pour-linuxZv06 g formation-ibm-z-vm-et-linux-pour-zseries-bases-vm-pour-linux
Zv06 g formation-ibm-z-vm-et-linux-pour-zseries-bases-vm-pour-linuxCERTyou Formation
 
Claude Robillard Francais 2016
Claude Robillard Francais 2016Claude Robillard Francais 2016
Claude Robillard Francais 2016Claude Robillard
 
Priorité des flux
Priorité des fluxPriorité des flux
Priorité des fluxbuffy14
 
Conclusiones aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
Conclusiones aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaConclusiones aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
Conclusiones aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaMarco Antonio Colque Poma
 
Présentation IMF - PAD fichier juin2013
Présentation IMF - PAD fichier juin2013Présentation IMF - PAD fichier juin2013
Présentation IMF - PAD fichier juin2013Mesclado
 
Esc5 g formation-mise-a-jour-de-z-os-v1r12-vers-v1r13
Esc5 g formation-mise-a-jour-de-z-os-v1r12-vers-v1r13Esc5 g formation-mise-a-jour-de-z-os-v1r12-vers-v1r13
Esc5 g formation-mise-a-jour-de-z-os-v1r12-vers-v1r13CERTyou Formation
 

Similaire à ServEng_S7.pdf (20)

[Café Techno] TSM 7.1.1 : OPS Center et TSM Reporting & Analytics - Mars 2015
[Café Techno] TSM 7.1.1 : OPS Center et TSM Reporting & Analytics - Mars 2015[Café Techno] TSM 7.1.1 : OPS Center et TSM Reporting & Analytics - Mars 2015
[Café Techno] TSM 7.1.1 : OPS Center et TSM Reporting & Analytics - Mars 2015
 
Retour d'expérience : gérer des flux vidéos multiples de manière optimisée
Retour d'expérience :  gérer des flux vidéos multiples de manière optimiséeRetour d'expérience :  gérer des flux vidéos multiples de manière optimisée
Retour d'expérience : gérer des flux vidéos multiples de manière optimisée
 
Voip simulation
Voip simulation Voip simulation
Voip simulation
 
Chap7_JavaNet.pdf
Chap7_JavaNet.pdfChap7_JavaNet.pdf
Chap7_JavaNet.pdf
 
CV Norman Bloch v1
CV Norman Bloch v1CV Norman Bloch v1
CV Norman Bloch v1
 
Zv10 g formation-ibm-z-vm-et-linux-pour-zseries-connectivite-et-gestion-du-sy...
Zv10 g formation-ibm-z-vm-et-linux-pour-zseries-connectivite-et-gestion-du-sy...Zv10 g formation-ibm-z-vm-et-linux-pour-zseries-connectivite-et-gestion-du-sy...
Zv10 g formation-ibm-z-vm-et-linux-pour-zseries-connectivite-et-gestion-du-sy...
 
Presentation cynapsys
Presentation cynapsysPresentation cynapsys
Presentation cynapsys
 
my_resume(fre)
my_resume(fre)my_resume(fre)
my_resume(fre)
 
Messaging temps réel avec Go
Messaging temps réel avec GoMessaging temps réel avec Go
Messaging temps réel avec Go
 
Crouzet Automation - em4 Ethernet Brochure, version française
Crouzet Automation - em4 Ethernet Brochure, version françaiseCrouzet Automation - em4 Ethernet Brochure, version française
Crouzet Automation - em4 Ethernet Brochure, version française
 
coursqospart1.pdf
coursqospart1.pdfcoursqospart1.pdf
coursqospart1.pdf
 
Rapport fin de cours toip
Rapport fin de cours toip Rapport fin de cours toip
Rapport fin de cours toip
 
Implémentation de la QoS au sein d'un IP/MPLS - Présentation
Implémentation de la QoS au sein d'un IP/MPLS - PrésentationImplémentation de la QoS au sein d'un IP/MPLS - Présentation
Implémentation de la QoS au sein d'un IP/MPLS - Présentation
 
Zv06 g formation-ibm-z-vm-et-linux-pour-zseries-bases-vm-pour-linux
Zv06 g formation-ibm-z-vm-et-linux-pour-zseries-bases-vm-pour-linuxZv06 g formation-ibm-z-vm-et-linux-pour-zseries-bases-vm-pour-linux
Zv06 g formation-ibm-z-vm-et-linux-pour-zseries-bases-vm-pour-linux
 
Claude Robillard Francais 2016
Claude Robillard Francais 2016Claude Robillard Francais 2016
Claude Robillard Francais 2016
 
Umts
UmtsUmts
Umts
 
Priorité des flux
Priorité des fluxPriorité des flux
Priorité des flux
 
Conclusiones aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
Conclusiones aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaConclusiones aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
Conclusiones aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
 
Présentation IMF - PAD fichier juin2013
Présentation IMF - PAD fichier juin2013Présentation IMF - PAD fichier juin2013
Présentation IMF - PAD fichier juin2013
 
Esc5 g formation-mise-a-jour-de-z-os-v1r12-vers-v1r13
Esc5 g formation-mise-a-jour-de-z-os-v1r12-vers-v1r13Esc5 g formation-mise-a-jour-de-z-os-v1r12-vers-v1r13
Esc5 g formation-mise-a-jour-de-z-os-v1r12-vers-v1r13
 

Dernier

GAL2024 - Parcellaire des fermes laitières : en enjeu de compétitivité et de ...
GAL2024 - Parcellaire des fermes laitières : en enjeu de compétitivité et de ...GAL2024 - Parcellaire des fermes laitières : en enjeu de compétitivité et de ...
GAL2024 - Parcellaire des fermes laitières : en enjeu de compétitivité et de ...Institut de l'Elevage - Idele
 
comprehension de DDMRP dans le domaine de gestion
comprehension de DDMRP dans le domaine de gestioncomprehension de DDMRP dans le domaine de gestion
comprehension de DDMRP dans le domaine de gestionyakinekaidouchi1
 
GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...
GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...
GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...Institut de l'Elevage - Idele
 
GAL2024 - L'élevage laitier cultive la biodiversité
GAL2024 - L'élevage laitier cultive la biodiversitéGAL2024 - L'élevage laitier cultive la biodiversité
GAL2024 - L'élevage laitier cultive la biodiversitéInstitut de l'Elevage - Idele
 
conception d'un batiment r+4 comparative de defferente ariante de plancher
conception d'un  batiment  r+4 comparative de defferente ariante de plancherconception d'un  batiment  r+4 comparative de defferente ariante de plancher
conception d'un batiment r+4 comparative de defferente ariante de planchermansouriahlam
 
WBS OBS RACI_2020-etunhjjlllllll pdf.pdf
WBS OBS RACI_2020-etunhjjlllllll pdf.pdfWBS OBS RACI_2020-etunhjjlllllll pdf.pdf
WBS OBS RACI_2020-etunhjjlllllll pdf.pdfSophie569778
 
GAL2024 - Décarbonation du secteur laitier : la filière s'engage
GAL2024 - Décarbonation du secteur laitier : la filière s'engageGAL2024 - Décarbonation du secteur laitier : la filière s'engage
GAL2024 - Décarbonation du secteur laitier : la filière s'engageInstitut de l'Elevage - Idele
 
JTC 2024 - SMARTER Retour sur les indicateurs de santé .pdf
JTC 2024 - SMARTER Retour sur les indicateurs de santé .pdfJTC 2024 - SMARTER Retour sur les indicateurs de santé .pdf
JTC 2024 - SMARTER Retour sur les indicateurs de santé .pdfInstitut de l'Elevage - Idele
 
Présentation_Soirée-Information_ Surverse_Thibert _30 avril 2024
Présentation_Soirée-Information_ Surverse_Thibert _30 avril 2024Présentation_Soirée-Information_ Surverse_Thibert _30 avril 2024
Présentation_Soirée-Information_ Surverse_Thibert _30 avril 2024Ville de Châteauguay
 
GAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenus
GAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenusGAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenus
GAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenusInstitut de l'Elevage - Idele
 
GAL2024 - Changements climatiques et maladies émergentes
GAL2024 - Changements climatiques et maladies émergentesGAL2024 - Changements climatiques et maladies émergentes
GAL2024 - Changements climatiques et maladies émergentesInstitut de l'Elevage - Idele
 
JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...
JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...
JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...Institut de l'Elevage - Idele
 
GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...
GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...
GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...Institut de l'Elevage - Idele
 
GAL2024 - Méthane 2030 : une démarche collective française à destination de t...
GAL2024 - Méthane 2030 : une démarche collective française à destination de t...GAL2024 - Méthane 2030 : une démarche collective française à destination de t...
GAL2024 - Méthane 2030 : une démarche collective française à destination de t...Institut de l'Elevage - Idele
 
GAL2024 - Consommations et productions d'énergies dans les exploitations lait...
GAL2024 - Consommations et productions d'énergies dans les exploitations lait...GAL2024 - Consommations et productions d'énergies dans les exploitations lait...
GAL2024 - Consommations et productions d'énergies dans les exploitations lait...Institut de l'Elevage - Idele
 
firefly algoriyhm sac a dos step by step .pdf
firefly algoriyhm sac a dos step by step .pdffirefly algoriyhm sac a dos step by step .pdf
firefly algoriyhm sac a dos step by step .pdffirstjob4
 
JTC 2024 La relance de la filière de la viande de chevreau.pdf
JTC 2024 La relance de la filière de la viande de chevreau.pdfJTC 2024 La relance de la filière de la viande de chevreau.pdf
JTC 2024 La relance de la filière de la viande de chevreau.pdfInstitut de l'Elevage - Idele
 
JTC 2024 - Réglementation européenne BEA et Transport.pdf
JTC 2024 - Réglementation européenne BEA et Transport.pdfJTC 2024 - Réglementation européenne BEA et Transport.pdf
JTC 2024 - Réglementation européenne BEA et Transport.pdfInstitut de l'Elevage - Idele
 

Dernier (20)

GAL2024 - Parcellaire des fermes laitières : en enjeu de compétitivité et de ...
GAL2024 - Parcellaire des fermes laitières : en enjeu de compétitivité et de ...GAL2024 - Parcellaire des fermes laitières : en enjeu de compétitivité et de ...
GAL2024 - Parcellaire des fermes laitières : en enjeu de compétitivité et de ...
 
comprehension de DDMRP dans le domaine de gestion
comprehension de DDMRP dans le domaine de gestioncomprehension de DDMRP dans le domaine de gestion
comprehension de DDMRP dans le domaine de gestion
 
GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...
GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...
GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...
 
GAL2024 - L'élevage laitier cultive la biodiversité
GAL2024 - L'élevage laitier cultive la biodiversitéGAL2024 - L'élevage laitier cultive la biodiversité
GAL2024 - L'élevage laitier cultive la biodiversité
 
conception d'un batiment r+4 comparative de defferente ariante de plancher
conception d'un  batiment  r+4 comparative de defferente ariante de plancherconception d'un  batiment  r+4 comparative de defferente ariante de plancher
conception d'un batiment r+4 comparative de defferente ariante de plancher
 
WBS OBS RACI_2020-etunhjjlllllll pdf.pdf
WBS OBS RACI_2020-etunhjjlllllll pdf.pdfWBS OBS RACI_2020-etunhjjlllllll pdf.pdf
WBS OBS RACI_2020-etunhjjlllllll pdf.pdf
 
GAL2024 - Décarbonation du secteur laitier : la filière s'engage
GAL2024 - Décarbonation du secteur laitier : la filière s'engageGAL2024 - Décarbonation du secteur laitier : la filière s'engage
GAL2024 - Décarbonation du secteur laitier : la filière s'engage
 
JTC 2024 - SMARTER Retour sur les indicateurs de santé .pdf
JTC 2024 - SMARTER Retour sur les indicateurs de santé .pdfJTC 2024 - SMARTER Retour sur les indicateurs de santé .pdf
JTC 2024 - SMARTER Retour sur les indicateurs de santé .pdf
 
Présentation_Soirée-Information_ Surverse_Thibert _30 avril 2024
Présentation_Soirée-Information_ Surverse_Thibert _30 avril 2024Présentation_Soirée-Information_ Surverse_Thibert _30 avril 2024
Présentation_Soirée-Information_ Surverse_Thibert _30 avril 2024
 
GAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenus
GAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenusGAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenus
GAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenus
 
GAL2024 - Changements climatiques et maladies émergentes
GAL2024 - Changements climatiques et maladies émergentesGAL2024 - Changements climatiques et maladies émergentes
GAL2024 - Changements climatiques et maladies émergentes
 
JTC 2024 Bâtiment et Photovoltaïque.pdf
JTC 2024  Bâtiment et Photovoltaïque.pdfJTC 2024  Bâtiment et Photovoltaïque.pdf
JTC 2024 Bâtiment et Photovoltaïque.pdf
 
JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...
JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...
JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...
 
GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...
GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...
GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...
 
GAL2024 - Méthane 2030 : une démarche collective française à destination de t...
GAL2024 - Méthane 2030 : une démarche collective française à destination de t...GAL2024 - Méthane 2030 : une démarche collective française à destination de t...
GAL2024 - Méthane 2030 : une démarche collective française à destination de t...
 
GAL2024 - Consommations et productions d'énergies dans les exploitations lait...
GAL2024 - Consommations et productions d'énergies dans les exploitations lait...GAL2024 - Consommations et productions d'énergies dans les exploitations lait...
GAL2024 - Consommations et productions d'énergies dans les exploitations lait...
 
JTC 2024 - DeCremoux_Anomalies_génétiques.pdf
JTC 2024 - DeCremoux_Anomalies_génétiques.pdfJTC 2024 - DeCremoux_Anomalies_génétiques.pdf
JTC 2024 - DeCremoux_Anomalies_génétiques.pdf
 
firefly algoriyhm sac a dos step by step .pdf
firefly algoriyhm sac a dos step by step .pdffirefly algoriyhm sac a dos step by step .pdf
firefly algoriyhm sac a dos step by step .pdf
 
JTC 2024 La relance de la filière de la viande de chevreau.pdf
JTC 2024 La relance de la filière de la viande de chevreau.pdfJTC 2024 La relance de la filière de la viande de chevreau.pdf
JTC 2024 La relance de la filière de la viande de chevreau.pdf
 
JTC 2024 - Réglementation européenne BEA et Transport.pdf
JTC 2024 - Réglementation européenne BEA et Transport.pdfJTC 2024 - Réglementation européenne BEA et Transport.pdf
JTC 2024 - Réglementation européenne BEA et Transport.pdf
 

ServEng_S7.pdf

  • 1. © Slimane.bah@emi.ac.ma Ingénierie des services télécoms Pr. Slimane Bah, ing. PhD 1 Séance 7 Ecole Mohammadia d’Ingénieurs Semaine 7 Semestre 5 GELEC – Réseaux et Télécoms 2022/2023
  • 2. Annonce 2 Semestre 5 © Slimane.bah@emi.ac.ma Semaine 8 à 14 : Cours le Lundi de 10h à 12h
  • 3. Media handling 3 Semestre 5 © Slimane.bah@emi.ac.ma  Challenges La transmission de paquets sur Internet implique les challenges suivants : • Ajout de délai sol : udp ou tcp ? • Perte de paquets sol : udp ou tcp ? • Arrivée des paquets en désordre Affecte les media temps-réel et quasi-temps réel
  • 4. Media handling 4 Semestre 5 © Slimane.bah@emi.ac.ma  Jitter › Il est définit comme étant la variation dans les délais de réception des paquets › Pour la transmission de la voix/vidéo le délai doit être constant (échantillonnage : Théorème de Nyquist) Freq. Voix humaine = 300 – 3400Hz  Freq. Échantillonnage = 8000 Hz 1 échantillon toute les 125 sec Emission Réception Flux stable de paquet Flux reçu : congestion, traitement intermédiaire
  • 5. Media handling 5 Semestre 5 © Slimane.bah@emi.ac.ma  Jitter Scénario Idéal
  • 6. Media handling 6 Semestre 5 © Slimane.bah@emi.ac.ma  Jitter Réalité
  • 7. Media handling 7 Semestre 5 © Slimane.bah@emi.ac.ma  Jitter La solution consiste à utiliser un buffer  A la réception, attendre un moment au lieu de jouer le media dès sa réception Playout Buffer Emission Réception Play
  • 8. Media handling 8 Semestre 5 © Slimane.bah@emi.ac.ma  Jitter Playout Buffer
  • 9. Media handling 9 Semestre 5 © Slimane.bah@emi.ac.ma  Jitter Playout Buffer Plus le buffer est grand Mieux le Jitter est contrôlé Mais délai  Borne Sup.  Besoin du temps Playout Buffer
  • 10. Media handling 10 Semestre 5 © Slimane.bah@emi.ac.ma  Jitter Sans buffer
  • 11. Media handling 11 Semestre 5 © Slimane.bah@emi.ac.ma  Jitter Avec buffer
  • 12. RTP 12 Semestre 5 © Slimane.bah@emi.ac.ma  Media transport : RTP (Real-Time Protocol) • RTP est un protocole Internet pour le transport de media temps-réel • Il est composé d’une partie Data et une partie Contrôle • RTP transporte les données • RTCP contrôle ce transport (mesures : jitter, paquets perdus…) • Le numéro de port de RTCP = port RTP + 1 • Over UDP • L’Audio et la vidéo voyagent dans deux flux différents
  • 13. RTP 13 Semestre 5 © Slimane.bah@emi.ac.ma  Media transport : RTP (Real-Time Protocol) • Apports de RTP : • Multicasting • Identification de la source • Gestion de différents type de media (#codecs) • Détection des pertes de données • Ordonnancement des paquets • Synchronisation : Timestamping
  • 14. RTP 14 Semestre 5 © Slimane.bah@emi.ac.ma  Media transport : RTP (Real-Time Protocol)  version (Ver.) CSRC count (CC)  padding (P) marker (M) : debut de talkspurt  extension (X) payload type (PT) = codec
  • 15. RTP 15 Semestre 5 © Slimane.bah@emi.ac.ma  Media transport : RTP (Real-Time Protocol) Payload type : Audio/video
  • 16. RTP 16 Semestre 5 © Slimane.bah@emi.ac.ma  Media transport : RTP (Real-Time Protocol) Silence Vs perte de paquets
  • 17. RTP 17 Semestre 5 © Slimane.bah@emi.ac.ma  Media transport : RTP (Real-Time Protocol) Silence Vs perte de paquets Buffer récepteur Seq 100 Seq 101 Seq 103
  • 18. RTP 18 Semestre 5 © Slimane.bah@emi.ac.ma  Media transport : RTP (Real-Time Protocol) RTCP : Synchronisation Audio/video
  • 19. TPs 19 Semestre 5 © Slimane.bah@emi.ac.ma Phase 1: a) Établir un flux RTP ; b) Établir une liaison signalisation SIP (avant RTP) c) Passer par un softswitch (SIP) 1. SIP 1. SIP RTP 1. SIP 2.
  • 20. 20 Phase 2 : Choisir un VAS et l’implémenter dans le softswitch SIP SIP SIP SIP SIP SIP SIP RTP RTP SIP Servlets Semestre 5 © Slimane.bah@emi.ac.ma TPs RTP RTP
  • 21. 21 Phase 3 : Ajout VAS dans le serveur d’application SIP servlets SIP SIP SIP SIP SIP SIP SIP RTP RTP Semestre 5 © Slimane.bah@emi.ac.ma TPs
  • 22. WebRTC 22 Semestre 5 © Slimane.bah@emi.ac.ma
  • 23. Programmation RTP 23 Semestre 5 © Slimane.bah@emi.ac.ma  Java Media Framework • JMF est une API java pour gérer un flux multimédia • JMF facilite le développement d’applications multimédia • Supporte audio et vidéo • Acquisition du media à partir de sa source • Transmission et réception du media via RTP/RTCP
  • 24. Programmation RTP 24 Semestre 5 © Slimane.bah@emi.ac.ma  JMF Principe Input Processing Output (De)multiplexage (De)codage Mise en paquet
  • 25. Programmation RTP 25 Semestre 5 © Slimane.bah@emi.ac.ma  JMF Récap. file DataSource Processor DataSource DataSource SessionManager DataSink file Capture (Mic, Camera) RTP Transmission Network SessionManager DataSource DataSource DataSource Processor Player DataSink DataSource DataSink RTP Reception file file Network
  • 26. Programmation RTP 26 Semestre 5 © Slimane.bah@emi.ac.ma  JMF • Media streams Pour obtenir un flux Media (input) il faut spécifier sa localisation et le protocole pour y accéder sous forme de URL ou Media Locator Ex : Obtenir un flux media à partir : • D’un fichier  « file:// » URL • D’un fichier dans un serveur  « http:// » URL • Du réseau  « rtp:// » Media Locator • D’une capture de la carte son  «dsound:// » « javasound:// » Media Locator
  • 27. Programmation RTP 27 Semestre 5 © Slimane.bah@emi.ac.ma  JMF • Media streams Un flux média peut être composé de plusieurs canaux (audio, vidéo) appelés track. Un track est identifié par : - Type : audio, vidéo - Format : comment il est structuré, taux échantillonnage, bits par échantillon…
  • 28. Programmation RTP 28 Semestre 5 © Slimane.bah@emi.ac.ma  JMF • Media streams Un flux média peut être composé de plusieurs canaux (audio, video) appelés track. Un track est identifié par : - Type : audio, vidéo - Format : comment il est structuré, taux échantillonnage, bits par échantillon…
  • 29. Programmation RTP 29 Semestre 5 © Slimane.bah@emi.ac.ma  JMF Architecture
  • 30. Programmation RTP 30 Semestre 5 © Slimane.bah@emi.ac.ma  JMF Les entités du JMF • Manager : Création du Player, processor, data sink, data source • Data Source • Player • Processor • Data Sink • Session Manager
  • 31. Programmation RTP 31 Semestre 5 © Slimane.bah@emi.ac.ma  JMF Manager
  • 32. Programmation RTP 32 Semestre 5 © Slimane.bah@emi.ac.ma  JMF Data source encapsule un flux media. Peut représenter le flux à différentes étapes du processus MediaLocator ml=new MediaLocator("file://c:music.wav"); DataSource ds= Manager.createDataSource(ml);
  • 33. Programmation RTP 33 Semestre 5 © Slimane.bah@emi.ac.ma  JMF La classe Format représente le format du flux media. 2 sous classes : AudioFormat et VideoFormat Ex. un objet AudioFormat est créé en spécifiant : - type d’encodage - nbr de bits par échantillon - taux d’échantillonnage - nbr de canaux AudioFormat af=new AudioFormat (AudioFormat.GSM, 8000, 8, 1);
  • 34. Programmation RTP 34 Semestre 5 © Slimane.bah@emi.ac.ma  JMF Player traite et présente le media (joue le media) Le media est présenté au player sous forme de Data source Player p=Manager.createPlayer(ds); p.start();
  • 35. Programmation RTP 35 Semestre 5 © Slimane.bah@emi.ac.ma  JMF Processor peut contrôler le media. Il peut multiplexer, démultiplexer, coder, décoder, appliquer des effets sur un media Processor p=Manager.createProcessor(ds); //p.configure() ; p.realize() ; p.start(); p.getDataOutput();..
  • 36. Programmation RTP 36 Semestre 5 © Slimane.bah@emi.ac.ma  JMF Data sink permet de mettre le flux à disposition d’une destination. DataSink dsink=Manager.createDataSink(ds, ml); dsink.open(); //ouvre la connection à la dest. spécifiée par ml (mediaLocator) dsink.start(); //démarre le transfert
  • 37. Programmation RTP 37 Semestre 5 © Slimane.bah@emi.ac.ma  JMF SessionManager est utilisé lors de réception/l’envoi d’un flux du/vers le réseau. • Il offre un contrôle sur la session RTP contrairement au DataSink • Gère le canal RTCP • Permet de : démarrer/Arrêter une session RTP, créer un flux à envoyer, ajouter/supp. des pairs, obtenir des statistiques,…
  • 38. Programmation RTP 38 Semestre 5 © Slimane.bah@emi.ac.ma  JMF SessionManager • SessionManager est basé sur les objets RTP Stream et des Listeners. • RTPStream class : SendStream et ReceiveStream • Listeners pemettent d’alerter lors des événements relatifs à la session RTP : - SendStreamListener : informe sur l’état du flux envoyé - ReceiveStreamListener : informé de la réception d’un paquet RTP via la méthode update( )
  • 39. Programmation RTP 39 Semestre 5 © Slimane.bah@emi.ac.ma  JMF SessionManager : envoi RTPSessionMgr sm =new RTPSessionMgr(); sm.initSession(rtpIPsrc, rtpPORTsrc, rtcpIPsrc, rtcpPORTsrc, …); sm.startSession(rtpIPdest, rtpPORTdest, rtcpIPdest, rtcpPORTdest,…); //pour démarrer la transmission il faut créer un DataSource avec son MediaLocator //puis créer le flux d’envoi SendStream ss=sm.createSendStream(ds,1); ss.start(); //début de la transmission Sous forme de SessionAddress
  • 40. Programmation RTP 40 Semestre 5 © Slimane.bah@emi.ac.ma  JMF SessionManager : réception Un Stream entrant est détecté par le Listener qui génère un événement ReceivedStreamEvent public class MyReceiveStreamListener implements ReceiveStreamListener { public void update(ReceiveStreamEvent event) { if (event instanceof NewReceiveStreamEvent){ rs=event.getReceiveStream(); DataSource rDS=rs.getDataSource(); } } }
  • 41. Programmation RTP 41 Semestre 5 © Slimane.bah@emi.ac.ma  JMF SessionManager : réception Un Stream entrant est détecté par le Listener qui génère un événement ReceivedStreamEvent MySessionManager.addReceiveStreamListener(this); … ReceiveStream rs= event.getReceiveStream(); //Il suffit de convertir le flux obtenu en Data Source DataSource ds=rs.getDataSource();
  • 42. Programmation RTP 42 Semestre 5 © Slimane.bah@emi.ac.ma  JMF Récap. file DataSource Processor DataSource DataSource SessionManager DataSink file Capture (Mic, Camera) RTP Transmission Network SessionManager DataSource DataSource DataSource Processor Player DataSink DataSource DataSink RTP Reception file file Network