Skip to content

Adaptive high-performance stress tester "artaxerxes" supports GPU, io_uring, DPDK, and eBPF/XDP for advanced cybersecurity labs. Ideal for network testing. πŸš€πŸ› οΈ

Notifications You must be signed in to change notification settings

FaresArgus/artaxerxes

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

5 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Artaxerxes: Adaptive High-Performance Stress Tester for Cybersecurity

Artaxerxes Logo

Download Release

Overview

Artaxerxes is an adaptive high-performance stress tester designed for cybersecurity professionals and researchers. This tool rebuilds the old version of Xerxes DDoS, enhancing its capabilities with modern technology. Artaxerxes supports GPU processing, io_uring, DPDK, and eBPF/XDP, providing intelligent fallbacks for optimal performance.

Key Features

  • GPU Support: Leverage GPU power for high-speed stress testing.
  • Modern Protocols: Use io_uring for efficient I/O operations.
  • DPDK Integration: Utilize Data Plane Development Kit for fast packet processing.
  • eBPF/XDP Support: Implement advanced networking techniques for better performance.
  • Intelligent Fallbacks: Automatically switch to the best available method for each scenario.
  • Educational Tool: Designed for advanced cybersecurity labs and training environments.

Installation

To get started with Artaxerxes, download the latest release from the Releases section. Follow the instructions below to install and run the tool.

Requirements

  • Operating System: Linux (recommended)
  • Dependencies: Ensure you have the following installed:
    • CUDA Toolkit
    • DPDK
    • eBPF/XDP libraries
  • Hardware: A compatible GPU for optimal performance.

Steps to Install

  1. Clone the Repository:

    git clone https://github.com/FaresArgus/artaxerxes.git
    cd artaxerxes
  2. Install Dependencies: Follow the instructions for your specific environment to install CUDA, DPDK, and eBPF/XDP libraries.

  3. Build the Project:

    make
  4. Run the Tool: After building, execute the binary:

    ./artaxerxes

Usage

Artaxerxes provides a command-line interface to configure and execute stress tests. Below are some basic commands to get you started.

Basic Command Structure

./artaxerxes [options]

Example Commands

  • Run a Basic Test:

    ./artaxerxes --target <target_ip> --duration <seconds>
  • Use GPU Acceleration:

    ./artaxerxes --target <target_ip> --duration <seconds> --gpu
  • Utilize DPDK:

    ./artaxerxes --target <target_ip> --duration <seconds> --dpdk

Advanced Configuration

Artaxerxes allows for advanced configuration through a configuration file. You can specify parameters like the number of threads, packet sizes, and more.

Example Configuration File

Create a file named config.json:

{
  "target": "192.168.1.1",
  "duration": 60,
  "threads": 4,
  "packet_size": 128
}

Run the tool with the configuration file:

./artaxerxes --config config.json

Performance Metrics

Artaxerxes provides real-time metrics during stress tests. Monitor the following key performance indicators:

  • Requests per Second (RPS): The number of requests sent per second.
  • Latency: The time taken for requests to be processed.
  • Error Rate: The percentage of failed requests.

Example Output

Target: 192.168.1.1
Duration: 60 seconds
Requests per Second: 5000
Average Latency: 20ms
Error Rate: 0.5%

Contributing

Contributions are welcome! If you have ideas for improvements or new features, please follow these steps:

  1. Fork the repository.
  2. Create a new branch (git checkout -b feature/YourFeature).
  3. Make your changes.
  4. Commit your changes (git commit -m 'Add new feature').
  5. Push to the branch (git push origin feature/YourFeature).
  6. Open a pull request.

Topics

This repository covers various topics relevant to cybersecurity and high-performance testing:

  • CUDA: Programming for NVIDIA GPUs.
  • Cybersecurity: Techniques and tools for securing networks.
  • DPDK: Framework for high-speed packet processing.
  • eBPF: Extending the Linux kernel for advanced networking.
  • Penetration Testing: Assessing security through simulated attacks.

Resources

Community

Join our community for discussions, support, and collaboration. You can find us on:

License

This project is licensed under the MIT License. See the LICENSE file for details.

Acknowledgments

  • Thanks to the contributors who made this project possible.
  • Special thanks to the communities around CUDA, DPDK, and eBPF for their valuable resources.

For the latest updates and releases, visit the Releases section.

About

Adaptive high-performance stress tester "artaxerxes" supports GPU, io_uring, DPDK, and eBPF/XDP for advanced cybersecurity labs. Ideal for network testing. πŸš€πŸ› οΈ

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •