Você está na página 1de 85

Universit Paris 7 Denis Diderot

UFR dINFORMATIQUE

DESS Applications des Rseaux et de la Tlmatique


Aurlien Amacker

La multidiffusion (multicast) en IPv6 dans le cadre du tlenseignement interactif


Mmoire soutenu en septembre 2003

Directeur des tudes : Gilbert Sol Directeur du mmoire : Yves Legrandgrard Tuteur en entreprise : Jacques Prvost
Deux exemplaires de ce mmoire sont dposs et librement consultables au secrtariat du DESS Applications des Rseaux et de la Tlmatique Toute reproduction en est interdite sans accord crit de lauteur et du directeur des tudes

Rsum
Le projet ATHENA, initi par lassociation Aristote, avait lorigine pour but de favoriser les changes de contenus acadmiques avec lAfrique francophone en utilisant les rseaux de la recherche et sest par la suite tendu au reste du monde avec des partenariats en Inde et au Mexique. Par ailleurs lassociation Aristote est implique dans la mise en uvre et la retransmission en multicast dvnements caractre pdagogique tels que les Cours DIM, les Causeries de Renater et les sminaires X-Aristote. Lemploi des logiciels de visioconfrence en multicast dans le cadre de ces retransmissions a permis de rveler des besoins quant aux fonctionnalits offertes par ces outils. Jai donc procd des modifications du logiciel utilis pour mettre et recevoir de la vido en multicast afin de lui permettre de transmettre les transparents de lorateur lors dun cours ou dune prsentation, mais aussi pour lui permettre dmettre une mme source vido deux dbits diffrents, ceci afin de proposer aux rcepteurs un flux vido en adquation avec leur bande passante. Dautre part, le GIP Renater, partenaire de lassociation Aristote, participe au processus de transition du protocole IPv4 vers IPv6 en proposant la communaut acadmique un service de passerelle IPv4 IPv6 multicast et cest dans ce contexte que jai t charg de la mise en uvre et du fonctionnement de ce service. En effet lassociation Aristote est concerne par le dveloppement du protocole IPv6 qui, outre les nombreuses fonctionnalits innovantes quil apporte, permettra de nombreux pays oublis par les nouvelles technologies de lInformation et de la Communication de bnficier dun nombre dadresses IP ncessaire au dploiement de leurs rseaux et ainsi daccder aux ressources pdagogiques contenues sur le rseau Internet, cest pourquoi lassociation Aristote encourage ses partenaires du projet ATHENA mettre en uvre des rseaux IPv6 et IPv6 multicast.

Remerciements
Je tiens tout dabord remercier M. Jacques Prvost de mavoir choisi parmi les diffrents candidats au poste dapprenti au GIP Renater et de mavoir accord sa confiance. Je tiens aussi remercier M. Bernard Tuy pour ses prcieux conseils ainsi que tout le personnel du GIP Renater avec en particulier les personnes suivantes : Cecile Marlet, Laurence Freyt-Caffin, Jerme Durand, Pierre-Emmanuel Goiffon, Ahmed Sahnoun, Simon Muyal, Gilles Yonnet et Emmanuel Da Costa. Je tiens remercier galement le directeur du GIP Renater, M. Dany Vandromme, davoir donn son autorisation ma venue. Je tiens remercier tout particulirement M. Gilbert Sol, pour ses enseignements mais aussi pour la disponibilit dont il a fait preuve tout au long de lanne pour rpondre nos questions. Sur le plan personnel je tiens remercier ma mre qui ma toujours soutenu et Audrey qui a fait preuve de beaucoup de patience afin de maccompagner tout au long de cette anne.

Sommaire I. II.
A. B.

Introduction................................................................................................6 Prsentation du contexte .......................................................................8


Lassociation Aristote .............................................................................. 8
1. Le Rseau National des Tlcommunications pour la Technologie, lEnseignement et la Recherche ............................................................................................................................. 9 2. Le GIP Renater ..............................................................................................................13

Renater................................................................................................... 9

C. D.

LE GN6.................................................................................................. 14
1. Le projet ATHENA ..........................................................................................................15 Actions pour des Transmissions Harmonieuses et des Echanges de Natures Acadmiques .........15 2. Les cours DIM ...............................................................................................................22 3. Les sminaires X-Aristote ...............................................................................................25 4. Les Causeries de Renater ...............................................................................................26 5. La Grille de Confrences.................................................................................................26

Des actions de tlenseignement .......................................................... 15

E.

Objectifs de mon stage ......................................................................... 28

III.
A.
1. 2. 1. 2. 1. 2.

Les technologies employes ..............................................................29


Un plus grand nombre dadresses IP ...............................................................................29 Une meilleure hirarchisation des adresses......................................................................30 Protocoles de routage au niveau local .............................................................................32 Protocoles de routage inter-liens.....................................................................................33 Prsentation ..................................................................................................................35 Topologie du M6Bone.....................................................................................................35

IPv6...................................................................................................... 29

B.

La multidiffusion (multicast) en IPv6 .................................................... 31

C.

Le M6Bone ............................................................................................ 35

D. Linterface de programmation dapplications en multicast IPv6 en C/C++ sous Unix/Linux ............................................................................................. 38


1. 2. 1. 2. 1. 2. 3. 1. 2. Linterface de programmation dapplications en IPv6 ........................................................38 Linterface de programmation dapplications en multicast IPv6..........................................38 RTP...............................................................................................................................42 RTCP.............................................................................................................................44 Codage de la couleur .....................................................................................................46 Les formats dimages vido ............................................................................................47 Les formats de compression de signaux vido .................................................................48 Vic (Video Conference)...................................................................................................49 Rat ( Robust Audio Tool, outil audio robuste)....................................................................55

E.

Les protocoles de transport de trafic temps rel, RTP et RTCP ............... 42

F.

La vido numrique.................................................................................. 46

G.

Les outils du M6Bone ............................................................................ 49

IV.
A.
1.

Mises en oeuvre.....................................................................................57
Support technique auprs des partenaires du projet ATHENA ...........................................57

Poursuite du projet ATHENA.................................................................. 57

2.

Maintien du contact avec les partenaires du projet ATHENA .............................................57

B.

Mise en oeuvre de la passerelle IPv4 multicast IPv6 multicast............ 59

C. Dveloppement des fonctionnalits des outils de visioconfrence pour le tlenseignement interactif ........................................................................... 61
1. 2. 3. Contexte .......................................................................................................................61 Vic haute rsolution (4CIF).............................................................................................61 Vic deux vitesses.........................................................................................................72

D.

Transfert de connaissances ................................................................... 77

V. VI.
A. B. C.

Conclusion..............................................................................................78 Annexes..................................................................................................79
Bibliographie Rfrences.................................................................... 79 Rfrences sur Internet ........................................................................ 80 Glossaire............................................................................................... 81

I.

Introduction

Lassociation Aristote, partenaire du GIP Renater, est implique dans la mise en uvre et la retransmission en multicast dun certain nombre dvnements caractre pdagogique comme par exemple les sminaires X-Aristote diffuss depuis lcole Polytechnique. Lexprience acquise lors de ces retransmissions en multicast a conduit lassociation Aristote contribuer lamlioration de certaines des techniques utilises pour la retransmission et lenregistrement de ces sminaires et confrences ; amlioration de Vic, utilisation de IPv6, utilisation de SMIL, etc. Ces techniques sintgrent dans le projet Grille de Confrence, dont Aristote et Renater sont partenaires. Elles sont notamment utilises par DIM (cours en visioconfrence entre plusieurs DESS) et par les Causeries de Renater, des sminaires virtuels publics diffuss rgulirement sur Renater. Le projet ATHENA, initi par lassociation Aristote, a pour but de promouvoir les changes acadmiques avec les pays de lAfrique Francophone en utilisant les rseaux de la recherche. La version actuelle du protocole IP utilise sur Internet, IPv4, pose beaucoup de problmes en ce qui concerne le nombre dadresses disponibles et la taille des tables de routage, cest pourquoi il y a dix ans a commenc le processus de normalisation de la prochaine norme du protocole IP, IPv6. Cette norme devrait cohabiter plusieurs annes avec le protocole IPv4 avant de le remplacer totalement, nanmoins Renater, le Rseau National des Tlcommunications pour la Technologie, lEnseignement et la Recherche, propose dj une connectivit IPv6 en natif depuis la troisime version du rseau Renater inaugure en octobre 2002. Lassociation Aristote encourage ses partenaires mettre en uvre des rseaux IPv6 et IPv6 multicast afin de leur permettre de disposer dun nombre dadresses IP suffisant pour dployer leurs rseaux mais aussi afin de leur viter davoir effectuer plus tard la transition vers IPv6. Le multicast est une technologie spcifiquement ddie la transmission de donnes multimdia sur le rseau Internet, elle est aussi tout particulirement adapte pour des applications de vidoconfrence. Dans le cadre du projet europen 6Net, un rseau multicast IPv6 exprimental a t mis en place qui stend louest jusquau Mexique et lest en Core du sud, il sagit du M6Bone et le cur de ce rseau est hberg au GIP Renater. Lobjet du dploiement de ce rseau est de proposer un service avanc du protocole IPv6 afin de participer la promotion et une plus large diffusion de ce protocole. Cependant, en plus de la mise en uvre de rseaux utilisant des technologies innovantes il est aussi ncessaire de dvelopper les applications permettant dutiliser pleinement toutes les fonctionnalits offertes par ces rseaux. Mon travail a donc consist dune part assurer un support technique auprs des partenaires du projet ATHENA en les aidant a mettre en uvre des rseaux IPv6 multicast, et dautre part ajouter des fonctionnalits au logiciel de vidoconfrence Vic utilis pour

mettre et recevoir de la vido en multicast afin damliorer le confort et linteractivit des actions de tlenseignement dans lesquelles est implique lassociation Aristote.

II. Prsentation du contexte


A. Lassociation Aristote
Aristote est une association rgie par la loi 1901. Elle a t cre en 1984 par lINRIA1, le CEA2, EDF3 et le CNES4 puis formalise en 1988. Lassociation Aristote regroupe de grands organismes ou entreprises franais intresss comme acteurs ou utilisateurs lvolution des tlcommunications. Lobjectif dAristote se situe dans le domaine des techniques, moyens, outils et services de communication informatique, notamment : - mettre en commun des efforts de prospective, dtude et dinformation que font ses partenaires, et, sil y a lieu promouvoir llaboration et la mise en service de nouveaux produits, systmes et services dintrt gnral au bnfice de ses partenaires. Cette activit se droule dans le cadre des groupes de travail techniques dAristote. - organiser ou encourager des actions avances dinformation ou de formation : sminaires dintrt gnral, sminaires de formation technique, journes dtudes thmatiques. Les membres sont soit des entits de recherche ou denseignement publiques ou prives, soit des entits industrielles ou commerciales. Ils sont rpartis e trois catgories : titulaires, associs, correspondants. Ces trois catgories n bnficient des mmes possibilits de travail dans les groupes techniques et des mmes tarifs dans les sminaires et formations. Voici les diffrents groupes de travail que prsente Aristote : ATHENA5, Calcul Scientifique Distribu, C-SMIL (le club SMIL dAristote), C-UIML (le club UIML dAristote), GIHM, Multimdia, PIN, Wapiti.

1 2

Institut National de la Recherche en Informatique et Automatique. Commissariat lEnergie Atomique. 3 Electricit de France. 4 Centre National dEtudes Spatiales. 5 Actions pour des Transmissions Harmonieuses et des Echanges de Natures Acadmiques.

B. Renater
1. Le Rseau National des Tlcommunications pour la Technologie, lEnseignement et la Recherche
a) Le rseau Renater et sa communaut dutilisateurs

Les utilisateurs : Aujourdhui plus de 600 sites ayant une activit dans les domaines de la Recherche, la Technologie, lEnseignement et la Culture sont raccords au rseau Renater. Ce rseau leur permet de communiquer entre eux, daccder aux centres de recherche publics et privs, aux tablissements denseignement du monde entier et linternet. Le rseau Renater : Le rseau Renater est compos dune infrastructure mtropolitaine et de liaisons internationales haut dbit. Des points de prsence de Renater sont galement implants dans les dpartements dOutre Mer. La partie mtropolitaine du rseau : Renater est bas sur une architecture distribue : il comprend une pine dorsale nationale haut dbit multi-Gbit/s Renater 3 qui fdre des rseaux de collecte rgionaux dvelopps avec le soutien des collectivits territoriales dans le cadre de l amnagement du territoire. Les points de prsence outre-mer : Renater dispose galement de points de prsence dans les domaines et territoires doutremer. Les liaisons vers les autres pays et vers lInternet :

RENATER est interconnect 2.5 Gbit/s aux autres rseaux de recherche europens et amricains via le rseau paneuropen GEANT.

Figure 1 : Les liaisons du rseau Renater linternational.

Une liaison de 20 Mbit/s aboutissant en Core assure la communication avec les rseaux de la recherche de la zone Asie-Pacifique, notamment celui du Japon. La communication avec lInternet, en France, est ralise par le nud dchange SFINX, auquel RENATER est reli 1 Gbit/s. La communication avec lInternet dans le reste du monde est assure par le raccordement de RENATER 5 Gbit/s lpine dorsale Internet mondiale OpenTransit de France Tlcom.

b)

Renater 3, pine dorsale du rseau Renater

Avec Renater 3, les dbits des liaisons de lpine dorsale sont presque partout de 2,5 Gbit/s ou davantage. Ces liaisons sont presque partout organises en boucle : ceci augmente la disponibilit en cas dincident il y a toujours un chemin de secours disponible et facilite la mise en place de liaisons de voisinage entre rgions. Ces dbits atteignent mme 80 Gbit/s en Ile de France.

10

Figure 2 : La carte du rseau Renater 3.

c)

Les services proposs par Renater

Au niveau des points d'accs rgionaux son pine dorsale, RENATER propose de nombreux services : - Des services de rseau IP performants : Un service de bout en bout avec qualit garantie et un guichet unique pour lensemble du territoire national, un service IPv4 conventionnel permettant daccder aux communauts de la recherche et de lenseignement, nationales et internationales ainsi qu lInternet.

- Des services de rseau avancs : Un service IPv6, utilis par les universits pour prparer la migration de IPv4 vers IPv6, ainsi que par de nombreux projets de recherche et dveloppement : RNRT, RNTL, 6e Programme Cadre Un service de diffusion IP (IP multicast), en IPv4 et en IPv6, utilis pour la visioconfrence et le tlenseignement interactif, un service d'appels pour la visioconfrence en H.323, utilis pour la visioconfrence deux deux et laccs des ponts de visioconfrence pour les runions de travail collaboratif. 11

Un accs des contenus pdagogiques et culturels via une boucle trs haut dbit reliant des sites fort contenus culturels. Ces services peuvent tre utiliss par tous les organismes et sites de la communaut Renater si ceux-ci sont relis aux points de prsence, par des rseaux de collecte rgionaux qui les relaient. La scurit est galement un thme fort de RENATER: engagements et chartes de dontologies signs par les organismes utilisateurs, mesures techniques spcifiques dans le rseau, CERT-Renater y contribuent.

d)

Renater 3, une technologie de pointe

- Linfrastructure : de la fibre optique des dizaines de Gbit/s Les technologies optiques, telles que le multiplexage de longueurs d'onde (DWDM), permettent d'utiliser la fibre optique trs haut dbit : dans une mme fibre, ce multiplexage permet de transporter plusieurs fois 2.5 Gbit/s, bientt plusieurs fois 10 ou 40 Gbit/s. Ceci est utilis en particulier sur lpine dorsale nationale de RENATER 3 et dans la boucle optique qui constitue la partie francilienne 80 Gbit/s de Renater. - IPv6 : la nouvelle gnration de lInternet : IPv6 est la nouvelle version du protocole IP de lInternet. Elle va prendre la relve de la version 4, IPv4, au cours des prochaines annes et elle le fait dj au Japon et en AsiePacifique. En Europe, les rseaux de la recherche sont trs actifs pour prparer et commencer cette migration, et proposer un service IPv6 pour les exprimentations des premiers utilisateurs. RENATER est au premier plan de cette volution : dans RENATER 3, il y a un service IPv6 natif , cest dire plac sur le mme plan que le service IPv4 et tout aussi performant. RENATER est mme lun des premiers au monde proposer un service de diffusion (multicast) sur IPv6, cl du dveloppement de la visioconfrence et du tlenseignement sur cette nouvelle version du protocole IP ! - Former et accompagner les utilisateurs pour quils matrisent ces technologies de pointe : Les technologies des rseaux et de leurs utilisations avances voluent vite. En garder la matrise nest pas chose simple, mme avec la comptence que lon trouve dans la communaut des utilisateurs de RENATER. Pour les aider, RENATER organise des actions de formation ou daccompagnement, et participe dautres actions animes par des experts de cette communaut : prsentations techniques en vido : RENATER en vido, ainsi que des sminaires virtuels : les Causeries de RENATER, et aussi des cours en partenariat avec le CINES Montpellier, et des confrences spcifiques : IPv6 en Octobre 2002, confrences JRES, IPv6 en Juin 2003, et mme un groupe de travail spcifique pour les responsables rseaux dorganismes qui dmarrent IPv6 : le GN6

