Ingénierie des réseaux



Documents pareils
Network musical jammin

Développement d un logiciel de messagerie instantanée avec Dotnet (version simplifiée)

Oléane VPN : Les nouvelles fonctions de gestion de réseaux. Orange Business Services

V- Manipulations de nombres en binaire

Les messages d erreur d'applidis Client

Tutorial Terminal Server sous

Dynamic Host Configuration Protocol

Rapport de Stage Christopher Chedeau 2 au 26 Juin 2009

RAPPORT DE CONCEPTION UML :

Fonctionnalité : «Comment effectuer un virement et récupérer un extrait de compte avec le nouveau protocole EBICS?»

TAGREROUT Seyf Allah TMRIM

UFR de Mathématiques et Informatique Année 2009/2010. Réseaux Locaux TP 04 : ICMP, ARP, IP

1 La visualisation des logs au CNES

21 mars Simulations et Méthodes de Monte Carlo. DADI Charles-Abner. Objectifs et intérêt de ce T.E.R. Générer l'aléatoire.

GUIDE D UTILISATION ADSL ASSISTANCE

Virtual PBX Quick User Guide

Sécurité et Firewall

Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application

Le service FTP. M.BOUABID, Page 1 sur 5

Guide de configuration de la Voix sur IP

Drive your success. «Un écosystème complexe implique une capacité de gestion temps réel des aléas»

IV- Comment fonctionne un ordinateur?

Étude de l application DNS (Domain Name System)

Algorithme. Table des matières

Un concept multi-centre de données traditionnel basé sur le DNS

Prototype de canal caché dans le DNS

Guide d utilisation WEBPORTAL CPEM Portail d Applications Web CPEM

PG208, Projet n 3 : Serveur HTTP évolué

DHCP et NAT. Cyril Rabat Master 2 ASR - Info Architecture des réseaux d entreprise

Gestion distribuée (par sockets) de banque en Java

Workflow et Service Oriented Architecture (SOA)

SERVICE CONTACT INSTANTANÉ GUIDE D UTILISATEUR

Arithmétique binaire. Chapitre. 5.1 Notions Bit Mot

Guide d'utilisation du téléphone IP Thomson ST-2030 G

Documentation Honolulu 14 (1)

Thunderbird est facilement téléchargeable depuis le site officiel

TP redondance DHCP. Gillard Frédéric Page 1/17. Vue d ensemble du basculement DHCP

FOIRE AUX QUESTIONS PAIEMENT PAR INTERNET. Nom de fichier : Monetico_Paiement_Foire_aux_Questions_v1.7 Numéro de version : 1.7 Date :

Mise en place d un cluster. De basculement. Et DHCP Failover. Installation. Préparation. Vérification

Les opérations binaires

Computer Networking: A Top Down Approach Featuring the Internet, 2 nd edition. Jim Kurose, Keith Ross Addison-Wesley, July ENPC.

Ingénérie logicielle dirigée par les modèles

KX-DT321 Guide d utilisation rapide

Développement d applications Internet et réseaux avec LabVIEW. Alexandre STANURSKI National Instruments France

Programmation Web. Madalina Croitoru IUT Montpellier

MEGA ITSM Accelerator. Guide de démarrage

Manuel d utilisation pour la plateforme BeExcellent MANUEL D UTILISATION POUR LA PLATEFORME BEEXCELLENT

VIDEO SURVEILLANCE SV82400 SV82500 SV82600 Type de panne cause Que faire? VIDEO SURVEILLANCE IPSV87050 VIDEO SURVEILLANCE IPSV87050 SERR1

Architecture distribuée

Saisie sur un ordinateur OS/390 Ici sur jedi.informatik.uni-leipzig.de ou

Guide d utilisation du service e-banking

SYSTEME DE GESTION DES ENERGIES EWTS EMBEDDED WIRELESS TELEMETRY SYSTEM

Cours CCNA 1. Exercices

Gestionnaire d'appareil à distance de Bell Foire aux questions

Cisco Certified Network Associate

Securexam Consignes pour l EFU Les 2, 3 et 4 juin 2015

TD n o 8 - Domain Name System (DNS)

Cahier des charges (CDC)

Windows Serveur 2012 : DHCP. Installation et mise en place

Atelier C TIA Portal CTIA04 : Programmation des automates S7-300 Opérations numériques

Xi Ingénierie. La performance technologique au service de votre e-commerce. Comment exploiter les cookies sur vos applications web en toute légalité?

