Projeto de grupo desenvolvido no âmbito da UC de CC.
O projeto consiste na implementação de protocolos que correrm sobre UDP (MissionLink) e TCP (TelemetryStream) para a comunicação entre Rovers e uma Nave Mãe, numa simulação de missões espaciais. Pode consultar o enunciado do projeto e o respetivo relatório.
Para poder correr as topologias criadas e testar os protocolos é necessário ter o CORE instalado. Para o CORE ter acesso ao código fonte, é necessário que o mesmo se encontre na diretoria volume/, que é partilhada pelo Docker e pela sua máquina.
Para testar os protocolos abra no CORE qualquer uma destas três topologias desenvolvidas:
- final-clean.xml
- final-easy.xml
- final-hard.xml
Ponha a topologia a correr. Abra os terminais dos nós dos Rovers que pretende testar, da Nave Mãe e do Ground Control. Em cada um dos terminais abertos certifique-se que se encontra na diretoria mission/ :
$ cd mission/Para compilar o projeto faça:
$ make compilePara correr a Nave Mãe faça no seu terminal:
$ make navemae IP=10.0.4.20Para correr os Rovers faça nos seus terminais:
$ make rover ID=R-X IP_ROVER=X.X.X.X PORTA=7000 IP_NAVEMAE=10.0.4.20Onde o ID e o IP correspodem aos valores contidos na topologia.
Para correr o Ground Control faça no seu terminal:
$ make groundcontrolPara reconstruir o projeto faça:
$ make rebuildPara remover os ficheiros gerados pelo compile o projeto faça:
$ make cleanGroup project developed within the scope of the Computer Communications (CC) course.
The project consists of implementing protocols that run over UDP (MissionLink) and TCP (TelemetryStream) for communication between Rovers and a Mothership, in a space mission simulation. You can consult the project specification and the corresponding report.
To run the created topologies and test the protocols, it is necessary to have CORE installed. For CORE to have access to the source code, it must be located in the volume/ directory, which is shared between Docker and your machine.
To test the protocols, open any of the following three developed topologies in CORE:
- final-clean.xml
- final-easy.xml
- final-hard.xml
Start the topology. Open the terminals of the Rovers you wish to test, the Mothership, and the Ground Control. In each opened terminal, make sure you are in the mission/ directory:
$ cd mission/To compile the project, run:
$ make compileTo run the Mothership, execute in its terminal:
$ make navemae IP=10.0.4.20To run the Rovers, execute in their respective terminals:
$ make rover ID=R-X IP_ROVER=X.X.X.X PORTA=7000 IP_NAVEMAE=10.0.4.20Where the ID and IP correspond to the values defined in the topology.
To run the Ground Control, execute in its terminal:
$ make groundcontrolTo rebuild the project, run:
$ make rebuildTo remove the files generated during compilation, run:
$ make clean