OS Réseaux et Programmation Système - C4



Documents pareils
1. Fonctionnement de l Internet 2. Protocoles applicatifs 3. Programmation réseau

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

Applications client/serveur TCP/IP - Sockets Rappels. C.Crochepeyre Applications CS 1

Communication inter-processus (IPC) : tubes & sockets. exemples en C et en Java. F. Butelle

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

Internets. Informatique de l Internet: le(s) Internet(s) Composantes de l internet R3LR RENATER

Réseaux et protocoles Damien Nouvel

2. DIFFÉRENTS TYPES DE RÉSEAUX

VoIP 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

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

Introduction. Adresses

Protocoles réseaux. Abréviation de Binary Digit. C'est la plus petite unité d'information (0, 1).

Chapitre : Les Protocoles

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

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

Programmation Réseau. ! UFR Informatique ! Jean-Baptiste.Yunes@univ-paris-diderot.fr

Communication par sockets

Le protocole TCP. Services de TCP

Firewall. Souvent les routeurs incluent une fonction firewall qui permet une première sécurité pour le réseau.

Cours de sécurité. Pare-feux ( Firewalls ) Gérard Florin -CNAM - - Laboratoire CEDRIC -

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

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

Plan. Le système de transfert de fichiers d'internet. Introduction aux systèmes de transfert de fichiers Le protocole FTP.

Rappels réseaux TCP/IP

UDP/TCP - Protocoles transport

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

Introduction aux Technologies de l Internet

Tunnels et VPN. 22/01/2009 Formation Permanente Paris6 86

GENERALITES. COURS TCP/IP Niveau 1

Réseaux Locaux. Objectif du module. Plan du Cours #3. Réseaux Informatiques. Acquérir un... Réseaux Informatiques. Savoir.

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

Capture, Filtrage et Analyse de trames ETHERNET avec le logiciel Wireshark. Etape 1 : Lancement des machines virtuelles VMWARE et de Wireshark

Service FTP. Stéphane Gill. Introduction 2

Couche Transport TCP et UDP

Internet Le service de noms - DNS

Les messages d erreur d'applidis Client

Plan. Programmation Internet Cours 3. Organismes de standardisation

Partie 1 : Architecture et communications Client/Serveur

20/09/11. Réseaux et Protocoles. L3 Informatique UdS. L3 Réseaux et Protocoles. Objectifs du cours. Bibliographie

NOTIONS DE RESEAUX INFORMATIQUES

NAS 224 Accès distant - Configuration manuelle

Outils de l Internet

Serveurs de noms Protocoles HTTP et FTP

Administration UNIX. Le réseau

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

Le Network File System de Sun (NFS)

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

Cisco Certified Network Associate

Services OSI. if G.Beuchot. Services Application Services Présentation - Session Services Transport - Réseaux - Liaison de Données - Physique

Algorithmique et langages du Web

Travaux Pratiques Introduction aux réseaux IP

Master d'informatique 1ère année Réseaux et protocoles

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

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

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

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

«SESSION 2009» RESEAUX DE TELECOMMUNICATIONS ET EQUIPEMENTS ASSOCIES. Durée : 2 h 00 (Coef. 3)

Le modèle client-serveur

Firewall IDS Architecture. Assurer le contrôle des connexions au. Sécurité 1

Nmap (Network Mapper) Outil d exploration réseau et scanneur de ports/sécurité

OS Réseaux et Programmation Système - C5

LINUX REDHAT, SERVICES RÉSEAUX/INTERNET

Algorithmique des Systèmes Répartis Protocoles de Communications

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

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

Informatique Générale Les réseaux

Spécialiste Systèmes et Réseaux

Dossier de réalisation d'un serveur DHCP et d'un Agent-Relais SOMMAIRE. I. Principe de fonctionnement du DHCP et d'un Agent-Relais

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

Cours CCNA 1. Exercices

INSTALLATION DEBIAN 7 (NETINSTALL) SUR VM

Live box et Nas Synology

pare - feu généralités et iptables

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

Copyright. Partie 1 : Architecture et communications Client/Serveur. Plan de la première partie. Remerciements. Les modules SPAI/AdminSR

Le réseau Internet.

Fonctionnement Kiwi Syslog + WhatsUP Gold

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

Les systèmes pare-feu (firewall)

FTPS AVEC UNE APPLIANCE FAST360 EN COUPURE. Table des matières

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

DIFF AVANCÉE. Samy.

CAS IT-Interceptor. Formation «Certificate of Advanced Studies»

Administration des ressources informatiques

NOTE D'APPLICATION CONCERNANT LA MISE EN SERVICE DE MATERIELS SUR RESEAU IP

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

Découverte de réseaux IPv6

Administration réseau Firewall

LINUX - Sécurité. Déroulé de l'action. - 3 jours - Contenu de formation

Principe de la messagerie électronique

Résolution de noms. Résolution de noms

Configurer ma Livebox Pro pour utiliser un serveur VPN

Guide de configuration de la Voix sur IP

Pour configurer le Hitachi Tecom AH4021 afin d'ouvrir les ports pour "chatserv.exe", vous devez suivre la proc