12

2. Le GIP Renater
Le GIP Renater runit de grands organismes de recherche et denseignement, ainsi que le ministre en charge de lducation nationale, de la recherche et de la technologie, pour dvelopper et faire fonctionner le rseau Renater. Un GIP (Groupement dIntrt Public) est un organisme but non lucratif runissant des administrations de lEtat et des organismes publics dans le cadre d une activit bien dfinie, dans le cas du GIP Renater il sagit de la gestion du rseau Renater. En effet le GIP Renater est le matre douvrage de la partie commune de Renater constitue de son pine dorsale Renater 3, des liaisons internationales, de ses actions pilotes et du SFINX (Service for French Internet eXchange). Il est le coordinateur technique et oprationnel global de lensemble du rseau Renater y compris de ses lments rgionaux. Il reprsente le rseau Renater auprs des institutions franaises et trangres, et notamment auprs des autres rseaux de la recherche. Le GIP Renater est financ : par les contributions de ses membres, par des subventions gouvernementales (et europennes pour certains projets spcifiques) et par les contrats passs par les organismes utilisateurs non membres (y compris les fournisseurs daccs Internet qui utilisent le SFINX). Ses dpenses concernent : les cots de Renater 3 et des liaisons internationales, les actions pilotes, le CERT, les services divers, les dpenses de fonctionnement, notamment les cots lis au personnel.

13

C. LE GN6
De nombreux organismes de la communaut des utilisateurs de Renater dsirent actuellement dmarrer de petits rseaux IPv6 dans leurs organismes : cela leur permettra dacqurir lexpertise ncessaire, et dtudier concrtement divers aspects techniques et oprationnels de lintroduction de IPv6 : ils pourront ensuite planifier dans de bonnes conditions la migration globale de IPv4 vers IPv6 que lon estime inluctable dans les prochaines annes. Pour les aider et les accompagner tout au long de cette dmarche, le GIP Renater a mis en place avec eux le Groupe des Nophytes IPv6, le GN6. Le GN6 : un groupe de travail accs restreint - qui regroupe des acteurs rseau des organismes de la communaut Renater : organismes utilisateurs de Renater, rseaux de collecte de Renater, rseaux ou organismes trangers qui ont une convention de coopration avec le GIP Renater. Ses objectifs : permettre de sinitier la mise en uvre de IPv6 et de ses applications de base faciliter, par des changes dinformation et des retours dexprience systmatiques, le dmarrage de rseaux pilotes IPv6 qui devront tre connects au service IPv6 de Renater - dans les organismes faciliter, dans les mmes conditions, la participation aux actions pilotes menes par le GIP Renater et/ou le G6, par exemple IPv6 multicast ou DNSsec faciliter laccs aux connaissances des experts, notamment ceux du GIP Renater et de lAssociation G6

Dmarr mi-2002, le GN6 comporte dj une vingtaine de personnes, et se runit tous les deux mois. Certains de ses membres, loigns de quelques milliers de kilomtres, participent rgulirement aux runions en visioconfrence.

14

D. Des actions de tlenseignement


Dans le cadre de ses activits ou bien encore dans le cadre de son partenariat avec le GIP Renater, lassociation Aristote est lorigine de plusieurs actions de tlenseignement au cours desquelles sont retransmis sur le rseau Renater des contenus caractre pdagogique. Voici une prsentation des projets de tlenseignement dans lesquels est implique lassociation Aristote.

1. Le projet ATHENA Actions pour des Transmissions Harmonieuses et des Echanges de Natures Acadmiques
a) Prsentation

ATHENA est un projet mis en uvre par lassociation Aristote en association avec diffrents partenaires pour ltude et la validation de processus dchanges acadmiques via des transmissions rseau de contenus scientifiques entre sites acadmiques francophones. ATHENA a pour objectif de contribuer au dveloppement dchanges acadmiques travers les NTIC (Nouvelles Technologies de lInformation et de la Communication) entre le rseau Renater et les milieux universitaires de ces pays. A la diffrence dautres expriences il ne sagit pas de mettre la disposition des partenaires des supports multimdia (cdroms ou vidocassettes par exemple), lintrt est de mettre en place un dispositif dchanges en temps rel (interactif) travers les outils modernes de communications et en particulier laide de la visioconfrence. Do le besoin dune analyse de la faisabilit technique avec ltude des moyens de communications dont disposent les futurs partenaires : ordinateurs, quipements de visioconfrence, connectivit Internet, rseaux analogiques, numriques, hertziens Les premiers tests sont valids par : des essais de visioconfrence en point point avec les partenaires la diffusion en direct dvnements, lambition tant de faire du temps rel laccent mis sur linteractivit ne supposant pas lignorance dautres dispositions notamment la mise, par chaque partenaire, la disposition de lensemble du rseau constitu, des documents scientifiques contenus consultables via Internet.

Ces changes de contenu caractres scientifiques avec les pays de lAfrique francophone contribuent une homognisation des connaissances dans les secteurs des tlcommunications, rseaux Cette mise en partage des connaissances a pour objectif de donner aux tudiants africains le mme savoir que celui dispens aux tudiants europens.

15

La carence de personnel et de salles de cours dans beaucoup de pays africains pourrait tre compense par cet enseignement distance. Le projet ATHENA a t initi par lapprenti du DESS ART au GIP Renater de la promotion 2000/2001, M. Harouna Siby, qui a prospect et trouv des contacts en Afrique et plus prcisment au Sngal, puis ce projet a vu arriver de nouveaux partenaires en Inde, en Tunisie et au Maroc avec le travail de M. Lionel David, apprenti du DESS ART au GIP Renater lors de lanne scolaire 2001/2002.

b)
-

Les partenaires du projet ATHENA


Lassociation Aristote et le GIP Renater que nous avons dj prsents auparavant :

Luniversit Paris 7 Denis Diderot :

Cest le DESS Applications des Rseaux et de la Tlmatique dpendant de lUFR dinformatique de lUniversit Paris 7 qui participe au projet ATHENA.

Ce DESS, qui utilise les services de VisioP7, le centre de visioconfrence de lUniversit Paris 7, se situe la pointe de la technologie concernant les exprimentations de tlenseignement utilisant les technologies de la visioconfrence. Sa formation est ancre sur la ralit du march et la diversit des technologies, alliant Tlmatique, Tlcommunications et Multimdia.

16

Luniversit dEvry :

Luniversit dEvry est reprsente dans le projet ATHENA par le DESS Ingnierie Documentaire et Multimdia. Les tudiants sortant de cette formation sont des informaticiens capables de matriser la fois les domaines techniques et organisationnels lis la gestion, la cration e t lutilisation de linformation documentaire et multimdia dans des environnements varis. LESMT Dakar :

LEcole Suprieure Multinationale de Tlcommunications (ESMT) situe Dakar est ne en 1981 de linitiative de sept pays de la sous-rgion de lAfrique de lOuest (Bnin, Burkina Faso, Mauritanie, Niger, Sngal, Togo), avec le concours de la coopration internationale dans le cadre dun projet du Programme des Nations Unies pour le Dveloppement (PNUD). LESMT est maintenant une institution multinationale qui a pour vocation de former des ingnieurs en tlcommunications spcialiss dans les domaines technique et commercial. Elle accueille en formation initiale ou en formation continue des stagiaires issus des pays membres et dautres pays utilisateurs comme le Tchad, la Guine Conakry, le Burundi, Djibouti, Madagascar, la Cte dIvoire, le Cameroun, le Congo LESMT offre galement des possibilits de rencontres et dchanges, en organisant des forums, des sminaires et des runions lchelle africaine et internationale tels que le forum sur les radiocommunications mobiles regroupant oprateurs africains et consortiums internationaux (1994 et 1997) ou le sminaires interrgional sur les techniques et usages de la tlmatique (1996). L'ESMT bnficie d'aides de la part de ses partenaires internationaux sous diverses formes : renforcement des infrastructures techniques renforcement des ressources pdagogiques soutien d'assistance technique soutien financier

17

Le PNUD (Programme des Nations Unies pour le Dveloppement) et l'UIT (Union Internationale des Tlcommunications) sont l'origine de l'ESMT et ont permis le dveloppement de ses activits notamment par lenvoi dexperts pour la mise en place des formations (a commencer par celle des formateurs) et en permettant l'acquisition des quipements de laboratoire et des divers matriels logistiques. La coopration avec la France s'est pratiquement mise en place ds la cration de l'ESMT. Elle s'est traduite par la mise disposition d'experts (France Tlcom, etc), de CSN, d'aide au dveloppement des ressources humaines de l'cole et de dons en matriels. L'appui de la Suisse l'ESMT se manifeste de diverses manires : formation pdagogique de formateurs, octroi de bourses d'tudes des lves, dons de matriels didactiques, organisation en commun de sminaires Dans le cadre de son programme d'appui institutionnel aux pays participant au projet PANAFTEL-ACDI, le Canada soutient diverses actions (installations d'nergie solaire, tlphonie rurale, transfert de comptences par des experts de CEGIBEL, etc .). Forte de tous ses partenaires, l'ESMT se veut un ple de dveloppement des tlcommunications des pays membres et utilisateurs, afin d'accrotre la comptitivit des entreprises dans un environnement en profonde mutation.

LUniversit Cheikh Anta Diop (UCAD) Dakar :

LUniversit de Dakar a t cre le 14 fvrier 1957 et elle a t inaugure en dcembre 1959. Hritire de lcole africaine de Mdecine cre en 1915, lUniversit de Dakar a connu une longue volution marque en 1949 par la cration dun enseignement prparatoire aux tudes mdicales et par louverture au dbut des annes cinquante dcoles suprieures acadmiquement rattaches lUniversit de Bordeaux, puis riges en 1957 en Facults indpendantes pour former lUniversit de Dakar. Devenue le 30 mars 1987 lUniversit Cheikh Anta Diop de Dakar, lUniversit de Dakar est la plus ancienne et la plus importante structure denseignement suprieur existant actuellement au Sngal. En dehors des services administratifs centraux du rectorat elle est compose de trente tablissements denseignement suprieur et de recherche se rpartissant comme suit : onze facults, dix-neuf instituts duniversit ainsi que lEcole Inter tats des Sciences et Mdecine Vtrinaires qui dpend scientifiquement de lUniversit.

18

Cest lEcole suprieure Polytechnique rattache lUCAD qui participe au projet ATHENA. LEcole Suprieure Polytechnique est rpartie sur cinq dpartements : Gnie Chimique, Gnie Civil, Gnie Electrique, Gnie Mcanique et enfin le dpartement Gnie Informatique qui participe au projet ATHENA.

Le CIRAD Montpellier :

Organisme franais spcialis en recherche agronomique applique aux rgions chaudes, le CIRAD a pour mission de contribuer au dveloppement rural des pays tropicaux et subtropicaux par des recherches, des ralisations exprimentales, des actions de formation, en France et lEtranger. Ses activits recouvrent les domaines des sciences agronomiques, vtrinaires, forestires et agroalimentaires. Le Centre de Calcul El Khawarezmi (CCK) Tunis :

Le CCK, tablissement sous tutelle du Ministre de LEnseignement Suprieur et dpendant de lUniversit El Manar de Tunis a t cr en octobre 1976 la suite de lintroduction de lInformatique en tant que discipline autonome dans les milieux universitaires. Le Centre de Calcul El Khawarezmi a t dsign au mois de juillet 1997 comme fournisseur de services Internet au profit des tablissements denseignement suprieur et de recherche. Sa mission principale est de mettre la disposition des enseignants, des chercheurs, des doctorants et des tudiants exerant au sein des institutions dpendant du Ministre de lEnseignement Suprieur, les moyens et les services ncessaires pour favoriser le dveloppement de la recherche scientifique par le biais de linformatique. Dans le cadre de la ralisation du projet du Rseau National Universitaire (RNU) retenu dans le 9me plan, le centre de calcul El Khawarizmi a t dsign, au mois de Juillet 1997 (circulaire 97/047 du 26 Juillet 1997) comme Fournisseur de Services Internet au profit des tablissements de l'Enseignement Suprieur. Dans le cadre du projet BIRUNI (projet dinformatisation des bibliothques universitaires tunisiennes), le CCK permet l'interconnexion des bibliothques

19

universitaires et bibliographiques.

assure

l'hbergement

du

serveur

central

d'informations

Le Centre participe au projet de l'utilisation des technologies avances comme moyen de soutien l'enseignement et la pdagogie, notamment pour les applications que constituent le tlenseignement ou la visioconfrence.

Le rseau MARWAN au Maroc :

Acronyme de lexpression Maroc Wide Area Network (rseau longue distance marocain), le MARWAN est un rseau informatique national but non lucratif ddi lducation, la culture et la recherche. Sa mise en place, dcide par le Premier Ministre marocain est effectue conjointement par le Ministre de lEnseignement Suprieur, de la Formation des Cadres et de la Recherche Scientifique ; le Ministre de lEducation Nationale ; Le Ministre du Dveloppement Social, de la Solidarit, de lEmploi et de la Formation Professionnelle et le Secrtariat dEtat auprs du Premier Ministre charg de la Poste et des Technologies de lInformation. Ce rseau correspond un choix stratgique qui consiste fdrer linfrastructure dinformation et de communication des tablissements et connecter ces derniers aux rseaux internationaux quivalents. Le MARWAN facilite les changes dinformation lchelle rgionale, nationale et internationale. Il permet la diffusion du savoir et offre galement aux tablissements scolaires, universitaires et de formation professionnelle ainsi quaux centres de recherche nationaux, la possibilit dutiliser les technologies de linformation et de la communication.

20

Les Nouvelles Technologies de lInformation et de la Communication sont en train de provoquer une rvolution, aussi importante que la rvolution industrielle. Le rseau MARWAN est loutil adquat qui va permettre au Maroc de dvelopper ce secteur et en faire un puissant levier pour le dveloppement et le dcollage de la recherche scientifique et technique dans ce pays. Le rseau MARWAN a pour objectifs :

o La gnralisation de lenseignement et lamlioration de sa qualit par le


dveloppement des diffrents modes denseignement et de formation distance (tlenseignement, tl mdecine)

o Le dveloppement de la recherche scientifique et technique grce la


multitude des formes de communications offertes par ce rseau et par la cration de bases de donnes et de bases documentaires spcifiques

o Lamlioration

du transfert de technologie et de la coopration internationale en connectant le rseau MARWAN aux autres rseaux internationaux similaires

o La gnralisation et la vulgarisation de lutilisation des technologies de


linformation et de communication par la couverture de lensemble des tablissements denseignement de formation et de recherche, de lcole luniversit, et sur la totalit du territoire marocain

o Lamlioration et la rationalisation de la gestion des ressources par le


partage et lchange de ces ressources, en ralisant dimportantes conomies par le remplacement des modes classiques de communication, de transfert et de publication de linformation par les Nouvelles Technologies de lInformation et de la Communication o La cration demplois par la cration de nouveaux mtiers et nouveaux services autour de ces Nouvelles Technologies.

Luniversit de Guadalajara au Mexique :

Luniversit de Guadalajara a t fonde en 1792 sous le nom dUniversit Royale de Guadalajara. Cest un organisme public dcentralis du gouvernement de ltat de Jalisco, qui jouit de son autonomie et dun patrimoine personnel. Ses objectifs sont doffrir des formations initiales et des formations continues destination des techniciens, universitaires et tudiants, mais aussi plus gnralement de diffuser la culture, la science et la technologie.

21

LInstitut Indien de Technologie de Kanpur en Inde (IITK) :

LInstitut Indien de Technologie de Kanpur est engag dans la recherche et la mise en uvre des nouvelles technologies. Il forme des ingnieurs motivs et comptents. LInstitut clbre la libert de penser, cultive la vision et encourage la croissance mais inculque galement des valeurs humaines et le souci de lenvironnement de la socit. LInstitut forme des bacheliers, des matres et des doctorants dans diverses branches technologiques et scientifiques. LIITK a mis laccent sur le recrutement dun corps enseignant comptent venant de diffrents points gographiques nationaux et internationaux ainsi quune slection trs stricte des tudiants. LIITK est un tablissement technologique dimportance nationale pour lducation mais aussi pour la recherche. Concernant les nouvelles technologies de lInternet, lIITK profite de subventions du gouvernement indien, de projets, de personnes comptentes, tudiants et chercheurs.

Le projet ATHENA constitue donc pour lassociation Aristote un moyen de nouer des partenariats et de partager des connaissances et des savoir-faires avec des partenaires acadmiques du monde entier.

2. Les cours DIM


a) Prsentation

