1. Objets distribués
    1. appel de méthode distante
      1. mode statique
        1. comme RPC
      2. mode dynamique
        1. création dynamique d'objets
        2. à partir d'interfaces
    2. intergiciel
      1. IDL
        1. définition de l'interface
      2. ORB
        1. nommage
        2. liaison
    3. nombreux services
      1. nommage
      2. cycle de vie
      3. notification d'événements
      4. transactions
      5. concurrence
      6. externalisation
      7. relation
      8. service de temps
      9. sécurité
      10. ...
  2. Streaming
    1. transmission de flux vidéo en temps réel
      1. adaptation à bande passante
      2. synchronisation flux audio et vidéo
    2. protocoles
      1. Real-Time Protocol
        1. sur UDP
        2. pas de contrôle
          1. identifier le type de données transmises
          2. déterminer ordre paquets
          3. pas de QoS
          4. -> Real-Time Control Protocol
        3. unicast/multicast
      2. Real-Time Streaming Protocol
        1. sur TCP
        2. amélioration RTP
        3. contrôle des propriétés temporelles d'une vidéo
  3. Transactions
    1. unité d'interaction fondamentale
      1. groupe d'opérations
        1. BD
        2. client/serveur
      2. ensemble asynchrone de RPC
    2. propriétés ACID
      1. Atomicité
        1. tout ou rien
      2. Consistence
        1. état consistent avant
          1. <=
          2. état consistent après
      3. Isolation
        1. contrôle de la concurrence
          1. sérialisabilité globale
        2. verrouillage à deux phases
          1. lectures et écritures seulement dans transactions
          2. verrous attribués par ordonnanceur
          3. phase 1
          4. acquisition de verrous
          5. pahse 2
          6. libération de verrous
          7. pbs
          8. interblocages
          9. timeouts
          10. quand libérer ?
          11. version stricte
          12. à la fin
          13. coordination dans système distribué
        3. estampillage temporel
          1. estampillage par transaction
          2. ordonnancement ops dans ordre estampille
          3. abandon trans. si rejet d'une opération
        4. contrôle optimiste
          1. travail sur copies privées
          2. validation si commit
          3. sinon abandon
      4. Durabilité
        1. HW
          1. stockage stable
          2. duplication
          3. RAID
        2. SW
          1. journalisation
          2. des écritures
          3. sur stockage stable
          4. copies privées
          5. shadow
    3. distribution
      1. pbs
        1. un coordinateur et plrs participants
        2. possibilité de pannes
          1. pendant commit
        3. possibilité de plrs commits concurrents
      2. commit à deux phases
        1. coordinateur demande votes des participants
        2. coordinateur choisit et diffuse
        3. résistance aux pannes
          1. participants
          2. utiliser RPC
          3. coordinateur
          4. temps d'incertitude inévitable
          5. peut être réduit avec 3 phases
          6. mettre coordianteur sur machine fiable...
    4. transactions imbriquées
      1. modularisation
      2. arbre de transactions
      3. adaptation règles
        1. commit
          1. commit local => visibilité ancêtres
          2. global commit si local et ancêtres commit
        2. rollback
          1. y compris toutes s/s transactions
        3. visibilité
          1. chgts locaux visibles
          2. aux parents
          3. après commit
          4. verrous visibles aux descendants
        4. verrouillage
          1. vers l'extérieur
          2. racine a tous les verrous
          3. vers l'intérieur
          4. héritage de verrous
          5. seules feuilles peuvent agir sur objets verrouillés