This is the official implementation of RouteNet-Erlang, a pioneering GNN architecture designed to model computer networks. RouteNet-Erlang supports complex traffic models, multi-queue scheduling policies, routing policies and can provide accurate estimates in networks not seen in the training phase.
If you decide to apply the concepts presented or base on the provided code, please do refer our paper.
@article{ferriol2022routenet,
title={RouteNet-Erlang: A Graph Neural Network for Network Performance Evaluation},
author={Ferriol-Galm{\'e}s, Miquel and Rusek, Krzysztof and Su{\'a}rez-Varela, Jos{\'e} and Xiao, Shihan
and Cheng, Xiangle and Barlet-Ros, Pere and Cabellos-Aparicio, Albert},
journal={arXiv preprint arXiv:2202.13956},
year={2022}
}
The project is divided into three main blocks: scheduling, traffic models, and scalability. Each block has its own directory and contains its own files. In each directory we can find four main files:
model.py
: contains the code of the GNN model.main.py
: contains the code for the training/validation of the model.config.ini
: contains the configuration of the experiment. Number of epochs, batch size, learning rate, number of neurons, etc.check_predictions.py
: contains the code for the predictions. It automatically loads the best-trained model and saves its predictions in apredictions.npy
file that can be read using NumPy.
The project also contains some auxiliary files like datanetAPI.py
used to read the different datasets and the
read_dataset.py
that is used to convert the samples provided by the dataset API into the graph that is taken as
input by the model.
You can find more information about the reproducibility of the experiments inside each one of the directories (Scheduling, Traffic Models, Scalability).
Barcelona Neural Networking center, Universitat Politècnica de Catalunya
Do you want to contribute to this open-source project? Please, read our guidelines on How to contribute
See LICENSE for full of the license text.
Copyright Copyright 2022 Universitat Politècnica de Catalunya
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.