Stage Erasmus. Année Universitaire : , Semestre 4. DUT Informatique de gestion IUT A Lille1, France
|
|
- Jean Brunet
- il y a 8 ans
- Total affichages :
Transcription
1 DUT Informatique de gestion IUT A Lille1, France Client de VOIP & Application Web de Flashcards Stage Erasmus Hochschule Rheinmain - Wiesbaden Alexandre Rupp, Jordan Piorun Année Universitaire : , Semestre 4
2 i
3 Aknowledgements First of all, we would like to thank Prof. Dr. Martin Gergeleit our supervisor and teacher in the Advanced-Networking Course at Hochschule Rheinmain. We thank him for the help he could gave us during the internship and the time he spent to organise our coming in the university. We would also like to thank Prof. Dr.-Ing. Ludger Martin, our teacher during the course of "Web-Engineering", for the very nice lectures he gave and the help he provided to us during the praktical work. Then we would like to thank Mr. Lebègue who helped us to organise the internship and to take contact with the right persons in Germany. We would also like to thank Ms. Leuschner and the German Internationnal Ressources Oce for the help they provided to us to organise our internship and to nd a room in Wiesbaden. Finally we would like to thank the Internationnal Ressources Oce of the IUT A from Lille for their help to nd an internship in Germany. ii
4 Abstract At the end of our studies in the "IUT A of Lille 1" in the computer science department, we have been given the opportunity to do an internship in Germany. During our stay there, we took 2 courses named "Advanced-Networking" and "Web- Engineering" respectively taught by Prof. Dr. Martin Gergeleit and Prof. Dr.-Ing. Ludger Martin. Both of these courses were accompanied by a project and a nal presentation. And in the case of Web-Engineering we had to complete weekly programming assignments. Our rst project was to developp a Voice over IP Client, and the second one was to developp a web-application of ashcards. This internship enabled us to improve both our technical knowledges, and our language knowledges in German. iii
5 Table des matières Aknowledgements Abstract ii iii I Présentation de l'environnement 1 I. I Présentation de Wiesbaden I. II Présentation de l'université d'accueil II Travaux réalisés 3 II. I Une semaine ordinaire II. IICours et projet de Web-Engineering II. II. 1Les cours II. II. 2Les travaux pratiques II. II. 3Le projet II. II. 4Communication entre Client et serveur II. II. 5L'interface utilisateur II. IIICours et projet d'advanced-networking II. III. 1Les cours II. III. 2Le projet III Apports techniques et humains 18 III. IApports techniques III. I. 1Technologies du Web III. I. 2Réseau III. IIApports humains Conclusion 20 Annexes 22 iv
6 Table des gures I.1 Carte d'allemagne I.2 "Martkirche" : église évangélique du centre ville de Wiesbaden I.3 Photo du batiment, où nous avons suivi nos cours II.1 Tableau des verbes HTTP employés par l'architecture REST II.2 Hiérarchie des chiers de Card'it II.3 Processus de traitement des URL II.4 Fonctionnement du protocole SIP en architecture Point à Point II.5 Fonctionnement du protocole SIP lors de l'utilisation de proxys II.6 Exemple de contenu SDP II.7 Modèle de JAIN SIP II.8 Fonctionnement des classes RTP_Receiver et RTP_Transmitter v
7 I Présentation de l'environnement I. I Présentation de Wiesbaden Wiesbaden est la capitale du Länder (région) de la Hesse situé dans le centre-ouest de l'allemagne. Figure I.1 Carte d'allemagne C'est également la deuxième ville la plus grande ( habitants) et la plus riche (PIB par habitant de euros) du Länder. Celle-ci se trouve sur la rive droite du Rhein et est l'une des plus anciennes villes thermale d'europe avec 26 sources d'eau chaude et 1 source d'eau froide. Figure I.2 "Martkirche" : église évangélique du centre ville de Wiesbaden 1
8 I. II Présentation de l'université d'accueil 2 I. II Présentation de l'université d'accueil Nous avons réalisé notre stage dans l'université Horschule RheinMain. Fondée en 1971, l'université RheinMain s'est spécialisée dans les sciences appliquées telles que l'informatique, l'architecture ou l'ingénierie. Elle se divise en trois sites possédant chacun leurs spécialités : Le premier site est destiné au management, avec plus de 2400 étudiants, c'est la partie la plus importante de l'université. Le second site est consacré au design, à l'architecture, ainsi qu'aux mathématiques et à la physique. Quant au troisième site, qui se trouve être celui où nous avons eectué notre stage, il couvre à la fois l'informatique et les médias. Moderne et entouré de végétation, on y reçoit des cours en accord avec les technologies actuelles, illustrés par des TP ainsi que des projets personnels qui nous orent la possibilité de mettre en pratique les notions apprises. Figure I.3 Photo du batiment, où nous avons suivi nos cours
9 II Travaux réalisés Au cours de notre séjour à Wiesbaden, nous avons eu à suivre deux cours : "Web- Engineering" et "Advanced-Networking". Tous deux étaient dispensés en Allemand et avaient une valeur de 10 crédits ECTS chacun. II. I Une semaine ordinaire Une semaine ordinaire se déroule de la façon suivante : le mardi matin nous avons cours puis TP de Web-Engineering, et le mercredi matin, nous avons cours puis TP d'advanced Networking. Ces séances permettent à la fois d'acquérir de nouvelles notions susceptibles d'être utiles pour le projet, mais également de faire le point de façon hebdomadaire sur l'avancée des travaux. Dans le cas des cours de Web-Engineering, les connaissances vues en cours sont systématiquement mises en application lors des séances de travaux pratiques qui suivent. En ce qui concerne l'advanced-networking, les séances de TP sont réservées dans le but de faire le point sur l'avancée du projet avec l'enseignant et d'évoquer les problèmes rencontrés. II. II Cours et projet de Web-Engineering Le cours de Web-Engineering est constitué de 2h de cours et 4h de TP hebdomadaires. Il est sanctionné par un contrôle continu (un TP à rendre chaque semaine, par groupe), ainsi que par une remise de projet, et une présentation orale en Allemand. II. II. 1 Les cours La matière Web-Engineering a pour objectif : "La Compréhension des concepts actuels, des méthodes, des techniques, des outils et de l'expérience nécessaires au développement d'applications web et la mise à prot ces connaissances au cours d'un projet réalisé en groupe." Pour cela diérents thèmes / sujets ont été abordés au l des séances. Notamment : Le langage Javascript L'utilisation du framework jquery La technologie AJAX L'utilisation de JSON L'architecture RESTful Le HTML5 (canvas) 3
10 II. II Cours et projet de Web-Engineering 4 Le SVG La compression/optimisation des données pour le Web La préoccupation de la qualité, les tests (PHPUnit et Sélénium IDE) Les techniques de référencement Les méthodes de statistique etc... Ces diérents enseignements représentants une part importante de notre stage, et ayants servi de base théorique pour réaliser notre projet, nous nous proposons ici de présenter certains points plus en détails. II. II. 1.1 Le langage Javascript Le langage Javascript a été créé en 1995 pour le compte de Netscape Communications Corporation. C'est un langage orienté objet à prototype. Il peut être utilisé à la fois côté client et côté serveur, bien qu'on le trouve plus souvent côté client. Lorsqu'il est employé côté client, il est interprété par le navigateur. On l'emploie pour diérents usages, par exemple pour rendre l'interface utilisateur plus agréable, plus uide ou plus dynamique. Mais aussi pour faire de la vérication de formulaires côté client, ou encore an d'envoyer des requêtes dynamiquement vers un serveur (comme c'est le cas en AJAX, cf II. II. 1.3). Voici un exemple simple de vérication de formulaire en Javascript : 1 function checkformularentries () { 2 // verifie que la valeur entree pour le pseudo ne soit pas vide. 3 if ( document. getelementbyid (" pseudo "). value!= "") { 4 document. formsaisie. submit () ; 5 } 6 else { 7 return false ; 8 } 9 } Listing II.1 Exemple de validation d'un formulaire en Javascript II. II. 1.2 Le framework jquery JQuery est une bibliothèque javascript créé en Elle permet d'eectuer les mêmes opérations qu'avec du Javascript standard (parcours du DOM 1, modication de propriétés CSS, AJAX, évènements etc.... ), mais de façon plus simple, plus rapide, et en ayant la garantie de la compatibilité entre les diérents navigateurs. Voici un exmple d'utilisation du langage, comparé avec une utilisation de Javascript classique : 1. DOM : Document Object Model
11 II. II Cours et projet de Web-Engineering 5 1 // Manipulation du DOM : 2 document. getelementbyid (" pseudo "); // Javascript 3 $("# pseudo "); // jquery 4 5 document. getelementsbyclassname (" links "); 6 $(". links "); 7 8 // Modification des proprietes CSS : 9 document. getelementbyid (" pseudo "). style. backgroundcolor = " blue "; // Javascript 10 $("# pseudo "). css ( ' background - color ','blue '); // jquery Listing II.2 Exemples d'utilisation de jquery, mis en comparaison avec du Javascript II. II. 1.3 La technologie AJAX AJAX 2 est une technologie qui utilise du JavaScript, les CSS, XML, le DOM et le XMLHttpRequest an d'envoyer dynamiquement des requêtes vers le serveur et de traiter les informations reçues. Cela permet notamment de créer des applications web et des sites web dynamiques, où il n'y a plus nécessairement besoin de recharger la page entièrement pour avoir du contenu nouveau. On emploie les XMLHttpRequest an de dialoguer de façon asynchrone avec le serveur, le Javascript sert à manipuler le DOM an d'y insérer les informations reçues. Enn le XML (de plus en plus souvent remplacé par du JSON 3 ) sert à structurer l'information envoyée et reçue. Voici un exemple de requête AJAX eectuée en jquery (l'emploi de l'xmlhttprequest est dès lors masqué par le framework) : 1 // Exemple de requete POST envoyee en AJAX, avec jquery et utilisant du JSON 2 3 $. ajax ({ 4 type : " POST ", 5 url : " monsiteweb. com ", 6 data : { pseudo : moi, 7 password : MonPassword 8 }, 9 success : function () { alert (" Tout est Ok!") }, 10 datatype : " json " 11 }) ; Listing II.3 Exemple d'envoie d'une requête POST avec Jquery 2. AJAX : Asynchronous JavaScript and XML 3. JSON : JavaScript Object Notation
12 II. II Cours et projet de Web-Engineering 6 II. II. 1.4 L'architecture REST REST 4 a été créé par Roy Fielding en 2000 dans le cadre de sa thèse de doctorat [2]. Il s'agit d'un style d'architecture permettant de modéliser les échanges entre client et serveur au sein d'une appliaction web. En utilisant l'architecture REST, les pages webs et les données qu'elles contiennent sont considérées comme des ressources. An d'identier une ressource et de pouvoir y accéder, on utilise des URIs 5. Par exemple : pour obtenir une liste de livres : http ://monsite.com/livres pour obtenir un livre en particulier : http ://monsite.com/livres/2 pour obtenir la liste des livres de Maxime : http ://monsite.com/users/maxime/livres/ pour obtenir les avis sur un livre : http ://monsite.com/livres/2/avis Ensuite pour identier les opérations à eectuer avec la ressource on utilise les verbes HTTP : Opérations Créer un ressource Acher une ressource Mettre à jour une ressource Supprimer une ressource Verbes HTTP CREATE GET PUT DELETE Figure II.1 Tableau des verbes HTTP employés par l'architecture REST. Pour supprimer un livre on utilisera donc par exemple une requête de ce genre : DELETE http ://monsite.com/livres/2 Enn, les requêtes contiennent une représentation de la ressource envoyée ou reçue. Cette représentation est le plus souvent faite en XML ou en JSON. Le client spécie dans sa requête le format qu'il désire pour la réponse. Lorsque le client reçoit une réponse, il choisit de mettre en forme comme il le souhaite les informations brutes contenues dans la réponse du serveur. D'autres aspect de REST sont importants, le serveur doit notamment renvoyer des codes de statut HTTP en fonction du traitement qu'il a eectué. Par exemple : 200 Ok 4. REST : REpresentational State Transfer 5. URI : Uniform Resource Identier
13 II. II Cours et projet de Web-Engineering 7 qui signie que le traitement a été eectué avec succès, 401 Unauthorized : l'utilisateur a tenté d'accéder à une ressource sans être authentié, 404 Not found : la ressource n'a pas été trouvée etc..... Il est aussi important que des informations sur la date de création de la ressource soient envoyées an de permettre la mise en cache de celle-ci. L'avantage des architectures de type REST est qu'elles permettent une bonne séparation du client et du serveur, facilitant ainsi la maintenance de l'un et de l'autre. D'autre part, le web-service peut être utilisé par n'importe quel autre client. II. II. 1.5 Canvas et SVG SVG et Canvas sont actuellement deux technologies concurrentes qui permettent de réaliser des rendus dynamiques d'image. SVG étant toutefois une technologie plus anciennes, puisque développée depuis Cette dernière technologie permet également de créer des animations. Canvas est une des nouvelles fonctionnalités d'html5. Pour créer un canvas on utilise la balise éponyme. Cette balise lorsqu'elle est utilisée, crée un nouvel objet dans le DOM, qui peut ensuite être modié en Javascript comme les autres éléments. II. II. 1.6 Optimisation L'optimisation des ressources sur le web est importante, car elle permet de garantir (entre autre) l'accès à l'application depuis diérents types de terminaux. En eet, bien souvent les terminaux mobiles disposent d'une connexion limitée. Il est donc nécessaire de réduire le poids des ressources transférées et le nombre de requêtes eectuées. Pour cela plusieurs possibilités : Compresser les chiers HTML, CSS, Javascript en enlevant tous les espaces et passages à la ligne. Raccourcir les noms employés pour les classes et id en HTML et CSS. Enlever les commentaires dans les chiers HTML, CSS et javascript. Raccourcir au maximum les noms de variables en Javascript. Raccourcir au maximum les noms de fonctions en Javascript. Grouper les diérents chiers Javascript en un seul an de réduire le nombre de requêtes HTTP. Grouper les diérents chiers CSS en un seul an de réduire le nombre de requêtes HTTP. Lors de l'emploi de librairies telles que jquery, utiliser un lien vers l'api jquery hébergée chez Google an de pouvoir bénécier d'une éventuelle précédente mise en cache. Utiliser des algorithmes de compression pour comprimer les codes (par exemple en gzip). Optimiser le poids des images avec des logiciels spécialisés.
14 II. II Cours et projet de Web-Engineering 8 D'autres optimisations peuvent être réalisées du côté Javascript, non plus pour réduire la taille des chiers ou le nombre de requêtes, mais pour accroître la rapidité d'exécution du code. Par exemple, remplacer les i++ par des ++i lorsque celà est nécessaire. Ou encore préférer une boucle do{ }while(i) à une boucle for (var i = 0 ;i<iter ; i++).... On préfèrera également un nommage complet à un nommage partiel (ex : window.location.href est mieux que location.href ). On peut également éviter de faire appel à une fonction dans la condition d'arrêt d'une boucle. De nombreuses autres optimisations locales permettent de rendre le code javascript plus rapide à s'exécuter. II. II. 1.7 Préocupation de la qualité En ce qui concerne la qualité, on peut eectuer diérents types de tests. Notamment des tests de boite blanche ou de boite noire. Voir même des tests de boite grise (i.e. développement dirigé par les tests). Pour cela on dispose en PHP de la librairie PHPUnit. On peut dans un second temps tester les interactions avec l'interface utilisateur de l'application web. Et même les automatiser, avec des logiciels comme Sélénium IDE. II. II. 2 Les travaux pratiques Chaque cours de Web-Engineering était suivi d'une séance de 4h de TP, avec la plupart du temps un travail à rendre pour la n de la semaine. Il y eut donc diérents travaux sur : La manipulation de Javascript Le traitement du XML avec PHP JQuery L'AJAX avec Javacript (réalisation d'un jeu de mastermind) L'AJAX avec jquery Création d'une mini API REST (système de messagerie) Authentication avec HTTP Optimisation de notre projet (crunching et optimisation locales) Tests unitiares avec PHP Unit II. II. 3 Le projet Le sujet du projet de Web-Engineering était au libre choix des étudiants. Lors de la première séance de travaux pratiques, nous avions à dénir notre projet, avec un inventaire sommaire des principales fonctionnalités. Le but était de réaliser une application web qui ferait intervenir du PHP, ainsi que les diérentes technologies que nous allions voir (i.e. javascript, jquery, AJAX, JSON, REST). II. II. 3.1 Concept En ce qui nous concerne, nous avons opté pour une application web de "Flashcards". Les ashcards étant des cartes mémoires, utilisées par les étudiants pour apprendre un
15 II. II Cours et projet de Web-Engineering 9 cours. On y marque d'un côté une question, et de l'autre la réponse. II. II. 3.2 Les fonctionnalités de l'application Au départ, nous avions posé diérentes fonctionnalités : Des fonctionnalités sociales : - Prol utilisateur - Système de messagerie privée - Groupes d'utilisateurs - Système déchange de cartes Les fonctionnalités liées au coeur de l'application (aux cartes) : - Gérer un deck (i.e. le créer, le voir, le modier, le supprimer). - Jouer à un deck. - Visualiser le résultat / la progression. - Gérer une carte. II. II. 3.3 La base de données Dés le deuxième TP, il nous était demandé de modéliser les principales entités de la base de données à l'aide d'un schéma de type ER-Diagram 6. En Allemagne les étudiants n'utilisaient pas Merise, mais plutôt la notation de Chen, nous avons donc fait de même. Le modèle de notre base de données est constitué de cinq entités principales : Benutzer (= Utilisateur) Gruppe (= Groupe) Deck Karte (= Carte) Nachricht (= Message) L'ER-Diagram ayant servi de base à la conception de la base de données se trouve en annexe (cf Annexe, gure 1). II. II. 3.4 Architecture et choix techniques Le projet de Web-Engineering, nommé CARD'IT se base sur les technologies PHP, Javascript, jquery, JSON, AJAX. Le projet Card'it est constitué de deux principaux dossiers : un dossier pour l'application côté serveur (dossier application) et le dossier Web qui contient les chiers HTML, CSS et Javascript qui vont être utilisés du côté client. Nous avons conçu l'application comme une API RESTful, ce qui veut dire qu'elle suit les précepts REST (i.e. tout est ressource, et l'accés à celles-ci se fait grâce aux verbes HTTP). L'API pourrait donc très bien être utilisée par autre que nous. 6. ER-Diagram : Entity Relationship Diagram
16 II. II Cours et projet de Web-Engineering 10 Figure II.2 Hiérarchie des chiers de Card'it L'architecture interne de l'application, est quant à elle organisée selon un modèle MVC 7 pour plus de clarté. Chaque ressource (dans notre cas : Users, Decks, Cards, Groups, Messages) possède donc un modèle, un controleur et si besoin une vue. An de pouvoir réaliser un API RESTful nous avons mis en place un système d'url rewritting. Ainsi chaque lien du type http ://cardit.fr/users/alex est ré-écrit de la façon suivante : http ://cardit.fr/index.php/users/alex. Le chier index.php sert de contrôleur principal / rooteur : il analyse l'url ainsi que la méthode HTTP employée et appel ensuite le contrôleur de la ressource appelée (ici le contrôleur de Users). Dans le cas présent, le contrôleur de User va ensuite appeler l'une des méthodes du modèle, en fonction des données que lui aura transmis le rooteur / contrôleur principal. Voici un schéma décrivant le processus de traitement des URLS : Le coeur de l'api se situe dans le modèle, car celui-ci contient l'ensemble des fonctions utilisées par l'application. Une vue globale des diérents chiers du modèle et des fonctions qu'ils contiennent est disponible en annexe (cf Annexes, gure 2). II. II. 4 Communication entre Client et serveur La communication entre l'api REST côté serveur et le client se fait grâce à des requêtes AJAX réalisées en jquery. Les données sont transmises au format JSON. Lorsque le client reçoit les données, il les met ensuite en forme avec du HTML. Sur CARD'IT, seulement trois pages sont issues de lien en dur, toutes les autres sont le fruit de requêtes AJAX (c'était le but de Web-Engineering). Le client ainsi que le code Javascript qu'il contient, jouent donc un rôle important. De nombreux évènements sont dénis en Javascript, ainsi que plusieurs requêtes AJAX qui s'y 7. MVC : Model View Controller
17 II. II Cours et projet de Web-Engineering 11 Figure II.3 Processus de traitement des URL rattachent. Le tout permet un rendu uide des informations, à la manière d'une application traditionnelle. II. II. 5 L'interface utilisateur L'interface utilisateur a été soignée an d'être agréable. Du Jquery a été employé an de permettre un enchainement uide des éléments graphiques. Des images de l'application web sont présentes en Annexe.
18 II. III Cours et projet d'advanced-networking 12 II. III Cours et projet d'advanced-networking Tout comme le cours de Web-Engineering, le cours d'advanced Networking est lui aussi constitué de 2h de cours et 4h de TP hebdomadaires. Cependant, le rôle des heures de TP dière. En eet, il s'agit d'heures réservées pour aborder avec l'enseignant l'avancement du projet et les dicultés rencontrées. Le cours est donc sanctionné par une remise de projet, et une présentation orale en Allemand. II. III. 1 Les cours Durant les cours, de nombreux thèmes ont été abordés : Qualité de service VOIP 8 WLAN (i.e. WIFI) Gestion de Réseaux IP Multicasting et Anycasting II. III. 2 Le projet Le thème du projet était laissé au libre choix des étudiants parmi une liste de proposition. Nous pouvions entre autre réaliser des "Proof Of Concept" 9, ou de montrer comment exploiter une faille réseau, ou alors d'utiliser des protocoles réseaux dans une application. Comme par exemple pour faire de la VOIP. C'est ce que nous avons décidé de faire. L'objectif qui nous était xé était de développer un client de VOIP. D'autre part, une contrainte nous était xée par l'enseignant sur place : notre client devait également pouvoir fonctionner avec d'autres clients déjà existants. Ceci an de prouver que nous avions bien respecté les protocoles. II. III. 2.1 Le principe de la VOIP Le principe de la VOIP est de transmettre un signal audio (la voix) au travers d'un réseau compatible IP, comme c'est le cas d'internet. La VOIP possède de nombreux avantages par rapport aux approches plus classiques (téléphonie standard) : Un avantage en termes de coûts Facile à installer et à congurer Implémenté par l'intermédiaire de logiciels Interopérabilité par l'intermédiaire du protocole SIP 10 Utilise les NGN 11, ce qui permet d'avoir une même plateforme pour tous les services. 8. VOIP : Voice Over IP 9. Proof Of Concept : Démonstration de faisabilité. 10. SIP : Session Initiation Protocol 11. NGN : Next Generation Network
19 II. III Cours et projet d'advanced-networking 13 Facile de développer de nouveaux services, ou d'améliorer le service existant (car tout est faisable par solution logicielles). II. III. 2.2 Concept La VOIP se base sur l'utilisation de diérentes technologies et protocoles. Nous avons en particulier eu recours à trois protocoles diérents : SIP, SDP et RTP (que nous allons détailler). Session Initialisation Protocol Le premier protocole est SIP (Session Initialisation Protocole). Il sert à établir le dialogue entre deux clients de VOIP, et à synchroniser les échanges. C'est également par son intermédiaire que vont transiter les informations nécessaires à l'établissement de la communication audio. Pour que les deux clients puissent initialiser une session, ils s'envoient deux types de messages : les requêtes (ex : INVITE, ACK, REGISTER, BYE etc... ) et les réponses (ex : 100 Trying, 180 Ringing, 200 OK etc... ). Le protocole est déni au travers de diérents RFC. Le principal est le RFC 3261 [1] qui détaille les diérentes étapes, les messages qui doivent être envoyés, ainsi que leur contenu. D'autre part le RFC 3665 [5] illustre les diérents scénarios que l'on peut rencontrer avc SIP. Le protocole SIP peut fonctionner selon deux types d'architecture : Point à Point (i.e. client à client directement) client-serveur-client Dans l'architecture point à point, l'un des deux clients contacte l'autre en utilisant directement son adresse IP et un port (ex : alexandre@ :5060). Voici le déroulement d'un appel classique, avec SIP, en point à point : Figure II.4 Fonctionnement du protocole SIP en architecture Point à Point Une autre architecture possible passe par l'utilisation de proxy et d'un serveur Registrar. Dans ce cas, les clients n'ont pas à connaitre les adresses IP l'un de l'autre mais simplement un identiant. De cette façon lorsqu'un client se connecte, il envoie automatiquement un message vers le serveur. Le serveur associe ensuite l'adresse IP actuelle du
20 II. III Cours et projet d'advanced-networking 14 client à son identiant. Ensuite les autres utilisateurs n'ont besoin de connaître que l'identiant. Le message envoyé au serveur est un message de type REGISTER. En réalité deux messages de ce type sont envoyés. Le premier sert à obtenir des informations de la part du serveur (sur l'algorithme et le salage à utiliser pour crypter l'identiant et le mot de passe par la suite). Puis le deuxième REGISTER envoyé contient en plus du premier l'identiant et le mot de passe cryptés de l'utilisateur. Voici un schéma décrivant les diérents messages envoyés lors d'un échange utilisant un proxy : Figure II.5 Fonctionnement du protocole SIP lors de l'utilisation de proxys Session Description Protocol Le protocole SDP est en fait contenu dans le corps des messages INVITE et 200 OK de SIP. Il sert en quelque sorte de négociation entre les deux parties. Dans un premier temps le client qui appelle, envoie un contenu SDP dans le corps du INVITE. Plusieurs informations nécessaires à l'établissement de la communication audio y sont décrites, par exemple la durée souhaitée de l'appel, le port réseau à utiliser, les codecs audio que le client est capable de supporter etc... Ensuite l'appelé renvoie lui aussi un contenu SDP, mais cette fois dans la réponse 200 OK qu'il fournit. Les informations envoyées sont en fait les mêmes que celles reçues, mais elles ont été modiées pour correspondre aux capacités de ce deuxième client.
21 II. III Cours et projet d'advanced-networking 15 Lorsque les deux paquets SDP ont été envoyés. Le dernier SDP envoyé/reçu sert de contrat pour l'établissement des ux audio. Le protocole SDP est déni dans le RFC 4566 [4]. Voici un exemple type de paquet SDP : Figure II.6 Exemple de contenu SDP Real-Time Transport Protocol Le protocole RTP (de la couche application) sert à transmettre des ux audio ou vidéo en continu (par exemple pour du streaming). Il est basé sur le protocole UDP 12, de la couche transport. Il permet l'envoie de ux multimédia et supporte diérents codecs. Ce protocole est déni au travers du RFC 3550 [3]. II. III. 2.3 Implémentation L'implémentation du client de VOIP que nous avons réalisé se base sur les protocoles cités ci-dessus. Pour développer le logiciel, nous avons utilisé JAVA, ainsi que deux librairies : JAIN SIP (qui fournit une pile pour le protocole SIP) JMF RTP (qui sert pour le protocole RTP) Les étapes de développement Le développement du projet s'est eectué par étapes. Nous avons dans un premier temps cherché à faire fonctionner le logiciel selon une architecture Point à Point. Pour celà nous avons d'abord mis en place les diérentes requêtes et réponses envoyées lors de l'utilisation du protocole SIP. Par la suite, nous avons travaillé sur le protocole SDP, plus particulièrement sur le traitement et l'envoie des messages qui en contennaient. Et enn nous avons mis en place la communication audio, grâce au protocole RTP, et la librairie JMF. 12. User Datagram Protocol
22 II. III Cours et projet d'advanced-networking 16 Une fois que ce travail était achevé, et que notre application fonctionnait parfaitement selon une architecture Point à Point, nous avons cherché à la faire fonctionner selon l'architecture client-serveur-client. Pour celà, nous avons ms en place l'envoit des messages REGISTER, et le traitement des requêtes et réponses qui y sont associées. Architecture du projet Le projet est organisé selon un modèle MVC et est constitué de plusieurs classes. C'està-dire, les classes du modèle : SIP_Model : centralise les diérentes classes du modèle SIP_Layer : qui sert à l'établissement du protocole SIP SDP_Parser : qui sert à parser le SDP RTP_Receiver : qui sert à recevoir les paquets RTP et à émettre le son reçu RTP_Transmitter : qui sert à capter le son provenant du micro et à l'envoyer via des paquets RTP. Diérentes classes pour les vues : VOIP_GUI : la vue principale Before_Call_Panel : Panel inséré dans la vue principale avant un appel During_Transmition_Panel : Panel inséré dans la vue principale durant un appel Register_Panel : Panel inséré dans la vue principale pour permettre à l'utilisateur de s'authentier. Receiving_Dialog : Boite de dialogue qui s'ouvre à la réception d'un appel. Ainsi que des controleurs présents en tant que classes internes. Utilisation des librairies La classe la plus importante du modèle est la classe SIP_Layer qui sert à mettre en place le protocole SIP. La classe SIP_Layer implémente l'interface SIPListener fournie par la librairie JAIN SIP. SIP_Layer sert donc à réceptionner puis traiter les diérentes requêtes et réponses SIP. D'autres classes et interfaces sont fournies par JAIN SIP, notamment les factories (SIPFactory, MessageFactory, HeaderFactory etc... ) qui aident à la création de la pile de messages SIP, ainsi qu'à la création des requêtes et réponses. Les autres classes importantes fournies par JAIN, sont le SIPProvider, utilisé pour envoyer les requêtes et réponses, ainsi que le ListenningPoint Pour écouter une source de donnée, et enn la Stack qui sert à empiler les messages reçus.
23 II. III Cours et projet d'advanced-networking 17 Figure II.7 Modèle de JAIN SIP Nous avons également utilisé la librairie JMF RTP qui nous sert à la fois à capter et encoder les signaux audio, mais aussi à transmettre ces ux audio par le biais de paquets RTP. La librairie nous a servi à créer les classes RTP_Receiver et RTP_Transmitter. Dans le Receiver, on réceptionne les paquets RTP puis on transmet les données reçues vers le haut parleur. Dans le transmetteur, on capte les signaux audio en provenance du micro, puis on les encrypte, avant de les envoyer sous forme de paquets RTP. Figure II.8 Fonctionnement des classes RTP_Receiver et RTP_Transmitter
SIP. 2007 A. Aoun - La Visioconférence SIP - 1
Internet Multimédia Le Protocole SIP 2007 A. Aoun - La Visioconférence SIP - 1 Présentation (1) Session Initiation Protocol (dont le sigle est SIP) est un protocole récent (1999), normalisé et standardisé
Plus en détailSIP. Sommaire. Internet Multimédia
Internet Multimédia Le Protocole SIP 2011 André Aoun - Internet Multimédia SIP - 1 Sommaire 1. Présentation 2. Entités SIP 3. Méthodes et réponses 4. User Agent 5. Registrar 6. Proxy 7. Redirect Server
Plus en détailDevenez un véritable développeur web en 3 mois!
Devenez un véritable développeur web en 3 mois! L objectif de la 3W Academy est de former des petits groupes d élèves au développement de sites web dynamiques ainsi qu à la création d applications web
Plus en détailSIP. Plan. Introduction Architecture SIP Messages SIP Exemples d établissement de session Enregistrement
SIP Nguyen Thi Mai Trang LIP6/PHARE Thi-Mai-Trang.Nguyen@lip6.fr UPMC - M2 Réseaux - UE PTEL 1 Plan Introduction Architecture SIP Messages SIP Exemples d établissement de session Enregistrement UPMC -
Plus en détailPetite définition : Présentation :
Petite définition : Le Web 2.0 est une technologie qui permet la création de réseaux sociaux, de communautés, via divers produits (des sites communautaires, des blogs, des forums, des wiki ), qui vise
Plus en détailLa VOIP :Les protocoles H.323 et SIP
La VOIP :Les protocoles H.323 et SIP PLAN La VOIP 1 H.323 2 SIP 3 Comparaison SIP/H.323 4 2 La VOIP Qu appelle t on VOIP? VOIP = Voice Over Internet Protocol ou Voix sur IP La voix sur IP : Le transport
Plus en détailIntroduction de la Voix sur IP
Voix sur IP (VoIP) Introduction de la Voix sur IP La Voix sur IP, aussi connue sous le nom de téléphonie Internet, est une technologie qui vous permet de téléphoner via un réseau d ordinateurs basé sur
Plus en détailLangage HTML (2 partie) <HyperText Markup Language> <tv>lt La Salle Avignon BTS IRIS</tv>
Langage HTML (2 partie) «Je n'ai fait que prendre le principe d - hypertexte et le relier au principe du TCP et du DNS et alors boum! ce fut le World Wide Web!» Tim Berners-Lee
Plus en détailCompte-rendu de projet de Système de gestion de base de données
Compte-rendu de projet de Système de gestion de base de données Création et utilisation d'un index de jointure LAMBERT VELLER Sylvain M1 STIC Université de Bourgogne 2010-2011 Reponsable : Mr Thierry Grison
Plus en détailProjet 2. Gestion des services enseignants CENTRE D ENSEIGNEMENT ET DE RECHERCHE EN INFORMATIQUE. G r o u p e :
CENTRE D ENSEIGNEMENT ET DE RECHERCHE EN INFORMATIQUE Projet 2 Gestion des services enseignants G r o u p e : B E L G H I T Y a s m i n e S A N C H E Z - D U B R O N T Y u r i f e r M O N T A Z E R S i
Plus en détail4. SERVICES WEB REST 46
4. SERVICES WEB REST 46 REST REST acronyme de REpresentational State Transfert Concept introduit en 2000 dans la thèse de Roy FIELDING Est un style d architecture inspiré de l architecture WEB En 2010,
Plus en détailTAGREROUT Seyf Allah TMRIM
TAGREROUT Seyf Allah TMRIM Projet Isa server 2006 Installation et configuration d Isa d server 2006 : Installation d Isa Isa server 2006 Activation des Pings Ping NAT Redirection DNS Proxy (cache, visualisation
Plus en détailTélécom Nancy Année 2013-2014
Télécom Nancy Année 2013-2014 Rapport 1A Ajout du langage C dans la Programmer's Learning Machine GIANNINI Valentin Loria 615, rue du Jardin Botanique 54600, Villers-Lès-Nancy Maître de stage : QUINSON
Plus en détailNFA016 : Introduction. Pour naviguer sur le Web, il faut : Naviguer: dialoguer avec un serveur web
NFA016 : Introduction O. Pons, S. Rosmorduc Conservatoire National des Arts & Métiers Pour naviguer sur le Web, il faut : 1. Une connexion au réseau Réseau Connexion physique (câbles,sans fils, ) à des
Plus en détailVoix sur IP Étude d approfondissement Réseaux
Voix sur IP Étude d approfondissement Réseaux Julien Vey Gil Noirot Introduction Ce dont nous allons parler L architecture VoIP Les protocoles Les limites de la VoIP Ce dont nous n allons pas parler Le
Plus en détailLa VoIP: Les protocoles SIP, SCCP et H323. Jonathan BRIFFAUT Alexandre MARTIN
La VoIP: Les protocoles SIP, SCCP et H323 Jonathan BRIFFAUT Alexandre MARTIN Plan Rappel VOIP SIP H323 SCCP 2 Rappel Bref sur la VOIP Voix sur IP (1996) Le transport sur IP est moins cher que le RTC La
Plus en détailLe service FTP. M.BOUABID, 04-2015 Page 1 sur 5
Le service FTP 1) Présentation du protocole FTP Le File Transfer Protocol (protocole de transfert de fichiers), ou FTP, est un protocole de communication destiné à l échange informatique de fichiers sur
Plus en détailFormation : WEbMaster
Formation : WEbMaster Objectif et Description : Centre Eclipse vous propose une formation complète WebMaster, vous permettant de : Utiliser dès maintenant les nouveautés du web2, ainsi alléger les besoins
Plus en détailVOIP. QoS SIP TOPOLOGIE DU RÉSEAU
VOIP QoS SIP TOPOLOGIE DU RÉSEAU La voix sur réseau IP, parfois appelée téléphonie IP ou téléphonie sur Internet, et souvent abrégée en ''VoIP'' (abrégé de l'anglais Voice over IP), est une technique qui
Plus en détailDéveloppement d'un logiciel VoIP BlackBerry
UNIVERSITE DES SCIENCES, DES TECHNIQUES ET DES TECHNOLOGIES DE BAMAKO (USTTB) Développement d'un logiciel VoIP BlackBerry Par Mlle Kadidiatou Djibo Encadreurs : Mme Sogoba Jacqueline Konate, Maître-Assistant,
Plus en détailProtocole SIP et rc o d n o C ée yc L N E S ro P c a B
Protocole SIP 1 - La définition du protocole SIP, signifiant Session Initiation Protocole, vient du monde de l'informatique contrairement aux autres. SIP a été initié à l'origine par le groupe MMusic (Multiparty
Plus en détailLes Architectures Orientées Services (SOA)
Les Architectures Orientées Services (SOA) Ulrich Duvent Guillaume Ansel Université du Littoral Côte d Opale 50, Rue Ferdinand Buisson BP 699 62228 Calais Cedex Téléphone (33) 03.21.46.36.92 Télécopie
Plus en détailFORMATION PcVue. Mise en œuvre de WEBVUE. Journées de formation au logiciel de supervision PcVue 8.1. Lieu : Lycée Pablo Neruda Saint Martin d hères
FORMATION PcVue Mise en œuvre de WEBVUE Journées de formation au logiciel de supervision PcVue 8.1 Lieu : Lycée Pablo Neruda Saint Martin d hères Centre ressource Génie Electrique Intervenant : Enseignant
Plus en détailLA VoIP LES PRINCIPES
LA VoIP LES PRINCIPES 1 PLAN La VoIP Définition VoIP & ToIP Concepts de la VoIP Les principaux protocoles de la VoIP Transport Signalisation La sécurité dans la VoIP 2 Définition VoIP est l abréviation
Plus en détailLe stockage local de données en HTML5
Le stockage local HTML5, pourquoi faire? Dans une optique de réduction des couts de maintenance, de déploiement, beaucoup d'entreprises ont fait le choix de migrer leurs applicatifs (comptables, commerciales,
Plus en détailWEB & DÉVELOPPEMENT LES BASES DU WEB LE LANGAGE HTML FEUILLES DE STYLES CSS HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES
WEB & DÉVELOPPEMENT LES BASES DU WEB HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES LE LANGAGE HTML STRUCTURE D UNE PAGE En-tête et corps Syntaxe INSÉRER DES CONTENUS Texte : formatage (titre,
Plus en détailDéveloppement d'applications Web HTML5 L'art et la manière avec Visual Studio 2015 et TFS
Avant de commencer 1. Introduction 15 2. HTML5 oui, mais pas que... 15 2.1 HTML5 16 2.2 JavaScript 17 2.3 CSS 18 3. Les outils 18 Préparation des outils et création du projet 1. Introduction 21 2. Team
Plus en détailProgrammation Web. Introduction
Programmation Web Introduction 1 Introduction 10 séances 1 h cours + 1h TD Notes : contrôle continu DS 1 TP : note de groupe : rapport + code source + démo TD : note personnelle (=0 si 2 absences non justifiées)
Plus en détailWebmaster / Webdesigner / Wordpress
Webmaster / Webdesigner / Wordpress Pré-requis : Projet professionnel. Bonne maîtrise de l'ordinateur. Bases en infographie et / ou traitement de texte fortement recommandées. Objectifs : Concevoir un
Plus en détailNetwork Shutdown Module V3 Extension du Manuel Utilisateur pour architecture Virtualisée VMWare ESX Server 3, 3.5
Network Shutdown Module V3 Extension du Manuel Utilisateur pour architecture Virtualisée VMWare ESX Server 3, 3.5 Machine virtuelle Machine virtuelle Machine virtuelle VMware ESX Network Shutdown Module
Plus en détailRCS : Rich Communication Suite. EFORT http://www.efort.com
1 Introduction RCS : Rich Communication Suite EFORT http://www.efort.com Rich Communications Services (RCS) est une plate-forme offrant des services de communication incluant la messagerie instantanée
Plus en détailAssistance à distance sous Windows
Bureau à distance Assistance à distance sous Windows Le bureau à distance est la meilleure solution pour prendre le contrôle à distance de son PC à la maison depuis son PC au bureau, ou inversement. Mais
Plus en détailDispositif e-learning déployé sur les postes de travail
Résumé : Ce document fait l inventaire du matériel et des moyens nécessaires à la production de sessions de formation à distance à partir des postes de travail des salariés bénéficiant d une connexion
Plus en détailStéphanie Lacerte. Document technique. Connextek. 31 mai 2013. Cloudtel
Stéphanie Lacerte Document technique Connextek 31 mai 2013 Cloudtel Introduction Le logiciel Cloudtel a été conçu dans le langage de programmation Java. Ce logiciel utilisant la voix sur IP, communique
Plus en détail18 TCP Les protocoles de domaines d applications
18 TCP Les protocoles de domaines d applications Objectifs 18.1 Introduction Connaître les différentes catégories d applications et de protocoles de domaines d applications. Connaître les principaux protocoles
Plus en détailM1 Informatique, Réseaux Cours 9 : Réseaux pour le multimédia
M1 Informatique, Réseaux Cours 9 : Réseaux pour le multimédia Olivier Togni Université de Bourgogne, IEM/LE2I Bureau G206 olivier.togni@u-bourgogne.fr 24 mars 2015 2 de 24 M1 Informatique, Réseaux Cours
Plus en détailLa voix sur IP n'est pas un gadget, et présente de réels bénéfices pour l'entreprise.
VOIX SUR IP - VoIP Comprendre la voix sur IP et ses enjeux La voix sur IP n'est pas un gadget, et présente de réels bénéfices pour l'entreprise. Introduction La voix sur IP (Voice over IP) est une technologie
Plus en détailArchitecture N-Tier. Ces données peuvent être saisies interactivement via l interface ou lues depuis un disque. Application
Architecture Multi-Tier Traditionnellement une application informatique est un programme exécutable sur une machine qui représente la logique de traitement des données manipulées par l application. Ces
Plus en détailAJAX. (Administrateur) (Dernière édition) Programme de formation. France, Belgique, Suisse, Roumanie - Canada
AJAX (Administrateur) (Dernière édition) Programme de formation Microsoft Partner France, Belgique, Suisse, Roumanie - Canada WWW.SASGROUPE.COM Formez vos salariés pour optimiser la productivité de votre
Plus en détailTP2 - Conguration réseau et commandes utiles. 1 Généralités. 2 Conguration de la machine. 2.1 Commande hostname
Département d'informatique Architecture des réseaux TP2 - Conguration réseau et commandes utiles L'objectif de ce TP est d'une part de vous présenter la conguration réseau d'une machine dans l'environnement
Plus en détailInstallation d un serveur HTTP (Hypertext Transfer Protocol) sous Débian 6
Installation d un serveur HTTP (Hypertext Transfer Protocol) sous Débian 6 1 BERNIER François http://astronomie-astrophotographie.fr Table des matières Installation d un serveur HTTP (Hypertext Transfer
Plus en détailInstitut Supérieure Aux Etudes Technologiques De Nabeul. Département Informatique
Institut Supérieure Aux Etudes Technologiques De Nabeul Département Informatique Support de Programmation Java Préparé par Mlle Imene Sghaier 2006-2007 Chapitre 1 Introduction au langage de programmation
Plus en détailVoix sur IP. Généralités. Paramètres. IPv4 H323 / SIP. Matériel constructeur. Asterisk
Voix sur IP Généralités Paramètres IPv4 H323 / SIP Matériel constructeur Asterisk 38 Généralités Voix sur IP, ou VoIP : technologie(s) de transport de la voix, en mode paquet, par le protocole IP. Téléphonie
Plus en détailArchitecture distribuée
Architecture distribuée Conception et développement d algorithmes distribués pour le moteur Baboukweb Jean-Christophe DALLEAU Département de Mathématiques et Informatique Université de La Réunion 26 juin
Plus en détailAvant-propos 1. Avant-propos...3 2. Organisation du guide...3 3. À qui s'adresse ce guide?...4
Les exemples cités tout au long de cet ouvrage sont téléchargeables à l'adresse suivante : http://www.editions-eni.fr. Saisissez la référence ENI de l'ouvrage EP5EJAV dans la zone de recherche et validez.
Plus en détailwebmestre : conception de sites et administration de serveurs web 42 crédits Certificat professionnel CP09
AISL - Architecture et Intégration des Systèmes Logiciels - 2011-2012 webmestre : conception de sites et administration de serveurs web 42 crédits Certificat professionnel CP09 Administrer un serveur et
Plus en détailNetwork Shutdown Module V3 Extension du Manuel Utilisateur pour architecture Virtualisée VMWare ESX Server
Network Shutdown Module V3 Extension du Manuel Utilisateur pour architecture Virtualisée VMWare ESX Server Machine virtuelle Machine virtuelle Machine virtuelle VMware ESX 3 Network Shutdown Module Network
Plus en détail3W Academy Programme de Formation Développeur Intégrateur web Total : 400 heures
3W Academy Programme de Formation Développeur Intégrateur web Total : 400 heures Objectif global : A l issue de la formation, les stagiaires doivent être opérationnels dans la création d un site internet
Plus en détailPFE Télécommunications. Pré-rapport à l'issue des 6 premières semaines de stage. Page 1 sur 5 1 %
PFE Télécommunications Pré-rapport à l'issue des 6 premières semaines de stage!"!"#$%&' ()*()!")+")# (#),()-,)*)"-./0 1 ()*()!")+-)# % 23 &0 )14) 56 7$8797%77:7' '72 Page 1 sur 5 Contexte Les centres de
Plus en détailPlan. Le système de transfert de fichiers d'internet. Introduction aux systèmes de transfert de fichiers Le protocole FTP.
Le système de transfert de fichiers d'internet Bernard Cousin Université de Rennes I laboratoire IRISA http://www.univ-rennes1.fr/ Plan Introduction aux systèmes de transfert de fichiers Le protocole FTP
Plus en détailINTERNET, C'EST QUOI?
INTERNET, C'EST QUOI? Internet, c'est quoi? «Internet est le réseau informatique mondial qui rend accessibles au public des services variés comme le courrier électronique, la messagerie instantanée et
Plus en détailProjet de Veille Technologique
Projet de Veille Technologique Programmation carte à puce - JavaCard Ing. MZOUGHI Ines (i.mzoughi@gmail.com) Dr. MAHMOUDI Ramzi (mahmoudr@esiee.fr) TEST Sommaire Programmation JavaCard Les prérequis...
Plus en détailArchitecture Orientée Service, JSON et API REST
UPMC 3 février 2015 Précedemment, en LI328 Architecture générale du projet Programmation serveur Servlet/TOMCAT Aujourd hui Quelques mots sur les SOA API - REST Le format JSON API - REST et Servlet API
Plus en détailArchitectures web/bases de données
Architectures web/bases de données I - Page web simple : HTML statique Le code HTML est le langage de base pour concevoir des pages destinées à être publiées sur le réseau Internet ou intranet. Ce n'est
Plus en détailASP.NET MVC 4 Développement d'applications Web en C# - Concepts et bonnes pratiques
Introduction 1. Introduction 11 2. La plateforme de développement web de Microsoft 11 3. Définition du modèle de programmation MVC 14 4. L'historique d'asp.net MVC 17 4.1 ASP.NET MVC 1 (2008) 17 4.2 ASP.NET
Plus en détailProgrammation Web. Madalina Croitoru IUT Montpellier
Programmation Web Madalina Croitoru IUT Montpellier Organisation du cours 4 semaines 4 ½ h / semaine: 2heures cours 3 ½ heures TP Notation: continue interrogation cours + rendu à la fin de chaque séance
Plus en détailPartie 2 (Service de téléphonie simple) :
TRAVAUX PRATIQUES Partie 1 (Prologue) : Afin de connaitre la topologie du réseau, nous avons utilisé les commandes suivantes dans le prompt (en ligne de commande) : - «ipconfig» afin de connaitre notre
Plus en détailCouche Session M1 Info Z. Mammeri - UPS 1. Concept de session
Introduction à SIP (Session Initiation Protocol) M1 Info Cours de Réseaux Z. Mammeri Couche Session M1 Info Z. Mammeri - UPS 1 1. Introduction Concept de session Session : période pendant laquelle un groupe
Plus en détailRaja Bases de données distribuées A Lire - Tutoriel
Université des Sciences de Montpellier Master 2 Semestre 1 Unité d'enseignement FMIN306 Raja Bases de données distribuées A Lire - Tutoriel 26 janvier 2011 Audrey Novak Romain Maneschi Jonathan Fhal Aloys
Plus en détailStages 2014-2015 ISOFT : UNE SOCIETE INNOVANTE. Contact : Mme Lapedra, stage@isoft.fr
Stages 2014-2015 ISOFT : UNE SOCIETE INNOVANTE Contact : Mme Lapedra, stage@isoft.fr ISoft, éditeur de logiciels, est spécialisé dans l informatique décisionnelle et l analyse de données. Son expertise
Plus en détailQu'est-ce que le BPM?
Qu'est-ce que le BPM? Le BPM (Business Process Management) n'est pas seulement une technologie mais, dans les grandes lignes, une discipline de gestion d'entreprise qui s'occupe des procédures contribuant
Plus en détailAuthentification avec CAS sous PRONOTE.net 2011. Version du lundi 19 septembre 2011
1 Authentification avec CAS sous PRONOTE.net 2011 Version du lundi 19 septembre 2011 2 1 - Vocabulaire employé et documentation... 3 1.1 - SSO (Single Sign-On)... 3 1.2 - CAS (Central Authentication Service)...
Plus en détailSingle Sign On. Nicolas Dewaele. Single Sign On. Page 1. et Web SSO
Page 1 Introduction Sommaire I- Présentation de la technologie II- Architectures classiques et étude du marché III- Implémentation en entreprise IV- Présentation de systèmes SSO Annexes Page 2 Introduction
Plus en détailCours CCNA 1. Exercices
Cours CCNA 1 TD3 Exercices Exercice 1 Enumérez les sept étapes du processus consistant à convertir les communications de l utilisateur en données. 1. L utilisateur entre les données via une interface matérielle.
Plus en détailTeste et mesure vos réseaux et vos applicatifs en toute indépendance
Teste et mesure vos réseaux et vos applicatifs en toute indépendance 2013 J3TEL en quelques minutes Groupe HBG en bref : Siège social à Paris 1100 employés dans 6 pays 150 M d de CA en 2012 Des activités
Plus en détailVoIP et "NAT" VoIP et "NAT" 1/ La Traduction d'adresse réseau. 1/ La traduction d'adresse réseau. 1/ La traduction d'adresse réseau
VoIP et "NAT" VoIP et "NAT" Traduction d'adresse dans un contexte de Voix sur IP 1/ La Traduction d'adresse réseau("nat") 3/ Problèmes dus à la présence de "NAT" 1/ La Traduction d'adresse réseau encore
Plus en détailSage CRM. 7.2 Guide de Portail Client
Sage CRM 7.2 Guide de Portail Client Copyright 2013 Sage Technologies Limited, éditeur de ce produit. Tous droits réservés. Il est interdit de copier, photocopier, reproduire, traduire, copier sur microfilm,
Plus en détailServices Réseaux - Couche Application. TODARO Cédric
Services Réseaux - Couche Application TODARO Cédric 1 TABLE DES MATIÈRES Table des matières 1 Protocoles de gestion de réseaux 3 1.1 DHCP (port 67/68)....................................... 3 1.2 DNS (port
Plus en détailProgramme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines)
Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines) Module 1 : Programmer une application informatique Durée
Plus en détailProjet ISN - dossier réalisé par Randrianarimanana Stéphanie. Titre du projet : Site de rencontre. le nom de notre site de rencontre : Linkymeet
Projet ISN - dossier réalisé par Randrianarimanana Stéphanie Titre du projet : Site de rencontre le nom de notre site de rencontre : Linkymeet ( tout astérisque* signifie voir annexe) l'équipe : Randrianariamanana
Plus en détailBES WEBDEVELOPER ACTIVITÉ RÔLE
BES WEBDEVELOPER ACTIVITÉ Le web developer participe aux activités concernant la conception, la réalisation, la mise à jour, la maintenance et l évolution d applications internet/intranet statiques et
Plus en détailBien architecturer une application REST
Olivier Gutknecht Bien architecturer une application REST Avec la contribution de Jean Zundel Ce livre traite exactement du sujet suivant : comment faire pour que les services web et les programmes qui
Plus en détailSIO-65291 Page 1 de 5. Applications Web dynamiques. Prof. : Dzenan Ridjanovic Assistant : Vincent Dussault
SIO-65291 Page 1 de 5 1- Objectifs généraux Applications Web dynamiques Prof. : Dzenan Ridjanovic Assistant : Vincent Dussault acquérir les principes et concepts fondamentaux dans le domaine d'applications
Plus en détailE-mail : contact@nqicorp.com - Web : http://www.nqicorp.com
- 5, rue Soutrane - 06560 Valbonne Sophia-Antipolis E-mail : contact@nqicorp.com - Web : http://www.nqicorp.com NQI Orchestra 3.3 - Guide d'installation Windows.................................................................
Plus en détailArchitectures en couches pour applications web Rappel : Architecture en couches
Rappel : Architecture en couches Une architecture en couches aide à gérer la complexité : 7 Application 6 Presentation 5 Session Application Les couches hautes dépendent des couches basses 4 Transport
Plus en détailWildix Web API. Guide Rapide
Wildix Web API Guide Rapide Version: 11.12.2013 API Web Wildix s'intègre avec les logiciels CRM, ERP, les solutions et web applications Fias / Fidelio. L'API de téléphonie Javascript vous permet de contrôler
Plus en détailINTERNET est un RESEAU D ORDINATEURS RELIES ENTRE EUX A L ECHELLE PLANETAIRE. Internet : interconnexion de réseaux (anglais : net = réseau)
CS WEB Ch 1 Introduction I. INTRODUCTION... 1 A. INTERNET INTERCONNEXION DE RESEAUX... 1 B. LE «WEB» LA TOILE, INTERCONNEXION DE SITES WEB... 2 C. L URL : LOCALISER DES RESSOURCES SUR L INTERNET... 2 D.
Plus en détailLES ACCES ODBC AVEC LE SYSTEME SAS
LES ACCES ODBC AVEC LE SYSTEME SAS I. Présentation II. SAS/ACCESS to ODBC III. Driver ODBC SAS IV. Driver ODBC SAS Universel V. Version 8 VI. Références I. Présentation Introduction ODBC, qui signifie
Plus en détailInstallation d'un serveur DHCP sous Windows 2000 Serveur
Installation d'un serveur DHCP sous Windows 2000 Serveur Un serveur DHCP permet d'assigner des adresses IP à des ordinateurs clients du réseau. Grâce à un protocole DHCP (Dynamic Host Configuration Protocol),
Plus en détailApplication Form/ Formulaire de demande
Application Form/ Formulaire de demande Ecosystem Approaches to Health: Summer Workshop and Field school Approches écosystémiques de la santé: Atelier intensif et stage d été Please submit your application
Plus en détailService WEB, BDD MySQL, PHP et réplication Heartbeat. Conditions requises : Dans ce TP, il est nécessaire d'avoir une machine Debian sous ProxMox
Version utilisée pour la Debian : 7.7 Conditions requises : Dans ce TP, il est nécessaire d'avoir une machine Debian sous ProxMox Caractéristiques de bases : Un service web (ou service de la toile) est
Plus en détailDocumentation technique
Documentation technique Documentation technique Destinataires : Direction EIP Nom du fichier : 2011_TD1_FR_Symbiosys.odt Promotion : 2011 (Epitech 5) Date de création : 10.04.2009 Chef de groupe : Manfred
Plus en détailLivre Blanc WebSphere Transcoding Publisher
Livre Blanc WebSphere Transcoding Publisher Introduction WebSphere Transcoding Publisher vous permet d'offrir aux utilisateurs des informations Web adaptées à leurs besoins. Il vous permet, par exemple,
Plus en détailPrincipales failles de sécurité des applications Web Principes, parades et bonnes pratiques de développement
Guillaume HARRY l Contenu sous licence Creative Commons CC-BY-NC-ND Principales failles de sécurité des applications Web Principes, parades et bonnes pratiques de développement P. 2 1. Introduction 2.
Plus en détailPremiers pas sur e-lyco
Premiers pas sur e-lyco A destination des parents, ce document présente les premiers éléments pour accéder aux services de l'ent e-lyco d'un lycée. Que signifient ENT et e-lyco? ENT = Espace ou Environnement
Plus en détailNouveautés joomla 3 1/14
Nouveautés joomla 3 1/14 Table des matières 1 Responsive... 1 2 Bootstrap... 1 3 LESS CSS intégré... 1 4. JUI (pour les développeurs d'extensions)... 1 5. Le Mambo days vs le Génial UX... 2 6. 7 étapes
Plus en détailPrésentation du Framework BootstrapTwitter
COUARD Kévin HELVIG-LARBRET Blandine Présentation du Framework BootstrapTwitter IUT Nice-Sophia LP-SIL IDSE Octobre 2012 Sommaire I. INTRODUCTION... 3 Définition d'un framework... 3 A propos de BootstrapTwitter...
Plus en détailProgrammation de services en téléphonie sur IP
Programmation de services en téléphonie sur IP Présentation de projet mémoire Grégory Estienne Sous la supervision du Dr. Luigi Logrippo Introduction La téléphonie sur IP comme support à la programmation
Plus en détailTP JAVASCRIPT OMI4 TP5 SRC1 2011-2012
TP JAVASCRIPT OMI4 TP5 SRC1 2011-2012 FORMULAIRE DE CONTACT POUR PORTFOLIO PRINCIPE GENERAL Nous souhaitons réaliser un formulaire de contact comprenant les champs suivants : NOM PRENOM ADRESSE MAIL MESSAGE
Plus en détailLICENCE PROFESSIONNELLE
LICENCE PROFESSIONNELLE Développement d'applications Intranet/Internet Domaine : Sciences, Technologies, Santé Dénomination nationale : Systèmes informatiques et logiciels Organisation : Institut Universitaire
Plus en détailC a h p a i p tre e 4 Archi h t i ectur u e e t S i S g i n g a n li l s i atio i n o n SI S P
Chapitre 4 Architecture et Signalisation SIP Ver 01-09 4-1 Objectifs du Chapitre Voir comment SIP appréhende la signalisation Identifier les possibilités de SIP Etablir différents modèles de communication
Plus en détailDéploiement sécuritaire de la téléphonie IP
Déploiement sécuritaire de la téléphonie IP Simon Perreault Viagénie {sip,mailto}:simon.perreault@viagenie.ca http://www.viagenie.ca À propos du conférencier Consultant en réseautique et VoIP chez Viagénie
Plus en détailLes sites Internet dynamiques. contact : Patrick VINCENT pvincent@erasme.org
Les sites Internet dynamiques contact : Patrick VINCENT pvincent@erasme.org Qu est-ce qu un site Web? ensemble de pages multimédia (texte, images, son, vidéo, ) organisées autour d une page d accueil et
Plus en détailDUT. Informatique, orientation Imagerie Numérique. Domaine : Sciences, Technologies, Santé. Mention : Informatique
DUT Informatique, orientation Imagerie Numérique Domaine : Sciences, Technologies, Santé Mention : Informatique Organisation : Institut Universitaire de Technologie Lieu de formation : Le Puy en Velay
Plus en détailSOLUTION D ENVOI DE SMS POUR PROFESSIONNELS
1 Création et gestion de compte 2 Envoi par e-mail 3 Envoi par commande http 4 Publipostage SMS personnalisés 5 Autres fonctionnalités et options SMSvialeweb.com est une solution complète d envoi de SMS
Plus en détailServeur d'application Client HTML/JS. Apache Thrift Bootcamp
Serveur d'application Client HTML/JS Apache Thrift Bootcamp Pré-requis La liste ci-dessous de logiciels doit être installée et opérationnelle sur la machine des participants : Compilateur thrift http://thrift.apache.org/
Plus en détailHébergement de site web Damien Nouvel
Hébergement de site web Plan L'hébergeur Le serveur web Apache Sites dynamiques 2 / 27 Plan L'hébergeur Le serveur web Apache Sites dynamiques 3 / 27 L'hébergeur L'hébergeur sous-traite l'architecture
Plus en détailApplication de lecture de carte SESAM-Vitale Jeebop
Application de lecture de carte SESAM-Vitale Jeebop Présentation Le module de lecture de carte SESAM-Vitale Jeebop est une application Java Web Start, c'est à dire une application Java qui se télécharge
Plus en détail