Skip to content

KathiraveluLab/Sintra

Repository files navigation

Sintra

Self-adaptive Interdomain Network Transport for Real-Time Applications

Sintra is a network measurement tool that leverages the RIPE Atlas platform to perform network latency measurements and monitoring across different geographical regions. It provides automated measurement creation, result fetching, and data processing capabilities for network analysis and real-time application optimization.

Features

  • Multi-region Network Measurements: Create ping and traceroute measurements across different geographical areas
  • Flexible Configuration: YAML-based configuration for easy measurement setup
  • Organized Results: Structured storage of measurement data with JSON output
  • Result Processing: Built-in processors for ping and traceroute data analysis
  • RIPE Atlas Integration: Full integration with RIPE Atlas measurement infrastructure

Requirements

  • Python 3.7+
  • RIPE Atlas API Key

Installation

  1. Clone the repository:
git clone https://github.com/KathiraveluLab/Sintra.git
cd Sintra
  1. Install dependencies:
pip install -r requirements.txt
  1. Set up your RIPE Atlas API key:
# Create a .env file in the project root
echo "RIPE_ATLAS_API_KEY=your_api_key_here" > .env

Usage

Basic Usage

Run the main application:

python sintra.py # Main file for Sintra

Configuration

The application uses two main configuration files:

  • measurement_client/create_config.yaml - For creating new measurements
  • measurement_client/fetch_config.yaml - For fetching existing measurement results

See the Configuration Documentation for detailed setup instructions.

Command Line Interface

The measurement client supports various command-line options for different operations:

  • python sintra.py create: Configure and start new network measurements
  • python sintra.py fetch: Retrieve and process results from existing or public measurements.

Getting Started

  1. Obtain a RIPE Atlas API Key: Visit RIPE Atlas and create an account to get your API key.

  2. Configure your first measurement: Edit measurement_client/create_config.yaml to define your measurement parameters.

  3. Run your first measurement:

python sintra.py create
  1. Fetch Results:
python sintra.py fetch
  1. Monitor results: Check the measurement_client/results/fetched_measurements directory for output files.

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

This project is licensed under the terms specified in the LICENSE file.

Support

For questions, issues, or feature requests, please create an issue in the project repository.

About

Self-adaptive Interdomain Network Transport for Real-Time Applications

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •  

Languages