Skip to main content

mca-traceroute: Detection and Classification of Load Balancers

Project description

MCA

This tool implements the Multipath Classification Algorithm (MCA), an extension to Paris traceroute and the Multipath Detection Algorithm (MDA). MCA can detect routers that perform load balancing and identify what fields in the IP and transport headers are used for load balancing.

A more detailed explanation of MCA, together with a characterization of load balancing appeared in our INFOCOM 2020 paper:

R. Almeida, Í. Cunha, R. Teixeira, D. Veitch, and C. Diot. "Classification of Load Balancing in the Internet". In Proc. IEEE INFOCOM, 2020. PDF BibTeX

Installation

MCA has been tested on Linux. It requires Python 3.6+ and Scapy 2.4+. The latest version is available on PyPI, the Python Package Index:

pip3 install mca-traceroute
mca-traceroute --help

You can also run MCA as a Python module directly from the Git repository. You may need to install Scapy as root as MCA requires root privileges to execute.

sudo pip3 install scapy
git clone https://github.com/rlcalmeida/mca.git
cd mca
sudo python3 -m mca --help

Additional Resources

Route Explorer is a visualization framework for MCA results. It renders MCA measurements in a Web browser using Javascript libraries and supports IP-to-AS, AS-to-name, and rDNS metadata. Our paper's dataset and some example load balancers configuration are publicly available.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mca-traceroute-1.0.0.tar.gz (14.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mca_traceroute-1.0.0-py3-none-any.whl (28.2 kB view details)

Uploaded Python 3

File details

Details for the file mca-traceroute-1.0.0.tar.gz.

File metadata

  • Download URL: mca-traceroute-1.0.0.tar.gz
  • Upload date:
  • Size: 14.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.20.1 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.7.3

File hashes

Hashes for mca-traceroute-1.0.0.tar.gz
Algorithm Hash digest
SHA256 5c7469f3b2572f75c26d6ad996db14936b9b8891fe53a43840d294fb4d58687a
MD5 f74f9cd430190acad59a2dfd881b441e
BLAKE2b-256 fb0163e3a0bb3905bc620c42f644dc1a20163443e9b19615901849fe493c243f

See more details on using hashes here.

File details

Details for the file mca_traceroute-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: mca_traceroute-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 28.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.20.1 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.7.3

File hashes

Hashes for mca_traceroute-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2c771b7c7616430043eb1a221790211207bb496b8c3e6f78edc4e56456d0d7ed
MD5 921b7ec5a629dc4fce70e966630ca637
BLAKE2b-256 7471df5c13fab038ca21fb64dda3418e4613ca8357fbdcf0b62598b2372a0647

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page