Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Change architecture to separate parser logic from server logic (untested) #5

Open
wants to merge 12 commits into
base: main
Choose a base branch
from

Conversation

jacobdunefsky
Copy link
Collaborator

I separated the parser logic from the server logic (thank you Kai for his comment on #24 (openalto/ietf-hackathon#24)). Now, the parser lives in a G2Parser class that is used in the server. Note that parser code can easily be swapped out, if we want to develop another parser, as long as the parser implements a method construct_from_flows(flows_list).

emiapwil and others added 7 commits March 20, 2022 11:14
Signed-off-by: Kai Gao <emiapwil@gmail.com>
Signed-off-by: Kai Gao <emiapwil@gmail.com>
Signed-off-by: Kai Gao <emiapwil@gmail.com>
Signed-off-by: Kai Gao <emiapwil@gmail.com>
Refactored from estimate_throughput.py
Now, works with any Parser object that supports a function construct_from_flows(flows_list) that returns a dict with "A" matrix, "c" vector, and "RTT".
Currently, only `G2_MININET` is supported.
"""

SOLVER = "jensen"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe "num" is a better name for the solver, as this solver uses the "Network Utility Maximization (NUM)" model to do the prediction.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Never see the name is changed. Re-opened this conversation.

@fno2010
Copy link
Member

fno2010 commented May 5, 2022

Overall, the PR looks good to me. But some files are still using hard TAB indents.

* This script assumes that the configuration files are located at
"input/g2.conf" and "output/input_routing.conf". If this is not the case,
then change the variables g2fp_str and infp_str
* This script estimates RTT by summing up the delays of each link. This is
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggest changing slightly the language. Instead of:

"This is not accurate!!! But, since..."

Say something like:

"This is for now a first order approximation, since queuing and processing delay are not taken into account."

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants