Você está na página 1de 83

P

r
o
p
r
i
e
t
a
r
y

a
n
d

C
o
n
f
i
d
e
n
t
i
a
l

Harmony Features

Harmony Platform Training
2
Proprietary and Confidential
What is Optimization?
Acceleration
Data Savings
On the Backhaul (Radio side)
On the Transit (Internet side)
3
Proprietary and Confidential
Optimization tools save resources
Data reduction in downlink traffic (backhaul)
Data reduction in uplink traffic (backhaul)
Data reduction in transit traffic

Enterprise
Internet
Operator
Portal
Harmony
Platform
GGSN/PDSN
Gateway
4
Proprietary and Confidential
Why is Mobile Browsing Slower?
Server Side
Delays
Server-side and
transmission Delays
7
Proprietary and Confidential
Slow Mobile Browsing: Server-Side Delays
High network latency for physically remote sites
Server load may impact client servicing time
Redirected pages waste the original request causing
client to start request over again to redirect server
8
Proprietary and Confidential
Slow Mobile Browsing: Transmission Delays
Browsing using HTTP consists of a separate serial
request from client to server, for every object within
a page
Network latency for each request/response is 700ms
100 ms (2.5G-3.5G) roundtrip







HTTP Get
Request
HTTP Get
Request
HTTP Get
Request
HTTP Get
Request
HTTP Get
Request
HTTP Get
Request
9
Proprietary and Confidential
Slow Mobile Browsing: Transmission Delays
Standard TCP is not optimized for connections with
fluctuating bandwidth
There is a lot of data (rich content) to be transferred
Additional bandwidth does not help!
10
Proprietary and Confidential
Acceleration Factor
Total time to Download UN-Optimized
Total time to Download Optimized
Acceleration Factor
for a URL
=
If Acceleration Factor is
greater than 2, Download
time is twice as fast!
6 Sec
12 Sec
13
Proprietary and Confidential
Optimization Techniques
TCP 4TE Transport Layer Optimization
Pipelining
Connection Management (HTTP+)
Compression and Content Handling
Text Compression
Web Caching
Inline CSS & Java
Video Optimization
Buffer Tuning
Transcoding
Caching
14
Proprietary and Confidential
Transport Protocol Optimization (TCP 4TE)
15
Proprietary and Confidential
Transport native behavior
100
80
60
40
20
0
Data
(kbps)
RTT
Link
Bandwidth
Packet loss
64
62
98
50
51
52
53
Unused
Capacity
Unused
Capacity
82
TCP behavior result in underutilization
of the wireless link
16
Proprietary and Confidential
TCP 4TE Bandwidth Utilization In Du-meter
Optimized
Not
Optimized
TCP
Slow
Start
TCP
Congestion
Avoidance
17
Proprietary and Confidential
TCP 4TE
TCP 4TE is an optimization of the TCP protocol
parameters and other features to make TCP more
efficient over the wireless link by employing
Shared rate control
Dynamic Rate control
TCP parameter tweaking
TCP 4TE, has the semantics and form of standard TCP, yet
differs in the rate-control mechanisms and retransmission
decision-making. Thus, it is compatible with standard TCP
peers
19
Proprietary and Confidential
TCP 4TE Shared Rate Control
TCP connection rates are managed individually by
connection.
Each connection with its own Congestion Avoidance
RESULT: TCP connections originating at the same
terminal compete for bandwidth
TCP 4TE applies shared rate control and
eliminates this competition
20
Proprietary and Confidential
TCP 4TE Dynamic Rate Control
Bandwidth:
0.9 Mbps
1.2 Mbps
Rate detection: Network delays increased by 25%
Harmony Action: Decrease rate by 25%
Similarly if delays decrease, Harmony will increase its rate
Harmony
21
Proprietary and Confidential
TCP 4TE TCP Tweaking
TCP 4TE optimizes the
TCP protocol
parameters to make
TCP more efficient over
the wireless link
22
Proprietary and Confidential
Packet
1
A
C
K

1

Packet
2
Packet
3
A
C
K

2

A
C
K

3

