Download presentation
Presentation is loading. Please wait.
Published byสมลักษณ์ วอชิงตัน Modified over 5 years ago
1
AT&T Developer Services Application Resource Optimizer (ARO)
Lisa Burks Sr Product Marketing Manager
2
ARO helps Apps run Faster and Smarter!
Slide Supplied by AT&T Labs ARO helps Apps run Faster and Smarter! ARO is a ground breaking new tool AT&T created to help developers to understand how their app is behaving on any wireless network. ARO helps developers to test, learn and optimize performance of apps: Improved battery life Faster response times Efficient network handling All this leads to rich smartphone experiences for our customers! ARO is Free, Cross Platform and Open Source. Go to to learn more and download the tool. ARO Analyzer
3
How ARO Works ARO Data Collector records: Data Traffic TCP sessions
1 Start Data Collector 2 Test the apps 3 Stop Data Collector 4 Transfer Trace Files 5 ARO Data Analyzer ARO Data Collector records: Data Traffic TCP sessions HTTP packets and content Screen Video User Input Battery Level GPS/Camera/Bluetooth Usage ARO Data Analyzer analysis: Examines all data and provides feedback based on best practices Applies Radio and Power Models so you can see WHERE the power drain is coming from Developers can look through charts/tables of data to learn how their application behaves
4
ARO Best Practices WHAT DOES ARO TEST? ARO conducts various caching and connections tests as well as peripheral tests. HOW PREVELANT ARE THESE ISSUES? 50% Caching Issues 75% Connections Issues 10% Peripherals By managing connections properly, the webpage loaded 15 seconds faster! 56% improvement in battery life! In 5 minutes, the same content was transmitted 11 times 50% of the apps tested failed to close connections promptly Apps should be smarter about image resolution 93% of the messaging app was duplicate content
5
Wireless is Different
6
Wireless State Machine
What’s Different? IP applications Wireless State Machine Mobile applications Internet Optimized applications battery and deliver a superior network experience Frequently mobile apps do not consider the uniqueness of the wireless network Optimized mobile application improve user experience and network efficiency
7
IDLE Device is on Screen is on or off Radio is off
So how do mobile applications affect battery life? When applications send data traffic over the wireless network, the device’s radio needs to power up to about 600W to transmit data. There’s about a 2 second lag time when this is done. If the radio were to stay on in high power the entire time, the battery would be dead in no time. This is where the state machines come into play. Every cellular company has them and it’s important to know they’re there when developing for mobile. Once the device radio is woken up, and your app finishes sending data, the radio isn’t turned off immediately. The cellular network has a timer that keeps the device in high power in case more data will be transmitted. If there’s no data, the device radio will transition into a ½ power state where it will stay for a longer time period before turning the radio back off. Slide only: Radio starts in the Idle state IDLE
8
DCH Device is on Data is transmitted 2 Second Delay
Radio is powering up to High Power / High Bandwidth DCH After 2 seconds, the radio powers up to transmit data
9
DCH Device is on Data is sent or received High Power High Bandwidth
Radio is in the CELL_DCH state (High Power/ High Bandwidth)
10
DCH Device is on No data transmitting 5 second tail time High Power
High Bandwidth DCH Once radio is inactive in the CELL_DCH state for 5 seconds, the radio goes to the CELL_FACH state (Low Power / Low Bandwidth)
11
FACH Device is on Device is waiting for data Low Power Low Bandwidth
The radio will remain in the CELL_FACH state until triggered by an action. - Radio becomes active again and goes back to the CELL_DCH state - Radio remains inactive for 12 seconds, the radio goes to the Idle state FACH
12
DCH Device is on Data is transmitted 1.5 second delay
Radio switches back to High Power / High Bandwidth DCH If data is sent or received while in the CELL_FACH state, the radio will switch back to the CELL_DCH state (High Power / High Bandwidth) After 1.5 seconds, the radio powers up to transmit data
13
DCH Device is on Data is sent or received High Power High Bandwidth
Radio is in the CELL_DCH state (High Power/ High Bandwidth)
14
DCH Device is on No data transmitting 5 second tail time High Power
High Bandwidth DCH Device is on Once radio is idle in the CELL_DCH state for 5 seconds, the radio switches to the CELL_FACH state (Low Power / Low Bandwidth)+
15
FACH Device is on No data transmitting
Radio goes to idle if inactive for 12 seconds Once the radio is idle in the CELL_FACH state for 12 seconds, the radio goes to the Idle state. FACH
16
IDLE Device is on Screen is on or off Radio is off
Radio returns to the Idle state. IDLE
17
It’s All Connected Application traffic triggers RRC State transitions that control User experience Device battery life Network efficiency So, As you can see, a good customer experience is dependent on the application, the device, and the network. By knowing these things, you’re half-way there to building smarter apps. We realized that developers need specialized tools. © 2012 AT&T Intellectual Property. All rights reserved. AT&T and the AT&T logo are trademarks of AT&T Intellectual Property.
18
ARO Analyzer Overview
19
ARO Walkthrough: Best Practices
20
ARO Walkthrough: Overview
File Types Trace Benchmarking Connection Statistics Duplicate Content Accessed Domains Domain TCP Sessions File Types Trace Benchmarking Connection Statistics Duplicate Content Accessed Domains Domain TCP Sessions As we move to the overview tab, you’ll notice there are 6 sections. File types is pretty straight forward and shows the various file types that were downloaded during the trace. You can see in this example that jpegs were the most common in this particular trace.
21
ARO Walkthrough: Overview
File Types Trace Benchmarking Connection Statistics Duplicate Content Accessed Domains Domain TCP Sessions On the righthand side you’ll see the Trace Benchmarking. Compared to 150 other traces we’ve compiled, this trace does a pretty decent job regarding throughput, outperforming xx%. However, with signaling overhead, the majority of applications we used in the benchmark did better in this area. Moving on to Connection Statistics. These are about your trace connections. You xx % of the sessions were properly terminated. However, a very small percentage were tightly grouped. Obviously how much that you can improve your application depends heavily on the type of application, but we’ve seen that nearly all of the applications we have tested could be improved. Moving on to duplicate content. In this section, you will see at what time the original and all of the duplicates were downloaded as well as the file name and size. You can click “view” to see what the file was. For example, the highlighted row shows us that at approximately 77 seconds into the trace, a 6.7K color yellow pages icon was downloaded. You can sort by each of these columns as well. One of the great things about collecting traces using the native collectors is the ability to refer to the video to refresh your memory of what was being done during the trace. The last two tables Accessed Domains and Domain TCP sessions go hand in hand. You can see I highlighted the domain with 306 TCP sessions and the list of the 306 sessions display on the right.
22
ARO Walkthrough: Overview
File Types Trace Benchmarking Connection Statistics Duplicate Content Accessed Domains Domain TCP Sessions File Types Trace Benchmarking Connection Statistics Duplicate Content Accessed Domains Domain TCP Sessions Moving on to duplicate content. In this section, you will see at what time the original and all of the duplicates were downloaded as well as the file name and size. You can click “view” to see what the file was. For example, the highlighted row shows us that at approximately 77 seconds into the trace, a 6.7K color yellow pages icon was downloaded. You can sort by each of these columns as well. One of the great things about collecting traces using the native collectors is the ability to refer to the video to refresh your memory of what was being done during the trace. The last two tables Accessed Domains and Domain TCP sessions go hand in hand. You can see I highlighted the domain with 306 TCP sessions and the list of the 306 sessions display on the right.
23
ARO Walkthrough: Diagnostics
24
ARO Walkthrough: Diagnostics
25
ARO Walkthrough: Statistics
26
Partner With Us Promoting Better Apps
Build Better Apps Join the AT&T Developer Program ARO Training for your org Collaborate with us Open Source version of ARO Expand ARO functionality Maximize Developer Adoption Developer Education Campaigns Partner outreach to integrate ARO in the ecosystems Incorporation into testing suites and/or onboarding process
27
Questions? developer.program@att.com
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.