* [PATCH] netem/iproute2 solving correlated loss issues [0/5]
@ 2009-12-18 10:39 Stefano Salsano
2009-12-18 11:22 ` Fabio Ludovici
2009-12-19 4:04 ` David Miller
0 siblings, 2 replies; 4+ messages in thread
From: Stefano Salsano @ 2009-12-18 10:39 UTC (permalink / raw)
To: netdev; +Cc: Fabio Ludovici
Dear all,
we are going to send a patch that enhances netem module and the iproute2
utilities.
Our aim is to fix the problems with correlated loss generation in netem
(as for example described in
https://lists.linux-foundation.org/pipermail/netem/2007-September/001156.html)
We have now included a more general loss model, as described in:
http://netgroup.uniroma2.it/twiki/bin/view.cgi/Main/NetEm2
The patch is backward compatible, we have not removed the previous
correlated loss generated approach (though its use should be
deprecated), nor we have changed anything else in the existing netem
module.
Within our patch for iproute2 we also added a man page for netem (it was
missing) in which we have pasted the existing documentation for netem
and the usage of our model.
We had posted this work on the netem mailing list some months ago as a
separate netem2 module... we received some feedback and made some bug
fix since then. We believe the work is now ready to be inserted in the
main netem/iproute2 development.
We will post in next messages the patches to netem module for 2.6.32
kernel and to 2.6.29 iproute2 (find below the list)
Comments are welcome.
Best regards,
Stefano and Fabio
netem kernel module patches:
patch 1/5 : linux-2.6.32/include/linux/pkt_sched.h
patch 2/5 : net/sched/sch_netem.c
iproute2 utilities patches:
patch 3/5 : iproute2-2.6.29-1/include/linux/pkt_sched.h
patch 4/5 : iproute2-2.6.29-1/man/man8/tc-netem.8
patch 5/5 : iproute2-2.6.29-1/tc/q_netem.c
--
*******************************************************************
Stefano Salsano
Dipartimento Ingegneria Elettronica
Universita' di Roma "Tor Vergata"
Via del Politecnico, 1 - 00133 Roma - ITALY
http://netgroup.uniroma2.it/Stefano_Salsano/
E-mail : stefano.salsano@uniroma2.it
Cell. : +39 320 4307310
Office : (Tel.) +39 06 72597770 (Fax.) +39 06 72597435
*******************************************************************
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] netem/iproute2 solving correlated loss issues [0/5]
2009-12-18 10:39 [PATCH] netem/iproute2 solving correlated loss issues [0/5] Stefano Salsano
@ 2009-12-18 11:22 ` Fabio Ludovici
2009-12-19 4:04 ` David Miller
1 sibling, 0 replies; 4+ messages in thread
From: Fabio Ludovici @ 2009-12-18 11:22 UTC (permalink / raw)
To: netdev
[-- Attachment #1: Type: text/plain, Size: 51 bytes --]
patch 1/5 : linux-2.6.32/include/linux/pkt_sched.h
[-- Attachment #2: netem_patch_1_of_5 --]
[-- Type: text/plain, Size: 1536 bytes --]
diff -uNr linux-2.6.32/include/linux/pkt_sched.h linux-2.6.32-netem/include/linux/pkt_sched.h
--- linux-2.6.32/include/linux/pkt_sched.h 2009-12-03 04:51:21.000000000 +0100
+++ linux-2.6.32-netem/include/linux/pkt_sched.h 2009-12-11 12:59:12.634187877 +0100
@@ -479,6 +479,21 @@
__u32 gap; /* re-ordering gap (0 for none) */
__u32 duplicate; /* random packet dup (0=none ~0=100%) */
__u32 jitter; /* random jitter in latency (us) */
+ __u32 p13; /* GI loss model-state 1 to 3 transition probability */
+ __u32 p31; /* GI loss model-state 3 to 1 transition probability */
+ __u32 p32; /* GI loss model-state 3 to 2 transition probability */
+ __u32 p23; /* GI loss model-state 2 to 3 transition probability */
+ __u32 p14; /* GI loss model-state 1 to 4 transition probability */
+ __u32 gilb_p; /* Gilbert-Elliot model-state good-bad transition probability */
+ __u32 gilb_r; /* Gilbert-Elliot model-state bad-good transition probability */
+ __u32 gilb_h; /* Gilbert-Elliot-loss model loss probability in bad state */
+ __u32 gilb_k; /* Gilbert-Elliot-loss model loss probability in good state */
+ __u32 algorithm; /* loss model algorithm selection */
+ __u32 logging; /* loss logging mode selector */
+ __u32 query; /* loss query mode selector */
+ __u16 pattern_length; /* deterministic loss pattern length */
+ __u32 pattern_repetitions; /* deterministc loss pattern repetitions */
+ __u16 *user_pattern; /* determinist loss pattern elements */
};
struct tc_netem_corr
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] netem/iproute2 solving correlated loss issues [0/5]
2009-12-18 10:39 [PATCH] netem/iproute2 solving correlated loss issues [0/5] Stefano Salsano
2009-12-18 11:22 ` Fabio Ludovici
@ 2009-12-19 4:04 ` David Miller
2009-12-19 9:45 ` Stefano Salsano
1 sibling, 1 reply; 4+ messages in thread
From: David Miller @ 2009-12-19 4:04 UTC (permalink / raw)
To: stefano.salsano; +Cc: netdev, fabio.ludovici
From: Stefano Salsano <stefano.salsano@uniroma2.it>
Date: Fri, 18 Dec 2009 11:39:13 +0100
> The patch is backward compatible, we have not removed the previous
> correlated loss generated approach (though its use should be
> deprecated), nor we have changed anything else in the existing netem
> module.
To heck it is!
The changed version of iproute2 will not work without the kernel
changes installed. The kernel validates the size of the structures
passed in, you can't change the user visible interface like this.
Add new netlink attributes to extend things, that's the "real"
backwards compatible way to make changes to netlink interfaces.
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] netem/iproute2 solving correlated loss issues [0/5]
2009-12-19 4:04 ` David Miller
@ 2009-12-19 9:45 ` Stefano Salsano
0 siblings, 0 replies; 4+ messages in thread
From: Stefano Salsano @ 2009-12-19 9:45 UTC (permalink / raw)
To: David Miller; +Cc: netdev, fabio.ludovici, Stephen Hemminger
David Miller wrote:
>> The patch is backward compatible, we have not removed the previous...
>
> To heck it is!
> The changed version of iproute2 will not work without the kernel
> changes installed. The kernel validates the size of the structures
> passed in, you can't change the user visible interface like this.
David Miller wrote:
> Furthermore it is fundamentally flawed in it's implementation
> in that the user exported data structures cannot be changed,
> you cannot change the layout and you absolutely cannot
> change the size of these things or else various tool and
> kernel combinations stop working.
thank you for raising these fundamental issues !
we will address them and resubmit the patch when done...
> Add new netlink attributes to extend things, that's the "real"
> backwards compatible way to make changes to netlink interfaces.
point taken
--
*******************************************************************
Stefano Salsano
Dipartimento Ingegneria Elettronica
Universita' di Roma "Tor Vergata"
Via del Politecnico, 1 - 00133 Roma - ITALY
http://netgroup.uniroma2.it/Stefano_Salsano/
E-mail : stefano.salsano@uniroma2.it
Cell. : +39 320 4307310
Office : (Tel.) +39 06 72597770 (Fax.) +39 06 72597435
*******************************************************************
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2009-12-19 9:45 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-12-18 10:39 [PATCH] netem/iproute2 solving correlated loss issues [0/5] Stefano Salsano
2009-12-18 11:22 ` Fabio Ludovici
2009-12-19 4:04 ` David Miller
2009-12-19 9:45 ` Stefano Salsano
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).