Info0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java

EP60.92 Projet d application pluridisciplinaire La chasse aux trésors

Table des matières Hakim Benameurlaine 1

Windows Internet Name Service (WINS)

DUT Informatique Module Système S4 C Département Informatique 2009 / Travaux Pratiques n o 5 : Sockets Stream

1. Structure d un programme C. 2. Commentaire: /*..texte */ On utilise aussi le commentaire du C++ qui est valable pour C: 3.

Serveur FTP. 20 décembre. Windows Server 2008R2

LES ACCES DISTANTS ET SECURISES. Installation et utilisation du client. Cisco AnyConnect VPN Client. pour Windows

MEGA ITSM Accelerator. Guide de Démarrage

Installation Windows 2000 Server

Application Note. EaseLoc Mise à jour de l application Over The Air (DOTA)

GUIDE DE L USAGER DE LA MESSAGERIE VOCALE

Créer un hotspot Wifi sous Windows 8.1 sans logiciel

Association UNIFORES 23, Rue du Cercler LIMOGES

Fonctionnement Kiwi Syslog + WhatsUP Gold

Haka : un langage orienté réseaux et sécurité

TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile

Virtual PBX Quick User Guide

Guide d utilisation OGGI. Gestionnaire d incidents à l usage des clients. Date de rédaction : 04/02/2013. Version : 1.0.

Installation et paramétrage de Fedora dans VirtualBox.

Petit guide pour choisir une solution CRM

TP4 : Firewall IPTABLES

Polypoint/PEP. Gestion des prestations et planification d horaire. Les nouveautés de la version g2.8.3

Activer la connectivité des systèmes de stockage 3PAR

GUIDE D UTILISATION DU BACKOFFICE

Surveiller et contrôler vos applications à travers le Web

Stéphanie Lacerte. Document technique. Connextek. 31 mai Cloudtel

IFT2880 Organisation des ordinateurs et systèmes

Introduction à l informatique en BCPST

EPSON Scan Server & EPSON TWAIN Pro Network

ALOHA LOAD BALANCER METHODE DE CONTROLE DE VITALITE

1. Aménagements technologiques 2. Installation de Microsoft SQL Server 2012

BONNE NOUVELLE, À PARTIR DE DEMAIN 15 AOÛT 2014, l inscription en ligne sera disponible à partir du site de l ARO.

Service de certificat

Un exemple d'authentification sécurisée utilisant les outils du Web : CAS. P-F. Bonnefoi

INTERNET est un RESEAU D ORDINATEURS RELIES ENTRE EUX A L ECHELLE PLANETAIRE. Internet : interconnexion de réseaux (anglais : net = réseau)

Et comment ça fonctionne?

Initiation à la programmation en Python

Transcription:

Ingénierie des réseaux Projet Socket-calculatrice Yorly ORELLANOS Mathieu CASTETS Thibault ETIENNE

Conception Pour réaliser cette application, nous avons commencé par imaginer le comportement désiré. Ceci est résumé dans le tableau ci-dessous : Qui Action Message Le client Propose à l utilisateur de saisir un nombre Opérande 1 : Le client Propose à l utilisateur de saisir un opérateur Opérateur : +, -, *, / arithmétique Le client Propose à l utilisateur de saisir un second nombre Opérande 2 : Le client Envoi les informations au serveur et attend sa J ai envoyé au serveur réponse l opération Le serveur Reçoit les informations données Pas de message Le serveur Fait le calcul Pas de message Le serveur Envoie le résultat de l opération réalisée Pas de message Le client Affiche le résultat Résultat : Le client Propose de faire un nouveau calcul Autre opération? (O/N) Nous avons modélisé ce fonctionnement dans le diagramme suivant : Nous avons décidé que les communications par le biais des sockets se feraient via le port 12345 afin de ne pas interférer avec les ports communément utilisés. En effet, ces ports sont réservés à des applications spécifiques et sont déjà occupés par d autres interlocuteurs, ce qui provoque un conflit. Exemple : lors d un essai de l application sur le port 80, la réponse est «HTTP/1.1 400 Bad Request». Pour l échange des données, le protocole TCP est utilisé car il permet un contrôle des données et assure ainsi la fiabilité des données en transit pour l application. UFR Sciences et Techniques de la Côte Basque 2

