Réseaux IP

Présentation

Ce module a pour objectif de présenter aux étudiants les concepts de base des réseaux informatique de type IP et le développement d'applications orientées réseaux. Dans un premier temps, les étudiants se familiariseront avec la bibliothèque socket en langage C, avant d'aborder la programmations de haut niveau des applications en Java.

A l'issue de l'enseignement, l'étudiant :

  • connaît le modèle client-serveur utilisé dans le cadre des SE distribués
  • connaît les protocoles TCP et UDP et est capable de programmer des applications de type client/serveur;
  • est sensibilisé à l’architecture du réseau internet;
  • manipule les réseaux en utilisant le langage Java;
  • peut développer des applications (réseaux) avec des interfaces graphiques prêtes à l'utilisation par d'autres utilisateurs.

Descriptif

 Partie 1 : Réseaux (10h CM, 6h TD, 14h TP) 

  • principes, couches et protocoles réseaux
  • architecture des réseaux informatiques
  • protocoles TCP et UDP
  • programmation en C des primitives systèmes et réseaux

Partie 2 : Mise en pratique sur des applications orientées réseaux en Java (10h CM, 10h TD, 10h TP)

Dans cette deuxième partie, l’étudiant doit pouvoir développer en Java des applications orientées réseaux complètes (de la conception à l’interface utilisateur final). comme par exemple, un serveur web ou un client ftp. Ainsi, l'accent est mis sur les points suivants : 

  • Les flots de données, pré-requis à l’utilisation des sockets,
  • La programmation des sockets en Java (comparaison/différence avec le C),
  • Les threads et la synchronisation, ce qui permet de gérer les accès aux fichiers/ressources (plusieurs utilisateurs accédant au même fichier/ressource dans la cas d'un serveur par exemple ou un utilisateur manipulant plusieurs fichiers/ressources au même temps),
  • La création d’une interface utilisateur : nécessite des notions sur la structuration des applications en packages et les IHM avec Swing et Java FX,
  • Les Bases de données (JDBC), un complément permettant de réaliser des applications nécessitant l’utilisation d’une base de données en réseau

Bibliographie

  1. Unix, programmation et communication, Jean-Marie Rifflet, Dunod
  2. TCP/IP : architecture, protocoles, applications - D. Comer - Dunod
  3. Cours Réseaux et télécoms - G. Pujolle - Eyrolles
  4. Cours Réseaux - V. Ribaud et P. Le Parc - Polycopié de cours département/IUP Informatique Brest.
  5. Développement Web avec J2EE par Eric Sarrion
  6. Au coeur de Java 2, tome 1 et 2, par Cay S. Horstmann et Gary Cornell

Modalités de contrôle des connaissances

Session 1 ou session unique - Contrôle de connaissances

Nature de l'enseignementModalitéNatureDurée (min.)NombreCoefficientRemarques
UECCTravaux Pratiques1/3
UECTEcrit - devoir surveillé18012/3

Session 2 : Contrôle de connaissances

Nature de l'enseignementModalitéNatureDurée (min.)NombreCoefficientRemarques
UECTEcrit - devoir surveillé12011Pas de report de CC (même favorable).