DIM (Diplmes d'Ingnierie Multimdia): c'est le nom d'un projet commun plusieurs DESS ou enseignements quivalents de technologies d'informatique et de rseau. DIM leur permet d'organiser rgulirement des cours communs, partags en interactif grce la visioconfrence et des outils de travail coopratif sur Renater. Ces enseignements sont dispenss : LUniversit d'Evry Val d'Essonne (UEVE) LInstitut National des tlcommunications Evry (INT) LUniversit Paris VII sur le campus de Jussieu LUniversit de Valenciennes et du Hainaut-Cambrsis (UVHC) LEcole Suprieure Multinationale de Tlcommunications de Dakar (ESMT)

Le GIP Renater apporte sa contribution au support technique de DIM : rseau et service IP multicast, technologies de vido numrique sur IP.

22

DIM a dmarr en Octobre 2001. Voici une vue de la salle du DESS ART Paris VII, lors de la rception du premier cours DIM mis par le DESS IDM Evry :

Figure 3 : gauche se trouvent les transparents de lorateur, droite limage de lorateur. Les lves peuvent poser des questions grce aux micros qui se trouvent sur les tables.

Les cours sont dispenss tour de rle par un enseignant de chacune des cinq formations concernes. Les cours DIM constituent une exprience grandeur nature de lusage de la visioconfrence dans le cadre du tlenseignement interactif, en effet en plus de voir et dentendre lorateur les tudiants peuvent poser des questions pendant le cours. Jusqu prsent les cours DIM taient retransmis en IPv4 multicast mais terme lobjectif est de les retransmettre en IPv6 multicast.

b)

Perspectives damliorations

Les cours DIM se droulent avec succs depuis maintenant deux annes, cependant certaines innovations permettraient damliorer le confort et linteractivit des sessions, par exemple la rsolution maximale autorise par le logiciel de vidoconfrence utilis pour ces sances est actuellement de 352x288 ce qui implique une qualit de la vido de lorateur moyenne et, plus contraignant encore, limpossibilit de retransmettre dans de bonnes conditions les transparents des cours par le biais de ce logiciel car la lisibilit nest alors pas suffisante.

23

Voici ce que donne un transparent transmis par le logiciel de vidoconfrence en 352x288:

Figure 4 : Transparent transmis en 352x288.

On constate que la lisibilit nest pas suffisante pour offrir aux rcepteurs le confort ncessaire. La solution actuellement utilise pour retransmettre les transparents lors des cours DIM est dutiliser le partage de fichiers de Netmeeting, cependant lexprience des cours DIM a montr que cette solution manque de stabilit puisque rgulirement les participants la session sont dconnects et ce moment-l il faut que tous les participants se dconnectent et se reconnectent ce qui entrane une perte de temps. Une version du logiciel de visioconfrence utilis lors des cours DIM autorisant une rsolution de 704x576 serait une solution ce problme puisquelle permettrait de retransmettre les transparents laide de ce logiciel de visioconfrence et donc de saffranchir de lusage de NetMeeting. Enfin un problme pratique qui se pose galement lors des cours DIM est le suivant : lorsquun lve veut poser une question il est oblig dinterrompre le professeur ou bien dattendre que celui-ci demande lauditoire si quelquun dsire poser une question, ce quil ne fait en gnral qu la fin du cours ou juste avant la pause. Une solution ce problme serait de dvelopper un logiciel permettant un lve de demander la parole. Du cot de lorateur ceci se manifesterait par un signal visuel sur un cran de contrle.

24

Ceci permettrait donc de proposer un mode de fonctionnement similaire celui qui est utilis pour des cours en prsentiel : llve lve sa main pour avertir le professeur quil dsire poser une question et lorsquil le dsire le professeur peut donner la parole llve. Cette manire de procder permettrait donc dviter aux lves de couper la parole du professeur.

3. Les sminaires X-Aristote


a) Prsentation

Dans le cadre de ses activits de diffusion de la connaissance auprs de ses membres, l'Association Aristote organise rgulirement des sminaires de haut niveau : les sminaires X-Aristote. Ils sont groups en cycles de 6 sminaires d'une journe chacun par anne scolaire. Ces sminaires se droulent dans un amphithtre de l'Ecole Polytechnique. Ils sont principalement destins aux utilisateurs volus, aux administrateurs de rseaux et d'ordinateurs, et aux responsables et dcideurs. Chaque sminaire est consacr un thme prcis, choisi dans le domaine des technologies des rseaux et de leurs applications de base. Il en aborde divers aspects: principes et tat de l'art, produits et ralisations industrielles et/ou oprationnelles; compte rendus d'expriences ou de stratgies d'utilisateurs. Il fait intervenir des orateurs de haut niveau : experts internationaux, spcialistes des organismes d'Aristote, reprsentants des industriels et des fournisseurs de produits. Les sminaires X-Aristote font systmatiquement lobjet dune retransmission en IPv4 multicast et dun passerellage en IPv6 multicast. A terme lobjectif est de les retransmettre en IPv6 multicast et de les passereller en IPv4 multicast afin daccompagner le processus de transition du protocole IPv4 vers le protocole IPv6.

b)

Perspectives damliorations

Etant donn que les personnes dsirant assister la retransmission en multicast des sminaires X -Aristote ne bnficient pas tous de la mme bande passante, la retransmission de la vido est effectue avec un dbit assez faible (128 kbit/s) afin de la rendre accessible au plus grand nombre, cependant ceci est frustrant pour toutes les personnes qui possdent une bande passante importante car ils ne peuvent bnficier dune vido de bonne qualit. Lemploi dune passerelle permettant de rduire le dbit dune session vido afin de proposer une session haut dbit et une session bas dbit a t expriment mais cette solution ne sest pas revele satisfaisante par manque de stabilit de la part de ce logiciel. La solution envisage par la suite a donc t de disposer dune version du logiciel de vidoconfrence permettant dmettre un mme signal vido deux dbits diffrents. Ainsi nous pourrions mettre de la vido un dbit relativement faible (moins de 128 kbit/s) pour les gens ne disposant pas dune bande passante importante et de la vido de haute qualit (plus de 512 kbit/s) pour ceux disposant dune large bande passante.

25

4. Les Causeries de Renater a) Prsentation

Les Causeries de Renater sont des confrences virtuelles dune demi-journe une journe disponibles sur Renater. Elles se droulent entirement en tl prsence, grce aux possibilits de visioconfrence permises par les performances de Renater. Les orateurs et les auditeurs sont dans des salles de runion quipes pour le multimdia, ou parfois simplement dans leurs bureaux : ces lieux sont runis en une vaste salle de confrence virtuelle par le rseau RENATER et les autres rseaux de la recherche : certains sont en effet ltranger. Tous les participants peuvent voir et entendre lorateur, interagir et poser des questions, puis participer au dbat. Au total, et suivant le sujet de la Causerie, il y a de 10 50 points dcoute, pouvant reprsenter plus dune centaine de personnes. Chaque Causerie est ddie un thme prcis. Il est trait par un ou plusieurs orateurs de haut niveau : membres de lquipe du GIP Renater, responsables rseaux des Centres de Ressources Informatiques des universits, professeurs de DESS dinformatique, experts reconnus, utilisateurs comptents etc Certains des thmes retenus jusquici concernent le rseau Renater: dploiement, opration, technologies. D'autres abordent des applications avances ou innovantes rendues possibles par Renater. Les Causeries sont ouvertes toute la communaut des utilisateurs de Renater. Les organisateurs des Causeries sont actuellement : Guy Bisiaux (Universit de Valenciennes) et Jacques Prvost (GIP Renater). Note historique : les Causeries ont t connues autrefois sous les noms Causeries de l'UREC1 puis Causeries du FMBone2. Les Causeries de Renater tant diffuses en IPv4 multicast, l encore lobjectif est terme de les retransmettre en IPv6 multicast et de les passereller en IPv4 multicast.

b)

Perspectives damliorations

De la mme manire que pour les sminaires X-Aristote, actuellement le dbit de la retransmission de la vido des Causeries de Renater est nivel par le bas et l encore une version de Vic permettant dmettre deux dbits donnerait la possibilit lauditoire de choisir la session vido la mieux adapte sa bande passante.

5. La Grille de Confrences
La Grille de Confrences est le plus rcent des projets dans lequel est implique lassociation Aristote, il sagit de proposer une normalisation du mode opratoire des techniques utilises pour la vidoconfrence et la retransmission en multicast dvnements caractre pdagogique.

1 2

Unit REseaux du CNRS. French Multicast backBONE, pine dorsale multicast franaise.

26

