8
Recherche documentaires Websocket M.TEIKITUHAAHAA Avril 2014

[FR] Websocket Documentary Reasearches

Embed Size (px)

Citation preview

Page 1: [FR] Websocket Documentary Reasearches

Recherche documentairesWebsocket

M.TEIKITUHAAHAA Avril 2014

Page 2: [FR] Websocket Documentary Reasearches

2

Websocket protocole

• Protocole de Couche Application (OSI*)

• Défini par la RFC* 6455 (IETF)

• Communication Full-Duplex basé sur TCP*

• Optimise les échanges C/S

• Traverse les Proxy*

Page 3: [FR] Websocket Documentary Reasearches

3

Flow Graph [C / S]CLIENT (Navigateur) SERVEUR

Handshake (HTTP upgrade)Connexion ouverte

Connexion fermé

Fermeture du canal par un des processus

Communication FullDuplexConnexion persistent

HTTP session établis

TCP connexion établis

Page 4: [FR] Websocket Documentary Reasearches

4

Flow Graph [C / S / C]CLIENT 1 SERVEUR CLIENT 2

TCP connexion établis TCP connexion établis

HTTP session établisHTTP session établis

Handshake (HTTP upgrade)

Connexion ouverteHandshake (HTTP upgrade)

Connexion ouverte

Connexion fermé

Fermeture du canal par un des processus

Connexion fermé

Fermeture du canal par un des processus

Messages

Page 5: [FR] Websocket Documentary Reasearches

5

Compatibilité des navigateurs

• Les navigateurs prenant en charge ce protocole:

Page 6: [FR] Websocket Documentary Reasearches

6

Implémentation• GNU WebSocket4J, une implémentation du protocole WebSocket en Java.• Apache WebSocket module3, une implémentation en langage C sous la forme

d'une extension pour le serveur httpd Apache (mod_websocket).• pywebsocket4, une implémentation en Python sous la forme d'une extension

pour le serveur httpd Apache (mod_pywebsocket).• jWebSocket, implémentation Java côté serveur et JavaScript/HTML5 côté client5.• APE Project, support du protocole WebSocket (-hixie-75, -hixie-76, -hybi-ietf-06,

-hybi-ietf-07)6.• QtWebsocket, une implémentation client et serveur du protocole Websocket en

C++ (nécessite le framework Qt).• phpwebsocket, implémentation PHP côté serveur et PHP/HTML5 côté client7.• Pusher, implémentation sous forme d'API compatible avec la plupart des

langages et sous forme d'un service gratuit et payant.• SignalR, implementation pour ASP.NET en C#.

Page 7: [FR] Websocket Documentary Reasearches

7

Glossaire• Modèle OSI (Open Systems Interconnection): Interconnexion des systèmes ouverts, Standard

de communication en réseau pour les systèmes informatiques.• RFC (Request For Comments): Séries numéroté de documents officiels décrivant les aspects

techniques d’internet ou de matériels informatique publié par l’IETF (Internet Engineering Task Force).

• TCP (Transmission Control Protocol): Protocole de couche 4 (Modèle OSI) fiable, en mode connecté, documenté dans la RFC 793.

• Proxy: Un proxy est un composant logiciel informatique qui joue le rôle d'intermédiaire en se plaçant entre deux autres pour faciliter ou surveiller leurs échanges. Il est équivalent à un par feu de niveau application (Modèle OSI).

• API (Application Programming Interface): Interface de programmation, logiciels offrant un ensemble normalisé de classes, de méthodes, ou de fonctions destiné à d’autres logiciels.