tylertreat / comcast

Simulating shitty network connections so you can build better systems.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Most networks are asymmetric

dtaht opened this issue · comments

So you really need to emulate 20Mbit down/5 up, 50 down/10 up, 8mbit down 1up. Etc.

Agreed, this would be ideal.

At current, it's a slight more strange (at least on Linux thus far, I haven't delved into ipfw quite yet) to affect ingress traffic as it is egress traffic using traffic control. There's ways to do it I have not yet researched, but will be soon after I've finished other work. This is on my personal todo list with regard to this project.

There's something to be said for possibly ditching use of traffic control (on linux) and doing everything in pure iptables rules which might solve this entirely, I still need to look into the ramifications of what would be lost by that switch. Perhaps @tylertreat might know this answer?

Yeah, using iptables on Linux might be a better long-term solution. I went with traffic control because it was simple and did just what I needed for the initial iteration. Since this is a program meant to simplify these tools, it would be nice to expose some really interesting/useful features out through a simple, easy-to-use interface which is as cross-platform as possible. That's really my goal for it, anyway.

You might already have seen this already, but there is a way to use an IFB to "convert ingress traffic to egress" so that tc can be used: https://serverfault.com/a/386791

A limitation is that one IFB is needed per interface, and a fixed number of IFBs are allocated statically at modprobe time. So if the number of interfaces varies, then this might be difficult to use.