La Grille de Confrences runit sur Renater (et ailleurs) un ensemble de noeuds (points d'coute et de participation) de visioconfrence, quips et oprs de manire cohrente et coordonne. La Grille permet de raliser aisment des confrences virtuelles, avec des groupes d'auditeurs situs chaque noeud. La Grille spare totalement l'organisation de la virtualit, qui est du domaine des animateurs des noeuds, et l'organisation du contenu, qui est du domaine de l'animateur de chaque confrence : celui-ci peut prparer sa confrence ou son sminaire pratiquement sans avoir se soucier de la virtualisation et en bnficiant d'auditeurs distance, capables de poser des questions et de participer aux dbats, et aussi en programmant, s'il le dsire, des intervenants distance : il suffit qu'ils se rendent au noeud de la Grille le plus proche. La Grille de Confrences, c'est : Une technologie de pointe pour la visioconfrence dans chaque noeud Un mode opratoire commun bien dfini Des interconnexions rseau de qualit entre les noeuds Un accueil et une mise en oeuvre dans chaque noeud

Actuellement on trouve des nuds de la grille de confrence Caen, Dakar, Paris, Montpellier et Toulouse. La Grille s'efforce d'intgrer les technologies valides par les utilisations grande chelle de ces derniers temps, notamment DIM, Causeries de Renater et sminaires X-Aristote, ainsi que les conclusions des retours d'exprience de ces utilisations pilotes et notamment leurs suggestions d'amliorations.

27

E. Objectifs de mon stage


Les objectifs de mon stage taient donc dune part de poursuivre le projet ATHENA en maintenant le contact avec les partenaires actuels, en dveloppant de nouveaux contacts laisss par mon prdcesseur et dautre part de dvelopper de nouvelles fonctionnalits permettant damliorer le confort et linteractivit des actions de tlenseignement mises en oeuvre par lassociation Aristote, en effet ces nouvelles fonctionnalits devraient permettre de transmettre les transparents en multicast mais aussi de donner accs des rcepteurs situs sur des liaisons bas dbit de la vido en multicast. Il est souligner que mon travail sest inscrit dans des projets vocation technique (M6Bone1) ou relationnelle (ATHENA) qui ont commenc bien avant le dbut de mon apprentissage et qui se termineront bien aprs, mon travail a donc consist apporter ma contribution personnelle ces projets afin den assurer le dveloppement. Cest une procdure classique dans le monde de la recherche : ainsi, les outils de visioconfrence sur IP multicast ont-ils dj bnfici de la contribution de nombreux dveloppeurs, sans doute plus dune centaine. Cest aussi la mthode de dveloppement classique des logiciels libres.

Multicast IPv6 backBONE, pine dorsale multicast IPv6.

28

III. Les technologies employes


A. IPv6
La version actuelle du protocole IP, IPv4, a t initialement conue pour un rseau comprenant une centaine dordinateurs. Avec le web, Internet a vu son utilisation augmenter de manire exponentielle, si bien que la saturation du rseau a t initialement prvue pour 1994. Des solutions comme le NAT (Network Address Translation, translation dadresses rseau) et CIDR (Classless InterDomain Routing, routage inter domaine sans classes) ont permis de ralentir considrablement lexplosion du rseau et de gagner du temps afin de pouvoir mettre au point une nouvelle version du protocole IP. Cette nouvelle version, appele IPv6, a t conue pour remdier aux limitations du protocole IPv4 mais aussi pour rpondre de nouveaux besoins au niveau des rseaux ou des applications. Voici quelques unes des principales fonctionnalits du protocole IPv6 :

1. Un plus grand nombre dadresses IP


Un des besoins les plus importants auquel rpond IPv6 consiste en un nombre dadresses quasiment illimit, en effet si les adresses IPv4 taient codes sur 32 bits, offrant ainsi 232 adresses diffrentes, les adresses IPv6 sont codes sur 128 bits, offrant ainsi 2128 adresses soit 296 fois le nombre dadresses IPv4 . Ainsi le nombre dadresses IPv6 disponibles a t estim comme tant situ entre 1 564 et 3 911 873 538 269 506 102 adresses par mtre carr (ocans compris) de la surface de la terre, on peut donc considrer ce nombre dadresses comme tant virtuellement illimit. La reprsentation textuelle dune adresse IPv6 se fait en dcoupant le mot de 128 bits de ladresse en 8 mots de 16 bits spars par le caractre : , chacun deux tant reprsent en hexadcimal. Par exemple : fedf:0000:0000:0000:0400:aab8:6543:220f Dans chaque champ il nest pas ncessaire dcrire les 0 placs en tte et plusieurs champs nuls conscutifs peuvent tre abrgs par le symbole :: , cependant ce symbole ne peut apparatre quune seule fois dans une adresse pour viter les ambiguts. De cette manire ladresse prcdente peut scrire : fedf::400:aab8:6543:220f Le protocole IPv6 distingue trois types dadresses: multicast (multidiffusion), unicast et anycast (RFC 3513). Une adresse unicast dsigne une interface rseau, un paquet envoy une telle adresse sera donc remis linterface ainsi identifie. Une adresse multicast dsigne un ensemble dinterfaces qui en gnral appartiennent des nuds diffrents pouvant tre situs nimporte o dans lInternet. Lorsquun paquet a pour destination une adresse de type multicast, il est achemin par le rseau toutes les interfaces membres de ce groupe. A noter quen IPv6 la notation dadresse de broadcast a 29

disparu pour etre remplace par une adresse multicast, ce qui permet dconomiser des ressources machines puisque de cette manire les ordinateurs peuvent liminer des paquets qui ne leur sont pas destins ds leur rception au lieu davoir a faire remonter linformation contenue dans le paquet jusquau niveau application. Une adresse anycast dsigne comme pour une adresse multicast un ensemble dinterfaces, la diffrence tant que lorsquun paquet est a chemin une telle adresse il est achemin un seul lment du groupe et non tous. Cest, par exemple, le plus proche au sens de la mtrique des protocoles de routage.

2. Une meilleure hirarchisation des adresses


Un des objectifs principaux dIPv6 a t de mieux hirarchiser les adresses afin de permettre de plus grands agrgats et donc de rduire la taille des tables de routage des routeurs situs sur les pines dorsales IP. Voici le schma dune adresse IPv6 agrge (RFC 3587) : 001 3 bits prfixe global de routage 45 bits topologie publique identifiant de sous-rseau identifiant dinterface 16 bits 64 bits topologie prive

Il est noter que la partie publique peut encore tre amene changer, quant elle la partie prive conservera cette structure. Le prfixe global de routage permet aux oprateurs daggrger les tables de routage. Les oprateurs attribuent aux sites des rseaux dont le prfixe est de taille 48 bits, ce qui permet ces sites de pouvoir adresser des sous-rseaux de prfixe de taille 64 bits. Cette structure hirarchique permet de pallier un des problmes majeurs du protocole IPv4, savoir lexplosion de la taille des tables de routage des routeurs des dorsales IP.

30

B. La multidiffusion (multicast) en IPv6


Une adresse multicast ne dsigne pas une interface mais un ensemble dinterfaces. Un couple (adresse multicast, numro de port) dsigne un groupe multicast ou bien encore un groupe de multidiffusion. Lorsquune application sabonne un groupe de multidiffusion elle reoit toutes les donnes mises par tous les membres du groupe et linverse lorsquelle met des donnes destination de ce groupe tous les membres du groupe reoivent ces donnes. Le multicast est donc une technologie tout fait adapte un contexte de diffusion de groupe comme cest le cas pour la visioconfrence. En multicast, lorsquune source met des donnes destination dun groupe les quipements rseau concerns rpliquent les donnes de telle sorte que toutes les stations membres de ce groupe reoivent une copie de ces donnes. Prenons lexemple suivant : une source met de la vido et 4 ordinateurs (C1, C2, C3 et C4) veulent recevoir le flux vido. Sur le schma de gauche nous pouvons observer la transmission des paquets en unicast et sur le schma de droite nous pouvons observer la transmission des paquets en multicast.

Figure 5 : Diffrences entre une transmission en unicast et une transmission en multicast.

Lutilisation du multicast permet donc de raliser une conomie de bande passante puisquun seul exemplaire des donnes est mis par la source. Concernant les protocoles de routage utiliss par le multicast, on peut considrer deux niveaux distincts : les protocoles au niveau intra-domaine et les protocoles au niveau interdomaine. Au niveau intra-domaine on a encore deux types de protocoles : les protocoles au niveau lien local et les protocoles au niveau inter-liens.

31

1. Protocoles de routage au niveau local


Au niveau local, le protocole de routage utilis pour le multicast IPv6 est MLD (Multicast Listener Discovery, dcouverte de rcepteurs multidiffusion) qui remplace le protocole IGMPv2 (Internet Group Management Protocol version 2, protocole de gestion de groupes version 2) dIPv4. Ce protocole permet aux ordinateurs de rendre compte aux routeurs de sortie de leur rseau de leur appartenance un groupe multicast. Les applications utilisent donc MLD pour sabonner ou se dsabonner un groupe multicast. Les messages IGMPv3 sont vhiculs dans des paquets ICMPv6 (Internet Control Message Protocol, protocole de message de contrle Internet pour IPv6). Sur chaque rseau un routeur est lu par un mcanisme dlection et ce sera lui qui traitera les appartenances des ordinateurs aux diffrents groupes multicast.

Voici la structure dun message MLD :

type (8 bits)

code (8 bits)

checksum (16 bits) rserv (16 bits)

dlai maximum de rponse (16 bits) adresse multicast IPv6 (128 bits)

Le champ type permet de distinguer les 3 types de messages MLD: Multicast Listener Report : (type = 131 en dcimal) Ce message est envoy au groupe de tous les routeurs multicast sur le lien (adresse multicast ff02 ::2). Quand une application dsire sabonner un groupe elle va mettre un message multicast listener report avec un champ adresse multicast IPv6 contenant laddresse multicast du groupe dont elle veut faire partie. Le routeur qui reoit ce message rajoute une entre dans sa table MLD si elle nexistait pas dj et commence diffuser sur le rseau local les donnes destination de ce groupe. Multicast Listener Done : (type = 132 en dcimal) Quand une application veut quitter un groupe multicast, elle envoit ce message au groupe des routeurs multicast (adresse ff02 ::2) en spcifiant dans le champ adresse multicast IPv6 ladresse IPv6 du groupe quelle veut quitter. Multicast Listener Query : (type = 130 en dcimal) Il y a deux types de messages Multicast Listener Query qui diffrent par le contenu de leur champ adresse multicast IPv6 General Query : ce type de message est utilis par le routeur pour connatre tous les groupes auxquels sont abonnes les applications utilisant le multicast sur le rseau local. Dans ce cas le champ adresse multicast IPv6 possde la valeur 0. Ce message est envoy au groupe multicast de toutes les stations sur le rseau local (ff02::1) Lorsquelles reoivent ce message MLD les stations dclenchent un compte rebours avec une valeur alatoire pour chacun des groupes multicast auxquels elles sont abonnes. Quand le compte rebours correspondant un groupe multicast est coul, la station envoie un message Multicast Listener Report (rapport de rcepteur multicast) pour ce groupe si aucun 32

rapport na t envoy pour ce groupe auparavant. Ainsi seule une rponse par groupe est donne.

2. Protocoles de routage inter-liens


Les rseau locaux qui supportent le multicast peuvent se grouper en domaines afin dchanger entre eux du trafic multicast. En pratique on constate que sur une mme zone gographique des rseaux locaux sont administrs de manire cohrente au sein dun mme domaine. Les protocoles de routage multicast inter-liens ont t developpes pour rpondre aux problmes suivants : Comment atteindre les membres des diffrents groupes de diffusion rpartis sur tout un domaine (arbres de diffusion) ? Comment conomiser de la bande passante en nacheminant les paquets multicast que l o il y a des abonns ? Comment optimiser les changes entre routeurs ? (vaut-il mieux annoncer les groupes que lon veut recevoir o les groupes que lon ne veut pas recevoir ?) On peut distinguer deux familles de protocoles multicast diffrentes : qui rsultent de deux approches

Les protocoles de routage orients forte densit de rcepteurs (dense mode, mode dense) comme DVMRP (Distance Vector Multicast Routing Protocol, protocole de routage multicast a vecteur de distance) qui a aujourdhui presque disparu et PIMDM (Protocol Independant Multicast Dense Mode, multicast indpendant du protocole mode dense) qui est plus rcent. Ces protocoles partent du principe quil y a des membres de groupe multicast sur la plupart des rseaux et que labsence de membres sur un rseau constitue lexception. Dans un domaine PIM-DM, les routeurs vont inonder priodiquement tout le domaine en transmettant tous les flux multicast leurs voisins. Les routeurs qui ne veulent pas recevoir le trafic multicast demandent leurs voisins de cesser de leur envoyer ces flux (mcanisme de pruning ou dlagage). Cest de cette manire quest cr larbre de diffusion. Le problme est quun routeur qui ne dsire pas recevoir de trafic multicast va passer son temps demander quon cesse de lui envoyer ces flux multicast, cest pourquoi cette approche a disparu au profit du mode clairsem (sparse mode). Les protocoles de routage orients faible densit de rcepteurs (sparse mode, mode clairsem) comme PIM-SM (Protocol Independant Multicast-Sparse Mode, multicast indpendant du protocole, mode clairsem). Ces protocoles supposent au contraire des prcedents que les membres de groupes multicast sont trs disperss et peu nombreux par rapport au nombre de rseaux desservis. Un ou plusieurs points de rendez-vous sont configurs dans le domaine PIM. Ces points de rendez-vous connaissent lensemble des sources et des rcepteurs des diffrents groupes du domaine, ainsi ils peuvent permettre aux sources et aux abonns de se rencontrer sans inonder le rseau.

Pour des applications de visioconfrence lexprience montre que les rcepteurs sont peu nombreux et souvent trs espacs, cest pourquoi le protocole PIM SM est le plus adapt et cest ce protocole qui est utilis dans le M6Bone, le rseau exprimental IPv6 multicast.

33

Dans un contexte multipoints il est ncessaire de disposer dune entit qui recense les diffrents participants la session et qui centralise les informations relatives la session. Le principe du multicast est donc de dplacer du niveau applicatif au niveau rseau lentit centralisant les informations relatives une session. Ainsi les concepteurs dapplications multipoints peuvent se concentrer sur les caractristiques intrinsques des logiciels sans avoir dvelopper chaque fois les mmes mcanismes de gestion de session.

34

C. Le M6Bone
1. Prsentation
Le M6Bone (Multicast IPv6 Backbone, pine dorsale multicast IPv6) est un rseau multicast IPv6 exprimental. Son dploiement a dbut en juin 2001 avec le concours de lassociation Aristote, du G6 (groupe dexperts franais dIPv6) et du GIP Renater. Lobjet de ce dploiement est doffrir aux sites intresss une connectivit multicast IPv6 afin de tester et de dvelopper les applications et les quipements relatifs ce protocole. Enfin le but final de ce projet est de dployer un service avanc du protocole IPv6 afin de participer la normalisation de ce protocole.

2. Topologie du M6Bone
A lheure actuelle plus de 25 sites sont relis au M6Bone, parmi lesquels des partenaires du projet ATHENA comme lESMT Dakar, luniversit de Guadalajara ou bien encore le DESS Applications des Rseaux et de la Tlmatique luniversit Paris 7. Etant donn que peux dquipements implmentent aujourdhui le multicast en IPv6, les diffrents sites composant le M6Bone sont relis entre eux par des tunnels IPv6 dans IPv6 ou bien IPv6 dans IPv4, c'est--dire que chaque paquet multicast IPv6 est encapsul dans un paquet IPv4 unicast ou bien dans un paquet IPv6 unicast, le choix du tunnel dpendant de la connectivit disponible. Ce mcanisme permet donc de faire transiter du trafic multicast en IPv6 par des quipements rseau qui ne supportent pas ce protocole. Le cur du M6Bone est hberg au GIP Renater, il sagit dune distribution FreeBSD installe sur un pentium III qui joue le rle de RP (Rendez-vous Point, point de rendez-vous).

35

Voici les cartes du M6Bone au niveau national, europen et mondial :

Figure 6 : Carte du M6Bone lchelle nationale.

Figure 7 : Carte du M6Bone lchelle europenne.

36

Figure 8 : Carte du M6Bone lchelle mondiale.

37

D. Linterface de programmation dapplications en multicast IPv6 en C/C++ sous Unix/Linux


Afin de comprendre le code source de certaines applications utilisant le multicast IPv6 jai t amen me documenter au sujet des fonctions rseaux utilises par celles-ci. Cette section a donc pour objet de prsenter linterface de programmation dapplications en multicast IPv6 pour les environnements Unix/Linux.

1. Linterface de programmation dapplications en IPv6


Les constantes suivantes ont t dfinies : Famille de protocoles (Protocol Family) : PF_INET6 Famille dadresses (Address Family) : AF_INET6 Voici les structures de donnes propres au protocole IPv6:

Structure de la socket: sockaddr_in6

struct sockaddr_in6 { u_short sin6_family; u_short sin6_port; u_long sin6_flowinfo; struct in_addr6 sin6_addr; };

/* /* /* /*

AF_INET6 */ Transport layer port # */ IPv6 flow label */ IPv6 address */

Structure de l'adresse: in6_addr

struct in6_addr { u_char s6_addr[16]; };

/* IPv6 address */

2. Linterface de programmation dapplications en multicast IPv6


Pour crer et initialiser des sockets ont procde de manire similaire quen unicast, cest-dire laide de lappel systme socket(). // Dclaration de la socket struct sockaddr_in6 s; // Cration de la socket

38

s = socket(PF_INET6, SOCK_DGRAM, 0); /* * Initialisation de la socket */ // Rservation despace en mmoire pour la socket memset(&sock_w, 0, sizeof(sock_w)); // La famille de protocole de la socket est initialise avec la constante reprsentant la famille du protocole IPv6 s.sin6_family = AF_INET6; // On initialise la valeur du port que va utiliser la socket avec la valeur dsire, ici 2222 s.sin6_port = htons(2222); // On indique la socket ladresse IP du groupe multicast quelle va utiliser inet_pton(AF_INET6,ff0e:2222,s.sin6_addr.s6_addr); // A present on peut spcifier certains paramtres la socket laide de lappel systme setsockopt() Par dfaut le Hop Limit des paquets qui seront mis par la socket est un, on peut modifier cette valeur par un appel la fonction setsockopt() : unsigned int hlim = 255; /* valeurs possibles: 0 255 */ setsockopt( s, IPPROTO_IPV6, IPV6_MULTICAST_HOPS,&hlim, sizeof(hlim) ); Rception d'un paquet multicast Avant qu'une machine puisse recevoir des paquets multicast, elle doit tre membre du groupe. L'application peut demander la machine sur laquelle elle s'excute de joindre le groupe multicast en utilisant l'option socket IP6_ADD_MEMBERSHIP : if (setsockopt(sdr, IPPROTO_IP6, IP6_ADD_MEMBERSHIP, (void *) &imr, sizeof(struct ip_mreq)) < 0) { perror("setsockopt IP6_ADD_MEMBERSHIP"); exit(1); } o imr est une structure de type ip6_mreq, dfinie dans le fichier /usr/include/netinet/in.h, qui est dcrite comme suit :
struct ip6_mreq { struct in6_addr imr_multiaddr; /* groupe multicast auquel sabonner */ struct in6_addr imr_interface; }

/* 39

* allocation de la structure imr */ struct ip6_mreq imr; /* * initialisation de la structure imr */ imr.imr_multiaddr.s6_addr = inet6_addr(GROUP); imr.imr_interface.s6_addr = htonl(INADDR_ANY); En mode rception il est aussi ncessaire d'effectuer une opration bind() entre la socket et son descripteur : /* * opration bind */ if (bind(sdr, (struct sockaddr *)&sock_r, sizeof(sock_r)) < 0) { perror("bind"); exit(1); } La rception proprement dite des donnes se ralisera par un appel la fonction recvfrom() travers l'interface socket. /* * rception des datagrammes */ while (1) { cnt = recvfrom(sdr, buf, sizeof(buf), 0, (struct sockaddr *)&sock_r, &len_r); if (cnt < 0) { perror("recvfrom"); exit(1); } else if (cnt == 0) { /* fin de transmission */ break; } printf("%s\n", buf); /* affichage du message */ }

40

Emission de paquets multicast for(;;) { // La fonction sendto permet de procder lenvoi dun datagramme dont les donnes sont celles contenues dans le tableau de caractres buf cnt = sendto(sdw, buf, strlen(buf), 0, (struct sockaddr *) &sock_w, len_w); if (cnt < 0) { perror("sendto"); exit(1); } } Ainsi on peut constater que linterface de programmation dapplications en multicast IPv6 diffre peu de celle utilise pour le multicast IPv4 car si les constantes et les structures de donnes changent les fonctions restent les mmes.

41

E. Les protocoles de transport de trafic temps rel, RTP et RTCP


Les applications en temps rel n'ont pas les mmes besoins que les applications de transfert de donnes. En effet, lors de la diffusion d'une vido sur IP, si certains paquets se perdent il est inutile de les mettre nouveau et la caractristique "temps rel" de ce type d'application est due au fait qu'il est ici plus important de recevoir les donnes au bon moment que de recevoir toutes les donnes. Un protocole de transport a donc t dfini pour cette tche : RTP (Real Time Protocol, protocole temps rel). Celui-ci fait partie des protocoles qu'on appelle de "nouvelle gnration" car adapt tout spcialement un type d'application : la diffusion d'informations multimdia interactives sur l'internet. Ainsi RTP propose des services particuliers comme le transport d'information compresse sous diffrents formats, le numrotage d'une squence de paquets, l'estampillage et une surveillance de bonne rception de donnes multimdia. Quant RTCP, il sagit dun protocole destin assurer le contrle du trafic. Il permet lmetteur de rcolter des informations au sujet de la qualit de la transmission. Chacun de ces deux protocoles utilise un port spar d'une paire de ports. RTP utilise le port pair et RTCP le port impair immdiatement suprieur.

1. RTP
RTP est un protocole de transport de donnes multimdia ou temps rel. Il ne fournit aucune garantie de qualit de service et se place gnralement au dessus d'UDP1 pour fonctionner. Ainsi RTP ne garantie pas une diffusion ordonne des donnes mais aide l'application reconstruire une squence de donnes multimdia grce ses fonctions de numrotage et d'estampillage. Il est important de savoir que RTP est destin transporter un seul type d'information la fois, par exemple lors de la diffusion d'une vido, la vido et le son utiliseront deux flux de donnes RTP diffrents et le multiplexage d'informations diverses devra plutt tre assur par un protocole sous-jacent (le port destination dans UDP par exemple).Voici quelques dfinitions qui permettront de mieux comprendre ce protocole.

Donnes RTP : Il s'agit des informations transportes par le protocole, par exemple du son ou de la vido encode de diffrentes manires. Paquet RTP : Un paquet RTP contient une entte fixe RTP,une liste pouvant tre vide des sources participant au paquet et les donnes RTP. Typiquement un paquet du protocole sous-jacent (UDP) contient un seul paquet RTP. Port : L'abstraction permettant un protocole de transport de diffrencier des destinations multiples au sein d'un mme ordinateur. SSRC : "Synchronization source", il s'agit de l'identifiant unique d'un flux de donnes RTP afin d'tre indpendant de l'adresse rseau du protocole sous-jacent. CSRC : "Contributing source", certaines applications qui sont appelles des mixers combinents plusieurs flux de donnes RTP en un seul, pour savoir d'ou proviennent

User Datagram Protocol, protocole de datagrammes en mode utilisateur.

42

les diffrents flux, une liste de sources ayant contribu au flux est insre dans l'entte du paquet RTP. Le format d'un paquet RTP est le suivant : V=2 P CC M PT Numro de squence Estampille Identificateur SSRC Identificateurs CSRC ... Donnes ... Chaque ligne fait 32 bits, les 12 premiers octets sont toujours prsents dans un paquet RTP alors que la liste des CSRC est seulement prsente si elle t insre par un mixer. La signification des diffrents champs est la suivante :

Version (V) : 2 bits Identifie la version de RTP, la dernire tant la numro 2. L'utilitaire vat (anctre de Vic) utilisait la version 0 de RTP et le premier draft (brouillon) sur RTP dfinissait la version 1 de RTP. padding (P) : 1 bit Si ce bit est pos alors le paquet RTP contient un ou plusieurs octets de remplissage la fin du paquet qui ne font pas partie des donnes, le dernier octet du padding (bourrage) indique la taille de celui-ci en octet. extension (X) : 1 bit Si ce bit est pos alors l'entte fixe RTP est suivie d'une entte d'extension qui peut tre dfinie par l'utilisateur. CSRC Count (CC) : 4 bits Indique le nombre d'identifiants CSRC qui suivent l'entte fixe RTP. marker (M) : 1 bit L'interprtation de ce bit est laiss l'application, par exemple elle peut servir dfinir le moment ou l'on change d'image lors de la diffusion d'une vido payload type (PT) : 7 bits Indique le format des donnes RTP et donc leur interprtation par l'application. Numro de squence : 16 bits Ce numro est incrment de un chaque paquets de donnes RTP envoy, il peut tre utilis pour dtecter des pertes ou reconstruire une squence de paquets. Estampille : 32 bits L'estampille contenue dans le paquet RTP indique l'instant auquel le premier octet de donnes t encapsul dans le paquet RTP. Elle doit tre drive d'une horloge et doit augmenter de faon monotone et linaire pour permettre une synchronisation. SSRC : 32 bits Identifie de faon unique la source sur laquelle il faut se synchroniser. liste de CSRC : de 0 15 lments de 32 bits chacun le nombre de CSRC est donn par le champs CC. les CSRC sont insrs par les mixers.

43

Le format des paquets RTP doit rester simple et il est dconseill d'essayer de faire du multiplexage sur les diffrents formats de donnes pour les raisons suivantes : 1. Si deux flux de donnes partagent le mme paquet RTP et donc le mme identificateur SSRC et qu'il faille changer le type d'encodage de l'un des flux de donnes il ne sera pas possible d'identifier quel flux de donnes a chang son encodage 2. Par dfinition un identificateur SSRC est relatif un seul espace-temps et une seule numrotation des paquets. Si on multiplexe plusieurs types de donnes il faudrait disposer de plusieurs temporisations et plusieurs numrotations pour pouvoir identifier le flux de donnes ayant subit des pertes. 3. Comme on va le voir plus loin, les rapports de rception RTCP sont relatif qu'a un seul timing et une seule numrotation par SSRC et ne prcisent par le type de flux de donnes. 4. Un mixer ne sait mixer qu'un seul type de donnes. 5. Un paquet RTP contenant plusieurs types de donnes rendrait difficile : l'utilisation possible de diffrentes ressources rseau en envoyant par exemple les paquets contenant de la vido sur un lien diffrent de ceux contenant du son, le choix de la rception d'un sous ensemble des donnes multimdia (seulement le son par exemple) Ainsi l'utilisation d'une SSRC unique par mdia permet de remdier aux trois premiers points. On voit que la partie qui transporte les donnes du protocole RTP est assez simple, en effet toute sa complexit se situe dans le contrle "temps rel" de ses donnes.

2. RTCP
RTCP est un protocole qui permet d'obtenir des informations diverses sur une session RTP en cours : nombre de participants, qualit de rception, dpart ou arrive d'un nouveau participant. C'est donc un protocole de Feedback qui se doit d'tre extensible par rapport au nombre participants une session, qu'ils soient dix ou quelques millions. Ainsi RTCP transmet priodiquement des paquets de contrle tous les participants d'une session. RTCP a quatre rles : 1. La fonction premire de RTCP est de fournir un retour sur la qualit de la distribution des donnes. Ce retour peut tre utile pour l'adaptation dynamique de l'encodage lors d'une transmission et permet par exemple de dterminer si une mauvaise rception est globale ou locale une session.

2. Le protocole RTCP permet de transporter un identificateur qu'on nomme CNAME pour "canonical name". En effet SSRC peut changer lors d'une session par exemple si l'on se rend compte d'une collision de SSRC alors que CNAME ne change pas.

44

3. Les deux premires fonctions ncessitent que tous les participants une session RTP doivent envoyer des paquets RTCP ainsi la bande passante utilise par les messages RTCP doit tre extensible avec le nombre de participants une session. Si chaque participant a une session envoie des paquets RTCP aux autres, il est possible de connaitre le nombre de participants et ensuite de calculer le dbit auquel il faut envoyer des messages de contrle.

4. La dernire fonction de RTCP est optionnelle et permet de fournir des informations de session minimales comme par exemple l'identification des participants une session. C'est particulirement utile pour des applications ou il n'y a que trs peu de contrle des participants une session. Les diffrents types de paquets RTCP sont les suivants :

SR : Sender Report indique les statistiques de rception et d'mission des participants une session qui envoient des donnes. RR: Receiver Report indique les statistiques de rception des participants une session qui n'envoient pas des donnes et dont les statistiques n'excdent pas 31 sources. SDES : les lments dcrivant une source BYE : indique la fin d'une participation. APP : fonctions spcifiques l'application.

De la mme manire que pour le protocole RTP chaque paquet RTCP contient une partie fixe et une partie variable, plusieurs paquets RTCP peuvent tre concatns dans un paquet de la couche infrieure (UDP par exemple) mais le premier paquet RTCP contenu dans un paquet de la couche infrieure doit toujours contenir des informations relatives aux statistiques de transmission ou de rception (paquets SR et RR) mme lorsque des donnes ne sont pas reues ou transmises.

45

F. La vido numrique
1. Codage de la couleur
Au dbut de la chane de codage un capteur convertit les signaux lumineux en signaux lectriques, on obtient alors un premier signal cod en RVB (Rouge, Vert, Bleu). Cette mthode se base sur le fait que lon peut recrer une impression physiologique satisfaisante pour lil humain, pour nimporte quelle couleur, en superposant du rouge, du vert et du bleu dintensit adquate.

Par la suite, afin de rduire la quantit dinformation ncessaire pour coder le signal vido, on utilise une technique de matriage qui consiste dcomposer le signal vido en un signal de luminance1, Y, et deux signaux de chrominance2, un rouge et un bleu, Cr et Cb. Les composantes de chrominance sont obtenues par diffrence du rouge avec la luminance (Cr = R Y) et par diffrence du bleu avec la luminance (Cb = B Y). Le signal de chrominance vert, Cv, est obtenu de la faon suivante : Cv = Y (Cb + Cr). Aprs le matriage une autre opration consiste nutiliser quune composante de chrominance, C, et une composante de luminance, Y. On obtient le signal de chrominance C par codage des deux composantes diffrentielles Cr et Cb. Ce signal est appel S-Vido et cest lui qui sera utilis ensuite par les diffrents standards dimage: PAL (Phase Alternation Line, ligne alterne en phase), NTSC (National Television System Commitee, Comit national du systme tlvisuel) et SECAM (Systme sEquentiel Couleur A Mmoire).

Figure 9 : Les diffrentes tapes pour coder un signal vido.

1 2

Intensit lumineuse dun signal vido. Cest la couleur dun signal vido, compose de la teinte et de la saturation.

46

2. Les formats dimages vido


Avec lavnement de la tlvision deux standards de formats dimages vido sont apparus : le NTSC pour les Etats-Unis et une grande partie de lAsie et le PAL pour lEurope ou bien un driv du PAL comme le SECAM en France. Ces deux familles regroupent chacune une diversit de variantes qui ont en commun la frquence de rafrachissement et le nombre de lignes qui composent limage. Pour des raisons techniques il a t choisi comme base de temps la frquence du rseau lectrique du pays concern. Ainsi aux Etats-Unis, le secteur tant en 110V 60Hz, la tlvision utilise un rafrachissement de 60Hz. En France nous sommes en 220V 50Hz, le SECAM utilise donc un rafrachissement de 50Hz. Le standard NTSC propose une image de 480 lignes tandis que le standard PAL propose une image de 576 lignes. Par la suite, avec lavnement de la micro-informatique est apparu le format VGA (Video Graphics Array, tableau graphique vido) proposant une dfinition de 320x200 en 256 couleurs ou une dfinition de 640x400 en 16 couleurs, puis le SVGA (Super VGA, super VGA) proposant 4 dfinitions supplmentaires : 800x600, 1024x768, 1280x1024, 1600x1200 ainsi quune palette de couleurs allant jusqu 16 millions de couleurs. Enfin avec le dveloppement des applications de vidoconfrence est apparu le besoin de trouver un format commun toutes ces applications et cest lUIT-T1 qui a dfini, en 1990, deux formats couvrant les besoins exprims dans les domaines de la visiophonie et de la visioconfrence : les formats CIF (Common Intermediate Format, Format Commun Intermdiaire) et QCIF (Quarter CIF, quart de CIF). Le format dimage CIF est caractris par 352x288 points pour la luminance et par 176x144 points pour la chrominance. Le balayage est squentiel et la frquence dimage est de 29,97 Hz. Le format dimage QCIF est caractris par 176x144 points pour la luminance et par 88x72 points pour la chrominance, avec une frquence dimage sous-multiple de celle du format CIF. Par la suite le format 4CIF est apparu, il correspond au double du format CIF et il est caractris par une taille dimage de 704x576 points pour la luminance et par 352x288 points pour la chrominance.

Union Internationale des Tlcommunications Secteur de normalisation des Tlcommunications

47

3. Les formats de compression de signaux vido


Afin de rendre compte dun mouvement fluide il est ncessaire de transmettre au moins 25 images par seconde. Supposons que chaque image ait une dimension de 800x600 et que chaque pixel soit cod sur 8 bits, il faut alors un dbit de : 25 x 800 x 600 x 8 = 96 Mbit/s ce qui correspond au dbit de la tlvision lorigine. Pour la transmission par lInternet du signal vido numrique il est donc ncessaire dutiliser des techniques de compression afin de rduire le dbit ncessaire. Le principe utilis est le suivant : la source procde un encodage du signal vido, puis au niveau du rcepteur un dcodage du signal vido est ralis. Diffrents formats de compression ont donc t normaliss, parmi lesquels le fameux MPEG (Motion Picture Experts Group, groupe dexperts en images animes), nanmoins lUIT-T a aussi mis des normes de codage vido pour des applications de visiophonie et de vidoconfrence comme la norme H.261 qui sapplique des services audiovisuels utilisant des liaisons de p x 64 Kbit/s (la norme H.261 est donc tout particulirement adapte pour des services audiovisuels utilisant des liaisons RNIS1) ou la norme H.263 qui vise transfrer de la vido sur des liaisons bas dbit. Bien que les deux normes de codage vido diffrent, leur principe reste le mme. Chaque image est dcoupe en blocs, puis on applique une transforme en cosinus discrte chacun des blocs pris sparment. La sortie de chaque transforme est alors une matrice de coefficients transforms. Ces normes de codage permettent donc de transmettre des images animes sur des liaisons faible dbit (moins de 128 Kbit/s).

Rseau Numrique Intgration de Services

48

G. Les outils du M6Bone


1. Vic (Video Conference)
a) Prsentation

Le logiciel Vic est un logiciel de visioconfrence permettant dmettre et de recevoir de la vido en unicast ou en multicast en utilisant diffrentes normes de codage vido comme les normes H261, H263 ou H263+. Ce logiciel est disponible pour Windows 98, 2000 et XP ainsi que pour les systmes dexploitation Unix/Linux.

b)

