Would you put the cart before the horse when building your application? When it comes to engineering for efficient network bandwidth consumption and usage, many companies do precisely that. Getting the basic application up and running is usually the first concern for companies building real-time applications that push critically dynamic data to end users. Because the initial app build is paramount, network bandwidth is often bolted-on as an afterthought.
That’s a mistake. Of course, we are slightly biased at Telefonica. We own one of the world’s largest fiber optic networks and have the best coverage of key emerging markets like Latin America. But since I am a global product manager in the cloud / IaaS world, this is a topic that we often discuss with customers as they seek to build real-time, data-intensive applications. It’s important for several reasons.
- Unnecessary bandwidth usage is often an area where a company running apps in the cloud can easily save money. Some cloud providers mark up a hefty margin on bandwidth, partly as a way to subsidize very low margins on basic compute or storage.
- Unnecessary bandwidth usage is a sign of other problems in the application architecture. An optimized, streamlined bandwidth usage profile indicates a lean, mean efficient application structure.
- Efficient bandwidth usage is a critical piece of “usage spike insurance” – meaning, if your application is hit with unexpected bursts of activity, you don’t blow the budget. This is particularly essential for event-driven mobile applications, such as sports betting or financial information.
As these are among the fastest growing segments of business for our partner Push Technology, we work closely with them to explain these benefits to customers all the time. For example, we jointly deliver the benefits of network bandwidth optimization and cloud for The Racing Post, the leading equestrian sports publication in the world and one of the most heavily used mobile applications for real-time updates on race days. Push Technology runs Racing Post’s real-time cloud infrastructure atop Telefonica Instant Servers, a cloud service designed for speed and low application latency.
So what’s in Push Technology’s secret sauce? The company’s Diffusion server uses an innovative protocol optimization technology called “structural conflation”. Think of Structural Conflation as de-dupe for bandwidth, a way to reduce redundancy of real-time, in-flight data streams. It removes redundant information from any two-way data stream by identifying what is the newest information and where the key “deltas” in important data lies. This is no small feat. Even when publishers pump only their most time-sensitive information into Diffusion, achieving proper stateful awareness of end users – who may be experiencing either slow or unreliable mobile network connectivity – is quite tricky. The result of structural conflation, of course, is not only improved performance and faster delivery of relevant data to end users, but also a significant decrease in bandwidth consumption.
Some other key features of Push Technology that curtail and optimize bandwidth consumption are state management, bi-directional communication and cascading transport. State management is closely related to structural conflation in that it allows application publishers to leverage detailed user state information to guide data caching based on specific user deltas on a “per connection” basis. Bi-Directional communication means that Diffusion sets up true duplexed connectivity, eliminating the long polling and synchronous connection handling that is particularly damaging to mobile application delivery over unpredictable cell networks. Cascading transport means that Diffusion quickly selects the proper transport protocol (WebSockets, Flash, Silverlight, etc.) to set up a connection from the end user to the origin server as efficiently as possible.
Collectively, these three features when combined with structural conflation can slice bandwidth usage by as much as 60%. Which leads to the obvious question. If we were going to put the horse before the cart and rethink the application design in a way that considers bandwidth and speed as being not a bottleneck or an afterthought, but instead as a key source of strength, then how would we build apps differently? Perhaps we would emphasize real-time data even more, building in intra-race betting, for example, as a key feature that Diffusion enables. Or maybe we would allow users to see a broader range of financial stocks and bonds in a single interface because updating them all becomes trivial. The basic gist? Free your bandwidth and your app will follow.
Guest blogger, Alexander Salkever, Global Manager – Iaas/ Cloud at Telefonica
The Diffusion Intelligent Data Platform manages, optimizes, and integrates data among devices, systems, and applications. Push Technology pioneered and is the sole provider of real-time delta-data streaming™ technology that powers mission-critical business applications worldwide. Leading brands use Push Technology to fuel revenue growth, customer engagement, and business operations. The products, Diffusion® and Diffusion Cloud™, are available on-premise, in-the-cloud, or in a hybrid configuration, to fit the specific business and infrastructure requirements of the applications operating in today’s mobile obsessed, everything connected world. Learn how Push Technology can reduce infrastructure costs, and increase speed, efficiency, and reliability, of your web, mobile, and IoT application.