Skip to content

10sharmashivam/Network_performance_optimization

Repository files navigation

Network Performance Optimization Tool

Project Overview

This project is designed to monitor, analyze, and optimize network performance by collecting data, identifying bottlenecks, and providing recommendations. The tool generates visualizations and reports to assist in network optimization efforts.

Features

•	Data Collection: Retrieves network performance metrics using SNMP and packet capture.
•	Data Storage: Stores metrics in a SQLite database and logs information for further analysis.
•	Analysis: Identifies bottlenecks and analyzes traffic patterns to highlight performance issues.
•	Optimization: Provides recommendations for network improvement based on collected metrics.
•	Reporting: Generates visualizations and sends alerts based on performance thresholds.

Project Structure

Network Performance Optimization/ ├── src/ │ ├── data_collection/ │ │ ├── init.py │ │ ├── performance_metrics.py │ │ └── traffic_collector.py │ ├── data_storage/ │ │ ├── init.py │ │ ├── database.py │ │ └── log_manager.py │ ├── analysis/ │ │ ├── init.py │ │ ├── bottleneck_identification.py │ │ └── traffic_analysis.py │ ├── optimization/ │ │ ├── init.py │ │ ├── automated_actions.py │ │ └── recommendations.py │ └── reporting/ │ ├── init.py │ ├── alerts.py │ └── visualization.py ├── cloud/ │ └── aws_setup.sh ├── config/ │ └── .config ├── images/ │ ├── dashboard.png │ └── network_performance_plot.png ├── kubernetes/ │ ├── deployment.yaml │ └── service.yaml ├── .env ├── requirements.txt ├── network_metrics.db ├── network_performance.log └── docker-compose.yml

How to Run

Prerequisites

• Python 3.9 • Docker • Kubernetes (optional for cloud deployment) • Required Python packages (listed in requirements. txt)

Local Deployment

  1. Clone the Repository: git clone (https://github.com/10sharmashivam/Network_performance_optimization.git) cd Network Performance Optimization

  2. Install Dependencies: pip install -r requirements.txt

  3. Run the Application: Execute main.py to start the application and begin collecting data.

  4. Docker Deployment:

    If using Docker locally: docker-compose up

Cloud Deployment (Optional)

  1. AWS Setup:

Run the aws_setup.sh script to set up Docker and deploy the application on an AWS instance. 2. Kubernetes Deployment:

Apply the deployment.yaml and service.yaml files to your Kubernetes cluster.

Visualization

The tool generates a graph showing network performance over time. The inverted V-shaped graph represents fluctuations in network performance, where the peak indicates maximum activity or potential bottleneck.

Future Work

Machine Learning Integration: Future versions may include predictive modeling to forecast network performance trends and automate optimizations.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published