Historique

Avec lapparition du multicast dans les rseaux acadmiques au dbut des annes 90, des chercheurs ont commenc dvelopper des outils exploitant les fonctionnalits offertes par ce protocole. Ainsi des membres de lINRIA (Institut National de Recherche en Informatique et Automatique) ont-ils dvelopp IVS (INRIA Videoconferencing System, systme de vidoconfrence de lINRIA) un logiciel de vidoconfrence dont la premire version a t diffuse en 1992.

Figure 10 : Aperu de linterface du logiciel IVS.

49

Inspir par le logiciel IVS, Vic a t dvelopp dans les annes 90 par le groupe de recherche Multimdia et Rseaux (Network and Multimedia Research Group) de UCL (University College of London).

Figure 11: Interface du logiciel Vic.

Sur la figure 11 on remarque sur la gauche linterface principale du logiciel Vic dans laquelle on peut voir tous les membres de la session qui mettent. En bas de linterface principale se trouve le bouton Menu qui permet notamment de spcifier les paramtres dmission de la vido. En cliquant sur limage dun des participants on peut agrandir sa fentre comme on peut le voir sur la droite de limage. La fentre en bas droite prsente une fonctionnalit intressante de Vic pour procder des tests puisque celui-ci permet de transmettre sous Linux une partie de lcran, ici il sagit dune machine Linux de Konstantin Kabassanov au LIP6. La version de Vic dveloppe par UCL est une des principales versions de ce logiciel et cest cette version qui est essentiellement utilise dans la communaut acadmique en France. Dautres versions ont t dveloppes comme par exemple la version Access Grid de Vic

50

(grille de confrences utilise par des universitaires aux Etats-Unis) afin de proposer des fonctionnalits particulires. Pour des raisons budgtaires UCL a du se dsengager du dveloppement de Vic, cest pourquoi ce logiciel nvolue presque plus alors mme quil reste des modifications apporter et des bogues corriger, cependant comme ils nous lont affirm lors dune confrence tlphonique ils sont tout fait prts incorporer dans leur version des modifications issues de la communaut acadmique. Dans les annes 90 Steve McCanne, un tudiant de UCL ayant contribu au dveloppement de Vic, est parti prparer sa thse luniversit de Berkeley en Californie et a initi le projet OpenMash, ce projet visant dvelopper des outils de visioconfrence utilisant le multicast comme ceux ayant t dvelopps par le groupe de recherche Multimdia et Rseaux de UCL. Le projet OpenMash a donc dvelopp sa propre version de Vic en reprenant une grande partie du code de la version initiale. Ces deux versions du logiciel Vic c onstituent les deux principales versions de ce logiciel et elles sont compatibles entre elles, cest--dire quon peut organiser une vidoconfrence impliquant des participants utilisant la version UCL de Vic et des participants utilisant la version OpenMash de Vic. Le projet OpenMash propose un site Internet disponible ladresse www.openmash.org ainsi que des listes de diffusion permettant la communaut des utilisateurs et des dveloppeurs de leurs logiciels de partager leurs connaissances et de contribuer leur dveloppement. Il y a deux ans, M. Konstantin Kabassanov, un chercheur du LIP6 (Laboratoire dInformatique de luniversit Paris 6), a port la version UCL de Vic pour IPv6. Cette version est disponible sur son site personnel ladresse www.kabassanov.com. En ce qui concerne la version OpenMash de Vic, une adaptation de ce logiciel pour IPv6 a t ralise il y a deux ans par M. David Pate, un universitaire franais de luniversit de Strasbourg mais ses modifications nont pas t intgres la distribution officielle du Vic dOpenMash, la contribution au dveloppement dIPv6 ntant pas considre comme une priorit par la plupart des membres de la communaut acadmique aux Etats-Unis.

c)

Utilisation

Pour lancer Vic en multicast la syntaxe est (en ligne de commande) : vic t 64 adresse/port O adresse est ladresse multicast du groupe sur lequel on veut mettre et port le numro de port du groupe sur lequel on veut mettre. Le paramtre -t est optionnel, il permet de spcifier le hop limit (nombre maximum de nuds du rseau que peuvent traverser les donnes) qui est 16 par dfaut. Limiter la valeur du hop limit permet de conscrire la porte dune mission une certaine zone gographique.

51

Figure 12 : Menu de configuration de la transmission.

Sur la figure 12 on peut voir sur la droite le menu permettant de renseigner les paramtres dmission de la vido. Les deux barres de dfilement en haut permettent de spcifier le dbit utilis en Kbit/s et le nombre dimages par seconde que lon veut mettre. En dessous, dans la partie Encoder , on spcifie le priphrique que lon veut utiliser ainsi que le format dencodage et la taille des images quon va transmettre. Pour utiliser Vic en unicast il faut taper la commande suivante : vic adresse/port O adresse dsigne ladresse IP de la personne avec laquelle on veut faire une visioconfrence et port un numro de port.

52

On remarque que contrairement lutilisation de Vic en multicast les deux participants la visioconfrence lancent Vic avec chacun une adresse diffrente (celle de leur correspondant) en paramtre. Le numro de port utilis doit par contre tre le mme pour les deux personnes. Dans le cas de lutilisation de Vic en unicast seules deux personnes peuvent participer la visioconfrence, le multicast constituant lentit logicielle permettant de rpertorier lensemble des participants dune mme session. Lutilisation de Vic en unicast est surtout utilise des fins de tests, ou bien encore pour organiser une visioconfrence avec une personne qui ne dispose pas du multicast sur son rseau.

d)

Fonctionnement interne du logiciel

Vic est un logiciel crit en Tcl/Tk1 pour ce qui concerne la partie interface utilisateur et en C++ pour ce qui concerne la partie traitement de linformation. Pour des questions de portabilit la version de Tcl/Tk utilise par Vic est une version fournie par UCL. Vic utilise galement la librairie common dveloppe par UCL et qui fournit notamment des fonctions rseau de bas niveau. (1) Interactions entre la partie Tcl/Tk et la partie C++

Linteraction entre linterface utilisateur crite en Tcl/TK et la partie C++ se fait de la faon suivante : dans certains scripts Tcl, des objets C++ sont crs et sont reprsents par des variables. Par la suite les scripts Tcl peuvent envoyer des commandes aux objets C++ afin dinfluer sur leur comportement. Ces objets C++ qui peuvent tre manipuls dans des scripts Tcl sont tous des objets dont la classe hrite de la classe TclObject. Toutes les classes hrites de la classe TclObject hritent de la fonction command quils doivent redfinir, et cest cette fonction qui permet denvoyer des commandes aux objets C++ depuis des scripts Tcl. Par exemple dans le script tcl/ui-ctrlmenu.tcl qui est appel lorsque dans linterface de Vic on clique sur le bouton Menu afin de renseigner les paramtres dune mission vido on a la ligne suivante : set V(grabber) [$videoDevice open $ff] Cette ligne se dcompose en deux parties : tout dabord la partie entre crochets est interprte par linterprteur Tcl. $videoDevice est une variable Tcl qui reprsente un objet C++ dont la classe hrite de la classe InputDevice (dfinie dans le fichier video/deviceinput.cpp) selon le priphrique vido quon aura choisi et le systme dexploitation utilis. Par exemple dans le cas de lutilisation dune camra et dune carte dacquisition avec un systme dexploitation Linux, lobjet C++ reprsent par la variable $videoDevice sera de type v4lDevice (v4l est lacronyme de video 4 linux, lAPI2 de capture dimages sous Linux).

Tcl est un langage de scripts tandis que Tk (Tool Kit, boite outils) est une librairie graphique. Dans des programmes Tcl/Tk, les scripts Tcl appelent des widgets Tk (des composants graphiques) ce qui permet de crer rapidement des applications disposant dinterface graphique. 2 Application Programming Interface, Interface de programmation dapplications

53

