Developing regions suffer from poor Internet connection and over reliance on low-end phones, which violates net neutrality—the idea that all Internet traffic should be treated equally. We sent participants to 56 countries to measure global variation in web-browsing experience, revealing significant inequality in mobile data cost and page load time. We also show that popular webpages are increasingly tailored to high-end phones, thereby exacerbating the inequality. Our solution, Lite-Web, makes webpages faster to load and easier to process on low-end phones. Evaluating Lite-Web on the ground reveals that it transforms the browsing experience of Pakistani villagers with low-end phones to that of Dubai residents with high-end phones. These findings call attention from researchers and policy makers to mitigate digital inequality.



Videoconferencing in the Wild
Paper @ACM IMC 2022Performance characterization of videoconferencing in the wild
One important question that we tackle in this paper is: what is the performance of videoconferencing in the wild? Answering this generic question is challenging because it requires, ideally, a world-wide testbed composed of diverse devices (mobile, desktop), operating systems (Windows, MacOS, Linux) and network accesses (mobile and WiFi). In this paper, we present such a testbed that we develop to evaluate videoconferencing performance in the wild via automation for Android and Chromium-based browsers.
Read paper
Muzeel
Paper @ACM IMC 2022Muzeel: assessing the impact of JavaScript dead code elimination on mobile web performance
Muzeel, a black-box approach requiring that aims at removing deadcode (i.e., un-used code) from JavaScript files in today's web. It requires neither the knowledge of the code nor the execution traces. While the state-of-the-art solutions stop analyzing JavaScript when the page loads, the core design principle of Muzeel is to address the challenge of dynamically analyzing JavaScript after the page is loaded, by emulating all possible user interactions with the page, such that the used functions (executed when interactivity events fire) are accurately identified, whereas unused functions are filtered out and eliminated.
Read paperJSAnalyzer is a an easy-to-use tool that enables web developers to quickly optimize JavaScript usage in their pages, and to generate simpler versions of these pages for mobile web users. JSAnalyzer is motivated by the widespread use of non-critical JavaScript elements, i.e., those that have negligible (if any) impact on the page’s visual content and interactive functionality. JSAnalyzer allows the developer to selectively enable or disable JavaScript elements in any given page while visually observing their impact on the page.
Read paper
slimWeb
Paper @ICTD 2022To Block or Not to Block: Accelerating Mobile Web Pages On-The-Fly Through JS Classification
slimWeb is a novel approach that automatically derives lightweight versions of mobile web pages on-the-fly by eliminating the use of unnecessary JavaScript. It consists of a JavaScript classification service powered by a supervised Machine Learning (ML) model that provides insights into each JavaScript element embedded in a web page. slimWeb aims to improve the web browsing experience by predicting the class of each element, such that essential elements are preserved and non-essential elements are blocked.
Read paper
QLUE
Paper @The Webconf 2022QLUE: A Computer Vision Tool for Uniform Qualitative Evaluation of Web Pages
QLUE (QuaLitative Uniform Evaluation) is a tool that automates the qualitative evaluation of web pages generated by web complexity solutions with respect to their original versions using computer vision. QLUE evaluates the content and the functionality of these pages separately using two metrics: QLUE's Structural Similarity, to assess the former, and QLUE's Functional Similarity to assess the latter---a task that is proven to be a challenging for humans given the complex functional dependencies in modern pages.
Read paper
ALCC
Paper @JSYS 2022ALCC: Migrating Congestion Control to the Application Layer in Cellular Networks
Application Layer Congestion Control (ALCC) is a framework that allows any new CC protocol to be implemented easily at the application layer, within or above an application-layer protocol that sits atop a legacy TCP stack. It drives it to deliver approximately the same as the native performance. The ALCC socket sits on top of a traditional TCP socket. Still, it can leverage the large congestion windows opened by TCP connections to carefully execute an application-level CC within the window bounds of the underlying TCP connection.
Read paper
MDI
Paper @Sigcomm CCR 2021The Case for Model-Driven Interpretability of Delay-Based Congestion Control Protocols
Model-Driven Interpretability (MDI) is congestion control framework, which derives a model version of a delay-based protocol by simplifying a congestion control protocol's response into a guided random walk over a two-dimensional Markov model. We demonstrate the case for the MDI framework by using MDI to analyze and interpret the behavior of two delay-based protocols over cellular channels: Verus and Copa.
Read paperA tool that enables the automation of the qualitative evaluation of web pages using computer vision. In comparison to humans, PQual can effectively evaluate all the functionality of a web page, whereas the users might skip many of the functional elements during the evaluation.
Read paper
JSCleaner
Paper @The Webconf 2020JSCleaner: De-Cluttering Mobile Webpages Through JavaScript Cleanup
A JavaScript de-cluttering engine that aims at simplifying web pages without compromising the page content or functionality. JSCleaner uses a classification algorithm that classifies JavaScript into three main categories: non-critical, translatable, and critical scripts. JSCleaner removes the non-critical scripts from a web page, replaces the translatable scripts with their HTML outcomes, and preserves the critical scripts.
Read paperAn adaptive congestion control protocol designed for cellular networks. Verus leverages the relation ship between the sending window and the observed network delay by using the delay profile curve. Verus is a delay-based congestion control protocol.
Read paperBe part of the team
We are always on the look out for talented people to join the lab. Whether a research summer internship, a research visit, or a longer term position as a post-doc or research assistant. For inquiries please email yasir.zaki (at) nyu.edu.
News
-
01.09.2022
Hazem Ibrahim has joined our lab as a research assistant. Welcome on board Hazem.
-
23.08.2022
Our paper "Assessing the Impact of JavaScript Dead Code Elimination on Mobile Web Performance" has been accepted at the ACM Internet Measurements Conference IMC 2022 ...
-
23.08.2022
Our paper "Performance Characterization of Videoconferencing in the Wild" has been accepted at the ACM Internet Measurements Conference IMC 2022 ...
-
05.08.2019
Our "Learning Congestion State For mmWave Channels" paper has been accepted at the ACM mmNets 2019 conference...
-
22.12.2018
Dr. Moumena Shaqfa has joined our lab as a postdoctoral associate. Welcome on board.
-
30.06.2017
Our "Xcache: Rethinking Edge Caching" has been accepted at the Information and Communication technologies for Development (ICTD) 2017 conference ...