Algorithmique répartie



Documents pareils
Installation et configuration d un serveur DHCP (Windows server 2008 R2)

Chapitre 6 -TP : Support Réseau des Accès Utilisateurs

Algorithmique des Systèmes Répartis Protocoles de Communications

Le Multicast. A Guyancourt le

Revue d article : Dynamic Replica Placement for Scalable Content Delivery

Systèmes et algorithmes répartis

Programmation parallèle et distribuée

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

Le service IPv4 multicast pour les sites RAP

Introduction aux algorithmes répartis

Chapitre 4 : Exclusion mutuelle

TD n o 8 - Domain Name System (DNS)

Le protocole TCP. Services de TCP

Master e-secure. VoIP. RTP et RTCP

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

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

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

Le protocole VTP. F. Nolot 2007

Introduction. Adresses

Push API Technical Specifications V1.0

Gestion répartie de données - 1 Duplication et cohérence

La couche réseau Le protocole X.25

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

EAI urbanisation comment réussir?

Messagerie asynchrone et Services Web

INTRODUCTION AUX SYSTEMES D EXPLOITATION. TD2 Exclusion mutuelle / Sémaphores

Algorithmes de Transmission et de Recherche de l Information dans les Réseaux de Communication. Philippe Robert INRIA Paris-Rocquencourt

module Introduction aux réseaux DHCP et codage Polytech / 5

Programmation parallèle et distribuée

Projet de Veille Technologique

Sécurité des réseaux IPSec

Cours de Génie Logiciel

VTP. LAN Switching and Wireless Chapitre 4

