Giter Club home page Giter Club logo

cellreplay's Introduction

CellReplay

Installation

Install all the required dependencies using this command.

$ sudo apt-get install protobuf-compiler libprotobuf-dev autotools-dev dh-autoreconf iptables pkg-config dnsmasq-base debhelper libxcb-present-dev libcairo2-dev libpango1.0-dev libtar-dev 

Install CellReplay using this command.

$ cd cellreplay
$ ./autogen.sh
$ ./configure
$ make
$ sudo make install

The network traces are located in the "traces" folder, and it has to be decompressed before it can be used.

Description

CellReplay is a record-and-replay emulator for cellular network. CellReplay can replay a set of pre-recorded network traces through an emulated TUN interface implemented via a shell. Any unmodified application can then be run inside the CellReplay shell and result in a similar performance and behavior as it was running on the live cellular network. We provided 5G T-Mobile and Verizon traces recorded under multiple scenarios that includes stationary, walking, and driving.

Usage

To use the cellreplay emulator, you need to call mm-cellular.

$ mm-cellular NUM_ARGS UP-PACKET-TRAIN-TRACE DOWN-PACKET-TRAIN-TRACE UP-PDO DOWN-PDO PACKET-LOG-PATH-PREFIX [OPTION]... [COMMAND]

NUM_ARGS = the total number of arguments (including the mm-cellular command itself)
UP-PACKET-TRAIN-TRACE = the uplink base delay and light PDO trace
DOWN-PACKET-TRAIN-TRACE = the downlink base delay and light PDO trace
UP-PDO = the uplink heavy PDO trace
DOWN-PDO = the downlink heavy PDO trace
PACKET-LOG-PATH-PREFIX = Folder path for the log purposes
[OPTION] = optional commands

This is an example of the command with two optional arguments (for latency compensation based on the packet size) and packet log directory (which should exist beforehand) of $HOME/packet-logs. Note that the traces have to be decompressed first.

mm-cellular 9 traces/tmobile/driving/up-delay-light-pdo traces/tmobile/driving/down-delay-light-pdo \
traces/tmobile/driving/up-pdo traces/tmobile/driving/down-pdo \
$HOME/packet-logs \
--psize-latency-offset-up=traces/tmobile/driving/latency-offset-up \
--psize-latency-offset-down=traces/tmobile/driving/latency-offset-down

An unmodified application can run inside the mm-cellular shell and have all their incoming (downlink) and outgoing (uplink) packets delayed as it is going to the real cellular network.

cellreplay's People

Contributors

williamsentosa95 avatar

Stargazers

Daoxu Sheng avatar Jing Chen avatar Ke Liu avatar Zili Meng avatar Xinze Zheng  avatar Gerui Lv avatar Junhua Liu avatar Tianchi Huang avatar Zhang Ruixiao avatar Milind Kumar V avatar Brighten Godfrey avatar zzhao avatar

Watchers

Brighten Godfrey avatar  avatar

Forkers

godka

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.