Réalisation Utilisation des décorateurs Lors de l utilisation des entrées (saisie des données) et sorties (affichage), nous avons utilisé des décorateurs car ils fournissent une interface adaptée aux traitements des données. On notera notamment l utilisation du BufferedReader qui utilise un buffer de lecture ou de OutputStreamWriter qui transforme des flux de caractères en flux d octets. Gestion des exceptions Nous avons mis en place un système de gestion des exceptions afin d afficher des messages d erreurs facilement compréhensibles par l utilisateur. Ceci évite aussi une fermeture inopinée de l application. Cette gestion des exceptions est d autant plus importante lors du calcul (conversion arithmétique, division par zéro, ). Difficultés rencontrées Nous avons été confrontés à plusieurs problèmes lors de la réalisation de ce projet. Le premier a été celui de la conversion des données saisies par l utilisateur pour leur traitement par le serveur. En effet, nous avons souhaité travailler avec des nombres de type float et avons donc dû les convertir en chaines de caractères afin de pouvoir les faire transiter à travers les sockets. Dans un second temps, une fois la calculatrice fonctionnelle pour effectuer une unique opération, il nous a fallu modifier l application afin que le client puisse faire plusieurs opérations sans relancer le logiciel. Enfin, nous avons souhaité que le serveur reste actif lorsque le client est fermé par l utilisateur après avoir effectué au moins une opération. Lors de l implémentation de ces fonctionnalités, nous avons rencontré un problème dû à une mauvaise utilisation des sockets de notre part. En effet, nous n ouvrions qu une socket pour l ensemble des calculs alors qu il est nécessaire d en créer une à chaque calcul demandé par l utilisateur. Limitations du logiciel Cette calculatrice est limitée à faire les opérations arithmétiques de base que sont l addition, la soustraction, la multiplication et la division. UFR Sciences et Techniques de la Côte Basque 3

Manuel d utilisation Lancement du logiciel Pour lancer la calculatrice, il faut d abord ouvrir le fichier exécutable «1 - Serveur.bat» puis lancer le fichier exécutable «2 - Client.bat». Cela permet à l utilisateur d éviter de devoir lancer des commandes dans un invité de commande. Le numéro de port et l IP sont aussi spécifiés dans les.bat. Il est donc aisé de les modifier en ouvrant ces fichiers avec un éditeur de texte quelconque. Cette calculatrice comprend un certain nombre de fonctions de base, dont les fonctions addition, soustraction, multiplication, division. Calcul Avec les calculs manuels, vous entrez vos formules de gauche à droite, simplement comme elles s écrivent sur une feuille de papier. Avec les operateurs qui comprennent +, -, *, /, la calculatrice applique automatiquement la logique du système pour calculer le résultat. 1. Entrez le premier chiffre à calculer, appuyez sur la touche Entrée pour valider, puis vous devez sélectionner l operateur arithmétique +, -, * et /. 2. Entrez le deuxième chiffre à calculer et appuyez sur la touche Entrée pour afficher le calcul. UFR Sciences et Techniques de la Côte Basque 4

3. Le client envoi l information au serveur, celui-ci valide que l information transmit par le client est correct, suite le serveur transmet la réponse et demande si l utilisateur veut faire une autre opération arithmétique. Appuyez sur O pour exécuter le nouveau calcul ou N pour quitter la calculatrice. En cas l utilisateur appui sur la touche O, il pourrait refaire tout le processus 4. Si l utilisateur appuis sur la touche N, le client se déconnecté et le serveur reste connecté en attend d une nouvelle transmission. Erreurs Nous avons géré plusieurs cas d erreurs qui peuvent survenir pendant la réalisation d une opération. Ainsi, le serveur renvoi des messages formatés correspondant au type d erreur levée. Voici la liste des erreurs possibles : UFR Sciences et Techniques de la Côte Basque 5

Division par zéro : Cette erreur survient lorsque l opérande choisit est celui de la division / et que le second opérande a pour valeur 0 ; Opérande incorrect : Cette erreur survient lorsque l utilisateur saisit un opérande qui n est pas un nombre ; Opérateur incorrect : Cette erreur survient lorsque l utilisateur ne saisit pas un des 4 opérateurs définis que sont l addition +, la soustraction -, la multiplication * et la division / ; Fermeture prématurée du client : Cette erreur survient lorsque le client est soudainement fermé alors qu il n a envoyé aucune donnée au serveur. UFR Sciences et Techniques de la Côte Basque 6