[ Sécurisation des canaux de communication

Conception des systèmes répartis

Technique de défense dans un réseau

Introduction à la Programmation Parallèle: MPI

Problèmes liés à la concurrence

Alcatel OmniPCX Enterprise

Les transactions 1/46. I même en cas de panne logicielle ou matérielle. I Concept de transaction. I Gestion de la concurrence : les solutions

Systèmes et algorithmes répartis

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

Programmation parallèle et distribuée

Dynamic Host Configuration Protocol

Short Message Service Principes et Architecture

Chapitre 1 Le routage statique

4 Exemples de problèmes MapReduce incrémentaux

Big Data et Graphes : Quelques pistes de recherche

Guide d utilisation du service de transfert sécurisé de fichiers. Édition du 3 octobre 2011

RTP et RTCP. EFORT

SOMMAIRE : CONFIGURATION RESEAU SOUS WINDOWS... 2 INSTRUCTIONS DE TEST DE CONNECTIVITE... 5

18 TCP Les protocoles de domaines d applications

Evaluation et mise en place d un serveur de messages pour Chamilo 2.0

Auto-évaluation Oracle: cours de base

MediMail SLA 1/1/2014 1

Réseaux - Cours 3. BOOTP et DHCP : Amorçage et configuration automatique. Cyril Pain-Barre. IUT Informatique Aix-en-Provence

Multicast & IGMP Snooping

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

Fouillez facilement dans votre système Big Data. Olivier TAVARD

BIG DATA. Veille technologique. Malek Hamouda Nina Lachia Léo Valette. Commanditaire : Thomas Milon. Encadré: Philippe Vismara

Configuration des logiciels de messagerie

IPFIX (Internet Protocol Information export)

Plan. Programmation Internet Cours 3. Organismes de standardisation

Environnement pour le calcul pair à pair

Définition des Webservices Ordre de paiement par . Version 1.0

Configuration de Serveur 2003 en Routeur

L EAI. par la pratique. François Rivard. Thomas Plantain. Groupe Eyrolles, 2003 ISBN :

Utilisation de JAVA coté Application serveur couplé avec Oracle Forms Hafed Benteftifa Novembre 2008

Distribution vidéo. F. Harivelo Université de la Réunion. F. Harivelo Distribution vidéo / 53

Cryptologie. Algorithmes à clé publique. Jean-Marc Robert. Génie logiciel et des TI

DHCP. Dynamic Host Configuration Protocol

Formation Webase 5. Formation Webase 5. Ses secrets, de l architecture MVC à l application Web. Adrien Grand <jpountz@via.ecp.fr> Centrale Réseaux

Differential Synchronization

Cours d'informatique «Internet» Session 1

SECURIDAY 2012 Pro Edition

Les protocoles de VoIP tels H323 ou SIP encouragent l'emploi de noms d'extensions alphanumériques ou adresses de messagerie.

Chapitre 3 - VODEL, un langage de description d architectures logicielles statiques et dynamiques

TD Objets distribués n 3 : Windows XP et Visual Studio.NET. Introduction à.net Remoting

4. SERVICES WEB REST 46

White Paper - Livre Blanc

Les Réseaux sans fils : IEEE F. Nolot

SugarCubes. Jean-Ferdinand Susini Maître de Conférences, CNAM Chaire systèmes enfouis et embarqués. Paris, le 9 janvier, 2009

Artica. Domain throttling avec Postfix. Révision Du 04 Février 2011 version

Cryptographie. Cours 3/8 - Chiffrement asymétrique

Boitiers - WEB - SMS

Module 7 : Configuration du serveur WEB Apache

ORDER REQUEST WRITER REDACTEUR DE PROPOSITION DE COMMANDE

NoSQL : hype ou innovation? Grégory Ogonowski / Recherches Octobre 2011

- Visioconférence - Utiliser NetMeeting au quotidien. Richard BONMARIN DSO/DSI/EMC-EBZ

PRESSE EDITION COMMUNICATION STRATEGIE DE MIGRATION VERS LE WEB MOBILE

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

Gestion et Surveillance de Réseau

(Third-Man Attack) PASCAL BONHEUR PASCAL 4/07/2001. Introduction. 1 Domain Name Server. 2 Commandes DNS. 3 Hacking des serveurs DNS

Pourquoi l apprentissage?

Evaluation des performances de programmes parallèles haut niveau à base de squelettes

Introduction à la Sécurité Informatique

NoSQL. Introduction 1/23. I NoSQL : Not Only SQL, ce n est pas du relationnel, et le contexte. I table d associations - Map - de couples (clef,valeur)

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

Introduction aux Technologies de l Internet

Transcription:

Université Joseph Fourier 23/04/2014

Outline 1 2

Types de communication message envoyé à un groupe de processus Broadcast (diffusion) message envoyé à tous les processus du systèmes Unicast message envoyé à un seul processus

Applications du multicast Bases de données Clé/Valeurs (ex: Apache Cassandra) répliquées sur plusieurs serveurs lectures/écritures transmises à tous les réplicas Résultats de tournois sportifs diffusion aux clients Bourse brokers d une salle de marché

Propriétés d ordre Ordre dans lequel les messages arrivent au processus du groupe Trois types courants FIFO causal total

FIFO Définition Si P i diffuse m puis m, chaque processus destinataire recevra m avant m Exemple : M1-1 M2-2 P1 P2 M3-1 P3 P3 L ordre de réception des messages de M3:1 et M1:2 non spécifié

causal Définition si l évènement P i diffuse m précède causalement P j diffuse m,chaque processus destinataire recevra m avant m. Exemple : M1-1 P1 M3-1 M2-2 P2 P3 P3 Applications : newsgroups, twitter...

Propriétés causal = multicast FIFO Réciproque fausse

total (ou atomique) Définition Si P i reçoit m avant m (pas forcément du même émetteur), tous les autres destinataires reçoivent les deux messages dans le même ordre Exemple : M1-1 P1 P2 M3-1 P3 P3

Propriétés Propriété d ordre total indépendante de FIFO ou causal. Variantes : total/fifo, total/causal

Terminologie Dans la littérature anglophone, on lit par exemple: If a correct process P delivers message m before m, then any other process P that delivers m would already have delivered m. Que signifie deliver? livrer? recevoir? En général, pour implémenter des contraintes d ordre, on utilise un protocole. Exemple : A FIFO Link FIFO B Convention: A delivers m = A reçoit m via la couche protocole.

Outline 1 2

On s intéresse aux propriétés d ordre Topologie n processus P 1,...P n Graphe complet canaux fiables mais pas forcément FIFO Si graphe non complet? Une couche de protocole réalise l ordre, l autre la diffusion utilisation d AST / algorithmes probablistes de type épidémie / rumeurs

FIFO : structures de données (Remarque : Si les canaux sont FIFO, facile!) Messages annotées par des numéros de séquence Chaque P i maintient un tableau d entiers, seq[1..n] Initialement {0,..., 0} seq[j] contient le dernier numéro de séquence reçu par P i de P j seq[i] contient le dernier numéro de séquence envoyé par P i

FIFO : comportement Emetteur P i incrémente seq[i] envoie message <m, seq[i]> a tous les destinataires Recepteur P j reçoit <m, sn> de P i si sn == seq[j] + 1, passe le message à l application ( delivers ), incrémente seq[j] sinon, message stocké dans un buffer

total un processus du groupe est élu séquenceur S Emetteur P i envoie message m à tous les destinataires (y compris S) Séquencer S maintient un compteur seq initialement 0 Après réception d un message m, incrémente seq et multicast <m, seq> Récepteur P j maintient un compteur c j, initialement 0 (numéro du dernier message reçu) Lors d une réception d un message m, message mis en attente (dans buffer) jusqu à ce que 1. P j reçoit un message <m, seq> de S 2. seq == c j + 1 Quand ces conditions sont satisfaites, message retransmis à l application ( delivery ), et incrémentation de c j.

causal : structures de données Similaire au multicast FIFO Messages annotés par des numéros de séquence Chaque P i maintient un tableau d entiers, seq_i[1..n] Initialement {0,..., 0} seq_i[j] contient le dernier numéro de séquence reçu par P i de P j seq_i[i] contient le dernier numéro de séquence envoyé par P i

causal : comportement Emetteur P i incrémente seq[i] envoie message <m, seq[1..n]> à tous les destinataires Recepteur P i reçoit <m, V[1..n]> de P j, met le message en attente jusqu à ce que : 1. V [j] == seq i [j] + 1 (ce message est celui attendu par P i de P j ) 2. condition de causalité : pour tout k j, V [k] seq i [k] Quand 1 et 2 sont vérifiés, seq i [j] = V [j]