Problem Statement Network datasets form the basis of many research problems falling under the computer networks domain. Despite the need, network datasets are rare due to privacy concerns and sensitive information leakage. We present this work as a way to overcome this problem and propose a Generative Adversarial Network approach to create new computer network datatsets.
Design and Implementation We implement an LSTM-based GAN that learns on distinct 11 flow-based features extracted from network traffic. The GAN is then able to output features that our custom framework uses to communicate and capture real network traffic. This collection of traffic combined creates new datasets that can then be used in any application. In the second task of the project we implement a custom StyleGAN that converts network capture traffic into 16x16 grayscale images and then learns their most prominent features. We do this to identify the "face" of the network dataset as identified by StyleGAN (which is primarily used to generate images of human faces), and then generate new dataset features as images to visualize its face.
Results We evaluated the traffic generated by our GAN to see its effectiveness in being able to represent the specific class of traffic it represents without actually being a part of that class. We were successful in showing that and GAN generated traffic was classified as the normal class by 6 highly effective and accurate classifiers. We also evaluated the features that were identified by StyleGAN as the face of the network data. The most important features identified were: 90th & 80th Percentile of PacketTimes, 90th & 80th Percentile of PacketTimesIn, skewPacketTimesIn, variancePacketTimesIn, skewPacketTimesOut, variancePacketTimesOut. Similarly, the least important features identified were: InBurst Kurtosis, InBurst Skewness, InBurst Stdev, InBurst Variance, InBurst total.
Extrapolating the image generated by StyleGAN helps us visualize the face of the network data as shown below.
Link to GitHub repo: https://github.com/ertza/stylegan