GithubHelp home page GithubHelp logo

initWienRate? about ns3-datacenter HOT 7 OPEN

patrickkasper avatar patrickkasper commented on August 17, 2024
initWienRate?

from ns3-datacenter.

Comments (7)

vamsiDT avatar vamsiDT commented on August 17, 2024

Hi, thanks for pointing that out. Some old names are still stuck here. I just corrected it and pushed. Hope it should work now.

from ns3-datacenter.

patrickkasper avatar patrickkasper commented on August 17, 2024

thank you it working. but now when i run abm-evaluation fct file is always empty (one line only for titles) but simulation ends and stats file is not empty. did you see output in fct file?

thank you

from ns3-datacenter.

vamsiDT avatar vamsiDT commented on August 17, 2024

It should work now. The issue was with FlowFinish TraceSource. Thanks for pointing it.

PS: Please make sure to set alphasFile, cdfFileName to the correct path in the abm-evaluation file. You can also pass it as cmd arguments.

from ns3-datacenter.

patrickkasper avatar patrickkasper commented on August 17, 2024

thank you. it looks the fix only works for incast applications. i can see that non-incast flows exist but they do not show in the fct file. incasts are showed well.

from ns3-datacenter.

vamsiDT avatar vamsiDT commented on August 17, 2024

I doubt you might be having only non-incast flows in your fct file but not incast flows. Please check queryRequestRate value. You can set it using cmd as --queryRequestRate=1 for example. This is set to zero by default and no incast flows are generated.

As a check I ran a partial simulation and pushed fcts.txt.

The first line in fcts.txt shows what each column means.

$ cat fcts.txt | head -n1

time flowsize fct basefct slowdown basertt flowstart priority incast

The following are non-incast websearch flows.

$ cat fcts.txt | awk '{if($9==0) print $0}' | head -n2

10.0001 7984.19 130388 86387.4 1.50934 80 12.572 1 0
10.0014 61283.2 173091 129027 1.34151 80 1242.72 1 0

The following are incast flows.

$ cat fcts.txt | awk '{if($9==1) print $0}' | head -n2

10.0042 58885.4 418809 127108 3.2949 80 3751.87 1 1 
10.0045 58885.4 747273 127108 5.87903 80 3751.87 1 1

from ns3-datacenter.

patrickkasper avatar patrickkasper commented on August 17, 2024

thank you i think the problem was one of start_time, flow_end_time because i had changed those. i don't know which one of these was the problem because in every setting of them both type of flows (incast and non-incast) are generated from the cdf (request rate was never zero and i was printing flow size and their type as they were being generated) so i expected to see them finish too but i couldn't see any non-incast in fct (with start time=0, flow_end_time = 0.2, end_time=0.4) . now even when i set a very low load and start_time=10, flow_end_time=10.1 and end_time=20, some of the non-incast flows are not reported in the fct (but some are) but incasts finish. according to my math by looking at flow sizes and network capacity all should finish and hence be in fct so i was surprised.

i think if you could provide a guideline to set the start, flow_end and end times so we could see all flows in fct it would be very helpful.

thank you for your help here :)

from ns3-datacenter.

vamsiDT avatar vamsiDT commented on August 17, 2024

Hi, actually it has nothing to do with start and end times. A quick pointer: Please don't start at time 0. Its best to start at any time after 1.5 seconds. Incast flows are generated by persistent tcp connections. Here connection setup is done initially between 0-1.5 seconds.

The missing flows is actually a nice lesson about TCP port number 0.

If you check with the version you have before doing a git pull, you should notice that the number of missing flows will be exactly $n-1$ where $n$ is the total number of servers in the topology. All the sink apps which are created by specifying port number $0$ will eventually find a random port number allocated by Ns3 but the corresponding bulksend app communicates with dst port $0$. This eventually leads to connection failure and hence the missing flows. The initialization with port number zero is due to the stupidity here: uint32_t PORT_START[512] = {4444};

In any case, hope it works now. Thanks a lot for pointing this out. :)

from ns3-datacenter.

Related Issues (12)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.