• Aucun résultat trouvé

La consultation d'une ressource en diffusion continue nécessite l'utilisation d'un programme client compatible avec le protocole mis en œuvre par le serveur de streaming. La solution déployée au profit du service de cours en ligne s'appuie sur le protocole « Real Time Messaging Protocol » (RTMP) et exploite des médias au format Flash Vidéo. Pour faciliter l'intégration de la solution au sein de l'existant, j'ai développé une page web spécifique qui affiche un lecteur multimédia compatible avec le protocole RTMP. Ce lecteur se nomme « FLV Player ». Il s'agit d'une application libre développée en langage Flash qui prend en charge la gestion des connexions au serveur et le traitement des flux en streaming. Ce lecteur peut s'intégrer dans une page web en utilisant la balise « <object> » du langage HTML. En l'état, ce mode de fonctionnement présente un problème de flexibilité car l'intégration du lecteur dans la page nécessite de coder en dur le nom de la ressource qu'il doit afficher. En mode statique, il faut donc développer autant de pages web qu'il y a de médias à visualiser.

Pour pallier à ce problème, j'ai développé une page web spécifique qui permet de spécifier le média que l'on veut visualiser directement dans l'URL de la page. Un code JavaScript permet ensuite d'analyser cette URL et d'intégrer en dynamique dans la page web le lecteur multimédia affecté des bons paramètres pour visualiser le média donné. Le formalisme de l'URL correspond au modèle ci- dessous :

http://<nom du serveur>/<nom de la page web>?flv=<nom du fichier du média> Par exemple, si la page web est enregistrée dans le fichier« lecteur.html », qu'elle est stockée sur le serveur « svrstreaming » et que l'on souhaite visualiser en streaming la vidéo «exemple.flv », il faut appeler cette page avec l'URL :

http://svrstreaming/player.html?flv=exemple.flv

Sur appel de cette URL, la page web s'affichera dans le navigateur avec le lecteur multimédia paramétré pour diffuser en streaming la vidéo « exemple.flv ».

Grâce à ce mécanisme, il est possible de visualiser n'importe laquelle des vidéos du service de cours en ligne sans coder de page web spécifique et en utilisant uniquement un mécanisme

simple de construction des URL.

Ci-dessous, le code de la page web développée. Le fichier qui contient le lecteur multimédia et le code JavaScript de gestion des URL doivent être situés dans un répertoire enfant nommé «js». Le fichier de la bibliothèque « JQuery » que j'utilise pour l'analyse de bas niveau des URL doit également être présent dans ce répertoire :

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr"> <head>

<title>Lecteur multimédia ETRS</title>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/> <script type="text/javascript" src="./js/jquery-1.4.2.min.js"></script> <script type="text/javascript" src="./js/jquery.swfobject.1-1-

1.min.js"></script>

<script type="text/javascript" src="./js/script.js"></script> </head>

<body>

<p>Vous lisez ce message car la page web ne peut pas afficher de vidéo.</p>

<p><br/>Vérifiez le formatage de l'URL utilisée.</p>

<p>Vous devez installer le plugin Adobe Flash pour visualiser la ressource.</p>

</div> </body> </html>

Ci-dessous, le code JavaScript qui prend en charge l'analyse des URL et le code d'intégration du lecteur multimédia affecté des paramètres permettant la visualisation de la vidéo souhaitée.

$(function() {

// Initialiser la récupération des paramètres de l'URL $.urlParam = function(name)

{

var results = new RegExp('[\\?&]' + name + '=([^&#]*)').exec(window.location.href); if(results == null) return 0;

return results[1] || 0; };

// Instancier et positionner le lecteur multimédia var oflash = $("#flash");

// Récupérer les paramètres var width = $.urlParam('width'); if(width == 0) width = 320;

var height = $.urlParam('height'); if(height == 0) height = 280; oflash.flash( { swf: './resources/player_flv_maxi.swf', play: true, width: width, height: height, flashvars: {

title: "Ecole des Transmissions", flv: $.urlParam('flv'), showstop: '1', showvolume: '1', showtime: '2', netconnection: 'rtmp://stream.ent-etrs.net/oflaDemo', autoplay: '1' } }); });

SIGLES ET ABRÉVIATIONS

Sigle, abréviation Description

BENS Bureau enseignement numérique et simulation

BFAO Bureau de formation assistée par ordinateur

CAN Campus area network

CAS Central authentication service

CDROM Compact disk – read only memory

CIRM Centre informatique de ressources multimédias

CNAM Conservatoire national des arts et métiers

CNED Centre national d'éducation à distance

COMETRS Commandant de l'école des transmissions

CRSICAT Centre de ressources SIC de l'armée de terre

DEP Directeur des études et de la prospective

DGF Direction générale de la formation

DGSIC Direction générale des systèmes d'information et

de communication

DIRISI Direction interarmées des réseaux

d'infrastructure et des systèmes d'information

DMZ Zone démilitarisée

DNS Domain name service

DRHAT Direction des ressources humaines de l'armée de

terre

EAD Enseignement à distance

EAO Enseignement assisté par ordinateur

ENT Espace numérique de travail

ETRS École des transmissions

GT IA EAD Groupe de travail interarmées de l'enseignement

à distance

HTML Hypertext markup language

HTTP Hypertext transfert protocol

HTTPS Hypertext transfert protocol secured

IPSec Internet protocol security

