Laboratoire #2 TÉLÉINFORMATIQUE ET RÉSEAUX APPLICATION DE PARTAGE DE PHOTOS



Documents pareils
Introduction. Adresses

Systèmes et Réseaux (ASR 2) - Notes de cours Cours 14

2. MAQUETTAGE DES SOLUTIONS CONSTRUCTIVES. 2.2 Architecture fonctionnelle d un système communicant.

Routage AODV. Languignon - Mathe - Palancher - Pierdet - Robache. 20 décembre Une implémentation de la RFC3561

Skype (v2.5) Protocol Data Structures (French) Author : Ouanilo MEDEGAN

Le protocole TCP. Services de TCP

Plan. École Supérieure d Économie Électronique. Plan. Chap 9: Composants et systèmes de sécurité. Rhouma Rhouma. 21 Juillet 2014

Intérêt du NAT (Network Address Translation) Administration Réseau Niveau routage. Exemple d Intranet. Principe NAT

Devoir Surveillé de Sécurité des Réseaux

II/ Le modèle OSI II.1/ Présentation du modèle OSI(Open Systems Interconnection)

Ch2 La modélisation théorique du réseau : OSI Dernière maj : jeudi 12 juillet 2007

DHCP. Dynamic Host Configuration Protocol

Couche Transport TCP et UDP

Chapitre I. La couche réseau. 1. Couche réseau 1. Historique de l Internet

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

2. DIFFÉRENTS TYPES DE RÉSEAUX

Réseaux IUP2 / 2005 IPv6

Architecture TCP/IP. Protocole d application. client x. serveur y. Protocole TCP TCP. TCP routeur. Protocole IP IP. Protocole IP IP.

Informatique Générale Les réseaux

Algorithmique des Systèmes Répartis Protocoles de Communications

Contrôle d accès UTIL TP N 1 découverte

Cahier des charges. driver WIFI pour chipset Ralink RT2571W. sur hardware ARM7

Rappel: Le routage dans Internet. Contraintes. Environnement et contraintes. La décision dans IP du routage: - Table de routage:

Sécuriser son réseau. Sécuriser son réseau Philippe Weill (IPSL/LATMOS) Frédéric Bongat (SSI/GOUV/FR)

Réseaux et protocoles Damien Nouvel

NOTIONS DE RESEAUX INFORMATIQUES

! 1 /! 5 TD - MIP + RO - NEMO. 1. Mobile IP (MIPv6) avec optimisation de routage

Les ACL Cisco. F. Nolot Master 2 Professionnel STIC-Informatique 1

SYSTEME DE GESTION DES ENERGIES EWTS EMBEDDED WIRELESS TELEMETRY SYSTEM

Téléinformatique. Chapitre V : La couche liaison de données dans Internet. ESEN Université De La Manouba

Divers éléments. Protocoles d'applications. Un agent Utilisateur. MUA - Agents Utilisateurs de Courriel. Simple Mail Transfer Protocol

Internet - Outils. Nicolas Delestre. À partir des cours Outils réseaux de Paul Tavernier et Nicolas Prunier

TP réseaux Translation d adresse, firewalls, zonage

Mise en place d'un Réseau Privé Virtuel

Rappels réseaux TCP/IP

Voix sur IP Étude d approfondissement Réseaux

Transmissions série et parallèle

Chapitre 1: Introduction générale

Plan. Programmation Internet Cours 3. Organismes de standardisation

Année Universitaire session 1 d automne Parcours : CSB5 Licence 3 STS Informatique

SSL ET IPSEC. Licence Pro ATC Amel Guetat

nom : Collège Ste Clotilde

Les Réseaux sans fils : IEEE F. Nolot

L utilisation d un réseau de neurones pour optimiser la gestion d un firewall

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

RESEAUX TCP/IP: NOTIONS AVANCEES. Preparé par Alberto EscuderoPascual

Partie 2 (Service de téléphonie simple) :

Sécurité et Firewall

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

Introduction aux Technologies de l Internet

RFC 791 (Jon Postel 1981)

M1 Informatique, Réseaux Cours 9 : Réseaux pour le multimédia

Internet Le service de noms - DNS

CRYPTOGRAPHIE. Chiffrement par flot. E. Bresson. SGDN/DCSSI Laboratoire de cryptographie

Protocole de configuration dynamique des hôtes pour IPv6 (DHCPv6)

Tutorial Terminal Server sous

Mr. B. Benaissa. Centre universitaire Nâama LOGO

Cisco Certified Network Associate

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

Internet Protocol. «La couche IP du réseau Internet»

Les Virtual LAN. F. Nolot. Master 1 STIC-Informatique 1

Culture informatique. Cours n 9 : Les réseaux informatiques (suite)

Présentation du modèle OSI(Open Systems Interconnection)

