WebSocket Perspectives Past, Present and Future
The State of the Stateful
Frank Greco Director of Technology [email protected]
© 2014 Kaazing Corporation. All Rights Reserved.
Speakers
Kevin Hoyt Principal Evangelist Email: [email protected] Twitter: @krhoyt
Frank Greco Director of Technology NYJavaSIG/NYHTML5 Chair Email: [email protected] Twitter: @frankgreco Yell: “Hey Frank!”
© 2014 Kaazing Corporation. All Rights Reserved.
History
History
© 2014 Kaazing Corporation. All Rights Reserved.
Speakers
In the beginning…
© 2014 Kaazing Corporation. All Rights Reserved.
Enterprise – “inside the firewall” (1980’s – early 90’s)
Client-Server
tcp
© 2014 Kaazing Corporation. All Rights Reserved.
Web – “over the firewall” (early 90’s – 2011)
tcp http
web server
app protocols
Not optimal for event-based systems Lovable hacks – AJAX/Comet
© 2014 Kaazing Corporation. All Rights Reserved.
WebSocket
§ W3C API and IETF Protocol (RFC 6455) – Dec 2011 - Submitted 2007 to IETF - Event-driven JavaScript API - Full-duplex communication protocol (single bidirectional pipe)
§ Integrates HTTP addressing - ws://yourcompany.com/collaboration_svc
- wss://anothercompany.com/marketdata_svc
§ Traverses Firewall § Text and Binary § Useful for Event-Based, Reactive (ECA) Systems
© 2014 Kaazing Corporation. All Rights Reserved.
Legacy HTTP vs WebSocket For Event-based Web Communication…
http:// ws://
Application-level Socket over the Web Supported by all Modern Browsers Event-based Applications
© 2014 Kaazing Corporation. All Rights Reserved.
WebSocket
TCP/IP
JMS XMPP AMQP B2B CoAP VNC MQTT etc
Browser and Native Applications
WebSocket Gateway
Internet
WebSocket Gateway
Protocol Layering with WebSocket
Services
© 2014 Kaazing Corporation. All Rights Reserved.
Futures
What’s next for WebSocket?
© 2014 Kaazing Corporation. All Rights Reserved.
Futures
Internet of Things (IoT) +
Heterogeneity + Scale + Usability
© 2014 Kaazing Corporation. All Rights Reserved.
Event-based (“real-time”) Systems
Communication
Presentation Music Logistics
Big Data
Risk Management
Home Security
Health Monitoring
Intelligent Appliances
Local Transportation
Monitoring/Management
Remote control
© 2014 Kaazing Corporation. All Rights Reserved.
© 2014 Kaazing Corporation. All Rights Reserved.
§ Internet – Global system of interconnected networks that use IP to communicate
§ Internetworking – Connecting one network with another through a series of Gateways that provide a common method of communication
Let’s take 1 step back to go 2 steps ahead…
© 2014 Kaazing Corporation. All Rights Reserved.
§ A popular application service on the Internet
§ Based on TCP/IP
§ Advantages § Application deployment simplified – URI
§ Interoperable open standards and specifications
§ Ease of programmability – scripting
§ Global reach and Economy of scale
§ Accessed by ubiquitous Browsers and also non-Browsers
§ Two major protocols - HTTP (1988/1999) and WebSocket (2007/2011)
The Web
© 2014 Kaazing Corporation. All Rights Reserved.
§ A riff on “Ubiquitous Computing” (also “Pervasive”) - Mark Weisner PARC 1988
§ Its early so there’s different definitions - similar to early days of Cloud Computing
§ M2M has been around for decades. Primarily proprietary embedded systems and typically point-to-point (RPC)
§ IoT/IIoT (Industrial IoT) - Adds Internet connectivity
- Networks of M2M systems connected via IP
Now… IoT, IIoT and M2M
© 2014 Kaazing Corporation. All Rights Reserved.
§ No formal API standards
§ Many protocol standards – interoperability low
§ No common, wide-reaching frameworks
§ No composition possibilities
§ Difficult to leverage economies of scale
§ Barrier to entry is high for millions of app developers
§ Also… we’re in a cloud, mobile, web api world
IoT/IIoT – Connectivity isn’t Sufficient
© 2014 Kaazing Corporation. All Rights Reserved.
§ IoT – Internet of Things - Embedded computing endowed with Internet connectivity
§ WoT – Web of Things - Application and Services layer over IoT
§ Apply the benefits of the Web to IoT
§ WoT is a uniform interface to access IoT functionality
§ Provides the abstraction for control/monitoring (sensors/actuators)
§ Accelerates innovation
§ Deployment, development, interoperability, economy of scale…
Here’s where the Web comes in
IoT
WoT
Developers!
© 2014 Kaazing Corporation. All Rights Reserved.
Higher Level APIs Reduces Complexity
Simplicity is a Useful
Abstraction!
Simplicity enables Innovation
Complexity
Innovation
© 2014 Kaazing Corporation. All Rights Reserved.
But Is HTTP the Right Choice?
l Disadvantages of HTTP Request/Response l Lack of resiliency and robustness l Enterprise events retrieved by resource intensive polling
techniques u Much bandwidth is wasted u Information can be delayed
l Composite services brittle and lack transactionality l Enterprises learned advantages of ESB 10+ years ago l See failures of CORBA, Sun RPC, etc. l Clumsy AJAX/Comet workarounds to simulate real-time
© 2014 Kaazing Corporation. All Rights Reserved.
History Repeats Itself
RPC
Asynchronous RPC
Messaging
Enterprise Web/WoT
REST
Asynchronous REST
Messaging
• Can wait for response • Tight coupling • Centralized business
processes • Vertical interaction • Easy to understand (xact)
• Future response • Loose coupling • Independent business
processes • More complexity (xact)
Did I mention History repeats itself?...
ESB ISB
© 2014 Kaazing Corporation. All Rights Reserved.
The Message is the Medium
“…terse, self-classified messages, networking overhead isolated to a specialized tier of devices, and publish/subscribe relationships are the only way to fully distill the power of the coming Internet of Things” – Francis daCosta
© 2014 Kaazing Corporation. All Rights Reserved.
Data flow – Human Web vs WoT
Typically an App Server and DB
App Server is probably not the right architecture
Human Web
WoT
Large data to client
Small data to server
© 2014 Kaazing Corporation. All Rights Reserved.
Event Gateway Architecture
GW
GW
GW
IoT/IIoT
WoT
WoT
WoT
© 2014 Kaazing Corporation. All Rights Reserved.
Event Gateway Architecture – Future Directions
GW
GW
GW
GW
GW
GW
GW
Aggregator nodes
• Scalability • Querying • Performance • Manageability • Composition • Circles of Trust • CDN++
© 2014 Kaazing Corporation. All Rights Reserved.
Click to Edit Master Title Style
Demos
© 2014 Kaazing Corporation. All Rights Reserved.
Thank You!
Top Related