Linstruction $videoDevice open $ff signifie que la mthode command de lobjet $videoDevice est appele avec en paramtres les arguments open et $ff . Si on regarde le code de la fonction command de la classe v4lDevice on peut voir que si le premier argument est open , cela signifie quune ouverture sur le priphrique vido est ralise avec une rsolution gale $ff (ff = frame format, format dimage), de plus la valeur de retour de la fonction command est dans ce cas un objet de type v4lGrabber. Le rsultat de lvaluation de la partie entre crochets est donc un objet C++ de type v4lGrabber et, dans notre exemple, la premire partie de linstruction permet donc daffecter la variable $V(Grabber) un objet C++ de type v4lGrabber. De cette manire les scripts Tcl qui constituent linterface graphique de Vic peuvent commander les structures de donnes qui procdent au traitement de linformation ncessaire pour effectuer les captures dimages, lencodage et le dcodage de la vido ainsi que le dcoupage de linformation, lencapsulation dans des paquets IP et lenvoi de ces paquets sur le rseau. (2) Code source de Vic

Le code source du logiciel Vic se dcompose en quatre rpertoires. Le premier sappelle common , il contient les fonctions de la librairie common. Le deuxime rpertoire sappelle tcl-8.0 , il contient les sources de linterprteur Tcl1 fourni avec Vic et le troisime rpertoire sappelle tk-8.0 et contient les sources de la librairie graphique Tk. Linterprteur Tcl ainsi que la librairie graphique Tk sont intgrs la version UCL du logiciel Vic en raison du fait quau cours du dveloppement de Vic des problmes se sont poss car les utilisateurs avaient des versions diffrentes de Tcl et de Tk ce qui a conduit le laboratoire de UCL intgrer ces deux lments logiciels leur distribution de Vic. Enfin le dernier rpertoire sappelle vic et contient les sources des fichiers Tcl et C++ qui composent le coeur du logiciel Vic. Lorsquon veut apporter des modifications au logiciel Vic, la plupart du temps il suffit de modifier les fichiers sources contenus dans le rpertoire Vic, cest pourquoi je vais dcrire brivement les principaux lments de ce rpertoire. Le fichier main.cpp constitue le fichier principal du programme vic car cest celui qui contient la fonction main() qui est la premire fonction appele lors de lexcution de Vic. Le rpertoire codec/ contient les encodeurs et les dcodeurs vido, les principaux formats de compression utiliss par Vic tant les formats h261, h263 et h263+. Le rpertoire tcl/ contient tous les scripts tcl qui sont appels par le programme Vic. Le rpertoire net/ contient les fonctions rseaux de bas niveau permettant denvoyer et de recevoir des paquets IPv4 ou IPv6 en multicast ou en unicast. Le rpertoire rtp/ contient les fichiers source ncessaires quant lutilisation du protocole de transport RTP, ainsi que les dfinitions de diffrentes structures de donnes utilises lors de la transmission de la vido. Enfin le rpertoire video/ contient les dfinitions de structures de donnes permettant de raliser les captures dimages sur le priphrique vido.
1

Un interprteur est un logiciel qui lit un script et qui excute les instruction de ce script, ainsi tout script ncessite un interprteur pour sexcuter.

54

2. Rat (Robust Audio Tool, outil audio robuste)


Rat est au son ce que Vic est la vido, cest dire quil permet denvoyer et de recevoir du son en multicast ou en unicast. Pour rpondre aux contraintes temps rel Rat utilise comme Vic le protocole RTP au-dessus dUDP. Rat a t dvelopp par le groupe de recherche Multimdia et Rseaux de UCL tout comme Vic, mais la diffrence de Vic, UCL continue le dveloppement et le support de ce logiciel.s Deux versions de Rat sont actuellement disponibles sur le site Internet de lUCL, la premire, la version 3, est la version stable. Elle propose une qualit de son moyenne avec un chantillonnage 8 KHz et nest pas compatible avec IPv6 tandis que la seconde version, la version 4, est la version de test et propose un son de haute qualit avec un chantillonnage allant jusqu 48 KHz et une compatibilit avec IPv6. Toutes ces versions sont disponibles pour Windows et Unix/Linux. Voici un aperu de linterface de ce logiciel :

Figure 13 : Interface graphique du logiciel Rat.

Rat sutilise de manire similaire Vic : En multicast : rat adresse/port

55

o adresse dsigne ladresse du groupe multicast destination duquel on dsire mettre et port le port du groupe multicast. En unicast : rat adresse_correspondant/port o adresse_correspondant dsigne ladresse de la personne avec laquelle on dsire faire une vidoconfrence et port un port de la machine.

56

IV. Mises en oeuvre


A. Poursuite du projet ATHENA
1. Support technique auprs des partenaires du projet

ATHENA
Au dbut de mon apprentissage, mon prdcesseur au GIP Renater en charge du projet ATHENA, M. Lionel David, mavait mis en relation avec M. Netzahualcoyotl Ornelas Garca, un responsable rseau lUniversit de Guadalajara au Mexique. Etant en charge de la connectivit IPv6 de son dpartement lUniversit de Guadalajara, il tait dsireux de connecter son rseau au M6Bone afin de pouvoir bnficier du multicast IPv6, en effet si son rseau disposait dIPv6 unicast grce un tunnel tabli avec le CERN en Suisse, il ne disposait ni du multicast IPv4 ni du multicast IPv6. Jai donc commenc par lorienter vers le site www.m6bone.net qui est maintenu par lquipe IPv6 du GIP Renater et sur lequel se trouvent les informations techniques ncessaires pour se connecter. Par la suite et en communiquant par messagerie instantane jai pu laider tablir un tunnel entre son routeur multicast IPv6 et le routeur du GIP Renater qui constitue le coeur du M6Bone. Tout au long de lanne les membres de lUniversit de Guadalajara se sont montrs trs actifs dans le cadre du dploiement du multicast IPv6 puisque par la suite leur tour ils ont aid dautres universits au Mexique se raccorder au M6Bone. A loccasion de la confrence IPv6 Caen nous avons eu le plaisir de recevoir M. Netzahualcoyotl Ornelas Garca qui a effectu une prsentation laquelle ont assist distance des membres de lquipe IPv6 de lUniversit de Guadalajara grce la retransmission de la confrence en multicast IPv6.

2. Maintien du contact avec les partenaires du projet ATHENA


En septembre 2002 nous avons reu au GIP Renater Redouane Merrouch qui est ladministrateur du MARWAN, ce qui nous a permis de faire le point sur la situation des rseaux de la recherche au Maroc. Au cours de cette runion M. Merrouch nous a fait part de son dsir de sensibiliser les membres du gouvernement au besoin de dvelopper les rseaux de la recherche au Maroc. Les capacits actuelles en terme de dbit du rseau MARWAN ne nous permettent pas encore de raliser des expriences concrtes avec les membres de la communaut acadmique marocaine, nanmoins lobjectif est de garder le contact en prvision du futur. M. Merrouch nous a galement prsent le projet EUMEDCONNECT auquel participe le MARWAN et qui vise dvelopper les rseaux de la recherche dans les pays du pourtour de la Mditerrane. Concernant le Mexique, nous avons reu au GIP Renater au dbut de lanne deux ingnieurs de lUniversit de Guadalajara, Arturo Gmez Garca et Len Felipe Rodrguez

57

Jacinto, qui se rendaient une confrence en Espagne et qui ont fait un dtour par Paris pour nous rendre visite. Ceci nous a permis de les recevoir et de renforcer notre contact avec cette universit dont le personnel est manifestement trs motiv et comptent. Deux fois par an une confrence est organise sur le thme dIPv6 par lquipe IPv6 du GIP Renater, et chacune de ces occasions jai t charg de prendre contact avec les partenaires du projet ATHENA afin de les inviter, mais aussi de les aider trouver un hbergement, ou bien encore de leur proposer un financement de leur voyage par lassociation Aristote, en effet il est trs important de maintenir les relations avec les partenaires du projet ATHENA et les confrences IPv6 constituent une trs bonne occasion de se runir rgulirement.

58

B. Mise en oeuvre de la passerelle IPv4 multicast IPv6 multicast


Le jour mme de mon arrive au GIP Renater jai t amen installer sur une machine ddie (un FreeBSD) la passerelle IPv4 multicast IPv6 multicast dveloppe par Luc Beurton luniversit Bretagne Sud. Cette passerelle sinscrit parmi les mcanismes de transition de IPv4 vers IPv6 puisquelle permet au monde multicast IPv4 et au monde multicast IPv6 dinteroprer. Son mcanisme est le suivant : on lance la passerelle avec en paramtres les adresses dun groupe multicast IPv4 et dun groupe multicast IPv6. La passerelle sabonne alors au groupe multicast IPv4 et rmet toutes les donnes quelle reoit en provenance de ce groupe destination de ladresse du groupe IPv6 multicast. Inversement, toutes les donnes quelle reoit du groupe multicast IPv6 sont rmises destination du groupe multicast IPv4. Ceci permet donc aux membres du groupe multicast IPv4 de recevoir les donnes provenant du groupe multicast IPv6 et de pouvoir mettre destination de ce groupe et donc inversement de permettre aux membres du groupe multicast IPv6 de recevoir les donnes provenant du groupe multicast IPv4 et de pouvoir mettre destination de ce groupe. Par exemple si on veut passereller le groupe multicast IPv4 224.11.7.99/3456 avec le groupe multicast ff0e ::2222/3456 on va lancer la commande suivante : mforward -4 224.11.7.99/3456 -6 ff0e::2222 p 3456 De cette manire tous les membres du groupe multicast 224.11.7.99/3456 verront les membres du groupe multicast ff0e::2222/3456 et inversement. Le port utilis doit tre le mme pour le groupe multicast IPv4 et pour le groupe multicast IPv4. Ceci nest pas une contrainte puisque par exemple si on diffuse de la vido sur un groupe multicast IPv4 et quon dsire passereller cette vido vers un groupe multicast IPv6 , il suffit de choisir un groupe multicast IPv6 dont le numro de port soit le mme que celui du groupe multicast IPv4

59

Voici un schma qui prsente le principe de fonctionnement de la passerelle multicast IPv4 IPv6 :

Figure 14 : Principe de fonctionnement de la passerelle multicast IPv4/IPv6.

Bien quau niveau rseau il y ait un groupe multicast IPv4 et un groupe multicast IPv6, au niveau utilisateur il ny a donc quune seule communaut logique. Cette passerelle stant rvle satisfaisante dans un environnement de production puisquelle avait servi en juin 2002 passereller en multicast IPv6 la retransmission dun sminaire X-Aristote diffus en multicast IPv4, il avait t dcid de linstaller sur une machine du GIP Renater afin de pouvoir offrir ce service lensemble de la communaut acadmique. Aprs le dpart en dcembre 2003 dun stagiaire de lassociation Aristote responsable de son fonctionnement jai t charg de la maintenance et de lutilisation de cette passerelle et chaque fois que nous avons particip la retransmission dun vnement en multicast IPv4 nous lavons passerell en multicast IPv6. Ceci nous a permis de nous positionner en tant quacteurs de la transition du protocole IPv4 vers IPv6, mais aussi de permettre la communaut des utilisateurs du multicast IPv6 de profiter des contenus retransmis en multicast IPv4 comme cela a t le cas pour luniversit de Guadalajara qui na accs quau multicast IPv6. Toujours dans la perspective de contribuer au processus de transition du protocole IPv4 vers le protocole IPv6 il a t dcid loccasion de la confrence IPv6 qui sest tenue Caen du 11 au 13 juin 2003 dassurer sa retransmission en multicast IPv6 et de passereller cette diffusion en multicast IPv4. 60

C. Dveloppement des fonctionnalits des outils de visioconfrence pour le tlenseignement interactif


1. Contexte
Avec lexprience acquise lors de la retransmission en multicast de diffrents vnements caractre pdagogique il sest avr ncessaire de dvelopper de nouvelles fonctionnalits pour le logiciel Vic, ces fonctionnalits permettant damliorer le confort et linteractivit des actions de tlenseignement dans lesquelles est implique lassociation Aristote.

2. Vic haute rsolution (4CIF)


a) Expression des besoins

Un des principaux problmes qui sest pos jusqu prsent lors de la retransmission de prsentations ou de confrences en multicast concerne la retransmission des transparents puisquil ny a que peu de solutions et quaucune de ces solutions ne savre tre pleinement satisfaisante. La premire solution consiste brancher la sortie vido de lordinateur de lorateur sur un rtroprojecteur, puis de projeter limage sur un cran et enfin de filmer cet cran laide dune camra branche sur un ordinateur afin de retransmettre limage de lcran par Vic. Cette opration permet donc de faire une conversion implicite de format depuis les transparents de lorateur qui sont en plein cran, et donc adoptent la rsolution de lcran de lorateur (gnralement 1024x768), jusqu la rsolution maximale impose par Vic qui est de 352x288. Comme on peut sen douter, cette solution est fastidieuse mettre en uvre et trs coteuse en matriel, dautant plus que le rsultat larrive nest pas compltement satisfaisant puisque les transparents proposent une lisibilit trs moyenne. Le principal avantage de cette solution est que les auditeurs nont pas se proccuper de la synchronisation des transparents avec ceux de lorateur puisquils r eoivent directement sur leur cran les transparents de lorateur.

61

Sur la capture dcran suivante on peut voir le rsultat dun transparent film sur un cran puis retransmis ensuite au format CIF:

Figure 15 : Transmission dun transparent film sur un cran puis transmis au format CIF.

Une autre solution consiste tout simplement dposer les transparents sur un site Internet, au format HTML ou PowerPoint, de cette manire les auditeurs disposent de transparents de trs bonne qualit, mais ce moment-l le problme est que les auditeurs doivent faire euxmmes la synchronisation de leurs transparents avec ceux de lorateur ce qui est trs inconfortable et peu pratique. Ainsi lors de la retransmission dun vnement en multicast lors de laquelle la vido de lorateur tait retransmise en multicast et les transparents disponibles sur le site de Renater, plusieurs auditeurs mont demand sil tait possible de tourner la camra vers lcran projetant les transparents plutt que de filmer lorateur. Ceci illustre bien le besoin de pouvoir retransmettre les transparents sous la forme dun flux vido et ceci nest possible quen utilisant la sortie vido de lordinateur de lorateur afin de conserver la synchronisation des transparents transmis aux rcepteurs avec ceux de lorateur. Une autre solution consiste utiliser Netmeeting, pour des visioconfrences impliquant un nombre demi-douzaine) du fait des problmes de stabilit utilise pour les cours DIM, mais lexprience a satisfaisante. mais cette solution nest envisageable que trs limit de participants (pas plus dune de Netmeeting. Cest cette solution qui est montr que cette solution est loin dtre

62

Une solution simple mettre en uvre et qui permettrait lauditoire de ne pas avoir grer la synchronisation des transparents avec ceux de lorateur, mais aussi doffrir aux auditeurs des transparents de trs bonne qualit serait de disposer dune version de Vic permettant dmettre avec une rsolution 4CIF. Il suffirait alors de brancher la sortie vido de lordinateur de lorateur sur lentre de la carte dacquisition dun ordinateur afin dmettre avec Vic les transparents en multicast. Pour ceci on peut utiliser un boitier permettant de convertir la sortie vido de lordinateur de lorateur en PAL, ceci afin de pouvoir par la suite brancher ce signal en entre dune carte dacquisition.

Figure 16 : Transmission des transparents en multicast.

De cette manire les utilisateurs pourraient donc recevoir les transparents de lorateur directement sur leur ordinateur en utilisant Vic. Une autre application de cette nouvelle fonctionnalit de Vic consisterait pouvoir disposer dun vido projecteur virtuel pour des salles de rception distantes, en effet en ayant un ordinateur rceptionnant les transparents, il serait alors possible dans une salle de rception distante de projeter les transparents sur un cran afin de donner la possibilit une assemble de pouvoir suivre lvnement distance. Ceci permettrait aux salles distantes de disposer dun vidoprojecteur virtuel.

Figure 17 : Principe du vido projecteur virtuel.

Comme je lai expliqu prcdemment, la version actuelle de Vic permet dmettre avec un format dimage maximal de 352x288 (format CIF), or Vic permet dmettre de la vido code en H263 ou en H263+ et ces normes prcisent quon peut mettre de la vido jusquen

63

16CIF (rsolution de 1408x1152), il devait donc tre possible de modifier Vic de manire lui permettre dmettre de la vido en 4CIF en utilisant le codec H263 ou le codec H263+.

b)

Ralisation

Ayant une formation universitaire en Informatique jai procd des modifications du logiciel Vic en travaillant sous Linux puisque je suis trs familier avec cet environnement de travail ainsi quavec son API systme. Javais ma disposition une carte dacquisition Osprey 200 et une camra Sony ce qui ma permis de travailler dans de bonnes conditions puisque les cartes dacquisition Osprey sont trs bien supportes sous Linux (pour charger le module bttv permettant dutiliser la carte dacquisition Osprey il faut taper en tant que root la commande modprobe bttv ). Pour commencer il ma fallu rcuprer le code source de la version UCL du logiciel Vic, pour cela jai utilis un client CVS (Concurrent Version System, systme de gestion de versions concurrentes) pour me connecter au serveur CVS de UCL. Tout dabord il faut renseigner la variable denvironnement CVSROOT avec ladresse du serveur CVS de UCL :
#export CVSROOT=:pserver:cvsanon@scary.cs.ucl.ac.uk:/cs/research/mice/starship/src/local/CVS_repository

