Université Joseph FourierIMA |
Année Universitaire 2004-2005M2 GI Option SRRÉtudes d'approfondissement |
Mis à jour le 16/12/2004 par Didier DONSEZ
Les études d'approfondissement
visent à faire le point sur des aspects particuliers des systèmes répartis,
notamment dans des domaines émergents ou en évolution rapide. Les sujets
abordés couvrent aussi bien les techniques de base que les nouveaux secteurs
d'application.
L'intérêt de cette activité est double.
Le travail se fait par groupes de 2. Il est demandé de présenter un exposé d'environ 45 minutes, ce qui laisse du temps pour des questions, des compléments et une discussion sur le thème. Chaque groupe prépare une page web synthétisant le travail sur son thème. Il est également demandé de fournir une copie des transparents présentées (vous pouvez utiliserez le modèle proposé)
L’ensemble des pages et des présentations seront regroupées publiés sur le site Web
Le choix des thèmes et leur répartition se fait au cours de la première séance. Au cours de la séance initiale est présenté un ensemble de thèmes possibles, mais tout groupe qui le souhaite peut proposer un nouveau thème de son choix, qui doit être approuvé par l'enseignant responsable.
On trouvera ci-après pour chacun des thèmes une brève présentation et quelques
liens initiaux permettant d'amorcer la recherche.
Le sujet et des informations sont sur http://www-adele.imag.fr/~donsez/ujf/easrr0405
Attention, certains sujets ont été déjà traités les années précédentes : tentez de vous distinguer !
Les magazines IEEE et ACM sont disponibles à la Médiathèque (papier et électronique) http://www.imag.fr
Les séances ont lieu les
Mardis Après Midi suivants de 15h15-18H30 en F114
21/09 |
Introduction, présentation des thèmes |
Choix des présentations |
26/10 |
eCos : un système d’exploitation pour les applications embarquées par Nicolas VIAL Présentation, Synthèse, Source |
|
02/11 |
Les méthodes de restriction de l'utilisation du matériel / logiciel par Nicolas CHABANOLES Présentation, Synthèse Protocoles de communication en Peer To Peer par Marc CALVISI Présentation, Synthèse, Source Géo-positionnement et Systèmes d'information géographique par M’Bène Fall |
|
09/11 |
Réseaux domestiques sur courant porteur par Julien RAVOIRE Présentation, Synthèse JSTL (Java Standard Tag Library)par Billel BENJABALLAH Présentation, Synthèse, Source Edge Computing par Yidong ZHU Présentation, Synthèse |
|
16/11 |
Nouveaux systèmes de stockage de données (SAN/NAS) par Georges GOEBEL Présentation, Synthèse, Démonstration Application Multimédia Reparties par Kamal BEYDOUN (reporté au 23/11) Présentation, Synthèse, Source Entreprise Media Beans par Thomas LEVEQUE |
|
23/11 |
Bluetooth et Programmation Java par Bruno MACHEREL Présentation, Synthèse, Source .NET, C#, .NET Remoting par Sébastien BOULAY Présentation, Synthèse, Source Solutions de paiement électronique pour les sites de commerce électronique par Anthonin CHAZALET Présentation, Synthèse |
Le raccordement des systèmes embarqués aux réseaux ouverts (WWW) et leur intégration dans les systèmes d’information des entreprises et des organisations introduisent de nouvelles menaces. Après une bref rappel sur la sécurité, vous présenterez les menaces potentielles et les contre-mesures possibles applicables aux systèmes embarqués.
Les réseaux sur courant porteur proposent de véhiculer les données sur l’infrastructure (filaire) existant du réseau électrique. Ces réseaux visent deux domaines d’application assez différents : l’accès au Web depuis n’importe point de la maison ou le contrôle des appareillages à distance (domotique).
Après un rappel sur les principes du courant porteur, l’exposé présentera un état des standards et des solutions propriétaires dans les 2 domaines d’applications pour les marchés américains, européens et français.
· Home-Plug Powerline Alliance (HomePlug) http://www.homeplug.org
· X10, http://www.x10.org
· Konnex Association
· EasyPlug
· LONWorks
Le temps réel est le dernier domaine de l’informatique est couvert par le langage Java. Cet exposé s’attachera à présenter les différences de programmation qu’il existe entre Java et RTJ. Il fera le tour des implémentations existantes et disponibles sur le marché.
La réalité augmentée permet à l’usager d’ajouter de l’information en « superposition » de ses propres sens. Par exemple, dans une application de guidage dans un véhicule, une voix, des voyants lumineux, … indique au conducteur le moment où il doit changer de direction ! Cette aide à l’usager pourrait bien rapidement être intégrée à l’usager sur la forme d’un ordinateur portable se dissimulant à l’habit. Ces Wearable PC sont aussi des outils très prometteurs pour des métiers nécessitant de se libérer des périphériques d’entrée-sortie : médecin, maintenance, conducteur, …
Cet exposé s ‘attachera à présenter le Wearable Computing dans une première partie et à présenter ses applications en réalité augmentée.
eCos est un système d’exploitation open-source destiné aux systèmes embarqués et aux systèmes contraints par la taille mémoire. Il se présente comme une alternative à Linux et à Windows CE pour ce type de systèmes.
Cet exposé s ‘attachera à présenter l’achitecture d’eCos, les outils de développement (loader RedBoot, …) et la conception de systèmes avec eCos.
Le Peer To Peer (ou P2P ou «
égal à égal ») est un nouveau modèle de conception des applications qui se base
sur le fait que les terminaux utilisés sur le Web qui sont des PC. Ceux ci sont
de plus en plus souvent connectés en permanence sur Internet grâce aux forfaits
illimités des opérateurs ADSL et câble. Ces PC disposent de ressources
(stockage, CPU)qui peuvent être donc rendues disponibles à d’autres terminaux.
Les plus célèbres exemples sont celui du SETI qui sous la forme d’un
économiseur d’écran faire participer votre PC à l’analyse de signaux
extra-terrestres et Napster qui permettait le partage illégale de fichiers de
morceaux de musique entre 30 millions d’utilisateurs. D’autres types
d’applications existent. L’objectif du projet JXTA est d’offrir une plate-forme
libre et ouverte d’applications P2P.
Vous vous attacherez à présenter brièvement les concepts et notions du P2P en présentant les avantages et les inconvénients de ce modèle. Vous présenterez principalement l’architecture, les protocoles et les messages des 2 principales plateformes : Gnutella et JXTA
Bluetooth est une pile protocolaire pour constituer des réseaux personnels sans fil (Wireless PAN : Personal Area Network). Après une présentation de Bluetooth et de ses applications, vous présenterez le JSR-82 qui définit l’API Java pour développer des applications utilisant Bluetooth pour dialoguer. Deux dongles BT USB vous seront remis pour expérimenter les SDK d’AveLink et de JavaBluetooth.org pour présenter une démonstration. Le binôme choisissant ce sujet devra faire la démonstration avec ses propres machines
· BlueTooth, http://www.bluetooth.com
· http://www.jcp.org/en/jsr/detail?id=82
· http://today.java.net/pub/a/today/2004/07/27/bluetooth.html
· http://www.avelink.com/Bluetooth/Products/JSR-82/index.htm
· http://www.javabluetooth.org/ et http://sourceforge.net/projects/javabluetooth
Diverses applications utilisent des capteurs (détecteurs de grandeurs physiques comme température, pression , lumière, ets...) dont les indications sont transmises et intégrées dans un but d'observation et de contrôle. La miniaturisation des processeurs permet d'envisager d'associer un processeur à chaque capteur individuel et de créer ainsi des réseaux de capteurs dans lesquelles une grande partie du programme d el'application sera distribuée. La communication utilise les techniques des réseaux ad hoc.
Outre les communications proprement dites, divers problèmes intéressants se posent : développement de systèmes d'exploitation spécialisés pour les capteurs, de serveurs de gestion de base de données pour conserver les mesures et effectuer des traitements, organisation d'une application.
Ce domaine, créé assez récemment, fait l'objet d'une importante activité.
· Snoonian, D, Smart buildings, Spectrum, IEEE, Volume: 40, Issue: 8, Year: Aug. 2003, Page(s): 18- 23, http://ieeexplore.ieee.org/iel5/6/27450/01222043.pdf?isNumber=27450&prod=JNL&arnumber=1222043&arSt=+18&ared=+23&arAuthor=+Snoonian%2C+D.
· Philippe Bonnet, Johannes Gehrke, Praveen Seshadri, Towards Sensor Database Systems. Mobile Data Management, Second International Conference, MDM 2001, Hong Kong, China, January 8-10, 2001, Proceedings. Lecture Notes in Computer Science 1987 Springer 2001, ISBN 3-540-41454-1 pp 3-14, http://www.diku.dk/users/bonnet/papers/mdm01bonnet.ps
· Projet Manatee, http://www.distlab.dk/manatee
· projet SCADDS : http://www.isi.edu/scadds/
· projet WEBS : http://webs.cs.berkeley.edu/
L’informatique est de plus en plus embarquée dans les systèmes nomades (téléphones, appareils photo, assistants personnels, véhicules, …) et offre des applications à ses usager qui dépendent souvent du lieu dans lequel ces derniers se trouvent. Ces applications requièrent la position de l’usager (ou son terminal) et des systèmes d’information géographiques qui mettent en corrélation la position avec des informations plus factuelles.
Cet exposé présentera en première partie les technologies alternatives, actuelles et émergentes de positionnement (GPS, GSM, GlossNaz, Galliléo, Egnos …) indoor et outdoor, les protocoles et formats de récupération d’information de positionnement, en deuxième parties les applications géo-positionnement (cartographie logistique, militaire, réalité augmenté, tracabilité, …) et les retombées économiques.
Vous insisterez sur le système européen Galliléo qui est en tout début de déploiement.
· “Location Aware Devices”, IEEE Computer, Août 2001
· Rashmi Bajaj, Samantha Lalinda Ranaweera, Dharma P. Agrawal, GPS: Location-Tracking Technology, IEEE Computer, April 2002 (Vol. 35, No. 4)
· Jay Warrior, Eric McHenry & Kenneth McGee, They Know Where You Are, IEEE Spectrum, Juillet 2003, http://www.spectrum.ieee.org/WEBONLY/publicfeature/jul03/e911.html
Les problèmes de licence de logiciel sont bien connus. Il s'agit de restreindre l'utilisation d'un logiciel à un nombre ou à un ensemble donné de machine. La gamme des solutions proposées est vaste, chaque solution présentant ses propres avantage et inconvénients (compromis lourdeur de mise en oeuvre ; degré de protection attendu). Cependant un autre problème se pose aujourd'hui, qui est celui de la restriction de l'usage qui peut être fait d'un matériel donné. Par exemple, les consoles de jeux sont désormais suffisamment puissante pour concurrencer les ordinateurs, mais les fabricants ont tout intérêt à ce que ces deux marchés restent séparés !
Il est attendu un exposé (mais pas un catalogue) des différentes techniques et applications disponibles. Des exemples pris dans l'actualité peuvent illustrer chaque point.
On voit se développer actuellement de nouveaux systèmes de stockage de données, qui combinent les progrès des disques magnétiques et ceux des réseaux. Ces systèmes sont désignés par les noms de NAS (Network Attached Storage) et SAN (Storage Area Networks). Ils font suite à la génération des RAID (Redundant Array of Inexpensive Disks), qui utilisent déjà un accès parallèle et fournissent une bonne résistance aux défaillances.
NAS : On utilise le réseau local (sur IP) pour accéder aux supports de
stockage
SAN : L'ensemble des supports de stockage est organisé en un réseau autonome
On explorera les nouveaux développements de ces techniques (performances, comparaison, utilisation, ...)
· http://solutions.journaldunet.com/0110/011029_faqstockage.shtml
·
Sur les aspects "recherche" dans ce domaine,
voir la page de Garth Gibson
(CMU)
http://www-2.cs.cmu.edu/~garth/
· Greg P. Schulz, « Resilient Storage Networks - Designing Flexible Scalable Data Infrastructures », Digital Press Books (Elsevier), ISBN 1-55558-311-3, 443 pages
JSTL (Java Standard Tag Library) offre un mécanisme d’extension d’éléments de scripting aux JSP (Java Server Pages) de la spécification J2EE. Ce mécanisme offre une programmation très modulaires des applications Web.
Après un brève rappel des JSP, cet exposé présentera les principes et la programmation de JSTL. Enfin il s’attachera à présenter une démonstration technique (rapide) de la programmation des JSTL (par exemple sur la base du sujet ECOM pour l’accès aux EJB).
Le modèle MVC (Modèle Vue Controleur) est un patron de conception classique pour la construction d’interface graphique (GUI). Les frameworks JSF et Struts permettent d’appliquer le modèle MVC à la conception des applications Web. Struts est basé entre autre sur les Servlets, sur XML, les JSP et les TagLibs.
Cet exposé présentera le modèle de programmation proposé par JSF et par Struts. Enfin il s’attachera à présenter une démonstration technique de la programmation de JSF (par exemple sur la base du sujet ECOM
Références
Une part croissante de l'information disponible sur les réseaux est sous
forme multimédia, c'est-à-dire comporte des séquences audio ou vidéo, dont la bonne
reproduction fait intervenir le temps. Les systèmes et applications qui gèrent
des flots multimédia sont donc soumis à des contraintes de qualité de service (Quality
of Service, QoS) qui expriment les conditions sous lesquelles la qualité de
leur restitution est acceptable. La qualité de service est obtenue par le
contrôle des ressources globales (réseaux, organes de traitement et de
stockage, etc.).
Un autre aspect est le développement de présentations incluant des flots
multimédia. Dans ce domaine, le World Wide Web Consortium (W3C) a développé un standard, SMIL (Synchronized Multimedia
Integration Language).
L’exposé attendu équilibrera un exposé sur les protocoles de transport RTP et RSTP, les serveurs de fichiers vidéo et le langage SMIL. Une démonstration sera présentée.
Références générales :
· G. Blair, J.-B. Stefani, Open Distributed Processing and Multimedia, Addison-Wesley, 1998
·
Cheng, C.K. (1998). A survey of media servers . Hong
Kong University CSIS, November,
http://www.csis.hku.hk/~ckcheng/papers/video.ps
· Darwin
· VideoLan
· RTP
· RTSP
· SMIL
Une étude de cas bien documentée : Tiger
· Bolosky, W., Barrera, J., Draves, R., Fitzgerald, R., Gibson, G., Jones, M., Levi, S., Myhrvold, N. and Rashid
·
R. (1996). The Tiger video fileserver, 6th NOSSDAV
Conference , Zushi, Japan, April.
http://www.research.microsoft.com/~bolosky/tiger/tiger.html
Les EMB (Enterprise Media Beans) est une spécification très récente de J2EE qui introduit la représentation et la manipulation d’objets multimédia (image, sons, vidéo) dans la conception d’applications J2EE (Servlet/JSP/JTSL/JSF + Enterprise Beans).
Cet exposé présentera le modèle de programmation des EMB et fera le point sur les serveurs J2EE du marché supportant les EMB. Une petite démonstration sera présente à partir de l’implementation de référence d’IBM.
http://www.jcp.org/aboutJava/communityprocess/review/jsr086/
http://oss.software.ibm.com/developerworks/downloads/detail.php?group_id=130&what=pack&id=190
http://www.alphaworks.ibm.com/tech/emb
Le « Edge Computing » est un nouveau modèle d’architecture d’infrastructure d’entreprises basé sur le rapprochement des ressources de calcul vers les utilisateurs finaux. Habituellement les requêtes sont prises en charge par des serveurs applicatif. Ceux-ci doivent être à même de répondre à des millions de ces requêtes. L’approche « Edge Computing » définit une hiérarchique de serveurs avec l’utilisation de nombreux serveurs frontières (« edge servers ») de faible coût aux points d’entrée Internet de l’entreprise et ses serveurs applicatif.
L’intérêt de cette approche est qu’elle permet de décharger les serveurs applicatifs et d’assurer le passage à l’échelle en multipliant les serveurs frontières. Cette approche peut s’appliquer de manière générique à des nombreux contextes applicatifs (e-Commerce, management, domotique, supervision industrielle, …).
Dans le contexte d’infrastructures orientées vers le B2C, le B2B, et le EAI, ces serveurs frontières sont le plus souvent des serveurs de cache de documents de natures variées. Ces documents peuvent être des documents multimédia de grandes tailles, des pages web dynamiques, index de moteurs de recherche (multimédia). Dans le cas des pages web dynamiques (http://www.esi.org), les serveurs frontières analysent les requêtes des usagers et retournent des documents en assemblant des fragments statiques et des fragments dynamiques qui sont demandés aux serveurs applicatifs. Les fragments dynamiques sont le plus souvent gérés dans des « caches » par chaque serveur frontière jusqu’à une date d’expiration ou par invalidation du serveur applicatif.
L’exposé s’attachera à présenter en première partie, les motivations et les acteurs du Edge Computing puis en deuxième partie, la programmation d’applications au moyen des ESI.
MicroSoft a dévoilé .NET courant 2001 son nouvel environnement de développement à composant qui succède à DCOM. Cet environnement s’accompagne du nouveau langage C# qui emprunte beaucoup de concepts à Java et a C++.
Cet exposé s’attachera à présenter dans une première partie le langage C# (en le comparant à Java et C++ et à d’autres langages de programmation) et à présenter l’environnement .NET (ses fonctionnalités et son architecture). Comme MicroSoft a annoncé vouloir mettre le langage C# dans la communauté Open Source, vous conclurez sur les implantations libres en cours de ce langage et de l’environnement .NET. Une démonstration de développement pourra être présenté.
Cette présentation traitera des solutions de paiement électroniques pour les sites de commerce électronique (e-Carte Bleue, PayPal, ...)