<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 10pt;
font-family:Tahoma
}
--></style></head>
<body class='hmmessage'><div dir='ltr'>
Try "Netem"<br>netem provides <a class="extiw" title="Network_emulation" href="http://en.wikipedia.com/wiki/Network_emulation">Network Emulation</a>
functionality for testing protocols by emulating the properties of wide area
networks. The current version emulates variable delay, loss, duplication and
re-ordering.<BR>
If you run a current 2.6 distribution, (<a class="extiw" title="Fedora_Core" href="http://en.wikipedia.com/wiki/Fedora_Core">Fedora</a>, <a class="extiw" title="Open_Suse" href="http://en.wikipedia.com/wiki/Open_Suse">OpenSuse</a>, <a class="extiw" title="Gentoo_Linux" href="http://en.wikipedia.com/wiki/Gentoo_Linux">Gentoo</a>, <a class="extiw" title="Debian" href="http://en.wikipedia.com/wiki/Debian">Debian</a>, <a class="extiw" title="Mandriva" href="http://en.wikipedia.com/wiki/Mandriva">Mandriva</a>, <a class="extiw" title="Ubuntu_(Linux_distribution)" href="http://en.wikipedia.com/wiki/Ubuntu_%28Linux_distribution%29">Ubuntu</a>),
then netem is already enabled in the kernel and a current version of <a class="new" title="iproute2 (not yet written)" href="/node/add/wiki?gids[]=5066">iproute2</a> is included. The netem kernel
component is enabled under:<BR><pre> Networking -->
Networking Options -->
QoS and/or fair queuing -->
Network emulator
</pre>
Netem is controlled by the command line tool 'tc' which is part of the <a class="new" title="iproute2 (not yet written)" href="/node/add/wiki?gids[]=5066">iproute2 </a>package of tools. The tc command
uses shared libraries and data files in the /usr/lib/tc directory.<BR><br><div><div id="SkyDrivePlaceholder"></div>> Date: Wed, 5 Sep 2012 15:24:31 -0400<br>> From: stevens@electricalscience.com<br>> To: live-devel@ns.live555.com<br>> Subject: [Live-devel] simulate RTP packet loss<br>> <br>> Hi all,<br>> <br>> I would like to simulate packet loss of RTP packets on the network, and <br>> I would like to use Live555 to do this. In fact, there already is some <br>> code in MultiFramedRTPSink (in the <br>> MultiFramedRTPSink::sendPacketIfNecessary() function) which is contained <br>> in a "TEST_LOSS" macro, and is hardcoded to simulate 10% loss:<br>> <br>> #ifdef TEST_LOSS<br>> if ((our_random()%10) != 0) // simulate 10% packet loss #####<br>> #endif<br>> <br>> I would like to do some more sophisticated testing (e.g. change the <br>> packet loss to 5% or 25%). What is the "right" way to do this? Ideally <br>> I would subclass MultiFramedRTPSink and then override the <br>> sendPacketIfNecessary() function. But sendPacketIfNecessary() is <br>> declared as "private" and so I cannot override.<br>> <br>> How best to simulate the packet loss without modifying the Live555 code <br>> directly?<br>> <br>> Regards,<br>> <br>> --Andy Stevens<br>> New York, USA<br>> _______________________________________________<br>> live-devel mailing list<br>> live-devel@lists.live555.com<br>> http://lists.live555.com/mailman/listinfo/live-devel<br></div> </div></body>
</html>