Ensuite on se connecte au serveur CVS avec la commande suivante : #cvs login Un mot de passe est demand, celui-ci est indiqu sur le site de UCL, il sagit de FoolsGold . Ensuite il faut rcuprer successivement les quatre rpertoires qui composent le code source de Vic : #cvs checkout common #cvs checkout tcl-8.0 #cvs checkout tk-8.0 #cvs checkout vic A prsent nous disposons du code source de Vic, il va falloir maintenant procder la compilation. Pour cela il faut compiler successivement la librairie common, linterprteur Tcl, la librairie graphique Tk et le cur du logiciel Vic en tapant successivement les commandes suivantes : ./configure make Si on dsire compiler Vic avec le support IPv6, dans le rpertoire vic/ il faut taper la commande suivante:

64

./configure enable-ipv6 au lieu de la commande : ./configure. Lorsquon veut mettre de la vido avec Vic on choisit dabord le codec vido quon va utiliser et le format de la vido. Dans la version actuelle de Vic si on choisit le codec H263 ou le codec H263+ on peut choisir le format 4CIF, cependant si on choisit le format 4CIF, lorsquon clique sur le bouton transmit afin dmettre, Vic termine immdiatement son excution, ce bogue tant par ailleurs bien connu des utilisateurs de Vic. Il ma donc fallu commencer par chercher la raison pour laquelle Vic terminait son excution ds quon essayait dmettre de la vido au format 4CIF. Lutilisation dun debugger1 ma permis de suivre pas pas lexcution du programme et ainsi de dterminer la raison du problme : Dans le fichier codec/encoder-h263v2.cpp, dans la fonction H263plusEncoder ::size(int w,inth), un test tait ralis pour dterminer le format de la vido encoder, et si limage avait une taille suprieure la taille CIF, le programme ralisait un appel la fonction exit() ce qui avait pour consquence de le faire terminer son excution. Le format 4CIF ntait donc pas support par la version officielle de Vic. Voici la partie du code qui pose problme, les commentaires sont en bleu. Il sagit de la fonction size prenant en paramtres deux entiers w et h. Cette fonction est une mthode de la classe H263plusEncoder. //les deux paramtres w et h dsignent respectivement la largeur (width) et la hauteur //(height) des images de la vido encoder void H263plusEncoder::size(int w, int h) { Module::size(w, h); sed_pels = w; sed_lines = h; base_sed_pels = w; base_sed_lines = h; //le format de la vido est compar avec les formats standard //comparaison avec le format CIF if (w == CIF_WIDTH && h == CIF_HEIGHT) { state->pic->source_format = 3;

Logiciel permettant de suivre lexcution dun programme afin de dtecter les erreurs de conception.

65

//comparaison avec le format QCIF (Quarter CIF, quart de CIF) } else if (w == QCIF_WIDTH && h == QCIF_HEIGHT) { state->pic->source_format = 2; //si le format est diffrent de CIF et QCIF, alors terminer lexcution du programme } else { exit(1); } } Jai donc effectu des modifications au logiciel Vic de manire lui permettre dmettre de la vido au format 4CIF. Concernant le format dencodage vido utilis, mon choix sest port sur le codec H263+ car il prsente de meilleures performances. Je vais prsent exposer les modifications que jai apportes au logiciel Vic afin de lui permettre dmettre et de recevoir de la vido code en H263+ au format 4CIF. Ne disposant pas dun logiciel permettant dmettre en H263+ au format 4CIF, ma dmarche a t de commencer par essayer de rendre Vic capable dmettre de la vido au format 4CIF. Au niveau de lencodage, dans le fichier codec/encoder-h263v2.cpp il ma fallu faire en sorte que le programme prenne en compte le format 4CIF, tout dabord en dclarant les constantes dfinissant la largeur et la hauteur du format 4CIF de la manire suivante : #define CIF4_WIDTH 704 #define CIF4_HEIGHT 576 Ensuite dans la fonction H263plusEncoder::size(int w,inth), jai modifi le corps de la fonction de manire prendre en compte le format 4CIF. void H263plusEncoder::size(int w, int h) { /*fprintf(stderr,"send-h263: new frame size: %dx%d\n",w,h);*/ Module::size(w, h); sed_pels = w; sed_lines = h; base_sed_pels = w; base_sed_lines = h; //On compare la taille de limage quon veut encoder avec les tailles dimages supportes if (w == CIF_WIDTH && h == CIF_HEIGHT) { state->pic->source_format = 3;

66

} else if (w == QCIF_WIDTH && h == QCIF_HEIGHT) { state->pic->source_format = 2; //prise en charge du format 4CIF } else if (w == CIF4_WIDTH && h == CIF4_HEIGHT) { state->pic->source_format = 4; } else { //Si le format est diffrent du QCIF, du CIF et du 4CIF alors afficher un message derreur fprintf(stderr,"send-h263: unsupported format\n"); //et terminer lexcution du programme exit(1); } } Ceci permet donc dmettre de la vido code en H263+ au format 4CIF avec Vic. Au niveau de la rception il a fallu modifier Vic afin de lui permettre de recevoir de la vido au format 4CIF code en H263+ car la version originale de Vic terminait son excution ds lors quelle recevait de la vido au format 4CIF. Lutilisation dun debugger ma permis de dterminer que les problmes consistaient essentiellement en des tampons (variables permettant de stocker des donnes) dont la taille tait insuffisante, ce qui tait la cause derreurs de segmentation1. Ces erreurs de programmation provenaient du fichier codec/decoder-h263v2.cpp qui implmente le dcodeur H263+. Voici la manire de procder du dcodeur H263+ de Vic. Lorsquun paquet est reu, la zone du paquet contenant les donnes propres la partie de limage transmise est copie la suite des donnes dj contenues dans la variable bitstream, un tableau de caractres. Lorsquon a reu tous les paquets contenant chacun une partie de la mme image on copie le contenu de la variable bitstream (qui contient donc ce moment-l une image entire) dans la variable xxx_frame, puis limage nouvellement reue est utilise pour rafrachir la fentre. Un des problmes provenait du fait que la variable bitstream tait un tableau de caractres, ce qui entranait que la taille de cette variable tait fixe une fois pour toute, en effet en C++ la taille des tableaux de caractres doit tre fixe une fois pour toute au moment de
1

Une erreur de segmentation intervient lorsquun processus essaye dcrire sur une zone mmoire pour laquelle il na pas les droits en criture.

67

leur dclaration au dbut de la fonction. Jai donc chang le type de cette variable en un pointeur1 sur caractres (type char*) de la faon suivante : char *bitstream; Ceci permet de dterminer dynamiquement la taille de cette variable en fonction des besoins et du contexte. Au dpart jai fix la taille de cette variable zro de la manire suivante : //Si bsize vaut zro cest donc quon a pas encore crit de donnes dans la variable bitstream //on alloue donc la taille par dfaut au tampon bitstream if( bsize == 0 ){ //BITSSSIZE est une constante valant 65536*4, cest la taille initiale du tampon bitstream bitstream = (char *) malloc(BITSSSIZE); if( ! bitstream ){ perror("malloc failed"); exit(1); } bsize=BITSSSIZE; } La variable bsize est utilise afin de garder en mmoire la taille courante de la variable bitstream. En effet en C++ cest au dveloppeur de grer lallocation de la mmoire aux variables. Ainsi si on essaye dcrire une chane de 1000 caractres (un caractre est cod sur un octet) dans une variable de taille 500 octets ceci va entraner une erreur de segmentation. En mmorisant la taille de la variable bitstream on va pouvoir vrifier que la taille de ce tampon est suffisante avant de rajouter des donnes. //Si on va dpasser la taille du tampon en crivant les donnes du dernier paquet reu // la fin du tampon alors on double la taille du tampon if(b_off+(cc-bs) > bsize){ while(b_off+(cc-bs) > bsize){ bsize *=2; } fprintf(stderr,"realloc bitstream %d\n",bsize);
1

Un pointeur est une variable spciale dont la valeur est ladresse dune autre variable.

68

//On procede a la rallocation de mmoire bitstream = (char *) realloc(bitstream,bsize); if( ! bitstream ){ perror("realloc failed"); exit(1); } } De cette manire lcriture des donnes dans le tampon nentrane plus de dpassement de tampon, ce qui permet Vic de recevoir des donnes codes en H263+ au format 4CIF sans causer derreurs dexcution. Cependant cette version de Vic ne fonctionne que sous Linux. Jai donc modifi la version Windows de Vic afin de lui permettre de recevoir de la vido code en H263+ au format 4CIF, cependant cette version nest pas capable dmettre de la vido au format 4CIF, en effet je me suis trouv confront des difficults concernant la taille des tampons utiliser et je nai pas eu le temps ncessaire pour finaliser la version Windows. Porter sous Windows la version de Vic permettant dmettre en 4CIF sera donc un des objectifs de lapprenti du DESS Applications des Rseaux et de la Tlmatique au GIP Renater lors de lanne 2003/2004.

c)

Tests

Une fois limplmentation ralise il a fallu procder des tests afin de valider les concepts exposs prcdemment : transmission des transparents en 4CIF et vido projecteur virtuel. Nous avons donc procd des tests avec la participation de Guy Bisiaux (membre de la cellule technique du CRU, Comit Rseau des Universits) luniversit de Valenciennes. Pour le premier test nous disposions dun ordinateur portable sur lequel se trouvaient des transparents, cet ordinateur simulant le portable dun orateur lors dune prsentation. Nous avons branch sur la sortie vido de cet ordinateur un botier permettant de convertir le signal VGA issu de lordinateur portable en PAL et ensuite nous avons branch la sortie du boitier en entre dune carte dacquisition dun PC sous Linux qui mettait les transparents en 4CIF. De son ct Guy Bisiaux recevait les transparents Valenciennes avec un PC quip dun Windows XP.

69

Voici le montage utilis pour raliser ce test :

Voici un transparent au format 4CIF reu par Guy Bisiaux Valenciennes sur son PC quip dun Windows XP :

On constate que la fentre de la vido en CIF fait la mme taille que celle de la vido en 4CIF. Ceci sexplique par le fait que lorsquon reoit de la vido en CIF avec Vic il est possible dagrandir la fentre au format 4CIF, mais ce moment-l on perd en rsolution, cest pour cette raison que la qualit dun transparent mis au format CIF puis agrandi au format 4CIF est si mauvaise. Cette exprience nous a donc permis de valider la transmission des transparents au format 4CIF laide de Vic.

70

Ensuite nous avons fait un premier test en conditions relles loccasion de la Causerie de Renater du 9 septembre 2003 au cours de laquelle nous avons mis les transparents en multicast au format 4CIF. Lexprience sest rvele concluante puisque le Vic sous Linux qui mettait Renater ainsi que le Vic sous Windows XP qui recevait Valenciennes ont trs bien fonctionn pendant toute la dure de la prsentation, cest--dire pendant prs de deux heures.

Figure 18 : capture dcran du PC sous Linux mettant les transparents lors de la Causerie de Renater du 9 septembre 2003 sur le thme de la mtrologie.

Cette solution sera donc utilise ds lanne scolaire 2003/2004 lors des retransmissions des Causeries de Renater et des sminaires X-Aristote. Dautre part nous avons valid le concept de vido projecteur virtuel puisque nous avons fait lexprience de rtroprojeter sur un cran des transparents reus en multicast au format 4CIF et nous avons obtenu un rsultat trs satisfaisant. Ceci permettrait des groupes de personnes dassister distance des vnements retransmis en multicast dans les mmes conditions quen prsentiel puisquil suffirait de vido projeter les transparents et la vido de lorateur sur un cran.

71

3. Vic deux vitesses


a) Expression des besoins

Lors de la retransmission dvnements en multicast comme des confrences IPv6 ou des Causeries de Renater, le dbit utilis pour mettre la vido est assez faible (aux alentours de 128 Kbit/s), en effet certains sites ne disposent que dune faible bande passante comme cest le cas par exemple pour certains partenaires du projet ATHENA, or lobjectif est de favoriser laccs au plus grand nombre aux ressources pdagogiques transmises en multicast. A linverse, sur le rseau Renater beaucoup dtablissements disposent de dbits trs importants, or jusqu prsent lors de la retransmission de sminaires ou de confrences en multicast ils doivent se contenter dune vido de faible qualit. Cest pourquoi Lionel David, mon prdcesseur au GIP Renater, avait travaill lanne dernire sur des solutions permettant de rendre accessibles des retransmissions dvnements en multicast pour des gens disposant dune connexion bas dbit sans pour autant pnaliser les gens disposant dune connexion haut dbit. Ceci la conduit mettre en place un serveur UTG (UCL Transcoding Gateway, passerelle de transcodage de UCL) qui est la fois une passerelle multicast unicast et une passerelle haut dbit bas dbit. Son fonctionnement est le suivant : les gens disposant dun accs bas dbit Internet et dsirant suivre la retransmission dun vnement en multicast installent le client UTG sur leur ordinateur et le configurent en indiquant ladresse du serveur UTG et le groupe multicast sur lequel est diffuse la vido de lvnement. Le client UTG va alors mettre une requte au serveur UTG afin de lui demander de sabonner au groupe multicast concern. Le serveur reoit donc le flux vido, le dcode et le rencode en appliquant une technique de dgradation du signal, puis il le remet en unicast destination des clients.

Figure 19 : principe de fonctionnement du serveur UTG

Ceci permet donc doffrir aux rcepteurs situs sur des liaisons bas dbit la possibilit de suivre lvnement tout en offrant aux rcepteurs situs sur des liaisons haut dbit la possibilit de disposer dune vido de bonne qualit.

72

Cependant, aprs avoir mis en place un serveur UTG Renater, Lionel David avait estim que cette solution ntait pas pleinement satisfaisante. Jai moi-mme eu loccasion de tester ce service et je suis arriv la mme conclusion. Tout dabord le serveur est trs instable et demande tre relanc rgulirement, ce qui est trs certainement du au fait que UTG a t dvelopp au milieu des annes 1990 et na pas t maintenu par UCL, et de plus cette solution est contraignante puisquelle ncessite de la part des rcepteurs linstallation dun logiciel spcifique (le client UTG). Cest pour toutes ces raisons que UTG ne reprsentait pas une solution satisfaisante par rapport aux besoins exprims par la communaut acadmique. Il est alors apparu quune solution idale et pratique mettre en uvre consisterait disposer dune version du logiciel Vic permettant dmettre deux dbits diffrents sur deux groupes multicast diffrents.

Figure 20 : schma de principe du Vic deux vitesses.

Ainsi lon pourrait lors de la retransmission dun vnement diffuser deux flux vido, lun de bonne qualit destination des rcepteurs disposant dune importante bande passante et un autre de qualit moindre destin aux rcepteurs disposant dune faible bande passante. Ceci permettrait chacun de pouvoir choisir la session qui lui convient le mieux en fonction de la bande passante dont il dispose, et ce sans avoir installer de logiciel spcifique. Enfin cette solution prsente lavantage de rpondre au problme pos sans avoir mettre en place un logiciel tiers comme une passerelle car cela alourdit le processus de mise en place dune retransmission en multicast.

b)

Ralisation

Lorsquon veut mettre de la vido en utilisant Vic (en fait lorsquon clique sur le bouton Transmit et quun appel a la fonction transmit dfinie dans le fichier tcl/uictrlmenu.tcl est ralis), un objet hrit de la classe Grabber est cr (to grab = capturer en anglais) et cet objet va capturer des images avec une frquence fonction du nombre dimages par seconde que lutilisateur a indiqu dans linterface utilisateur. Ces objets hritant de la classe Grabber sont spcialiss en fonction du systme dexploitation et du priphrique utilis. Par exemple sous Windows lobjet hrit de la classe

73

Grabber sera un objet de type VfwGrabber (Vfw pour Video For Windows, lAPI de capture dimages sous Windows) dfini dans le fichier video/grabber-win32.cpp tandis que sous Linux en utilisant une carte dacquisition et une camra on utilisera un objet grabber de type V4lGrabber (V4l pour Video4Linux, lAPI de capture dimages sous Linux) dfini dans le fichier video/grabber-video4linux.cpp. Sous Linux lobjet V4lGrabber ouvre le priphrique vido en lecture/criture et effectue un appel lappel systme mmap().

mmap() est une fonction systme permettant de raliser une projection dun fichier ou dun priphrique sur une zone en mmoire, de cette manire toute criture sur cette zone mmoire implique une criture sur le priphrique ou sur le fichier et rciproquement toute criture sur le fichier ou sur le priphrique implique une criture sur la zone mmoire. Ceci permet de procder des lectures et des critures sur le priphrique ou sur le fichier dune manire beaucoup plus efficace car les temps daccs la mmoire vive sont bien infrieurs aux temps daccs un priphrique ou un fichier (un accs un fichier correspond un accs au disque dur).

