Network Convergence of Mobile, Broadband and Wi-Fi3G4G
A presentation and video by Ben Toner, Founder & Director, Numerous Networks exploring the convergence of Mobile, Broadband and Wi-Fi
*** SHARED WITH PERMISSION ***
All our #3G4G5G slides and videos are available at:
Videos: https://www.youtube.com/3G4G5G
Slides: https://www.slideshare.net/3G4GLtd
5G Page: https://www.3g4g.co.uk/5G/
Free Training Videos: https://www.3g4g.co.uk/Training/
Xin Jin
Princeton University
Research Track Part 1
ONS2015: http://bit.ly/ons2015sd
ONS Inspire! Webinars: http://bit.ly/oiw-sd
Watch the talk (video) on ONS Content Archives: http://bit.ly/ons-archives-sd
Business Models for Dynamically Provisioned Optical NetworksTal Lavian Ph.D.
Low latency, high bandwidth services (>1Gb/s) are emerging requirements for business, medical, education, government and industry
New applications development and business models could be stimulated by affordable and easily accessible high bandwidth in both local and wide area networks
High bandwidth connections are typically full period today but full period 7x24 bandwidth is not always needed.
Technologies are now available that suggest plausible new business model options to offer time slots for high bandwidth services
Dynamic provisioning of lambda and sub-lambda time slots
Periodically scheduled (N time slots per day, per week) or ad hoc
Network Convergence of Mobile, Broadband and Wi-Fi3G4G
A presentation and video by Ben Toner, Founder & Director, Numerous Networks exploring the convergence of Mobile, Broadband and Wi-Fi
*** SHARED WITH PERMISSION ***
All our #3G4G5G slides and videos are available at:
Videos: https://www.youtube.com/3G4G5G
Slides: https://www.slideshare.net/3G4GLtd
5G Page: https://www.3g4g.co.uk/5G/
Free Training Videos: https://www.3g4g.co.uk/Training/
Xin Jin
Princeton University
Research Track Part 1
ONS2015: http://bit.ly/ons2015sd
ONS Inspire! Webinars: http://bit.ly/oiw-sd
Watch the talk (video) on ONS Content Archives: http://bit.ly/ons-archives-sd
Business Models for Dynamically Provisioned Optical NetworksTal Lavian Ph.D.
Low latency, high bandwidth services (>1Gb/s) are emerging requirements for business, medical, education, government and industry
New applications development and business models could be stimulated by affordable and easily accessible high bandwidth in both local and wide area networks
High bandwidth connections are typically full period today but full period 7x24 bandwidth is not always needed.
Technologies are now available that suggest plausible new business model options to offer time slots for high bandwidth services
Dynamic provisioning of lambda and sub-lambda time slots
Periodically scheduled (N time slots per day, per week) or ad hoc
A generic Network Cost provision framework is described, accompanied with a preliminary proofof-concept implementation. Deployment considerations and open research issues are also discussed.
A communications, data exchange, and resource-sharing system created by linking two or more computers and establishing standards, or protocols, so that they can work together
Computer network is a distributed system consisting of loosely coupled computers and other
devices. Any two of these devices, which we will from now on refer to as network elements or
transmitting elements, can communicate with each other through a communication medium. In
order for these connected devices to be considered a communicating network, there must be a set
of communicating rules or protocols each device in the network must follow to communicate wit
another device in the network. The resulting combination consisting of hardware and software is a computer communication network or computer network in short. Figure 1.1 shows a computer
network
18CS52 VTU Computer Network & Security
MODULE 1-Part 1
Principles of Network Applications: Network Application Architectures, Processes Communicating, Transport Services Available to Applications, Transport Services Provided by the Internet, Application-Layer Protocols. The Web and HTTP: Overview of HTTP, Non-persistent and Persistent Connections, HTTP Message Format, User-Server Interaction: Cookies, Web Caching, The Conditional GET, File Transfer: FTP Commands & Replies, Electronic Mail in the Internet: SMTP, Comparison with HTTP, Mail Message Format, Mail Access Protocols
Computer network is a distributed system consisting of loosely coupled computers and other
devices. Any two of these devices, which we will from now on refer to as network elements or
transmitting elements, can communicate with each other through a communication medium. In
order for these connected devices to be considered a communicating network, there must be a set
of communicating rules or protocols each device in the network must follow to communicate wit
another device in the network.ThesisScientist.com
A generic Network Cost provision framework is described, accompanied with a preliminary proofof-concept implementation. Deployment considerations and open research issues are also discussed.
A communications, data exchange, and resource-sharing system created by linking two or more computers and establishing standards, or protocols, so that they can work together
Computer network is a distributed system consisting of loosely coupled computers and other
devices. Any two of these devices, which we will from now on refer to as network elements or
transmitting elements, can communicate with each other through a communication medium. In
order for these connected devices to be considered a communicating network, there must be a set
of communicating rules or protocols each device in the network must follow to communicate wit
another device in the network. The resulting combination consisting of hardware and software is a computer communication network or computer network in short. Figure 1.1 shows a computer
network
18CS52 VTU Computer Network & Security
MODULE 1-Part 1
Principles of Network Applications: Network Application Architectures, Processes Communicating, Transport Services Available to Applications, Transport Services Provided by the Internet, Application-Layer Protocols. The Web and HTTP: Overview of HTTP, Non-persistent and Persistent Connections, HTTP Message Format, User-Server Interaction: Cookies, Web Caching, The Conditional GET, File Transfer: FTP Commands & Replies, Electronic Mail in the Internet: SMTP, Comparison with HTTP, Mail Message Format, Mail Access Protocols
Computer network is a distributed system consisting of loosely coupled computers and other
devices. Any two of these devices, which we will from now on refer to as network elements or
transmitting elements, can communicate with each other through a communication medium. In
order for these connected devices to be considered a communicating network, there must be a set
of communicating rules or protocols each device in the network must follow to communicate wit
another device in the network.ThesisScientist.com
Show drafts
volume_up
Empowering the Data Analytics Ecosystem: A Laser Focus on Value
The data analytics ecosystem thrives when every component functions at its peak, unlocking the true potential of data. Here's a laser focus on key areas for an empowered ecosystem:
1. Democratize Access, Not Data:
Granular Access Controls: Provide users with self-service tools tailored to their specific needs, preventing data overload and misuse.
Data Catalogs: Implement robust data catalogs for easy discovery and understanding of available data sources.
2. Foster Collaboration with Clear Roles:
Data Mesh Architecture: Break down data silos by creating a distributed data ownership model with clear ownership and responsibilities.
Collaborative Workspaces: Utilize interactive platforms where data scientists, analysts, and domain experts can work seamlessly together.
3. Leverage Advanced Analytics Strategically:
AI-powered Automation: Automate repetitive tasks like data cleaning and feature engineering, freeing up data talent for higher-level analysis.
Right-Tool Selection: Strategically choose the most effective advanced analytics techniques (e.g., AI, ML) based on specific business problems.
4. Prioritize Data Quality with Automation:
Automated Data Validation: Implement automated data quality checks to identify and rectify errors at the source, minimizing downstream issues.
Data Lineage Tracking: Track the flow of data throughout the ecosystem, ensuring transparency and facilitating root cause analysis for errors.
5. Cultivate a Data-Driven Mindset:
Metrics-Driven Performance Management: Align KPIs and performance metrics with data-driven insights to ensure actionable decision making.
Data Storytelling Workshops: Equip stakeholders with the skills to translate complex data findings into compelling narratives that drive action.
Benefits of a Precise Ecosystem:
Sharpened Focus: Precise access and clear roles ensure everyone works with the most relevant data, maximizing efficiency.
Actionable Insights: Strategic analytics and automated quality checks lead to more reliable and actionable data insights.
Continuous Improvement: Data-driven performance management fosters a culture of learning and continuous improvement.
Sustainable Growth: Empowered by data, organizations can make informed decisions to drive sustainable growth and innovation.
By focusing on these precise actions, organizations can create an empowered data analytics ecosystem that delivers real value by driving data-driven decisions and maximizing the return on their data investment.
Chatty Kathy - UNC Bootcamp Final Project Presentation - Final Version - 5.23...John Andrews
SlideShare Description for "Chatty Kathy - UNC Bootcamp Final Project Presentation"
Title: Chatty Kathy: Enhancing Physical Activity Among Older Adults
Description:
Discover how Chatty Kathy, an innovative project developed at the UNC Bootcamp, aims to tackle the challenge of low physical activity among older adults. Our AI-driven solution uses peer interaction to boost and sustain exercise levels, significantly improving health outcomes. This presentation covers our problem statement, the rationale behind Chatty Kathy, synthetic data and persona creation, model performance metrics, a visual demonstration of the project, and potential future developments. Join us for an insightful Q&A session to explore the potential of this groundbreaking project.
Project Team: Jay Requarth, Jana Avery, John Andrews, Dr. Dick Davis II, Nee Buntoum, Nam Yeongjin & Mat Nicholas
Opendatabay - Open Data Marketplace.pptxOpendatabay
Opendatabay.com unlocks the power of data for everyone. Open Data Marketplace fosters a collaborative hub for data enthusiasts to explore, share, and contribute to a vast collection of datasets.
First ever open hub for data enthusiasts to collaborate and innovate. A platform to explore, share, and contribute to a vast collection of datasets. Through robust quality control and innovative technologies like blockchain verification, opendatabay ensures the authenticity and reliability of datasets, empowering users to make data-driven decisions with confidence. Leverage cutting-edge AI technologies to enhance the data exploration, analysis, and discovery experience.
From intelligent search and recommendations to automated data productisation and quotation, Opendatabay AI-driven features streamline the data workflow. Finding the data you need shouldn't be a complex. Opendatabay simplifies the data acquisition process with an intuitive interface and robust search tools. Effortlessly explore, discover, and access the data you need, allowing you to focus on extracting valuable insights. Opendatabay breaks new ground with a dedicated, AI-generated, synthetic datasets.
Leverage these privacy-preserving datasets for training and testing AI models without compromising sensitive information. Opendatabay prioritizes transparency by providing detailed metadata, provenance information, and usage guidelines for each dataset, ensuring users have a comprehensive understanding of the data they're working with. By leveraging a powerful combination of distributed ledger technology and rigorous third-party audits Opendatabay ensures the authenticity and reliability of every dataset. Security is at the core of Opendatabay. Marketplace implements stringent security measures, including encryption, access controls, and regular vulnerability assessments, to safeguard your data and protect your privacy.
Techniques to optimize the pagerank algorithm usually fall in two categories. One is to try reducing the work per iteration, and the other is to try reducing the number of iterations. These goals are often at odds with one another. Skipping computation on vertices which have already converged has the potential to save iteration time. Skipping in-identical vertices, with the same in-links, helps reduce duplicate computations and thus could help reduce iteration time. Road networks often have chains which can be short-circuited before pagerank computation to improve performance. Final ranks of chain nodes can be easily calculated. This could reduce both the iteration time, and the number of iterations. If a graph has no dangling nodes, pagerank of each strongly connected component can be computed in topological order. This could help reduce the iteration time, no. of iterations, and also enable multi-iteration concurrency in pagerank computation. The combination of all of the above methods is the STICD algorithm. [sticd] For dynamic graphs, unchanged components whose ranks are unaffected can be skipped altogether.
Algorithmic optimizations for Dynamic Levelwise PageRank (from STICD) : SHORT...
mobisys20-mpbond.pptx
1. MPBond: Efficient Network-level Collaboration
Among Personal Mobile Devices
Xiao Zhu Jiachen Sun Xumiao Zhang
Y. Ethan Guo† Feng Qian‡ Z. Morley Mao
University of Michigan
†Uber Technologies, Inc.
‡ University of Minnesota – Twin Cities
1
4. Collaboration Meets Multipath Transport
Simultaneous data transfers over multiple
network paths (aka, subflows)
Traditional multipath transport (e.g., MPTCP)
Subflows traverse multiple mobile devices
Need “distributed” multipath transport
5. • Proper management of heterogeneous
devices and links
• Efficient leverage of helper devices to
improve network performance
• Judicious distribution of data over
remote and local paths
• Appropriate interfaces to apps and users
• Transparency of the scheme to client
and server apps
Challenges for An Efficient Collaboration Scheme
Primary device
Helper 2
Helper 1
Local path
Remote path
Local path
Remote path
Remote
path
6. Existing Collaboration Schemes Fall Short
• Lack of flexibility
• Tethering+MPTCP [1], inverse multiplexing [2]
• Application modifications [3, 4, 5]
• Suboptimal Performance
• Under fluctuating remote and local network conditions [1, 2]
• Due to idle times incurred by chunk-based data distribution [3-5]
• Due to suboptimal scheduling decisions [1-5]
• Excessive energy consumption
• Long download time [1-5]
• Prolonged remote or/and local link radio-on time [1-5]
[1] Using cooperation for low power low latency cellular connectivity, CoNEXT 2014
[2] Improving TCP performance over wireless networks with collaborative multi-homed mobile hosts, MobiSys 2005
[3] Combine: leveraging the power of wireless peers through collaborative downloading, MobiSys 2007
[4] MicroCast: Cooperative video streaming on smart-phones, MobiSys 2012
[5] Cool-tether: energy efficient on-the-fly wifi hot-spots using mobile phones, CoNEXT 2009
7. Our Solution: MPBond
A distributed multipath transport system for efficient network-level
collaboration
8. Subflow Management
• Primary-centric pipe establishment to reduce helper-primary hop
count
• Handshake is similar to MPTCP but with additional control messages
over the pipe
9. Buffer Management and Connection Split
w/o TCP split and buffering
Pipe HS-Path HS-Path
Pipe
w/ TCP split and buffering
Pipe HS-Path
Pipe HS-Path
Data download
Higher bandwidth utilization
Pipe bandwidth
increases after
some time
Data download
v.s.
Bandwidth underutilization
10. Data Distribution over Multiple Paths
• Realized by a multipath scheduler
• Optimal multipath scheduling requires simultaneous data completion
at the receiver
• MinRTT is the default scheduler for MPTCP by selecting the path with
available space in congestion window (cwnd) and the minimum RTT
11. Why Not the Default MinRTT Scheduler?
• MinRTT fails to achieve simultaneous subflow completion in MPBond
• Due to the lack of consideration of the pipe
How about modifying the subflow availability condition?
• Would lose the capability of buffering
12. Pipe-aware Multipath Scheduler (PAMS)
• Challenge: enable buffering at the helper while achieving simultaneous
subflow completion
• Making packet arrival time estimation pipe-aware
• Pipe-aware delay: The time it takes for a packet scheduled over a given subflow at
a given time to arrive at the receiver
PS-Path
𝐵𝑠
𝐵𝑝
𝑇ℎ𝑝𝑠 , 𝑂𝑊𝐷𝑝𝑠
13. Deriving the Pipe-aware Delay (PAD)
• PAD of the direct subflow (𝑃𝐴𝐷1) : 𝑂𝑊𝐷𝑝𝑠 +
𝐵𝑠
𝑇ℎ𝑝𝑠
• For an indirect subflow (𝑃𝐴𝐷𝑖 , 𝑖 > 1)
𝑃𝐴𝐷𝑖 =
𝐵𝑝
′
= 𝐵𝑝 + 𝐵𝑠 − 𝑇ℎ𝑝𝑇
(if 𝐵𝑝 + 𝐵𝑠 > 𝑇ℎ𝑝𝑇)
𝐵𝑝′ further needs
time
𝐵𝑝′
𝑇ℎ𝑝
to drain
𝐵𝑠′ = 0
𝐵𝑠
After 𝑇 =
𝐵𝑠
𝑇ℎℎ𝑠
𝐵𝑝′ = 0
𝐵𝑝
HS-Path
Pipe
HS-Path
Pipe
(if 𝐵𝑝+ 𝐵𝑠 < 𝑇ℎ𝑝𝑇)
or
14. The PAMS Algorithm
• Leverage PAD to make scheduling decisions
• 𝑚𝑖𝑛𝑃𝐴𝐷: select the path with available space in cwnd and minimum 𝑃𝐴𝐷
• when there is large amount of remaining data to send (Case 1)
• When there is only small amount of remaining data (Case 2)?
• Defer the scheduling!
• Data Reinjection
Useful
15. User/App Interfaces and Policy Engine
• Users
• Per-app whitelist, resource usage, prioritization
• Apps
• Optional APIs for device/pipe monitoring and management
• Dual mode
16. Evaluation
• MPBond prototype on Android smartphones and smartwatches
• Comparison baselines
• Single device, kibbutz [1], COMBINE [2]
• Evaluation setup
• Applications: file download, video streaming
• Networks: emulated (with tc) and real WiFi and LTE
• Devices: smartphones (Pixel 2, Nexus 6P) and a smartwatch (LG Urbane 2nd)
[1] Using cooperation for low power low latency cellular connectivity, CoNEXT 2014
[2] Combine: leveraging the power of wireless peers through collaborative downloading, MobiSys 2007
17. Evaluation: Stable network conditions
• File download
• Primary: Pixel 2, Helper 1: Nexus 6P, Helper 2: LG Urbane 2nd
• PS-Path: 8Mbps, HS-Path: 10Mbps, pipe: 5Mbps
1. Using more devices reduces download time, with reasonable increase of total energy
2. MPBond reduces energy and download time compared to kibbutz and COMBINE
18. Evaluation: Varying network conditions
Replay real WiFi and LTE bandwidth traces In-the-wild experiments
MPBond reduces the file download time by 13%-35%, which also translates
to lower energy consumption ,compared to kibbutz and COMBINE
19. Evaluation: Video streaming
• Three video sources: Big Buck Bunny w/ 2-sec segments (B2), Tears of
Steel w/ 2-sec segments (T2) and 6-sec segments (T6)
• PS-Path: 5Mbps, HS-Path: 10Mbps, pipe: 5Mbps
1. MPBond reduces energy consumption compared to kibbutz with same # of devices
2. With 3 devices, MPBond improves the video bitrate by up to 118% compared to kibbutz
20. Conclusion
• Mobile devices need network-level collaboration
• Collaboration made efficient & easy by MPBond
• Distributed multipath transport
• Device, connection, and buffer management
• Judicious pipe-aware scheduling
• MPBond prevails over existing collaboration schemes
• Performance, energy efficiency, and flexibility
Thank you! Questions?
Editor's Notes
Hello everyone, my name is Xiao Zhu, and I’m a 4th-year PhD student at the U of M. In this video, I will talk about MPBond, an efficient network-level collaboration system for mobile devices, hope you will enjoy it.
Mobile devices are everywhere, we use it at home, at work, indoors, and outdoors.
Many people today possess more than one personal device, such as multiple smartphones, or smartphones companioned by smartwatches and tablets.
I bet you are missing group activities a lot recently, when people gather together, their mobile devices do as well.
This ubiquity of mobile devices creates abundant opportunities for better utilizing available network resources.
For instance [click], one device can assist another with downloading data over cellular, [click] this leads to a much higher throughput compared to using a single UE.
WiFi networks [click] offered by public places such as hotels often impose per-interface rate limit. Such a limit can be naturally overcome [click] by multi-device collaboration since each participating device has its own WiFi interface.
[click] In addition, wearables can be placed at a spot with good signal and act as WiFi or LTE “range extenders”. [click] When running low on battery, a smartphone can also offload power-hungry LTE access to a smartwatch paired over an energy-efficient BT or WiFi link.
[click] These benefits definitely motivate us to build a collaboration framework to make full of the wireless resources.
By closely examining these use cases, we notice that all of ‘em can be realized under the multipath transport paradigm, where user data can be distributed over multiple subflows or network paths. [click] Unlike traditional multipath such as MPTCP, we need to support distributed multipath [click] where subflows traverse different devices.
Specifically, such a distributed multipath transport system involves one primary device, where the client app runs, and multiple helper devices, which boost the primary’s network performance. Data is downloaded over multiple remote paths and the primary merges all the received parts before delivering the whole content to the client app. [cut?]
Well, this may sound intuitive. However, we face numerous challenges when designing and implementing such a system. For example, [click] How to properly manage heterogeneous devices and local wireless links? [click] How to strategically leverage the helper devices to improve the network performance? [click] How to design a robust multipath scheduler that considers both remote paths and local paths, with the latter being unique in our problem setting? [click] How to expose appropriate interfaces to users and applications? [click] And how to make the system transparent to client and server applications?
Existing network-level collaborations suffer from several limitations.
[click] A desired network-level collaboration must be flexible to support different types of applications and require minimal changes to the mobile and network infrastructure. Solutions that rely on Tethering+MPTCP have been proposed. However, a tethered device performs as a simple layer-3 router, making it difficult to flexibly support various enhancement and policies at layer-4/5. There are also heavy-weight inverse-multiplexing solutions which incur significant deployment overhead. Another line of solutions require modifications to the applications at layer 5. Some of them are designed solely for a particular type of apps.
[click] Performance is another concern. For example, in tethering, the effective data rate is always the minimum of the remote and local link bandwidth. Application-layer based solutions rely on HTTP byte-range requests which incur network idle periods between requests on the same path. The scheduling decisions of existing solutions are also not optimal.
Suboptimal performance usually leads to excessive energy consumption. Even if the network condition is stable, in the tethering approach the congestion control is end-to-end, so the faster wireless link will be running at the speed of the slower wireless link, causing prolonged remote or local link radio-on time which leads to increased energy consumption. Network idle periods incurred by HTTP bytes-ranges also waste energy.
To bridge this gap, we propose MPBond, a distributed multipath transport system for efficient network-level collaboration.
It involves two types of devices: one primary device and one or more helper devices, connected with long-lived TCP connections called pipes. The client application, such as a file downloader or a video player, only runs on the primary. Traffic from the app is transparently intercepted by the MPBond service and scheduled to transmit either over primary’s own interface, the PS-Path, or through helpers with forwarding over the HS-Paths. To be fully transparent to Internet servers, the system can introduce a proxy which hides MPBond from remote servers by establishing single-path connections with 'em.
We next elaborate how we address the aforementioned challenges for an efficient collaboration framework by detailing the key design choices of MPBond.
Let’s start with managing subflows.
A possible way to establishing pipes is to tether the primary to a helper, which acts as a WiFi AP. This approach has two limitations though. First, some weak helpers such as smartwatches may not provide the hotspot mode. Second, since typically the primary can associate with only one WiFi AP, so to support multiple helpers, the tethered helper has to forward traffic for other helpers, leading to extra latency and bandwidth usage.
[click] To overcome these limitations, we propose to perform tethering in the opposite way: activate the primary’s AP mode and let the helpers connect to the primary. This naturally supports multiple helpers while minimizing the helper-primary hop count to 1.
The overall handshake [click] procedure in MPBond follows that in MPTCP, with additional control messages over pipes to coordinate with the helpers [click]. Specifically, the primary sends an INIT_MP_JOIN message [click] with the necessary client and server information to the helper, allowing it to establish the second subflow through an MP_JOIN message. When the subflow is established, an MP_JOIN_OK message [click] is returned to the primary as an acknowledgement.
The remote and local wireless links exhibit vastly different link characteristics. TCP splitting can effectively improve the performance in such a scenario by shortening the TCP control loop. More importantly, it allows buffers to be set up between the two flows. Such buffers effectively mitigate the negative performance impact caused by the bottleneck shift on a subflow. To illustrate this, consider this simple example where the pipe bandwidth increases due to the helper device being moved closer to the primary, causing the pipe’s throughput becomes higher than that of the HS-Path. If there is a buffer at the helper, the buffered data can be transmitted at the pipe’s throughput instead of at the throughput of HS-Path when there is no buffer, leading to a shorter data transfer time. Although TCP splitting is not a new idea, we take this concept one step further by placing the split point on a mobile device facing two wireless links, in the context of multipath transport.
As a critical component of a multipath transport system, a scheduler determines how to distribute the traffic onto multiple paths.
In multipath transport, simultaneous subflow completion is a necessary condition for achieving the optimal download time, this is because in case where a sublfow finishes earlier than the other one, the faster sublow can always assist the slower one, leading to an even reduced download time.
MinRTT is the default scheduler of MPTCP, which selects the path with available space in congestion window and the minimum RTT.
We first demonstrate the performance issue of directly applying minRTT to MPBond.
We run a simple experiment [click] where the primary establishes two subflows to a nearby server. The primary downloads from the server a file using MPBond configured with minRTT. The figure shows the download progress, and we can see that the two subflows do not complete at the same time.
The unbalanced subflow completion is due to the fact [click] that the scheduler, which runs at the server, only monitors the PS-Path and the HS-Path, and is unaware of the TCP splitting and the downstream pipe. In this particular experiment, since the pipe bandwidth is lower than the HS-Path, downlink data will be buffered at the helper and drained slowly over the pipe, leading to highly unbalanced subflow completion time.
A possible way of achieving simultaneous subflow completion is to modify the subflow availability condition [click] so that a helper subflow is considered to be available when the congestion window of both the HS-Path and the pipe have available space. However, by requiring an available CWND space for the pipe, this approach loses the capability of buffering at the helper [click], a key feature that MPBond should provide.
Therefore, one main challenge that MPBond should address is to enable buffering at the helper while achieving simultaneous subflow completion.
To this end, we propose PAMS [click], a pipe-aware multipath scheduler that explicitly considers the implication of buffering when making data distribution decisions. Although PAMS is originally designed for MPBond, it also applies to general cases where multipath transport meets TCP connection split.
PAMS is built upon a key concept called pipe-aware delay [click], which is a mathematical model we introduce to estimate the time it takes for a packet scheduled over a given subflow at given a time to arrive at the receiver, [click] under the given network conditions for different remote and local links such as the throughput and one way delay, as well as the buffer level at the server and the helpers.
Let’s now do some simple math to see how the pipe-aware delay, or PAD can be derived.
For the direct subflow [click] over the primary’s own path, it can be calculated by adding the PS-Path one-way delay and the buffering time at the sender. The buffering time can be calculated by dividing the sender buffer level by the PS-Path throughput.
For an indirect subflow [click], things are a little bit more complicated as we have two wireless links [click] and helper-side buffering. For a packet scheduled on an indirect subflow, it first needs to go through the sender buffer on the server, which takes time T [click], calculated by dividing the sender buffer level by the HS-Path throughput. After this time T, the helper buffer may still contain some buffered bytes [click] if it’s originally high. Otherwise, it may become empty too [click]. And the helper buffer further needs some time to drain [click].
By summing up the above parts, we can calculate the PAD [click] for indirect subflows as well.
PAD gives us an estimate of the E2E packet delay of a subflow in MPBond. So how do we leverage it to make scheduling decisions?
A possible approach [click] is to modify minRTT into “minPAD”, which selects the subflow with the minimum PAD as long as the subflow has congestion window space. Although this approach outperforms minRTT, it still tries to occupy all the HS-Path CWND space, thus may schedule more data than the subflow’s actual capacity.
minPAD can actually be further improved. Let us consider two cases that require different scheduling strategies. [click] First, when the server has a large amount of remaining data in the buffer to send, it is important to improve the overall bandwidth utilization by keeping all the subflows busy. In this case, PAMS applies minPAD [click]. The second case is that when there is only a small amount of remaining data [click], ensuring low-latency delivery and simultaneous subflow completion time is more important than maximizing the throughput. In this case, even when there is an idle subflow, [click] PAMS may skip it, namely, deferring the scheduling when there are busy subflows that can shorten the delivery latency.
PAMS also performance rejection which is a mechanism in multipath transport where data that has already been scheduled over one subflow is “reinjected” into another subflow. This may occur, for example when a subflow experiences unexpected performance drop or failure, or another subflow’s capacity suddenly increases.
OK, math time’s up. And here’s the last piece of our design. MPBond provides interfaces to both mobile users and app developers. First, it has a built-in console on the primary. This allows users to grant apps permission to use MPBond, monitor the runtime status, and configure various policies.
In addition, MPBond exposes APIs allowing 3rd-party apps to programmatically use its service. However, these are only optional APIs that provide more fine-grained manipulation and detailed monitoring of MPBond which as a transparent service requires no modifications to the apps.
MPBond also allows a device to have dual roles [click] of both a primary and helper, and multiple primary devices may co-exist. We call this the dual mode, which enables the collaborating devices to better utilize their collective bandwidth in particular when the primary devices generate traffic at different time.
We extensively evaluate MPBond under various network and device settings by quantitatively comparing it with kibbutz and COMBINE, the two major state-of-the-art solutions we have seen earlier, on network performance, energy consumption and app QoE using commodity smartphones and smartwatches over real LTE and WiFi networks.
We start with showing the performance and energy efficiency of MPBond under stable network conditions. The workload is downloading files with different sizes. We vary the number of mobile devices from 1 to 3 and measure the download time and energy consumption. We also study MPBond-Naive, another variant of MPBond where the default minRTT scheduler instead of PAMS is used.
As shown, MPBond improves the download time and energy compared to kibbutz and COMBINE. [click] These improvements are attributed to multiple design choices of MPBond including the system and pipe realization at Layer 4, the helper-side connection split, as well as the PAMS scheduler.
We next look at some numbers under changing network conditions. We focus on the 2-device case. The left figure shows the download time of different schemes by replaying the real remote and local wireless bandwidth profiles we collected. The corresponding energy consumption is shown in the middle figure. This again shows that leveraging helper side connection split, buffer management, and the judiciously designed PAMS scheduler helps MPBond to achieve high network utilization under fluctuating network conditions.
We also showcase the benefits of MPBond through in-the-wild experiments [click], as shown in the right figure. [click]
We finally examine how MPBond helps improve the QoE and energy efficiency of video streaming, one of the applications that dominate mobile network traffic. We stream adaptive bitrate videos using Exoplayer to study the impact of different schemes on video bitrate. We use three video settings covering both animations and science fiction movies. Compared to kibbutz with the same number of devices, MPBond reduces the energy consumption. With 3 devices, Mpbond further improves the video bitrate in two of the three settings compared to kibuttz which could not utilize the extra device due to its architectural limitation. [click]
More evaluation results as well as design details can be found in our paper.
Thank you for watching our video. And I’m happy to answer questions.
(To summarize, our personal mobile devices benefit from network-level collaboration. And that’s why we propose MPBond. As a distributed multipath transport system, MPBond is grounded on a set of mechanisms that address the key challenges an efficient collaboration scheme imposes. We showcase the benefits of MPBond over existing frameworks through real-world mobile experiments.)