tum-esi / 5GTQ

5GTQ: QoS-Aware 5G-TSN Simulation Framework (VTC Fall 2023 Paper)

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Repository content optimization

rhornig opened this issue · comments

Great work, thanks for publishing it. A few comments:

  • The repo contains a lot of unnecessary binary objects like the .so files, object files, the precompiled header etc. These files are unnecessary and slow the cloning process a lot (and consume disk space)
  • A non-specified INET and Simu5G version is checked in in the project that is modified. While it makes the installation easier, it makes very hard to see what was modified in what project and makes it harder to track future changes.
  • The project references in the IDE are incorrectly set causing build issues unless it is manually corrected in the project properties dialog.
  • The project is not configured to be build form the command line and is missing some minor infrastructure files that would make the life in command line a lot easier.
  • missing installation instructions

To remedy the above issues, I have created a fork at https://github.com/inet-framework/5GTQ and fixed them. Figured out the exact INET and simu5g versions and added your changes in a separate commit. If you find it useful, please let me know and I will create a PR that you can pull back to your original project.

commented

Hi Rudolf,

Thanks for pointing it out. Sure, please create a PR, and I will pull it back to the original project.

BR,
Rubi

I will work on that. One additional question: I had a brief chat with the simu5g project's authors. I'm not sure whether you are still working on this project or plan to update it, but would you consider upstreaming it to the main simu5g project? It looks like this is a well sought extension (TSN-5G seems to be a hot topic) by users.

@debnathr We had a bit more code review along with the simu5g authors. Their opinion is that the code here is generic and useful enough to be upstreamed and included in the main simu5g project after some cleanup. Would you be interested working on this?

This would also give a bit more exposure to your work resulting more references.

And a different question regarding the project optimization:

Why was some parts of the code (like the ethernet relay) included in the main project while a lot of other code (like the scheduler) was added to the simu5g project? Was there some particular reason, or it just happened by chance?

If all the c++ code would be added to the simu5g project (as a new branch on top of the existing simu5g codebase), the whole project structure would be a LOT simpler. Additionally, building and running on Windows would be possible.

commented

And a different question regarding the project optimization:

Why was some parts of the code (like the ethernet relay) included in the main project while a lot of other code (like the scheduler) was added to the simu5g project? Was there some particular reason, or it just happened by chance?

If all the c++ code would be added to the simu5g project (as a new branch on top of the existing simu5g codebase), the whole project structure would be a LOT simpler. Additionally, building and running on Windows would be possible.

@rhornig Hi Rudolf, We quickly implemented the features for the paper. We decided to add 5G-specific implementations that were only related to 5G in the Simu5G project. Furthermore, the codes mostly related to the 5G-TSN translation mechanism were added to the main project. Since, without 5G scheduling (which was not available in Simu5G ), the 5G-TSN architecture is incomplete, we quickly put it together for the paper. Therefore, we did not put much thought into cleaning up or making it more structured.
FYI, this work was a small part of my PhD project. We have now shifted to a different topic, as more than the 5G-TSN simulation, we need the joint scheduling algorithm, which is highly crucial to achieving bounded latency, the main highlight of TSN.

commented

@debnathr We had a bit more code review along with the simu5g authors. Their opinion is that the code here is generic and useful enough to be upstreamed and included in the main simu5g project after some cleanup. Would you be interested working on this?

This would also give a bit more exposure to your work resulting more references.

@rhornig Hi Rudolf, I am glad to see the interest in this work. Surely, TSN-5G is a hot topic, and we need a good simulation platform to test the network.
At present, I am not working on this simulation framework as I am in the last leg of my PhD, and I am currently focusing on some other TSN-related topics. But I think we would be fine if you or someone else would like to upstream it to the main Simu5G project. This would also give us a bit more exposure to our work, resulting in more references, as you mentioned. Unfortunately, I cannot maintain or work on this myself as I am busy wrapping everything up and finishing the open ends for my PhD. However, I would be happy to discuss and help whenever required.

Thanks for the info and good luck with the PhD. In this case, we will try to come up with a plan for upstreaming an will get back to you if we have a question.

And a different question regarding the project optimization:
Why was some parts of the code (like the ethernet relay) included in the main project while a lot of other code (like the scheduler) was added to the simu5g project? Was there some particular reason, or it just happened by chance?
If all the c++ code would be added to the simu5g project (as a new branch on top of the existing simu5g codebase), the whole project structure would be a LOT simpler. Additionally, building and running on Windows would be possible.

@rhornig Hi Rudolf, We quickly implemented the features for the paper. We decided to add 5G-specific implementations that were only related to 5G in the Simu5G project. Furthermore, the codes mostly related to the 5G-TSN translation mechanism were added to the main project. Since, without 5G scheduling (which was not available in Simu5G ), the 5G-TSN architecture is incomplete, we quickly put it together for the paper. Therefore, we did not put much thought into cleaning up or making it more structured. FYI, this work was a small part of my PhD project. We have now shifted to a different topic, as more than the 5G-TSN simulation, we need the joint scheduling algorithm, which is highly crucial to achieving bounded latency, the main highlight of TSN.

@debnathr Hi,debnathr, Great Job! thanks for publishing it. I am studying the joint scheduling algorithm. Can you tell me How can I run a simulation of my own joint scheduling algorithm algorithm on your project 5GTQ? Please give me some brief advices and instructions, it is very important for me. I am looking forward to your reply.

commented

@cocolele92 Hi, if I were you, I would implement the joint scheduling algorithm in the "tsnfivegcomm" and, later, test it in the .ini files where you use the CBS or TAS. Instead of using CBS or TAS, you can use your own scheduling mechanism. Also, in the 5G part, you may use your joint scheduling algorithm instead of max c/i or RR.

@debnathr Just to keep you in loop: I have isolated the changes and created a branch in the simu5g repo: https://github.com/Unipisa/Simu5G/tree/5gtq

The project authors will start reviewing it. I will let you know how it is progressing.

commented

@rhornig Great, please keep me in the loop.