PacketX is a lightweight high-performance software for real-time capturing and analyzing network traffic. This project leverages linux
, tcpdump
, tshark
, bash
and c++
to inspect network packets and identify high-bandwidth applications utilizing **multithreaded C++, mutex-controlled data synchronization, managing local files, and automated build using Makefiles.
✅ Capture Network Traffic using tcpdump
for raw packet collection.
✅ Analyze Bandwidth Usage with tshark
and c++
to break down traffic.
✅ Identify High Data Usage Apps by inspecting UDP/TCP connections.
✅ Real Time Traffic Monitoring with bash
and c++
.
✅ Save Analyzed Captured State.
PacketX_Demo.mp4
- Install
tcpdump
andtshark
if not already.
sudo apt install tcpdump tshark
- Compile
C++
withMakefile
, only standard libraries are used.
make clean
make
- Run the
tcpdump_capture.sh
bash script giving 2 arguments- Network interface name that you want to capture its traffic
- Time chunk of capture, this will affect the update speed in the c++ program too, if you want to see whats going on in real time, 5 or 10 seconds is a good choice
sudo ./tcpdump_capture.sh wlp8s0 10
- Run the
C++
program
./main
The processed captured traffic is saved in a csv file traffic_log.csv
, the program will use this data a starting point if the file exists.