«SESSION 2009» Thème : GESTION DU SYSTEME D INFORMATION. Durée : 2 h 00 (Coef. 3) Chaque question peut comporter plus d'une bonne réponse

//////////////////////////////////////////////////////////////////// Administration systèmes et réseaux

STS SE. FreeRTOS. Programmation réseau WIFI. Programmation réseau. Socket Tcp. FlyPort smart Wi-Fi module

Expérience d un hébergeur public dans la sécurisation des sites Web, CCK. Hinda Feriani Ghariani Samedi 2 avril 2005 Hammamet

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

Transcription:

OS Réseaux et Programmation Système - C4 Rabie Ben Atitallah Rabie.benatitallah@univ-valenciennes.fr

Sockets

Communications dans les systèmes centralisés

Communications dans les systèmes répartis

Protocole de Communication La mise oeuvre des communications entre systèmes nécessite des protocoles de communication Protocole = un ensemble d'accords sur " la représentation des bits détection de la fin d'un message " acheminement des messages représentation des nombres, des caractères Etc Il faut un accord à plusieurs niveaux, depuis les détails de bas niveau de la transmission des bits jusqu'à ceux de plus haut niveau de la représentation des données

Modèle OSI (Open System Interconnexion)

Communication

IP Généralités

Les sockets

Les sockets Les sockets = API (Application Program Interface)" interfaces entre les programmes d applications et les couches réseaux " le terme Socket désigne aussi un canal de communication par lequel un processus peut envoyer ou recevoir des données" L'API Socket s'approche de l'api Fichier d'unix Descripteur de socket dans la table des descripteurs du processus" Primitives read(), write(), close(), ioctl(), fnctl(), select() Les descripteurs peuvent être partagés par les descendants de son créateur

Création d'un socket (1) crée un socket et retourne son numéro de descripteur dans la table des descripteurs du processus (-1 si erreur) cependant le socket n'est pas lié (bounded) à un socket distant ce qui est nécessaire pour le mode connecté ce qui n'est pas nécessaire pour le mode non connecté

Création d'un socket (2) Domaine d'adresse:" Internet AF_INET, Unix AF_UNIX! Type" au niveau bas du protocole (exemple : datagramme IP) SOCK_RAW" en mode non connecté SOCK_DGRAM, SOCK_RDM, SOCK_SEQPACKET" en mode connecté SOCK_STREAM! Protocole : par défaut à 0, le système choisit le protocole IPPROTO_UDP pour UDP avec les sockets de type SOCK_DGRAM, SOCK_RDM, SOCK_SEGPACKET! IPPROTO_TCP pour TCP avec un socket de type SOCK_STREAM

Attachement d'un socket à une adresse Après sa création, un socket n'est connu que du processus qui l'a créé (et de ses descendants)." Il doit être désigné par une adresse pour pouvoir être contacté de l'extérieur (autres processus locaux ou distants)." Primitive bind() Associe l'adresse locale ptlocsockaddr au socket descsock " locsockaddrlen est la taille de l'adresse *ptlocsockaddr

Adressage des sockets (1) Adresse de la domaine Unix AF_UNIX = une entrée dans le système de fichiers (local ou par NFS)" Adresse du domaine Internet AF_INET = <adresse IP de la machine, numéro de port> Sous Unix, les numéros de ports < 1024 sont réservés au SU " Exemple de numéros réservés ftp : 21/tcp" telnet : 23/tcp " La liste des services se trouvent dans le fichier /etc/services " La liste des exécutables servant ces services via inetd et dans /etc/ inetd

Adressage des sockets (2) Format générique des adresses de sockets Type associé aux adresses dans le domaine Unix Type associé aux adresses dans le domaine Internet

Fabrication d'adresse AF_INET Fabrication d'une adresse destinée à être attachée localement (par bind) inet_addr("127.0.0.1"); Fabrication d'une adresse éloignée

Résolution DNS (1) Obtenir un adresse IP à partir d'un nom DNS retourne un pointeur sur une structure du type suivant D'autres fonctions de consultation

Résolution DNS (2) Fonction de conversion Exemple

Socket en mode connecté (SOCK_STREAM) Coté client Demandeur de la connexion Socket actif Coté serveur Attente de connexion Socket passif

Socket en mode connecté (SOCK_STREAM)

Primitives du mode connecté (1) Coté Client " connect() : Demande d'une pseudo-connexion vers un socket distant obligatoire en mode connecté primitive bloquante " la primitive enregistre l'adresse distante dans le descripteur de socket Remarque: tout appel à connect() annule l'appel précédent si ptsockaddr==null, le socket n'est plus associée à un autre

Primitives du mode connecté (2) Coté Serveur " listen() : Ouverture d'un service permet de déclarer un service ouvert auprès du système local indique le nombre maximum de demandes de connexion mises en attente accept() : Acceptation de connexion primitive normalement bloquante (asynchronisme avec select()) permet de prendre connaissance d'une nouvelle connexion retourne un descripteur d'un socket de service dédié à cette connexion ptremotesaddr contient l'adresse du client

Emission - Réception - Fermeture Emission Réception Fermeture

Exemple, Client

Exemple, Serveur

En mode non connecté (SOCK_DGRAM)

Emission - Réception Emission Réception

Exemple, émetteur