Packet
4
Packet
5
Packet
6
Packet
7
A
C
K

4

A
C
K

5

A
C
K

6

A
C
K

7

Packet
8
Packet
9
Packet
10
Packet
11
A
C
K

8

A
C
K

9

A
C
K

1
0

A
C
K

1
1

Packet
12
Packet
13
Packet
14
Packet
15
A
C
K

1
2

A
C
K

1
3

A
C
K

1
4

A
C
K

1
5

TCP
Sender
TCP
Receiver
Packet
1
Packet
2
Packet
3
Packet
4
Packet
5
Packet
6
Packet
7
Packet
8
Packet
9
Packet
10
Packet
11
Packet
12
Packet
13
Packet
14
Packet
15
A
C
K

1

A
C
K

2

A
C
K

3

A
C
K

4

A
C
K

5

A
C
K

6

A
C
K

7

A
C
K

8

Harmony
Sender
Harmony
Receiver
C
o
n
t
e
n
t

C
o
n
t
e
n
t

Native TCP vs. Harmony Rate Control
23
Proprietary and Confidential
Auto Tuned TCP 4TE
Unique Patented TCP stack algorithm
Increasing effective bandwidth
Reducing packet losses
Improving slot utilization by adjusting MTU to physical RF MTU size
Much more Dynamic Rate control than TCP stack to overcome slow
adjustment of TCP stack to dynamic network conditions
Shared rate Control for all user connections
Packet Building to reduce packet header overhead.
Self-configurable (see next slide)
Supports IPv4 and IPv6
24
Proprietary and Confidential
Auto Tuned TCP 4TE
Self-configurable TCP 4TE: Easier Management and Higher
Throughput : Auto Tuned TCP 4TE will accommodate changing
network conditions, adapting to them smoothly. This creates a
more efficient TCP 4TE mechanism and thereby a higher effective
throughput, also reducing maintenance. Even for LTE networks!

