websocket server implementation
play

WebSocket Server Implementation Chao-Wei Peng HTTP Request Model - PowerPoint PPT Presentation

WebSocket Server Implementation Chao-Wei Peng HTTP Request Model Service Http Client Http Server Thread Waiting Http Request Run Service Http Response HTTP Weakness Server sends response only if someone requests it. WebSocket Protocol


  1. WebSocket Server Implementation Chao-Wei Peng

  2. HTTP Request Model Service Http Client Http Server Thread Waiting Http Request Run Service Http Response

  3. HTTP Weakness Server sends response only if someone requests it.

  4. WebSocket Protocol • New protocol in Application layer. • Enable web pages to build two-way channel with a remote host. Refer to: http://www.mironov.com/articles/osi_layers/

  5. WebSocket Client Supporting

  6. WebSocket Client API • WebSocket – Events – Constructor(uri); • onstart – Attributes • onmessage • readyState • onclose – Methods • onerror • send(message); • close();

  7. WebSocket Server Implementation 1. Handshake and Build Channel with Client 2. Send & Receive Data 3. Close Channel Refer to: http://tools.ietf.org/html/draft-hixie-thewebsocketprotocol-75

  8. Handshake GET /demo HTTP/1.1 Upgrade: WebSocket Client Connection: Upgrade Origin: http://example.com Host: example.com HTTP/1.1 101 WebSocket Protocol Handshake Upgrade: WebSocket Server Connection: Upgrade Sec-WebSocket-Origin: http://example.com Sec-WebSocket-Location: ws://example.com/demo

  9. Data Framing 0xFF 0x00 0xFF 0x00 Data bytes Data bytes Data bytes should be encoded/decoded by UTF-8

  10. Close Channel Simply close the WebSocket connection.

  11. Demo Time

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend