

Clumsy, an open-source utility for simulating broken networks on Windows - egeozcan
http://jagt.github.io/clumsy/index.html

======
another
Reliable network interaction on mobile is enormously difficult if you are
trying to deploy code globally: each MNO mangles your packets in its own
special way. Good to see tools like this, wish there were more, but the other
half of the picture is empirical data on how particular pathological networks
behave (I don't mean "EDGE", I mean "EDGE in poor coverage on MTN in
Afghanistan"). Haven't found any real information, even in general terms,
along these lines. Pointers welcome.

This area would be a great place for someone like Internet.org to add value,
and they've announced some related work, but nothing seems real yet.

------
alexhektor
Awesome. They should have presets to simulate Edge/3G connections with varying
speeds, package losses, drops etc.

~~~
paulirish
If you're looking for this for a webapp, the DevTools in Chrome now have
presets for Edge/3g/4G (and offline) that tackle both latency and throughput.
The added benefit is they only affect that one tab, so the others are still
running at max speed.

Screenshot: [http://i.imgur.com/n0aFXo6.png](http://i.imgur.com/n0aFXo6.png)

~~~
JohnTHaller
That just slows down the connection. The point of Clumsy is to allow you to
add lag, have packets arrive out of order, etc.

------
yduuz
There's also NetBalancer.com and NetLimiter.com with some similar
functionality, though not open source.

------
tomasandrle
Nice, I have found some hard to reproduce bugs using tools like this. On Mac
OS X and iOS, there's the Network Link Conditioner which is built into iOS and
part of the developer tools package on MAC OS X I believe (installed as a
Preference pane).

~~~
masklinn
Yep, although it is quite a bit simpler: NLC does bandwidth, delay and drop
(which clumsy calls throttle, lag and drop), it does not reorder, duplicate or
tamper with packets.

It also applies to all network communications, it can't be applied to specific
links or connections. On the other hand it's very, very easy to use.

~~~
youngtaff
OS X has DummyNet installed (belieie this is what NLC uses)

You can configure DummyNet to shape traffic for specific IPs/ MAC addresses
etc. - ifpw is you friend.

------
guardian5x
Nice, this tool will help software engineers to make their software more
robust. Far too often apps are only tested under ideal conditions and then
fail when only a bad network connection, for example bad mobile reception, is
available.

~~~
TheLoneWolfling
In particular, a lot of applications will work fine if there is no network
access, or if there is great network access, but will crash and burn when, for
example, it can access url A but not url B. (the network equivalent of "if not
exists(file): fallback() else: file.open()")

~~~
tomovo
Weird things also happen when a request is fired but NOTHING happens - no
failure, no response. It's what happens when you connect to one of those
annoying paid airport wifi APs (and don't pay). No failure, no response, just
a black hole for packets.

------
gtirloni
Worked great on Win8.1 64-bit. This will be very useful. Thank you!

------
9point6
>64bit Windows users are strongly recommanded to download the 64bit build.

typo - s/recommanded/recommended/

------
Aoyagi
A toggle for "one or more people are running torrents" would be nice.

~~~
voltagex_
It seems like consumer grade routers are mostly to blame for "torrents ==
connection dead".

It would be fairly simple to simulate a saturated upstream though.

------
tedchs
Not sure why this is needed, the network stack is usually broken on Windows
out of the box.

------
YungLean
good pranking material

~~~
scott_karana
My first thought was, "great for testing videoconferencing software", but
pranks are a good second ;)