20mbps 30mbps
4G Network
With TCP Optimization
T-1 US operator lab tests 100 MB HTTP download over 4G network
4G Network
25
Proprietary and Confidential
Pipelining Gateway
26
Proprietary and Confidential
Pipelining Gateway
Pipelining is part of the HTTP standard
In Pipelining, the browser sends multiple HTTP
requests on the same connection independently of
the responses, and expects to receive the responses
at the same order of the requests that were sent.
Pipelining reduces overhead and improves browsing
speed
Harmony acts as a proxy and allows this feature to be
implemented for all Web server content and
supporting browsers, regardless of the target web-
server configuration.
27
Proprietary and Confidential
Pipelining Gateway
When the browser already supports pipelining of an
objects request, the Optimization server acts as a
pipelining gateway even if the Web server does not
support pipelining
Harmony acts as a proxy to implement pipelining for
all traffic to browsers configured to support this
feature
Pipelining performs a function similar to that
accomplished by Connection Management. Harmony
is configured so these two methods are not used
together
28
Proprietary and Confidential
HTTP sessions without pipelining
WEB Server
29
Proprietary and Confidential
HTTP sessions with pipelining
Browser WEB Server Harmony
30
Proprietary and Confidential
Connection Management (HTTP+)
31
Proprietary and Confidential
HTTP Native Session without Harmony
Bandwidth
PageSize
TCP
Objects
RTT Time
#
#
Browser
WEB Server Browser allows a
maximum of 2 TCP
connections per server
32
Proprietary and Confidential
Connection Management HTTP+
Many browsers are limited by the number of parallel
TCP connections they can open per host
In order to release this bottleneck, Harmony
manipulates the HTML page returned to the clients
browser by adding fake hosts to referenced objects
This causes the browser to send all HTTP requests to
referenced objects at once
When the requests for the manipulated objects arrive
from the client side, Harmony system replaces the
fake host addresses with the real host addresses
before the request reaches the Web server
33
Proprietary and Confidential
Connection Management
Browser Yahoo.com Harmony
Time = RTT X
# Objects
N x #TCP
+
CompR x PageSize
Bandwidth
~
34
Proprietary and Confidential
Connection Management - How does it work?
Browser
HTTP Get www.yahoo.com
Harmony
HTTP Get www.yahoo.com
Typical HTML Data Response
Object:
www.yahoo.com/pict1
Object:
www.yahoo.com/menu
Object:
www.yahoo.com/pict2
Object:
www.yahoo.com/bann
1
2
3
If the browser receives the
data as-is, it will request
the objects over only 2
TCP connections per host
35
Proprietary and Confidential
Connection Management - How does it work?
4
5
Harmony will manipulate the
data by adding fake host IPs
thus increasing the number of
connections that can be opened
by the browser
Object:
http://64.19.142.12/www.yahoo.com/pict1
Object:
http://64.19.142.11/www.yahoo.com/menu
6
HTTP GET http://64.19.142.12/www.yahoo.com/pict1
HTTP GET http://64.19.142.11/www.yahoo.com/menu
HTTP GET http://64.19.142.13/www.yahoo.com/pict2
HTTP GET http://64.19.142.10/www.yahoo.com/bann
HTTP GET http:///www.yahoo.com/pict1
HTTP GET http:///www.yahoo.com/menu
HTTP GET http:///www.yahoo.com/pict2
HTTP GET http:///www.yahoo.com/bann
Object:
http://64.19.142.10/...
Now, all objects
are requested at
once over parallel
TCP connections
Browser
Harmony
Harmony
36
Proprietary and Confidential
Text and Image Compression
37
Proprietary and Confidential
Compression and Content Handling
Various means of compression and content handling
Generic
Image color reduction
Text Compression
Compress segments on-the-fly
Used intelligently due to high resource consumption
Apply different compression engines to different content
types
No processing of uncompressible flows
38
Proprietary and Confidential
Generic compression
Generic compression adaptive and selective,
Lossless compression.
The engine is selectively applied only to compressible
flows. High compression ratios can be achieved even
when compressing small chunks (adaptive)
39
Proprietary and Confidential
Image Color reduction Lossy compression
Image Compression- Lossy compression of images
(GIF, JPG, PNG, BMP), by reduction of frequencies
(JPG) and colors (GIF). Conducted on the flyin
chunks
40
Proprietary and Confidential
Lossy Image Compression
Excellent image quality
(13.5KB)
Original image quality
(22KB)
42
Proprietary and Confidential
Image Compression - additional features
Animation color reduction Lossy compression of
animation. Harmony can maintain the animation while
reducing the image quality and can clip static GIFs
Policy based - using PCRF/AAA accounting server
different compression level for different users.
URL/Host based - allows the operator to override any
image compression level that is a part of the user profile or
device profile when it comes to a specific URL or Hosts.
For small jpeg files (configurable by default less then
8K), the compression is for the whole file at once (the file
is first downloaded entirely and then compressed) to
improve system performance.
43
Proprietary and Confidential
Text compression
Text compression is implemented using both GZIP
and Deflate text compression algorithms.
It is used according to the encoding type accepted by
the client without affecting the integrity of the data
Text Compression is applied on any text content

