An AI-powered Network Traffic Classifier designed to predict and categorize network traffic behaviors based on input CSV data. This project simplifies the process of analyzing network traffic, helping security professionals identify patterns that may indicate threats or anomalous activities. With a sleek web interface, it ensures ease of use for anyone managing network data.
- Lekhyasree Medarametla - PES1UG23CS328 Github
- Pranav Rajesh Narayan - PES1UG23CS435 Github
- Pranav Hemanth - PES1UG23CS433 Github
- Kshitij Koushik Kota - PES1UG23CS908 Github
- Sampriti Saha - PES1UG23CS505 Github
- Roshini Ramesh - PES1UG23CS488 Github
This Network Traffic Classifier allows users to upload network traffic data (in CSV format) and obtain predictions. It utilizes machine learning models to classify network activity into various categories, enabling security teams to monitor, analyze, and act on network patterns effectively.
- Small and Medium Enterprises (SMEs): Enhance security without requiring extensive resources.
- IT Security Professionals: Equip teams with advanced threat detection tools.
- Regulatory Bodies: Facilitate compliance with data protection laws.
- Educational Institutions: Protect sensitive academic and student data.
- File Upload & Prediction
Allows users to upload CSV files containing network traffic data.
- Machine Learning Algorithms
- Algorithms can predict network activity labels based on the input data.
- Random Forest: Handles large datasets with many features.
- Support Vector Machine (SVM): Ideal for binary classification tasks.
- Neural Networks: Detects complex patterns in high-dimensional data.
- Result Visualization
Displays predictions on a user-friendly web interface, listing true and predicted labels.
- Alert Mechanism (Future Enhancement)
Future updates will include real-time alerts for suspicious activities.
• UNSW-NB15 Dataset: Comprehensive dataset with a wide range of attack scenarios and normal network traffic.
• CIC-IDS2017 Dataset: Real-world traffic scenarios for effective testing and validation.
-
Generate a new ssh key and add it to github Follow this video
-
Clone the repo
git clone https://github.com/Pranavh-2004/T3N50R5.git
cd T3N50R5
- Create a branch with your name and switch to it
git branch "your_name"
git switch "your_name"
git status #to check if u have switched to your branch
- To check if you are able to push changes to github, edit this README.md file with some new text (it can be anything). And then push the changes to github
git config --global user.email "change this with your github email id"
git config --global user.name "change this with your github username"
git add README.md
git commit -m "Updated the readme file"
git push origin main
- To push and pull changes
git pull origin main #pulls latest code from the repo
git push origin "your_name" #pushes your commits to your branch in the repo
Never push to main!! And NEVER FORCE PUSH TO MAIN
- Install dependencies
pip install -r requirements.txt
- Start Python Backend
python model_server.py
- Start Node.js Server:
node server.js
- Check setup - open http://localhost:3000 in browser
- Extend support for more datasets.
- Add advanced alerting features with SMS/Email notifications.
- Implement reinforcement learning for adaptive detection.
This project is licensed under the MIT License - see the LICENSE file for details.