Skip to content

earyafar/FBDT

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Forward and Backward Data Transmission (FBDT)

FBDT is a strategical design for wireless/wired multiRAT data communication. FBDT achieves optimal throughput irrespective of the nature, obstacles, interference etc., of the wireless channel. Simultaneous data transmission across multiple Radio Access Technologies (RATs) such as WiFi and WiGig is a key solution to meet this required capacity demand. However, existing transport layer multi-RAT traffic aggregation schemes suffer from Head-of-Line (HoL) blocking and sub-optimal traffic splitting across RATs, particularly when there is a high fluctuation in channel conditions. As a result, state-of-the-art multi-path TCP (MPTCP) solutions can get overall data rates which are even lower than only using a single WiFi RAT in many practical scenarios, e.g., when the client is mobile. FBDT stream data of any application class such as short-lived, progressive download, live streaming, file download and enable high quality mobile 360deg video streaming by leveraging multiple RATs. We propose the design of FBDT, a novel multi-path transport layer solution that can get the summation of individual rates across RATs despite system dynamics. We have implemented FBDT in Linux kernel/userspace and show substantial improvement in throughput against state-of-the-art schemes, e.g, 2.5x gain in a dual-RAT scenario (WiFi and WiGig) when the client is mobile.

image

Forward and Backward Data Transmission (FBDT) eliminates HoL blocking and Out-Of-Order packet arrival issues when streaming data over multiple Single Path TCP(s) (SPTCP). FBDT supports a {common meta-socket, send and receive buffer} to all the applications to send data across multiple SPTCPs. FBDT assigns sequence numbers to the data segments to be transmitted and starts transmitting data in small in-ordered batches - referred as {transmission window}. For ease of discussion, we assume sequence numbers of packets transmitted from the transmission window are in ascending order (from right to left).

FBDT sends two sets of ordered packets from transmission window - one with ascending and another with descending sequence numbers. Packets with ascending sequence numbers are sent as forward data transmission over one SPTCP (and the associated RAT) and packets with descending order are sent as backward data transmission over another SPTCP. For example, consider six packets to be transmitted over two SPTCPs with heterogeneous delays as shown in Fig-1. FBDT starts by sending Packet1 and moving towards the end of the transmission window over SPTCP1 (forward data transmission). In parallel, FBDT starts sending Packet6 and moves towards the beginning of the transmission window over SPTCP2 (backward data transmission). FBDT relies on the fact that SPTCP delivers reliable and in-order packets to the receiver.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published