44
Proprietary and Confidential
Simultaneous Processing
Compressing multiple objects simultaneously is a
challenge
Flash Networks has registered a patent covering the
simultaneous compression of multiple objects
Furthermore, applying compression on the fly is very
different from offline compression
45
Proprietary and Confidential
Browser
WEB Server Harmony
Compressing
Transmitting compressed JPEG
Collecting the original JPEG
Wait for the whole image, compress it, and
send the compressed image to the terminal
Offline (Regular) Compression
46
Proprietary and Confidential
Adaptive (On-the-fly) compression
Applying compression on the fly is used in Harmony
Platform Solution
As soon as the image arrives from the Internet to
Harmony, it is compressed and sent to the receiving device
Parts of the image are compressed on-the-fly and
transmitted to the terminal while the original image is still
flowing to Harmony. This provides higher transmitting
speed due to the parallelization compared to offline
compression
47
Proprietary and Confidential
Browser
WEB Server Harmony
Collecting the first chunk
Compressing chunk by chunk
Transmitting compressed chunks
Results in superior speed
Adaptive (On-the-fly) compression
49
Proprietary and Confidential
Inline CSS & JavaScript
50
Proprietary and Confidential
Inline CSS & JavaScript
Many web-pages carry CSS and Java scripts. Such
scripts are integral part of the page and are
referenced in the main pages HTML
After the first browsing attempt to a page, the HTML
and all objects are cached in Harmony
For any subsequent browse to this page - Harmony
inserts referenced CSS & JS files into the main HTML
page and serves the manipulated page
This reduces the amount of requests and reduces
the number of RTTs needed to read the HTML page,
because the CSS & JS files are already in the local
buffer when the browser is ready to reference them
51
Proprietary and Confidential
Browser Yahoo.com Harmony
Inline JavaScript and CSS - flow
56
Proprietary and Confidential
Caching
57
Proprietary and Confidential
Caching
To reduce the processing time, Harmony offers
several ways of caching of content, so repeated
requests for content can be fully or partially fulfilled
by content that is already cached
Caching minimizes the dependency on the Internet
response time of pages and objects
The content is saved according to the caching
directives of the objects

58
Proprietary and Confidential
Extended Caching
To maximize the caching of images, Harmony
enhances the caching parameters of objects in the
HTML page so that when the object caching time has
expired, it will first revalidate against the origin
server whether the locally-stored cached content is
still usable.
Harmony also uses heuristics on objects for which the
origin server did not specify any cache directives or
expiration validator
This reduces transactions of objects already saved in
the browser's cache.
59
Proprietary and Confidential
Caching Post Optimization Caching (POC)
Harmony Caching offers caching of already optimized
content - POC.
Repeated requests for content can be fully or partially
fulfilled by content that is already optimized and cached.
This capability improves performance as it minimizes
processing time and raising overall system throughput
capacity
Objects may be stored with different image/video quality
levels once they were already processed optimized.
60
Proprietary and Confidential
POC Caching 1st Request
Yahoo.com
Harmony
1
st
time
request
1.Browser
requests
www.yahoo.com
2. Harmony requests
page and objects
4. At the same time, objects of the requested
page are placed in Harmony internal cache
3. The browser receives
the HTML and all objects
in their optimized form
Internal Cache
61
Proprietary and Confidential
Internal Cache
POC Caching - Subsequent Requests
Yahoo.com
Harmony
Next
Request
1.Browser
requests
www.yahoo.com
2. Harmony requests page
4. Harmony response
5. Browser requests
Objects
6. Object for this and all subsequent requests
come directly from cache. Objects not located in
cache are retrieved form the internet.
3. Harmony checks
if the page objects
are located in the
internal cache
62
Proprietary and Confidential
Video Optimization
63
Proprietary and Confidential
Video Optimization
Buffer Tuning
Saving network resources
Offline Transcoding
From inefficient codecs to efficient codecs
Reducing video bit rate
Video Caching
Centralized cache
64
Proprietary and Confidential
Tuning Buffer Size
Source: Visible Measures Blog, September 2012
How much of a typical online video is actually viewed?
Over 50% of the sessions are
stopped after less than one minute

65
Proprietary and Confidential
Tuning Buffer Size
FLV/F4V header parsing provides
superior results
40%
Data
Save
30-40% throughput reduction
14% throughput reduction over all videos
66
Proprietary and Confidential
Buffer Tuning
Un-Buffered
Extra network usage



Buffered
Efficient network usage
Plus 15% Faster
video start time



Particularly effective as
many videos are
abandoned prematurely
67
Proprietary and Confidential
Transcoding
Transcoding of inefficient codecs
Transcoding of codecs to lower transmission rate
FLV/F4V, H.264/VP6/Sorenson
69
Proprietary and Confidential
Supported Video and Audio Types
Codecs
H.263, MPEG4, H.264, Sorenson, VP6, VC-1, WebM
MP3, AAC-LC, AAC-HE
Many other codecs



