Lesson 11 Web Sockets

Lesson 11 Web Sockets

Lesson 11 Web Sockets Chapter-3 L11: "Internet of Things " , Raj Kamal, 2017 1 Publs.: McGraw-Hill Education WebIDL and Instant Messaging • Web Interface Definition Language (Web IDL). (http://www.w3.org/TR/WebIDL/ ) • Instant messaging and many applications needs bi- direction data exchanges over same connection. • WebSocket enables bi-directional communication over a single TCP connection Chapter-3 L11: "Internet of Things " , Raj Kamal, 2017 2 Publs.: McGraw-Hill Education WebSocket Protocol • An independent TCP-based protocol • Intended to be compatible with HTTP-based server- side software and intermediaries, • Single port can be used by both HTTP clients talking to that server and WebSocket clients talking to that server. Chapter-3 L11: "Internet of Things " , Raj Kamal, 2017 3 Publs.: McGraw-Hill Education WebSocket Features and WSAPIs • Small header size (2 Byte) [Over 500 Byte for HTTP request and response headers] • WSAPIs facilitate live content and the creation of real-time games. • Therefore, much smaller latency in message interchanges Chapter-3 L11: "Internet of Things " , Raj Kamal, 2017 4 Publs.: McGraw-Hill Education WebSocket Features and WSAPIs • Small header size (2 Byte) [Over 500 Byte for HTTP request and response headers] • WSAPIs facilitate live content and the creation of real-time games. • Therefore, much smaller latency in message interchanges Chapter-3 L11: "Internet of Things " , Raj Kamal, 2017 5 Publs.: McGraw-Hill Education WebSocket: an IETF standard protocol • RFC 6455 specifications of the web protocol. (www:/tools.ietf.org/ html/rfc6455) [December 2011] • WebSocket API (WSAPI) W3C standard Chapter-3 L11: "Internet of Things " , Raj Kamal, 2017 6 Publs.: McGraw-Hill Education opcode and WebSocket API Web Objects using Web Sockets 7-bit length . 2 Byte Client Extended Events Application Length onopen, WSI 4/2/0 Byte onmessage API and onerror 2-6 Byte 2-6 Byte Mask Attributes (Typical) (Typical) (at Client) SASL/TLS url, protocol, 4 Byte readystate, TCP Data bufferdAmoun n Byte t and extensions Server Application 2-6 Byte (Typical) Functions WSI send and 2-6 Byte API 2-6 Byte WebSocket Frame close (Typical) (Typical) (a) (b) (c) Fig. 3.9 (a) Opcode and other fields at a WebSocket Frame (b) WebSocket API events, attributes and functions (c) data Bi-directional communication using webSocket between the web objects7 WebSocket Port • Default port 80 for regular WebSocket connections using ws:// and • port 443 when using wss:// for WebSocket connections tunneled over Transport Layer Security (TLS) • Only relationship to HTTP is that its handshake is interpreted by HTTP servers as an Upgrade request. Chapter-3 L11: "Internet of Things " , Raj Kamal, 2017 8 Publs.: McGraw-Hill Education WebSocket API events, attributes and functions • Event means that condition, occurrence of which is listened by an event listener function • As soon listener listens, an event handling function executes. • Event handling function is also callback or action Chapter-3 L11: "Internet of Things " , Raj Kamal, 2017 9 Publs.: McGraw-Hill Education Data bi-directional communication and Authentication • Using WebSocket APIs between the web objects • WebSocket APIs also at the browsers and servers • Authentication by TLS Chapter-3 L11: "Internet of Things " , Raj Kamal, 2017 10 Publs.: McGraw-Hill Education Events • Onopen ( ), • Onmessage ( ) and • onerror ( ) Chapter-3 L11: "Internet of Things " , Raj Kamal, 2017 11 Publs.: McGraw-Hill Education Attributes • url, • protocol, • readystate, • bufferdAmount and • extensions Chapter-3 L11: "Internet of Things " , Raj Kamal, 2017 12 Publs.: McGraw-Hill Education Functions • send ( ) and • close ( ) Chapter-3 L11: "Internet of Things " , Raj Kamal, 2017 13 Publs.: McGraw-Hill Education Six frame types in WebSocket • Six types are (i) textual data (UTF-8) and (ii) binary data (whose interpretation is left up to the application)Ten additional reserved for future use (version 13) • Clients and servers exchange the “messages” after success of handshake Chapter-3 L11: "Internet of Things " , Raj Kamal, 2017 14 Publs.: McGraw-Hill Education Associated Type Frame • Each frame belonging to the same message contains the same type of data.. Chapter-3 L11: "Internet of Things " , Raj Kamal, 2017 15 Publs.: McGraw-Hill Education Control frame • Frame not intended to carry data for the application • Used for protocol-level signaling, such as to signal that the connection should be closed • Supports HTML5 WebSocket when the client and server support HTML5, Chapter-3 L11: "Internet of Things " , Raj Kamal, 2017 16 Publs.: McGraw-Hill Education Client Library examples • Web-socket-js (in JavaScript), Arudino C++ WebSocket client; Ruby-web-socket, .NET WebSocket client (in .NET) and Silverlight WebSocket Client Chapter-3 L11: "Internet of Things " , Raj Kamal, 2017 17 Publs.: McGraw-Hill Education Server Library examples • Apache-websocket, • SuperWebSocket, • ActiveMQ, • PHD WebSocket and • Socket.io (node.js) Chapter-3 L11: "Internet of Things " , Raj Kamal, 2017 18 Publs.: McGraw-Hill Education Extensibility • Request-response (client-server) architecture extends to iq (Information through querying), • Chat and • Super chat Chapter-3 L11: "Internet of Things " , Raj Kamal, 2017 19 Publs.: McGraw-Hill Education Summary We learnt •WebSocket Protocol for bidirectional communication over TCP connection, •Tiny header size (2B), •Smaller messaging latency •For Real time Messaging, such as in gaming Chapter-3 L11: "Internet of Things " , Raj Kamal, 2017 20 Publs.: McGraw-Hill Education Summary We learnt • Use WebSocket APIs (WSAPIs) • Used in designing the codes for Instant Messaging and many applications Chapter-3 L11: "Internet of Things " , Raj Kamal, 2017 21 Publs.: McGraw-Hill Education End of Lesson 11 on WebSockets Chapter-3 L11: "Internet of Things " , Raj Kamal, 2017 22 Publs.: McGraw-Hill Education .

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    22 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us