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

flow-level ECMP may not work properly #19

Open
wangshuaizs opened this issue Jun 14, 2018 · 2 comments
Open

flow-level ECMP may not work properly #19

wangshuaizs opened this issue Jun 14, 2018 · 2 comments

Comments

@wangshuaizs
Copy link

Hi,
I tried to used Flow-level ECMP in fat-tree topology, but I found the total throughput of the receiver was not as much as the maximum. I think you use the original source codes about flow-level ECMP of ns-3, and I ran the same topology using TCP in ns-3 and visualized it. Surprisingly, only some core switches were used, so I thought that flow-level ECMP might not work properly and it is the main cause for low throughput. Have you ever noticed this? or I used it wrongly?

thanks.

@bobzhuyb
Copy link
Owner

I did not notice it. Would you debug it a bit? The code for ECMP is not complicated. Please keep me updated.

@wangshuaizs
Copy link
Author

I have got it.
Flow-level ecmp is based on five-tuple, so the flows that have the same hash value will have the same next hop, denoted as SW_A. If SW_A still has more than one next hops, for example, SW_B and SW_C, these flows that have the same hash value will choose the same next hop, SW_B or SW_C.
I have fixed it by dividing tuple value into the switch id.
tupleValue /= (m_ipv4->GetObject<Node>()->GetId() + 1);

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

No branches or pull requests

2 participants