Formats
Flash Video 7,8,9,10
Silverlight 1,2,3,4 (Q2 2010)
3GP, 3G2
MP4
72
Proprietary and Confidential
Video Caching
Cover 40% of the video traffic while
transcoding only 5%
100%
75%
50%
25%
60% 48% 36% 24% 12% 72% 84%
% of videos
% of video traffic
Hit rate
100%
Highly cost effective!
73
Proprietary and Confidential
Video Caching
Cache key is MD5 derived from the first 8k of the
video stream
This results video caching being URL independent
This provides more cache hits
Centralized cache mechanism with distributed storage
Increase video hit ratio
Decreased I/O usage
Better usage of the transcoding severs
74
Proprietary and Confidential
A solution designed for low cost systems - reducing the
need for external storage
When Second Hit Caching is enabled Harmony caches
only after the second time a video was watched (either
partially or until the end).
This reduces I/O on disk by 50% at the expense of 20%
less bytes hit ratio (e.g. from 30% to 26%).


Second Hit Caching
75
Proprietary and Confidential
Video Cache Auto-Completion
Increases the cache hit rate by population of clips that
were not completely downloaded by user
This feature adds ~5% to the byte hit rate
Default is 80%: if a user stops after downloading at least
80% of a video Harmony continues the download and
stores the video in the cache
The feature and the percentage value are configurable
80% User
download
20% Harmony
download
(Automatic
77
Proprietary and Confidential
Online transcoding
Harmony supports online transcoding of videos first time
requests for videos (e.g. video is not in Harmony cache) can
undergo transcoding in real-time and served to the requesting
subscriber
Online transcoding may be performed on both MSP (local blade
handling the transaction) and external transcoder blades (remote)
to use the platforms resources more efficiently
78
Proprietary and Confidential
The same video will be transcoded and cached in
several (normally 3-4) qualities to allow class of service
offering. All files will be considered as one when the
video is purged from the video cache.
Serving specific level of transcoding according to:
Radius profile attributes
Busy hour configuration
Specific URL
IP range
The selected transcoding level is fixed and enforced
throughout the session

Multi-Level Transcoding (MLT):
79
Proprietary and Confidential
Dynamic Rate Adaptation (DRA)
Dynamic Rate Adaptation (DRA) adapts the inherent video
bitrate to match the network delivery bandwidth.
This provides the best performance in terms of data saving and
enhanced QoE, at the expense of increased resource utilization
No DRA scenario:






81
Proprietary and Confidential
Offline Dynamic Rate Adaptation (DRA)
Offline DRA works by transcoding offline each video into three
different bitrate levels.

82
Proprietary and Confidential
Online Dynamic Rate Adaptation (DRA)
Online DRA allows the HPI (local) or Transcoder (remote) to
change the encoded rate of the video during the session, based on
the network conditions thus eliminating annoying video stalls.
83
Proprietary and Confidential
Hybrid DRA
Offline DRA for short tail videos (videos that are
frequently requested)
Online DRA for long tail videos (videos that are
requested infrequently).
Harmony provides Hybrid DRA which combines both
offline and online DRA to maximize both coverage
and efficiency of the transcoding process as part of the
transcoders are allocated to offline DRA and part are
allocated for online DRA (this partition is even
configurable per hour of the day)
84
Proprietary and Confidential
Download Optimization
85
Proprietary and Confidential
SW Download/Updates Caching
Accelerating Downloads and Reducing Transit Traffic
Harmony
Optimization
Downloads
Cache
GGSN
Signature based
Large files
Central cache
High hit-rate
File caching accelerates downloads and reduces transit load
86
Proprietary and Confidential
SW Download/Updates Caching
To improve stability (by avoiding the caching of
problematic files) and accuracy of caching, the
caching of software updates is according to the Block
and White lists based on the Host and User-Agent.
The software update file is inserted into the Media
Cache.

Caching of fragmented files is also supported.

87
Proprietary and Confidential
Busy Hour SW Download
Shaping/Thorttling
Making room for others
Network
peak
Local
congestion
Peak is
smoother
Better
QoE
0
1
2
3
4
5
6
7
1:00 2:00 3:00 4:00 5:00 6:00 7:00 8:00
Room for more
traffic/users
Better total QoE
Today
With file download
shaping
Normal download
speed
Throttled download
88
Proprietary and Confidential
Smoothing the SW Download
Shaping/Throttling Transition period

To avoid releasing all throttled sessions together when the
peak hour ends and thereby creating a potentially dangerous
traffic spike, several options to smooth D/L shaping were
made available:
Stop shaping immediately after peek hours
All throttled sessions that started during peak hour shall
continue to be throttled until they finish. Any new session
starting after peak hour will not be throttled.
Random halt For each throttled session, Harmony will stop
throttling after a random number of seconds from the end of
the peak hour. The limits to the random number can be
configured to between 1 and 3600.

(The current default option is Random halt)

89
Proprietary and Confidential
SW Download Optimization
Technical details
Harmony can throttle the download rate of files larger than
a configurable threshold of 10 MB (by default) to a
configurable bitrate (default is 33 Kbps). By default, this
feature is activated only in Rush Hour but can be
configured to be active continuously.
Supported software download for caching and for shaping
include:
Windows updates
Adobe Flash Player updates
Google background application updates
Real Player updates
AVG Anti-Virus
Mcafee Anti-Virus
Apple Donwloads
CNET Downloads
Sourceforge
And more
90
Proprietary and Confidential
Layer8
91
Proprietary and Confidential
Layer 8 User Engagement Platform
The Layer8 User Engagement Platform is a
network-based solution that requires no client
installation
Layer8 enables a floating HTML layer offering
users direct access to a variety of operator
and web network services
Layer8 supports several display modes,
specifically customized for each end-user
device (resolution, portrait, landscape)
92
Proprietary and Confidential
Layer 8 User Engagement Platform contd
Layer8 insertion does not slow down the web
page download and display it is loaded after
the web-page.
The Layer8 platform is highly customizable
and can be enabled/disabled per:
Device family
Browser family/version
Devices Operating system family/version
Target URL or domain name
Any mixture of the above
93
Proprietary and Confidential
Layer 8 technical details
The Layer8 platform injects a script into the
main HTML page which points to a
configurable pre-defined fully qualified domain
name (fqdn) agreed upon with the operator
(e.g. content.webacceleration.com)
The HPI intercepts all client traffic and hence
received requests destined to the configured
host
Once the HPI detects requests for the
configured host, it does not forward them to
the Internet but instead delivers content which
is stored locally on the HPI
94
Proprietary and Confidential
Harmony Lifecycle Management
95
Proprietary and Confidential
Harmony Lifecycle Management
Automated installer streamlining blade installation and software
upgrades:
1. The first EMS node is installed from DVD
2. A Harmony package containing blade center information and
network topology is deployed
3. All additional blades (secondary EMS, log server, MSPs, SPM
nodes, transcoders) are installed using HLM which for every blade
takes care of changing the network boot order, performing
network-based installation, restoring the boot-order, verifying the
installation and running post-installation procedures.
4. HLM also supports a scripted inline upgrade of Harmony software
even if the upgrade requires re-installing the O/S on all blades.
100
Proprietary and Confidential
IPv6 support
101
Proprietary and Confidential
IPv6 support
Harmony is fully compliant with Internet Protocol Version 6
(IPv6) Specification as described in RFC2460
Harmony offers full optimization support in IPv6
environments by implementing a dual IP stack supporting
simultaneously IPv4 and IPv6 client traffic
Harmony supports DNS resolution for IPv6 hosts and
supports separately configured servers for IPv4/6 resolving
Harmony supports switching the users IPv6 address while
in session by tracking the user identification records from
the IPv6 header
Harmony supports IPv6 attributes received in the same
RADIUS message containing IPv4 attributes
102
Proprietary and Confidential
IPv6 DNS flow
MSP Servers send DNS
traffic to a VIP on the
ADC on IPv4
ADC parses the DNS
record type
If the DNS request
contains a AAAA record,
ADC will NAT the source
IP address to the IPv6 IP
address and change the
Destination IP to one of
the IPv6 DNS servers
Thank You

Você também pode gostar