The repository of GateKeeper, code for our Computer Networks Journal paper: GateKeeper: An UltraLite malicious traffic identification method with dual-aspect optimization strategies on IoT gateways
Note:
- ⭐ Please leave a STAR if you like this work! ⭐
Ensure the following dependencies are installed:
- Python 3.7+
- PyTorch 1.4.0+
run_Base.py
: Script to run the Base model.train.py
: Contains functions for training and testing the model.Base.py
: Defines the structure of the Base model.GateKeeper.py
: Defines the structure of the GateKeeper model.KBS_score.py
: Script for calculating and evaluating attention scores.utils_base.py
: Utility functions for dataset construction and iterators.utils_GateKeeper.py
: Utility functions specific to the GateKeeper model.
Adjust ./dataset to your data
python run_Base.py --test False
python KBS_score.py
Copy the results of importance score (KBS_score.py print) and assign them to the pos variable in utils_GateKeeper.py.
python run_GateKeeper.py --test False
@article{cao2024gatekeeper,
title={GateKeeper: An UltraLite malicious traffic identification method with dual-aspect optimization strategies on IoT gateways},
author={Cao, Jie and Xu, Yuwei and Yu, Enze and Xiang, Qiao and Song, Kehui and He, Liang and Cheng, Guang},
journal={Computer Networks},
pages={110556},
year={2024},
publisher={Elsevier}
}
@inproceedings{cao2023mathcal,
title={$$\backslash$mathcal $\{$L$\}$$\{$-$\}$ $ ETC: A Lightweight Model Based on Key Bytes Selection for Encrypted Traffic Classification},
author={Cao, Jie and Xu, Yuwei and Xiang, Qiao},
booktitle={ICC 2023-IEEE International Conference on Communications},
pages={2370--2375},
year={2023},
organization={IEEE}
}