HTTP Streaming: What You Need to Know

Article Featured Image
Article Featured Image

HTTP Streaming Meets Adaptive Streaming
Streaming via HTTP, without the additional benefits of progressive downloading, would be a bit of a nonstarter because the gestalt of benefits from both delivery options are important for efficiency, scalability, and ubiquity.

To realize the joint benefits, HTTP streaming solutions needed another aspect, which is called, generically, adaptive bitrate streaming. This hybrid media delivery method acts like streaming but uses progressive download—it uses port 80 like traditional HTTP traffic and delivers content in a series of small chunks.

This is not the multibitrate streaming of old as previously mentioned, where several full versions of a file were encoded and a single version was chosen at the outset of a user’s viewing request. Each adaptive bitrate streaming file has a distinct bitrate, but each file is then segmented down to small "chunks" of 2–10 seconds, with all chunks aligned simultaneously between each of the files.

Like multibitrate streaming, adaptive bitrate streaming chooses a single file of a particular bitrate to initially stream. Once the bitrate is chosen, a single chunk (or several chunks, depending on the technology provider) begins to play immediately.

Before additional chunks are sent, however, the user’s player sends back another set of available bandwidth information to the server, which then chooses whether to continue sending chunks from the current file or to switch to a file of a different bandwidth. This decision-making process happens multiple times throughout a streaming session and can accommodate network fluctuations that both lower and raise the available bandwidth.

What’s the Big Deal?
So why is HTTP streaming important?

First, based on the pricing of previous solutions, the costs of HTTP streaming delivery may end up being lower than that of traditional RTP/RTSP server solutions. I say "may" for two reasons: first, this is based on historic pricing structures where some CDNs have offered basic HTTP progressive download delivery services, without calling them HTTP streaming, and have charged less for this service than true streaming delivery; second, HTTP servers are extremely cost-effective, and there is the ability to scale HTTP servers at a lower price than traditional streaming servers.

The second reason HTTP streaming is important, as previously mentioned, is that true HTTP streaming provides the ability to push video streaming content through port 80, which is open on many firewalls in order to allow traditional web traffic that is delivered via HTTP, while still retaining the ability to throttle back the content to a data rate just above that of the player.

For instance, Microsoft’s HTTP Streaming Protocol "is suitable for streaming delivery at a fixed rate or at a data rate correlating closely to [a] rate at which the video will be displayed by the receiver."

Third, HTTP streaming allows on-demand media to be more easily delivered to caches along the edge of the network, closer to the end users.

Fourth, and perhaps the most important for our discussion, is the fact that HTTP streaming addresses both buffering and network anomalies, enhancing the viewership experience while also limiting the number of wasted bits. HTTP streaming can not only throttle back delivery, as I mentioned, but it also can allow even higher-quality content to be streamed, should a user’s network conditions improve.

Finally, like other streaming protocols, HTTP streaming allows back-channel communications between the server and the client, allowing the client’s player to send feedback to the server requesting a change to the transmission rate—either at a higher or a lower bitrate—to a secondary stream, referred to as "intelligent streaming" or "adaptive streaming."

Since this requesting is done, however, in a tightly controlled time frame, the added benefit is that the user is not downloading significant amounts of content that will later be abandoned. In addition, on Windows Media files, HTTP streaming can also be used to send commands such as fast-forward, rewind, pause, and location seek as trick mode requests, traditionally identified as streaming-only functionality.

In other words, the combination of streaming’s benefits coupled with the consistency of progressive download means that HTTP streaming can deliver content without long buffering or waiting periods and is less susceptible to network hiccups than in traditional or multibitrate streaming.

Streaming Covers
Free
for qualified subscribers
Subscribe Now Current Issue Past Issues