Ensuite en utilisant lAPI video4Linux, lobjet V4lGrabber capture des images (ces images sont donc stockes dans la projection en mmoire cr par mmap()) et les transmet la classe TransmitterModule qui se charge ensuite dencoder ces images selon le format de compression voulu, de dcouper ces donnes en paquets puis de les envoyer sur le rseau. Jai donc choisi de procder de la manire suivante : deux objets V4lGrabber sont crs, le premier sera celui de la session haut dbit tandis que le deuxime sera celui de la session bas dbit. Le premier objet V4lGrabber va donc raliser lappel mmap() et effectuer les captures successives tandis que le deuxime objet V4lGrabber ne vas pas faire de captures, mais il lui sera permis de lire la projection en mmoire cre par lappel mmap effectu par le premier objet V4lGrabber (la zone mmoire renvoye par lappel a mmap() est dclare comme static (mot-cl du langage C++) et est donc accessible par tous les objets de la classe V4lGrabber), de cette manire au lieu de faire des captures il va se contenter de lire le contenu de la zone en mmoire et va pouvoir transmettre les images un objet de la classe TransmitterModule pour que celui-ci effectue lencodage de ces images et leur envoi sur le rseau. Le contenu de la projection du priphrique en mmoire tant rgulirement modifi par les captures dimages du premier objet V4lGrabber, chaque fois que le deuxime objet lit le contenu de cette zone en mmoire il trouve la dernire image issue de la capture ralise par le premier objet de la mme manire que sil venait lui-mme de raliser la capture. Il est important que le deuxime objet V4lGrabber se contente de lire le contenu de la projection en mmoire sans raliser de captures lui-mme car dans un premier temps javais test une version selon laquelle les deux objets effectuaient des captures, mais les captures ralises par le deuxime objet gnaient les captures dimage ralises par le premier ce qui tait la cause dun effet visuel saccad gnant dans la vido capture par le premier objet V4lGrabber.

74

Ceci permet donc la version de Vic ainsi modifie dmettre sous Linux la vido issue dune mme source (camra, webcam,) deux dbits diffrents sur deux groupes multicast diffrents. Voici une capture dcran de lordinateur de M. Netzalhualcoyotl Ornelas Garcia recevant les deux flux vido mis deux dbits diffrents :

Figure 21 : Vic deux vitesses.

Sur la figure 21 on peut voir un mme signal vido transmis depuis Renater en multicast deux dbits diffrents. Sur le premier groupe multicast (ff0e ::8888/8888) le dbit utilis est de 19 Kbit/s avec une frquence dimages de 2,8 images par seconde tandis que sur le deuxime groupe multicast (ff0e ::6666/6666) le dbit utilis est de 41 Kbit/s avec une frquence dimages de 13 images par secondes. Pour lancer le Vic deux vitesses il faut taper la commande : vic 2 adresse_multicast1/numero_port1 adresse_multicast2/port2 Par la suite jai procd une modification de linterface graphique de Vic afin de permettre lutilisateur de renseigner les paramtres de chacune des deux sessions, cest--dire le nombre dimages par seconde ainsi que le dbit utilis.

75

Voil une partie du panneau de configuration de la transmission du Vic deux vitesses lanc avec la commande suivante : vic 2 224.11.7.99/3456 224.11.8.99/5678

Figure 22 : Partie du panneau de configuration permettant de renseigner les paramtres propres chacune des deux sessions

Aprs avoir ralis une version du Vic deux vitesses sous Linux jai travaill sur le dveloppement dun Vic deux vitesses sous Windows. Jai donc essay de procder de la mme manire que sous Linux, tout en adaptant le code aux spcificits de la programmation sous Windows, mais je ne suis pas arriv un rsultat satisfaisant, en effet lAPI Video For Windows ne permet pas de raliser deux captures diffrentes sur un priphrique dacquisition vido (tout comme Linux), jai donc essay de procder de la mme manire que sous Linux avec deux objets grabber dont le premier ralise les captures sur le priphrique et le second se contente de lire les images captures par le premier, mais le fait que le deuxieme objet grabber ne capture pas les images impliquait quil commenait lire les images avant mme que le premier ait pu capturer une seule image, ce qui du fait des limitations de lAPI Video For Windows, empchait le deuxime de raliser les captures dimage. Jai donc essay de synchroniser les deux objets en forant le deuxime attendre que le premier objet hrit de la classe Grabber ait fini de capturer la premire image avant de lire le rsultat des captures mais je ny suis pas parvenu. Porter cette version de Vic deux vitesses sous Windows sera donc un des objectifs de lapprenti du DESS ART au GIP Renater de lanne 2003/2004. Cependant il est noter que du cot rception nimporte quelle version de Vic (Vic UCL ou Vic OpenMash) permet de recevoir des donnes mises avec le Vic deux vitesses.

76

D. Transfert de connaissances
Etant donn que dune part il reste encore des travaux de dveloppement raliser dans le cadre des activits de tlenseignement dans lesquelles est implique lassociation Aristote et que dautre part il nexiste pratiquement pas de documentation relative au dveloppement du logiciel Vic, jai ralis une documentation traitant du fonctionnement interne de Vic, de la faon de le compiler, de linterface entre Tcl/Tk et C++. Cette documentation est disponible sur le site Internet de Renater, dans la partie Grilles de Confrences , elle devrait permettre dautres dveloppeurs dsirant contribuer au dveloppement du logiciel Vic de comprendre plus rapidement le fonctionnement interne de ce logiciel et ainsi dtre plus efficaces. Dautre part, lapprenti du DESS ART qui me succde au GIP Renater, M. Christophe Herviaux, doit porter le Vic deux vitesses ainsi que le Vic 4CIF (en mission) sous Windows lors de lanne 2003/2004, jai donc fait en sorte de lui apprendre tout ce dont il aura besoin afin de reprendre mon travail dans de bonnes conditions. Aprs lavoir familiaris avec les logiciels utiliss dans le cadre des retransmissions en multicast, je lui ai montr comment rcuprer le code source de Vic, comment le recompiler sous Linux et sous Windows, enfin je lui ai expliqu les parties du code quil sera amen modifier ainsi que les modifications que jai apportes au logiciel Vic lors de mon apprentissage. Ce transfert de connaissances devrait lui permettre daborder cette anne de travail au GIP Renater avec tous les moyens ncessaires la russite de sa mission.

77

V. Conclusion
Le travail effectu cette anne a permis de confirmer lexpansion du projet ATHENA avec le nouveau partenariat trs prometteur avec luniversit de Guadalajara au Mexique mais il a surtout permis de dvelopper les fonctionnalits des outils utiliss pour les retransmissions en multicast de contenus caractre pdagogique et par l mme damliorer le confort et linteractivit des actions de tlenseignement dans lesquelles est implique lassociation Aristote. Ainsi lors de la retransmission en multicast IPv4 ou en multicast IPv6 de confrences ou de sminaires il sera possible de transmettre la vido de lorateur deux dbits diffrents afin de proposer aux rcepteurs une vido en adquation avec leur bande passante. Il sera galement possible dsormais de retransmettre les transparents en multicast grce au Vic 4CIF ce qui permettra de saffranchir de lusage de Netmeeting et de ses inconvnients dans le cadre des cours DIM mais aussi de valoriser le multicast en proposant ainsi une utilisation innovante des fonctionnalits offertes par ce protocole. Cependant, afin dassurer une plus large diffusion du Vic 4CIF et du Vic deux vitesses, il est important de porter ces logiciels sous Windows et cest donc le travail que devra effectuer mon successeur au GIP Renater lors de lanne 2003/2004. Lexprience a dmontr que le dveloppement de lutilisation des nouvelles technologies de linformation et de la communication dans le cadre du tlenseignement ncessite non seulement des avances techniques dans le domaine des applications et des rseaux mais aussi de nouer des partenariats afin de tester et de valider ces innovations. Ceci explique pourquoi lassociation Aristote est implique la fois dans des projets composante relationnelle comme le projet ATHENA et dans des projets composante technique comme la Grille de confrences.

78

VI. Annexes
A. Bibliographie Rfrences
An experimental IPv6/IPv4 multicast gateway (une passerelle exprimentale multicast IPv4/IPv6), Luc Beurton. Norme H.261 de lUIT-T Utilisation des lignes pour la transmission des signaux autres que tlphoniques Codec vido pour services audiovisuels p x 64 kbit/s Norme H.263 de lUIT-T Codage vido pour communications bas dbit RFC 1889 RTP: A Transport Protocol for Real-Time Applications (RTP : un protocole de transport pour les applications temps rel). RFC 2236 Internet Group Management Protocol, Version 2 (protocole de gestion des groupes Internet, version 2). RFC 2362 Protocol Independent Multicast-Sparse Mode (PIM-SM) (multicast indpendant du protocole, mode clairsem). RFC 2463 Internet Control Message Protocol (ICMPv6) for IPv6 (protocole des messages de contrle dInternet pour IPv6). RFC 2710 Multicast Listener Discovery (MLD) for IPv6 (Protocole de dcouverte des rcepteurs multicast pour IPv6). RFC 3493 Basic Socket Interface Extensions for IPv6 linterface basique des connecteurs logiciels). (Extensions pour IPv6 de

RFC 3513 IP Version 6 Addressing Architecture (Architecture dadressage du protocole IPv6). RFC 3587 IPv6 Global Unicast Address Format (Format des adresses unicast IPv6 globales).

79

B. Rfrences sur Internet


http://aristote.asso.fr : le site de lassociation Aristote. http://www.renater.fr : le site du GIP Renater. http://www.renater.fr/GC/ : le site du projet Grille de Confrences. http://www-mice.cs.ucl.ac.uk/multimedia/software/ : le site du laboratoire Multimdia et Rseau de UCL. http://www.openmash.org : le site du projet OpenMash luniversit de Berkeley en Californie. http://www.kabassanov.com : le site personnel de Konstantin Kabassanov sur lequel on peut trouver des versions de Vic pour Windows compatibles avec IPv6.

80

C. Glossaire
API : Application Programming Interface (Interface de programmation dapplications) : ensemble de fonctions utilises par un programme pour demander et exploiter les services d'un autre programme ou d'une bibliothque de fonctions. : Actions pour des Transmissions Harmonieuses et des Echanges de Natures Acadmiques, projet initi par lassociation Aristote et visant dvelopper les changes de contenu scientifique travers les rseaux de la recherche. : Binary Digit (nombre binaire) : unit binaire de quantit dinformation qui peut prendre deux valeurs distinctes : 0 ou 1. : Anomalie dans la conception dun droulement correct de son excution. : Commissariat lEnergie Atomique. : Cest la couleur dun signal vido, compose de la teinte et de la saturation. : Classless classes). Inter-Domain Routing (routage inter-domaine sans programme entravant le

ATHENA

Bit Bogue CEA Chrominance CIDR CIF

: Common Intermediate Format (format commun intermdiaire) : format dimage normalis par lUIT-T spcifiant une taile dimage de 352x288. : Abstraction d'un type de donne caractrise par des proprits (attributs et mthodes) communes des objets et permettant de crer des objets ayant ces proprits. : Centre National dEtudes Spatiales. : CODeur/DECodeur : logiciel permettant de procder lencodage et au dcodage dun signal vido numrique. : Action de rassembler tous les fichiers composant le code source dun programme afin de les traduire en langage machine en vue de constituer un logiciel excutable. : Symbole dsignant un emplacement mmoire contenant une valeur fixe durant toute lexcution dun programme. : Concurrent Version System (systme de gestion de versions concurrentes) : logiciel client/serveur permettant de conserver un historique des modifications apportes au code source dun logiciel.

Classe

CNES Codec Compiler

Constante CVS

81

C++ Debugger DESS DIM

: Langage orient objet dvelopp par Bjarne Stroustrup dans les laboratoires dAT&T au dbut des annes 1980. : Logiciel permettant de suivre pas pas lexcution dun programme afin de dtecter les bogues. : Diplme dEtudes Suprieures Spcialises. : Diplme Informatique et Multimdia : projet commun plusieurs DESS en France et au Sngal visant exprimenter lutilisation de la visioconfrence en multicast dans le cadre du tlenseignement interactif. : Une erreur de segmentation intervient lorsquun processus essaye dcrire sur une zone mmoire pour laquelle il na pas les droits en criture. : Ensemble dinstructions effectuant un calcul partir de valeurs fournies en entre. : Groupe des Nophytes IPv6. : Norme de lUIT-T spcifiant un codec vido adapt pour des liaisons RNIS. : Norme de lUIT-T spcifiant un codage vido adapt pour des liaisons bas dbit. : Limite du nombre de sauts : dure de vie dun paquet IPv6. A chaque traverse dun routeur ce compteur est dcrment, lorsquil atteint zro le paquet est dtruit. Equivalent du TTL (Time To Leave, temps restant vivre) en IPv4. : Hyper Text Markup Language (langage de balises hypertexte) : langage permettant la cration de pages Internet intgrant des liens hypertexte . : Internet Control Message Protocol (ICMPv6) for IPv6 (protocole des messages de contrle dInternet pour IPv6). : Internet Group Management Protocol version 2 (protocole de gestion de groupes Internet, version 2). : Institut National de la Recherche en Informatique et Automatique : Internet Protocol (protocole Internet) : protocole de la couche rseau du modle ISO. : Internet Protocol Version 4 (version 4 du protocole Internet).

Erreur de segmentation Fonction GN6 H261 H263 Hop Limit

HTML

ICMPv6 IGMPv2 INRIA IP IPv4

82

IPv6 ISO IVS Langage de scripts

: Internet Protocol Version 6 (version 6 du protocole Internet). : International Organization for Standardization (organisation internationale de standardisation) : organisme de standardisation lchelle mondiale. : INRIA Videoconferencing System (systme de vidoconfrence de lINRIA). : Type de langage informatique dont le code source nest pas compil mais interprt par un logiciel (un interprteur) qui procde lexcution des instructions contenues dans le code source. : Laboratoire dInformatique de luniversit Paris 6. : Intensit lumineuse dun signal vido. : Multicast IPv6 backBONE (pine dorsale multicast IPv6) : rseau multicast IPv6 exprimental compos de tunnels IPv6 dans IPv6 ou IPv6 dans IPv4. : Multicast Listener Discovery rcepteurs multicast). (Protocole de dcouverte des

LIP6 Luminance M6Bone

MLD

Multicast NAT NTSC Objet PAL Paramtre PIM

: Multidiffusion : fonctionnalit du protocole transmission de donnes multimdia.

IP

ddie

la

: Network Address Translation (translation dadresses rseau). : National Television System Commitee, Comit national du systme tlvisuel : standard tlvisuel aux Etats-Unis et au Japon. : Instance dune classe. : Phase Alternation Line, ligne alterne en phase : standard tlvisuel en Europe. : Valeur fournie en entre dune fonction ou dun programme. : Protocol-Independant multicast (multicast indpendant protocole) : protocole de routage multicast indpendant protocole de routage unicast sous-jacent. : Variable dont la valeur est ladresse dune autre variable. : Logiciel ddition et de prsentation de transparents. du du

Pointeur PowerPoint

83

Rat RNIS RTP

: Robust Audio Tool (outil audio fiable) : logiciel daudioconfrence en IPv4 ou en IPv6 multicast ou unicast. : Rseau Numrique Intgration de Services. : Real Time Protocol (protocole temps rel) : protocole se situant entre les couches rseau et transport du modle ISO destin vhiculer du trafic avec des exigences de temps rel. : Real Time Control Protocol (protocole de contrle temps rel) : protocole destin recueillir des informations concernant des donnes transmises laide du protocole RTP. : Systme sEquentiel Couleur A Mmoire : standard tlvisuel en France. : Fichier source dun langage de script. : Connecteur logiciel: mcanisme logiciel de communication entre processus informatiques, souvent utilis entre une application et un rseau. : Mot-cl du langage C++, un attribut dune classe dclar comme static est accessible par toutes les instances de cette classe. : Langage de scripts disponible sous Unix/Linux et Windows. : Enseignement distance. : Librairie graphique permettant de faire appel des widgets (composants graphiques) dans des scripts. : Technique consistant transmettre un datagramme IP contenu dans un autre datagramme IP. : University College of London. : User Datagram Protocol (protocole de datagrammes utilisateurs) : protocole de transport non fiable, sans connexion, utilis principalement par des applications privilgiant la rapidit la fiabilit de la transmission. : Union Internationale des Tlcommunications normalisation des Tlcommunications. Secteur de

RTCP

SECAM Script Socket

Static Tcl Tlenseignement Tk Tunnel IP UCL UDP

UIT-T UTG

: UCL Transcoding Gateway (passerelle de transcodage de UCL) : logiciel de type client/serveur permettant de diminuer le dbit dune source multicast audio ou vido et de lmettre en unicast.

84

Variable V4L VFW Vic

: Symbole dsignant un emplacement mmoire contenant une valeur pouvant varier au cours de lexcution dun programme. : Video For Linux (vido pour Linux) : API de capture dimages sous Linux. : Video For Windows (vido pour Windows) : API de capture dimages sous Windows. : VideoConferencing Tool (outil de vidoconfrence) : logiciel de vidoconfrence en IPv4 ou en IPv6 multicast ou unicast

85

Você também pode gostar