Official implementation of GSC: Generalizable Service Coordination. GSC performs coordination of services consisting of inter-dependent components in multi-cloud networks. Service coordination comprises the placement and scalability of components and scheduling incoming traffic requests for services between deployed instances.
This code has been tested using Python 3.8.6. We recommend installing the required packages (specified by requirements.txt file) inside a virtual environment.
GSC can be configured using these config files:
- agent config: specifies the configuration of the DRL agent, including parameters of the GNN Embedder and DRL training.
- network config: specifies the network topology and features of entities (nodes and links).
- service config: specifies the service's characteristics, such as processing delay of functions.
- simulator config: specifies the traffic generation pattern and its configuration.
- scheduler config: Determines how aspects of the network should change during the training phase.
@misc{mohammadi2023gsc,
title={GSC: Generalizable Service Coordination},
author={Farzad Mohammadi and Vahid Shah-Mansouri},
year={2023},
eprint={2311.02657},
archivePrefix={arXiv},
primaryClass={cs.DC}
}
We sincerely thank the developers of the DeepCoord and coord-sim projects for making the source code of their efforts available, which immensely helped us in the development of GSC.