openjournals / joss-reviews

Reviews for the Journal of Open Source Software
Creative Commons Zero v1.0 Universal
708 stars 37 forks source link

[REVIEW]: OPSDN: an enhanced SDN simulation framework for OPNET Modeler #4815

Closed editorialbot closed 1 year ago

editorialbot commented 1 year ago

Submitting author: !--author-handle-->@ZacharyJia<!--end-author-handle-- (Zequn Jia) Repository: https://github.com/ZacharyJia/opsdn Branch with paper.md (empty if default branch): Version: v0.2.2. Editor: !--editor-->@danielskatz<!--end-editor-- Reviewers: @Qingfengmufeng, @pradeeban Archive: 10.5281/zenodo.7708397

Status

status

Status badge code:

HTML: <a href="https://joss.theoj.org/papers/888bd72686dac709bec0e4e2b57a1d18"><img src="https://joss.theoj.org/papers/888bd72686dac709bec0e4e2b57a1d18/status.svg"></a>
Markdown: [![status](https://joss.theoj.org/papers/888bd72686dac709bec0e4e2b57a1d18/status.svg)](https://joss.theoj.org/papers/888bd72686dac709bec0e4e2b57a1d18)

Reviewers and authors:

Please avoid lengthy details of difficulties in the review thread. Instead, please create a new issue in the target repository and link to those issues (especially acceptance-blockers) by leaving comments in the review thread below. (For completists: if the target issue tracker is also on GitHub, linking the review thread in the issue or vice versa will create corresponding breadcrumb trails in the link target.)

Reviewer instructions & questions

@Qingfengmufeng & @pausz, your review will be checklist based. Each of you will have a separate checklist that you should update when carrying out your review. First of all you need to run this command in a separate comment to create the checklist:

@editorialbot generate my checklist

The reviewer guidelines are available here: https://joss.readthedocs.io/en/latest/reviewer_guidelines.html. Any questions/concerns please let @danielskatz know.

Please start on your review when you are able, and be sure to complete your review in the next six weeks, at the very latest

Checklists

📝 Checklist for @Qingfengmufeng

📝 Checklist for @pausz

📝 Checklist for @pradeeban

editorialbot commented 1 year ago

Hello humans, I'm @editorialbot, a robot that can help you with some common editorial tasks.

For a list of things I can do to help you, just type:

@editorialbot commands

For example, to regenerate the paper pdf after making changes in the paper's md or bib files, type:

@editorialbot generate pdf
editorialbot commented 1 year ago
Software report:

github.com/AlDanial/cloc v 1.88  T=0.09 s (539.6 files/s, 64073.6 lines/s)
-------------------------------------------------------------------------------
Language                     files          blank        comment           code
-------------------------------------------------------------------------------
C                                2            116            200           2950
C++                             11            216            115            635
Python                          13            153             73            536
Markdown                         7             47              0            152
C/C++ Header                     6             42              8            107
HTML                             1              6              0             79
TeX                              1              2              0             28
YAML                             1              1              4             18
Cython                           1              8              8             15
CMake                            1              3              0             11
DOS Batch                        2              0              0              3
JavaScript                       1              4             38              3
-------------------------------------------------------------------------------
SUM:                            47            598            446           4537
-------------------------------------------------------------------------------

gitinspector failed to run statistical information for the repository
editorialbot commented 1 year ago

Wordcount for paper.md is 700

editorialbot commented 1 year ago
Reference check summary (note 'MISSING' DOIs are suggestions that need verification):

OK DOIs

- 10.1145/1868447.1868466 is OK

MISSING DOIs

- None

INVALID DOIs

- None
editorialbot commented 1 year ago

:point_right::page_facing_up: Download article proof :page_facing_up: View article proof on GitHub :page_facing_up: :point_left:

danielskatz commented 1 year ago

👋 @Qingfengmufeng and @pausz - Thanks for agreeing to review this submission. This is the review thread for the paper. All of our communications will happen here from now on.

As you can see above, you each should use the command @editorialbot generate my checklist to create your review checklist. @editorialbot commands need to be the first thing in a new comment.

As you go over the submission, please check any items that you feel have been satisfied. There are also links to the JOSS reviewer guidelines.

The JOSS review is different from most other journals. Our goal is to work with the authors to help them meet our criteria instead of merely passing judgment on the submission. As such, reviewers are encouraged to submit issues and pull requests on the software repository. When doing so, please mention openjournals/joss-reviews#4815 so that a link is created to this thread (and I can keep an eye on what is happening). Please also feel free to comment and ask questions on this thread. In my experience, it is better to post comments/questions/suggestions as you come across them instead of waiting until you've reviewed the entire package.

We aim for reviews to be completed within about 2-4 weeks. Please let me know if either of you require some more time. We can also use editorialbot (our bot) to set automatic reminders if you know you'll be away for a known period of time.

Please feel free to ping me (@danielskatz) if you have any questions/concerns.

pausz commented 1 year ago

Review checklist for @pausz

Conflict of interest

Code of Conduct

General checks

Functionality

Documentation

Software paper

danielskatz commented 1 year ago

👋 @Qingfengmufeng - Can you please generate your checklist?

To do so, use the command @editorialbot generate my checklist to create your review checklist. @editorialbot commands need to be the first thing in a new comment.

danielskatz commented 1 year ago

👋 @pausz - thanks for getting started. I wanted to check in, after a couple of weeks, and see how things are going.

Qingfengmufeng commented 1 year ago

@editorialbot generate my checklist

editorialbot commented 1 year ago

I'm sorry human, I don't understand that. You can see what commands I support by typing:

@editorialbot commands

Qingfengmufeng commented 1 year ago

@editorialbot

editorialbot commented 1 year ago

I'm sorry human, I don't understand that. You can see what commands I support by typing:

@editorialbot commands

danielskatz commented 1 year ago

@editorialbot generate my checklist

@Qingfengmufeng - can you try that again? enter @editorialbot generate my checklist as a new comment here

Qingfengmufeng commented 1 year ago

Review checklist for @Qingfengmufeng

Conflict of interest

Code of Conduct

General checks

Functionality

Documentation

Software paper

Qingfengmufeng commented 1 year ago

OK

@.***

From: Daniel S. Katz Date: 2022-10-25 20:20 To: openjournals/joss-reviews CC: Qingfengmufeng; Mention Subject: Re: [openjournals/joss-reviews] [REVIEW]: OPSDN: an enhanced SDN simulation framework for OPNET Modeler (Issue #4815) @editorialbot generate my checklist @Qingfengmufeng - can you try that again? enter @editorialbot generate my checklist as a new comment here — Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you were mentioned.Message ID: @.***>

danielskatz commented 1 year ago

👋 @pausz - How are things are going? When you do think you will be able to start on your review items?

pausz commented 1 year ago

@danielskatz Apologies. My workstation cooling system failed and had a down time of a couple of weeks, which delayed me in getting this done. Will finish within this week.

pausz commented 1 year ago

@editorialbot commands

editorialbot commented 1 year ago

Hello @pausz, here are the things you can ask me to do:


# List all available commands
@editorialbot commands

# Get a list of all editors's GitHub handles
@editorialbot list editors

# Check the references of the paper for missing DOIs
@editorialbot check references

# Perform checks on the repository
@editorialbot check repository

# Adds a checklist for the reviewer using this command
@editorialbot generate my checklist

# Set a value for branch
@editorialbot set joss-paper as branch

# Generates the pdf paper
@editorialbot generate pdf

# Generates a LaTeX preprint file
@editorialbot generate preprint

# Get a link to the complete list of reviewers
@editorialbot list reviewers
pausz commented 1 year ago

@danielskatz I've completed my checklist-based review. Sorry again for the delay. I can elaborate more on the items that are not checked if needed.

danielskatz commented 1 year ago

👋 @pausz - Thanks! and yes, please do elaborate. If you want, you can submit issues and pull requests on the software repository. When doing so, please mention openjournals/joss-reviews#4815 so that a link is created to this thread (and I can keep an eye on what is happening). Please also feel free to comment and ask questions on this thread, perhaps with one comment for each criteria where you feel that something else is needed. Remember that the goal of this review is to tell the authors what you think they need to so that you could check off the all the criteria.

danielskatz commented 1 year ago

👋 @pausz - are you able to elaborate more?

danielskatz commented 1 year ago

👋 @pausz - we do need some more information from you about what else you think needs to be done.

danielskatz commented 1 year ago

👋 @@Qingfengmufeng - can you provide an update on your status?

danielskatz commented 1 year ago

👋 @pausz - Can you provide an update on your review, and what is needed to check off items that are not yet checked off?

danielskatz commented 1 year ago

👋 @Qingfengmufeng - Can you provide an update on your review, and what is needed to check off items that are not yet checked off?

Qingfengmufeng commented 1 year ago

OK, I'll do this as soon as possible

Yixue Hao Associate Professor,School of Computer Science and Technology Huazhong University of Science and Technology, China Room 216, Building No.1,1037 Luoyu Road, Wuhan City, Hubei Province, P. R. China Postcode: 430074 Phone: +86-13554659376(Wechat) Email: @.***

From: Daniel S. Katz Date: 2023-01-03 22:31 To: openjournals/joss-reviews CC: Qingfengmufeng; Mention Subject: Re: [openjournals/joss-reviews] [REVIEW]: OPSDN: an enhanced SDN simulation framework for OPNET Modeler (Issue #4815) @Qingfengmufeng - Can you provide an update on your review, and what is needed to check off items that are not yet checked off? — Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you were mentioned.Message ID: @.***>

danielskatz commented 1 year ago

@Qingfengmufeng - Do you have any update for us?

danielskatz commented 1 year ago

👋 @pausz - Can you provide an update on your review, and what is needed to check off items that are not yet checked off?

danielskatz commented 1 year ago

@Qingfengmufeng & @pausz - you both have checked off many items in your review, but have items that are not yet checked. Please let us know what is blocking you from checking them.

danielskatz commented 1 year ago

👋 @pausz - Can you provide an update on your review, and what is needed to check off items that are not yet checked off? (I'll also email you again)

danielskatz commented 1 year ago

I'm going to check off the two items - Human and animal research & Performance - for @Qingfengmufeng since the paper does not discuss either, and assume @Qingfengmufeng's review is complete

danielskatz commented 1 year ago

@ZacharyJia - I'm sorry, but I'm having no luck getting @pausz to complete their review or respond to me.

danielskatz commented 1 year ago

Normally, I would step in and try to add a review myself at this point, but I don't have access to a Windows system, so I need to find another reviewer

danielskatz commented 1 year ago

👋 @rreinecke - Is there any chance you would be able to help out and review this JOSS submission?

danielskatz commented 1 year ago

👋 @suriya-ganesh & @championn & @pradeeban & @achanda & @imw & @Flowdalic - Is there any chance one of you would be able to help out and review this JOSS submission of Windows SDN simulation software?

The source repository is https://github.com/ZacharyJia/opsdn

pradeeban commented 1 year ago

@danielskatz Happy to help. Please assign me the paper as a reviewer.

Before I start, one thing I noticed is the README.

The module-level READMEs are in Chinese.

https://github.com/ZacharyJia/opsdn/tree/master/src/dll-bridge

https://github.com/ZacharyJia/opsdn/tree/master/src/models

@ZacharyJia, Is there a chance to include the English translations as part of the README?

That will help me understand and appreciate the context and contribution of the framework better.

danielskatz commented 1 year ago

@pradeeban - thanks very much - I will add you next, then if you run @editorialbot generate my checklist in a separate comment, it will create your checklist.

And your request to @ZacharyJia seems very reasonable

danielskatz commented 1 year ago

@editorialbot add @pradeeban as reviewer

editorialbot commented 1 year ago

@pradeeban added to the reviewers list!

pradeeban commented 1 year ago

Review checklist for @pradeeban

Conflict of interest

Code of Conduct

General checks

Functionality

Documentation

Software paper

pradeeban commented 1 year ago

Thanks @danielskatz.

@ZacharyJia, I am attempting to install the package, following the pip install command as listed in the README. It fails. I have reported this as a bug in https://github.com/ZacharyJia/opsdn/issues/1

Can you please attend to it, so that I can proceed with the rest of the review?

I have also opened a separate issue on README lacking English translations at https://github.com/ZacharyJia/opsdn/issues/2 for ease of reference/tracking.

ZacharyJia commented 1 year ago

Thanks @danielskatz.

@ZacharyJia, I am attempting to install the package, following the pip install command as listed in the README. It fails. I have reported this as a bug in ZacharyJia/opsdn#1

Can you please attend to it, so that I can proceed with the rest of the review?

I have also opened a separate issue on README lacking English translations at ZacharyJia/opsdn#2 for ease of reference/tracking.

Hi @pradeeban , Thanks for your help! I will follow up these issues and try to fix them.

pradeeban commented 1 year ago

@ZacharyJia I am reading the paper now and leaving some comments along the way.

The statement "Tradational SDN simulation softwares includes testbeds like Mininet" has a few issues.

  1. Mininet is an emulator and not a simulator. Although many people tend to use "emulation" and "simulation" interchangeably, the differences are significant in networking. Mininet and Maxinet are network emulators. NS-3 and CloudSimSDN are network simulators. You may need to include both simulation and emulation examples, as in, "Tradational SDN simulators includes NS-3 and emulators include Mininet."

The paper https://www.researchgate.net/publication/322472564_A_Feature_Based_Comparison_of_SDN_Emulation_And_Simulation_Tools gives some more examples of the simulators vs. emulators.

If you want to avoid introducing emulators in your paper, use NS-3 as an example for simulators instead of Mininet.

  1. The typo in the word "Traditional" above.
pradeeban commented 1 year ago

@ZacharyJia Along the same comments above, a performance comparison of Mininet vs. OPNET will be unfair. Since Mininet is an emulator, it will indeed be resource-heavy. (Mininet creates processes to represent each host and switch, whereas simulators do not do that.)

"Mininet usually support network devices no more than 4096 and its CPU and bandwidth are limited by a single server."

If you need to continue the comparisons, these definitions and the emulation vs. simulation discussions should be presented beforehand. Some revisions to the "Summary" will be necessary for accuracy and fairness in these comparisons.

pradeeban commented 1 year ago

@ZacharyJia Please make sure to define the acronyms the first time they appear in the paper. SD-MANET and DES lack such definitions in the paper.

pradeeban commented 1 year ago

@ZacharyJia The last sentence mentions NS3 and OMNET++, which are indeed the simulators (and not Mininet-like emulators). They should be mentioned early on in the summary for accuracy and clarity. Such a comparison against NS-3 will make it clearer where your contribution stands, compared against the simulators (NS-3, OMNET++, ...) and emulators (Mininet, Maxinet, ...)

I am aware of the space limitations in JOSS. But addressing the accuracy of the claims will make the paper more convincing.

pradeeban commented 1 year ago

@ZacharyJia Please note I do not have access to a Windows laptop myself. The installation was successful on Ubuntu with the installation commands. But I will not report any functional issues I may encounter against the paper since I am not using the intended operating system.

pradeeban commented 1 year ago

@editorialbot commands