L3 informatique Réseaux : Configuration d une interface réseau

N o t i o n s d e b a s e s u r l e s r é s e a u x C h a p i t r e 2

TER Réseau : Routeur Linux 2 Responsable : Anthony Busson

Internet et Multimédia Exercices: flux multimédia

Algorithmique et langages du Web

Catalogue & Programme des formations 2015

Démarrage à partir du réseau

EPREUVE E1 Epreuve scientifique et technique SOUS-EPREUVE E11 Etude des supports et protocoles de communication

Protocoles IP (2/2) M. Berthet. Les illustrations sont tirées de l ouvrage de Guy Pujolle, Cours réseaux et Télécom Contributions : S Lohier

Réseaux grande distance

Le protocole ARP (Address Resolution Protocol) Résolution d adresses et autoconfiguration. Les protocoles ARP, RARP, TFTP, BOOTP, DHCP

Structure du format BMP, sa lecture, sa construction et son écriture

Introduction à l'analyse réseau Philippe Latu philippe.latu(at)linux-france.org

TABLE DES MATIERES. I. Objectifs page 2. II. Types de réseaux page 2. III. Transmission page 2. IV. Câbles page 3. V.

LA GESTION COMMERCIALE DES VEHICULES

[ Sécurisation des canaux de communication

ADSL. Étude d une LiveBox. 1. Environnement de la LiveBox TMRIM 2 EME TRIMESTRE LP CHATEAU BLANC CHALETTE/LOING NIVEAU :

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

Tunnels. Plan. Pourquoi? Comment? Qu est-ce? Quelles solutions? Tunnels applicatifs ESIL INFO 2005/2006. Sophie Nicoud

LES RESEAUX VIRTUELS VLAN

GPA770 Microélectronique appliquée Exercices série A

Fonctionnement du protocole DHCP. Protocole DHCP (S4/C7)

LA COUCHE LIAISON DE DONNEES A POUR OBJECTIF PRINCIPAL de proposer à la couche

FAQ Questions sur la «signature électronique»

EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE

Les Réseaux Privés Virtuels (VPN) Définition d'un VPN

Téléinformatique et télématique. Revenons aux définitions

Couche application. La couche application est la plus élevée du modèle de référence.

TP Réseau 1A DHCP Réseau routé simple

Chapitre : Les Protocoles

VoIP - TPs Etude et implémentation

USTL - Licence ST-A 1ère année Codage de l information TP 1 :

Notice d installation des cartes 3360 et 3365

Cisco Discovery - DRSEnt Module 7

La sécurité dans un réseau Wi-Fi

1.Introduction - Modèle en couches - OSI TCP/IP

Transcription:

ÉCOLE DE TECHNOLOGIE SUPÉRIEURE DÉPARTEMENT DE GÉNIE DE LA PRODUCTION AUTOMATISÉE GPA-785 Automne 2007 Professeur : Mohamed Chériet Chargé de Laboratoire : Ludovic Felten Laboratoire #2 TÉLÉINFORMATIQUE ET RÉSEAUX APPLICATION DE PARTAGE DE PHOTOS OBJECTIFS : Vous devez réaliser un protocole de communication permettant d effectuer le transfert de photos entre 2 ordinateurs, de manière fiable et sécurisée. Une architecture client/serveur sera encore privilégiée. Sur demande du client, le serveur envoie le contenu d un ou plusieurs fichiers de données (de taille quelconque) au format d images standard (bmp, jpg, gif). Le client recevant les données du serveur, doit reconstituer les données, les conserver dans le ou les fichiers correspondants et les afficher. Votre serveur agira comme une banque de données centrale de laquelle on vient télécharger des images. Les routines d'interfaces en C développées dans le laboratoire #1 vous seront utiles, car elles permettent l'initialisation d un lien entre deux processus, puis l envoi et la réception de données. Une modification des fonctions d envoi et de réception permettra de rendre les transferts inconsistants. Les trames seront susceptibles, soit de retards à la réception, soit de pertes ou d erreurs de retransmission détectables. C est pour cette raison que les transferts doivent être fiabilisés. 1

DESCRIPTION DU PROTOCOLE : SERVEUR CLIENT Application Lecture du fichier Application Écriture du fichier Présentation Recomposition de l image Session Encryptage Session Décryptage Transport Calcul du checksum Transport Vérification du checksum Réseau Création du paquet IP Réseau Ouverture du paquet IP Envoi couches 1 & 2 Réception couches 1 & 2 Le protocole à utiliser permettra de transférer plusieurs fichiers à la fois et les trames seront de longueurs variables. Il faudra vérifier le checksum à la réception de chaque paquet afin d en assurer l intégrité. Le choix du mécanisme de cryptage/décryptage vous est laissé, mais il devra permettre à l application d être performante tout en garantissant la confidentialité des transferts (vous pouvez utiliser une application comme Ethereal pour observer le contenu des paquets échangés). 2

Chacune des trames devra respecter le format suivant : IP UDP SEQ ENC CMD Données CRC IP : En-tête IP (adresse). Utiliser la fonction du laboratoire #1. UDP : En-tête UDP (port). Utiliser la fonction du laboratoire #1. SEQ : Le n de séquence de la trame (sur un octet) et le complément à 255 de ce n de séquence (sur un 2 e octet). ENC : Un bit indiquant si les données sont cryptées. CMD : Octet indiquant la commande à effectuer (envoyer, recevoir, début/fin de fichier, etc.) Données : Les données elles-mêmes. Attention, dans ce laboratoire les données sont de type binaire alors que dans le laboratoire #1 il s agissait de chaînes de caractères. Vous devrez donc prendre les précautions nécessaires lors de leur traitement. CRC : Code de contrôle (Checksum) calculé sur les champs ENC+CMD+Données. Utiliser la fonction du laboratoire #1. Tout comme dans le cas du laboratoire #1, on inclura les en-têtes IP et UDP à l intérieur des blocs de données envoyés, même si ces informations sont redondantes par rapport à l encapsulation ajoutée par la fonction sendto(). La taille totale de la trame doit être inférieure à 1024 octets (Taille maximale permise sur un segment Ethernet). Il ne faudra pas oublier de soustraire les encapsulations rajoutées par la fonction sendto() et par l interface réseau. 3

La figure suivante décrit les séquences d opérations standard pour le transfert d un fichier : CLIENT SERVEUR Vous devrez respecter les caractéristiques suivantes : Les "Time out" seront fixés à 5 secondes. Le nombre maximum de retransmissions (même trame, mêmes données) est limité à 5. Seules les trames contenant des données seront cryptées. OPTIONS (pour points boni) : 1. Pour augmenter l efficacité des transferts, on pourra mettre en place l approche Go-Back-N avec une fenêtre d anticipation de largeur = 4, ce qui permet d envoyer plusieurs paquets avant de recevoir les accusés de réception de chacun. 2. Au lieu de se limiter à une architecture client-serveur, on pourra imaginer une architecture peer-to-peer. Dans ce cas, chacun des ordinateurs peut transmettre et recevoir des images. 4

EXEMPLE D UNE DEMANDE DE CONNEXION : 1. Envoi de la commande CONNECT_REQUEST par le client. 2. Réception de la commande par le serveur qui initie son processus. 3. Réponse positive du serveur via la primitive CONNECT_RESPONSE. 4. Réception de la primitive par le client qui sera ainsi connecté. EXEMPLE D UNE DEMANDE DE DÉCONNEXION : 1. Envoi de la commande DISCONNECT_REQUEST par le client. 2. Réception de la commande par le serveur qui termine le processus client. 3. Réponse positive du serveur via la primitive DISCONNECT_RESPONSE. 4. Réception de la commande par le client qui quitte l application. EXEMPLE D UNE TRANSMISSION DE DONNÉES : 1. Envoi de la primitive DATA_REQUEST par le client. 2. Réception de la commande par le serveur, qui ouvre le fichier. 3. Réponse positive (START_TRANSFER) ou négative (NACK) de la part du serveur. 4. Réception de la commande et des données par le client. 5. Réponse positive (ACK) ou négative (NACK) de la part du client. 6. Réception de la commande par le serveur, poursuite du transfert. 7. Suite de l envoi (CONTINUE_TRANSFER) de la part du serveur 8. Réception de la commande et des données par le client. 9. Réponse positive (ACK) ou négative (NACK) de la part du client. 10. Fin de l envoi (END_TRANSFER) de la part du serveur 11. Réception de la commande et des données par le client. 12. Réponse positive (ACK) ou négative (NACK) de la part du client. 5

CONTENU DU RAPPORT : - Page titre - Introduction - Objectifs et buts - Méthodologie de conception - Analyse, description du programme - Croquis, Organigrammes ou algorithmes - Structures de données - Discussion - Conclusion - Code source (imprimé et sur CD) - Les textes des deux fichiers résultats transmis par votre programme - Mode d emploi BARÈME DE CORRECTION Rapport (12 points) Forme, Présentation, Cohérence, /1 Introduction, /1 Méthodologie (conception), Analyse /3 Organigrammes /2 Structures de données /2 Discussion (problèmes rencontrés) /2 Conclusion /1 Programme (13 points) Fonctionnement /10 Commentaires et forme du code /3 (lisibilité, structure) /25 Points Boni (Options) /5 Date de remise : Démonstration pendant le laboratoire le 3 décembre 2007 Remise du rapport et du code source à la fin du laboratoire 6