ISCSI Internet small computer system interface

ITIL Information technology infrastructure library

LDAP Lightweight directory access protocol

LMS Learning management system

MSIR Module « systèmes informatiques et réseau »

NAS Network attached storage

PFI Plateforme d'instruction

QCM Questionnaire à choix multiples

QoS Quality of service

RTMP Real time messaging protocol

SCSI Small computer system interface

SDFE Sous-direction de la formation et des écoles

SIC Système d'information et de communication

SIF Système d'information de la formation

SLA Service level agreement

SSO Single sign-on

TICE Technologies de l'information et de

communication pour l'éducation

URL Uniform ressource locator

VLAN Virtual local area network

WAN Wide area network

INDEX DES ILLUSTRATIONS

Illustration 1: Structure organisationnelle de l'ETRS...8

Illustration 2: Planification du projet CAN depuis son lancement...10

Illustration 3: Planification du projet CNAM...11

Illustration 4: Organisation de l'enseignement dans l'armée de Terre...18

Illustration 5: Structure du GT IA EAD...19

Illustration 6: Évolution du nombre de stagiaires en mode présentiel par année scolaire...21

Illustration 7: Évolution du nombre d'auditeurs abonnés au module MSIR par année...23

Illustration 8: Modèle de fonctionnement du système d'information de la formation...28

Illustration 9: Schéma de principe du réseau d'enseignement global...32

Illustration 10: Schéma de principe de l'architecture Internet...33

Illustration 11: Situation géographique du système d'information de la formation...35

Illustration 12: Type de média selon l'approche document...42

Illustration 13: Type de média selon l'approche serveur...43

Illustration 14: Graphique de répartition des tailles de fichier vidéo...46

Illustration 15: Évolution moyenne du temps de latence avant accès à une vidéo...47

Illustration 16: Découpage en zones élémentaires du réseau d'enseignement connecté à l'Internet. .53 Illustration 17: Schéma de principe du double abonnement internet...59

Illustration 18: Installation d'un portail captif en coupure de réseau...62

Illustration 19: Mesures de débit sur la carte réseau interne et externe de l'équipement...64

Illustration 20: Mesure d'activité moyenne des processeurs de l'équipement...65

Illustration 21: Amélioration du service d'accès entre les PFI, les stations cadre et la DMZ...67

Illustration 22: Nouvelle liaison entre les serveurs et l'environnement...69

Illustration 23: Le principe du streaming de ressource audio ou vidéo...73

Illustration 24: Montée en charge des processeurs durant un test de connexions simultanées...76

Illustration 25: Architecture générale de la solution de diffusion des vidéos Flash en streaming...77

Illustration 26: Planning de réalisation de la fonction de filtrage...81

Illustration 27: Principe de fonctionnement de la fonction de filtrage pour système Linux...82

Illustration 28: Planning de réalisation du portail captif...84

Illustration 29: Plate-forme de test pour l'installation du portail captif...85

Illustration 30: Planning de réalisation de la plate-forme de diffusion en streaming...89

Illustration 31: Schéma de principe de la baie de serveurs virtualisés...90

Illustration 32: Page web de statistiques du programme HaProxy...93

INDEX DES TABLEAUX

Tableau 1: Comparatif par critères de choix des types d'enseignement numérique...17

Tableau 2: Avantages et inconvénients de deux réseaux d'enseignement isolés...34

Tableau 3: Le portefeuille de services du projet CAN/ENT...40

Tableau 4: Tableau de répartition des tailles de fichier vidéo du service de cours en ligne...45

Tableau 5: Synthèse de l'expression du besoin...49

Tableau 6: Les services à prendre en compte lors de la conception...52

Tableau 7: État de l'art des solutions de streaming audio et vidéo...74

Tableau 8: Synthèse des solutions à réaliser...79

Tableau 9: Dépendances entre couches de la plate-forme de diffusion en streaming...88

Tableau 10: Synthèse des tests de la plate-forme de diffusion en streaming...97

Tableau 11: Synthèse des solutions réalisées...100

BIBLIOGRAPHIE, WEBOGRAPHIE

- Aspects législatifs de l'obligation de traçabilité

https://www.odebi.org/lct/Leslogspourlesnuls.html

- Wikipédia, l'encyclopédie libre

http://fr.wikipedia.org

- Consortium ESUP-PORTAIL

http://www.esup-portail.org

- Répartiteur de charge HaProxy

http://haproxy.1wt.eu

Fondation Mozilla

http://www.mozilla-europe.org/fr

Testeur d'application web Selenium

http://seleniumhq.org

Solution de streaming Wowza Server

http://www.wowzamedia.com

Librairie de manipulation audio et vidéo ffmpeg

http://www.ffmpeg.org

Lecteur de fichier Flash en streaming FLV Player

http://flv-player.net

Serveur de streaming RED5

http://code.google.com/p/red5

Solution de stockage OpenFiler

http://www.openfiler.com

Solution de virtualisation VMWare

http://www.vmware.com/fr

Autorité de certification SSL

http://www.thawte.fr

Distribution Linux Mandriva

http://www.mandriva.com/fr

Solution de virtualisation VirtualBox

Distribution Linux Ubuntu

http://ubuntu-fr.org

Qualité de service réseau sous Windows

http://www.netlimiter.com

Scanner de réseau NMAP

http://nmap.org

Gestionnaire centralisé de configurations Puppet