* [uml-devel] What to do with uml_switch?
@ 2004-12-04 3:52 Blaisorblade
2004-12-05 3:42 ` [uml-devel] " Michael Richardson
` (2 more replies)
0 siblings, 3 replies; 15+ messages in thread
From: Blaisorblade @ 2004-12-04 3:52 UTC (permalink / raw)
To: Gerd Knorr, Steve Schmidtke, Felix Müri, Michael Richardson
Cc: Jeff Dike, user-mode-linux-devel
It is apparent that something is wrong with uml_switch (though I don't know
the code and I'm not going to express technical opinion, only "management"
one).
I've just seen about a dozen patches to Steve Schmidtke, two different
rewrites from Gerd and Felix, and a request from Michael to merge some code
(uml_netjig) from OpenSWAN/FreeSWAN (IIRC) into it; and it could be something
very interesting for SuSE customers, I think - I only know that Open/FreeSWAN
it's about VPN, nothing more - so maybe Gerd could be interested in this.
Michael, could you start posting it here, instead that to Jeff (maybe you did
and I didn't notice, if it was time ago, but now it's the moment to repost
it).
Felix, even if your newer code is not yet "releasable", it can help anyway...
even just describing the changes you did and why... design ideas are more
important than code itself sometimes.
Steve, merging at least the earlier of your patches (they are splitup The
Right Way(tm)) might be done soon, without lots of discussions.
If you feel so, you might split uml_switch from the rest (but remember the
user point of view - two packages doubles the setup time).
Anyway rename the uml_router folder to uml_switch, please... time to fix it!
Clearly, Jeff is current working on completely different things, and it's a
right thing for him to do - he is not the "I'll do everything about UML" boy,
and time is short.
It is not even the "UML dictator". So I asked him if someone else could take
over the maintainance of uml_switch, and he basically agreed.
The only doubt is:
1) he wants to appoint somebody he really trusts as the uml_switch maintainer.
2) I think that, within the UML community, there are enough experienced
developers that can work together and get it right themselves, even deciding
for a CVS development model, even because userspace code has different
stability requirements from kernelspace one (not that uml_switch can be
faulty, just it's easier to make it correct than with UML).
This, in the most abstract form, is a well-known debate - think to "The
Cathedral and The Bazaar" by Eric S. Raymond.
I was simply astonished when I read "Think to users as co-developers". I've
never been against that, but reading it so clearly explained made me think.
Now, I've not started distributing SKAS patches because someone told me to do
that. Ingo Molnar was working on it on incompatible ways, so I took his work
and made it backwards compatible, did some other cleanups and published it
all over. Then it become more and more serious... and one week ago Jeff said
"I've just been happy with you taking over the maintainership over it".
If you are good guys (and you are), I think you can sort out by discussing it
here (I'm just against the creation of a separate ML for that development -
things don't work that way).
So, the ball is over to you. In this moment, Gerd Knorr seems the one who has
the time and the position (working in SuSE) to manage it well (he can push
updates to its users and so on, for instance) but it's just my little 2
cents.
Or you might use our wiki (http://uml.harlowhill.com/) as distribution
center... how much of you didn't ever know it exists? Well, it being so
unknown is the biggest bug we experience now.
--
Paolo Giarrusso, aka Blaisorblade
Linux registered user n. 292729
http://www.user-mode-linux.org/~blaisorblade
-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://productguide.itmanagersjournal.com/
_______________________________________________
User-mode-linux-devel mailing list
User-mode-linux-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel
^ permalink raw reply [flat|nested] 15+ messages in thread* [uml-devel] Re: What to do with uml_switch?
2004-12-04 3:52 [uml-devel] What to do with uml_switch? Blaisorblade
@ 2004-12-05 3:42 ` Michael Richardson
2004-12-06 19:25 ` Gerd Knorr
2004-12-05 20:00 ` [uml-devel] " Steve Schmidtke
2004-12-08 20:24 ` [uml-devel] " Felix Müri
2 siblings, 1 reply; 15+ messages in thread
From: Michael Richardson @ 2004-12-05 3:42 UTC (permalink / raw)
To: Blaisorblade
Cc: Gerd Knorr, Steve Schmidtke, Felix Müri, Jeff Dike,
user-mode-linux-devel
-----BEGIN PGP SIGNED MESSAGE-----
>>>>> "Blaisorblade" == Blaisorblade <blaisorblade_spam@yahoo.it> writes:
Blaisorblade> Michael, could you start posting it here, instead that
Blaisorblade> to Jeff (maybe you did and I didn't notice, if it was
Blaisorblade> time ago, but now it's the moment to repost it).
I can repost it if you like.
Give me a day to find my patches again.
uml_netjig is a tool which does the following:
1) moves packets using "daemon" mode a la uml_switch.
2) has an expect-friendly command line interface
3) can create *multiple* switches and keep them seperate
4) can record all packets to a .pcap file
5) can play packets from a .pcap file at a given rate
(or under command line interface control)
6) can optionally answer ARP queries for imaginary nodes.
7) can talk to tuntap device(s) as uml_switch could.
My patches refactor uml_switch to get uml_netjig + uml_switch'
Blaisorblade> Felix, even if your newer code is not yet
Blaisorblade> "releasable", it can help anyway... even just
Blaisorblade> describing the changes you did and why... design ideas
Blaisorblade> are more important than code itself sometimes.
Please tell me what your code does...
Blaisorblade> Steve, merging at least the earlier of your patches
Blaisorblade> (they are splitup The Right Way(tm)) might be done
Blaisorblade> soon, without lots of discussions.
I have a lot of refactoring patches.
I am willing to spend the time getting consensus among people who
have done other things, and integrating their patches with mine.
See http://www.sandelman.ottawa.on.ca/SSW/freeswan/fsumltesting/
for an OLS paper on how uml_netjig was (and continues to be) used.
We invoke about 170 tests every night on the Openswan code base.
some use as many as 7 UMLs connected via uml_netjig to get the job
done.
- --
] ON HUMILITY: to err is human. To moo, bovine. | firewalls [
] Michael Richardson, Xelerance Corporation, Ottawa, ON |net architect[
] mcr@xelerance.com http://www.sandelman.ottawa.on.ca/mcr/ |device driver[
] panic("Just another Debian GNU/Linux using, kernel hacking, security guy"); [
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.2 (GNU/Linux)
Comment: Finger me for keys
iQCVAwUBQbKDsoqHRg3pndX9AQHAlQP8COxACR4RJFG6lvmhyGTwU0AVi0Xnm53k
1fVm6EfEhXid/vde5RbzM1aoKqA9fCOWJ5GyCVZltNxr1S8P9nuHb9UK7BkNQUKd
ezbjPZ55irSn+yonyOwT/ljHbzh/lFd5kxO5BmregjoRZdOUtqXfHAqQupX6lBix
XJiG4UVo5pk=
=wYSb
-----END PGP SIGNATURE-----
-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://productguide.itmanagersjournal.com/
_______________________________________________
User-mode-linux-devel mailing list
User-mode-linux-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel
^ permalink raw reply [flat|nested] 15+ messages in thread* [uml-devel] Re: What to do with uml_switch?
2004-12-05 3:42 ` [uml-devel] " Michael Richardson
@ 2004-12-06 19:25 ` Gerd Knorr
2004-12-07 16:21 ` Steve Schmidtke
2004-12-08 16:51 ` Michael Richardson
0 siblings, 2 replies; 15+ messages in thread
From: Gerd Knorr @ 2004-12-06 19:25 UTC (permalink / raw)
To: Michael Richardson
Cc: Blaisorblade, Steve Schmidtke, Felix Müri, Jeff Dike,
user-mode-linux-devel
> uml_netjig is a tool which does the following:
>
> 1) moves packets using "daemon" mode a la uml_switch.
> 2) has an expect-friendly command line interface
Sounds ok.
> 3) can create *multiple* switches and keep them seperate
Hmm, not sure I like that idea. Is this with vlan tagging support?
How can this be configured? Is the command mode the only way, or can
you also use some config file or command line switches for that?
> 4) can record all packets to a .pcap file
> 5) can play packets from a .pcap file at a given rate
> (or under command line interface control)
> 6) can optionally answer ARP queries for imaginary nodes.
Hmm, I don't think it is a good idea to put that kind of testing code
into the switch daemon. I'd make the switch daemon behave as close as
possible to a real switch, then use the normal tools you use for real
networks as well. I think uml_switch should just support a monitor port
which will see all traffic (even the switched one), that is the usual
way how it's done on physical hardware.
(4) may make sense neverless, to avoid packages being lost on load
peaks.
(5) + (6) I'd keep separated for sure. Can be done by either some
separate utility which connects to the switch daemon the same way the
uml machines do that, and then injects the packets / answers arp and so
on (probably the better option for test runs). Or just connect the
switch daemon via tuntap device and setup proxy-arp on the host machine
to simulate the imaginary nodes, and also inject packets via tuntap
network interface.
Gerd
--
#define printk(args...) fprintf(stderr, ## args)
-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://productguide.itmanagersjournal.com/
_______________________________________________
User-mode-linux-devel mailing list
User-mode-linux-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel
^ permalink raw reply [flat|nested] 15+ messages in thread
* [uml-devel] Re: What to do with uml_switch?
2004-12-06 19:25 ` Gerd Knorr
@ 2004-12-07 16:21 ` Steve Schmidtke
2004-12-08 16:51 ` Michael Richardson
1 sibling, 0 replies; 15+ messages in thread
From: Steve Schmidtke @ 2004-12-07 16:21 UTC (permalink / raw)
To: kraxel, mcr; +Cc: blaisorblade_spam, uml, jdike, user-mode-linux-devel
Gerd Knorr wrote:
> > 3) can create *multiple* switches and keep them seperate
>
>Hmm, not sure I like that idea. Is this with vlan tagging support?
>How can this be configured? Is the command mode the only way, or can
>you also use some config file or command line switches for that?
I thought about adding vlan support, but then realized if I wasn't going to
code up some sort of multi-membership system (union ports?), it would be
simpler just to run multiple uml_switches. It should be obvious I don't
know what I'm talking about, so I left it alone. :)
> > 4) can record all packets to a .pcap file
> > 5) can play packets from a .pcap file at a given rate
> > (or under command line interface control)
> > 6) can optionally answer ARP queries for imaginary nodes.
>
>Hmm, I don't think it is a good idea to put that kind of testing code
>into the switch daemon. I'd make the switch daemon behave as close as
>possible to a real switch, then use the normal tools you use for real
>networks as well. I think uml_switch should just support a monitor port
>which will see all traffic (even the switched one), that is the usual
>way how it's done on physical hardware.
I'm eating my own dog food (since I too suggested a monitor port), and I've
coded up a framework for doing just that. I need to test it more before
submitting a patch for review and comment.
Steve Schmidtke
-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://productguide.itmanagersjournal.com/
_______________________________________________
User-mode-linux-devel mailing list
User-mode-linux-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [uml-devel] Re: What to do with uml_switch?
2004-12-06 19:25 ` Gerd Knorr
2004-12-07 16:21 ` Steve Schmidtke
@ 2004-12-08 16:51 ` Michael Richardson
2004-12-08 19:33 ` Gerd Knorr
2004-12-08 19:36 ` Steve Schmidtke
1 sibling, 2 replies; 15+ messages in thread
From: Michael Richardson @ 2004-12-08 16:51 UTC (permalink / raw)
To: Gerd Knorr
Cc: Blaisorblade, Steve Schmidtke, Felix Müri, Jeff Dike,
user-mode-linux-devel
-----BEGIN PGP SIGNED MESSAGE-----
>>>>> "Gerd" == Gerd Knorr <kraxel@bytesex.org> writes:
>> 3) can create *multiple* switches and keep them seperate
Gerd> Hmm, not sure I like that idea. Is this with vlan tagging
Gerd> support? How can this be configured? Is the command mode the
Gerd> only way, or can you also use some config file or command line
Gerd> switches for that?
No VLANs.
It creates multiple sockets, and you tell the UML(s) about the multiple
interfaces.
Please read the mentione paper.
Gerd> Hmm, I don't think it is a good idea to put that kind of
Gerd> testing code into the switch daemon. I'd make the switch
Gerd> daemon behave as close as possible to a real switch, then use
Gerd> the normal tools you use for real networks as well. I think
Gerd> uml_switch should just support a monitor port which will see
Not practical, not reliable.
Often, not even possible if you wish to play packets that Linux simply
can not easily produce.
Secondly, I do not put these things into uml_switch.
Rather, I *refactor* things so that uml_switch and uml_netjig share
back end code. uml_switch has none of the above things, only the same
port.c code.
- --
] ON HUMILITY: to err is human. To moo, bovine. | firewalls [
] Michael Richardson, Xelerance Corporation, Ottawa, ON |net architect[
] mcr@xelerance.com http://www.sandelman.ottawa.on.ca/mcr/ |device driver[
] panic("Just another Debian GNU/Linux using, kernel hacking, security guy"); [
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.2 (GNU/Linux)
Comment: Finger me for keys
iQCVAwUBQbcxHYqHRg3pndX9AQG3/gQAx6XsUJv3AcpqG/c7ZWPFJzZZhXILAmS4
VT1mpY3GS2BZNFEiPhaxoA9tEb1vxWiJtWhe5yGxa/oh0iy4ESp22gPlQDN/p4Iv
bwaW+CxJHE6tVi61ybdaI/9qVrWxBlzZ0CVVuTZBNuonYRQwIn15hn1JlOcahxGB
ov0jytcoSQE=
=Fj0A
-----END PGP SIGNATURE-----
-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://productguide.itmanagersjournal.com/
_______________________________________________
User-mode-linux-devel mailing list
User-mode-linux-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel
^ permalink raw reply [flat|nested] 15+ messages in thread* Re: [uml-devel] Re: What to do with uml_switch?
2004-12-08 16:51 ` Michael Richardson
@ 2004-12-08 19:33 ` Gerd Knorr
2004-12-09 3:22 ` Michael Richardson
2004-12-08 19:36 ` Steve Schmidtke
1 sibling, 1 reply; 15+ messages in thread
From: Gerd Knorr @ 2004-12-08 19:33 UTC (permalink / raw)
To: Michael Richardson
Cc: Blaisorblade, Steve Schmidtke, Felix Müri, Jeff Dike,
user-mode-linux-devel
> Gerd> Hmm, not sure I like that idea. Is this with vlan tagging
> Gerd> support? How can this be configured? Is the command mode the
> Gerd> only way, or can you also use some config file or command line
> Gerd> switches for that?
>
> No VLANs.
Would be cool I think, so you could debug vlan code in the kernel using
uml for example.
> It creates multiple sockets, and you tell the UML(s) about the multiple
> interfaces.
That is clear. How to you tell uml_switch which sockets it should
create?
> Please read the mentione paper.
I've looked at it, it doesn't answer the configuration question through.
Your openswan test setup seems to use command mode. It's not clear
whenever that is the only way to do it. It shouldn't, for running tests
that likely is perfect, but for other applications I just want a static
configuration and uml_switch shouldn't wait for commands on stdin/out.
> Secondly, I do not put these things into uml_switch.
> Rather, I *refactor* things so that uml_switch and uml_netjig share
> back end code. uml_switch has none of the above things, only the same
> port.c code.
Oh, so for uml_netjig you just link in some more some object files which
do the arp answering, packet injection and so on? That wasn't clear to
me. This makes much more sense ...
Gerd
--
#define printk(args...) fprintf(stderr, ## args)
-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://productguide.itmanagersjournal.com/
_______________________________________________
User-mode-linux-devel mailing list
User-mode-linux-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [uml-devel] Re: What to do with uml_switch?
2004-12-08 19:33 ` Gerd Knorr
@ 2004-12-09 3:22 ` Michael Richardson
0 siblings, 0 replies; 15+ messages in thread
From: Michael Richardson @ 2004-12-09 3:22 UTC (permalink / raw)
To: Gerd Knorr
Cc: Blaisorblade, Steve Schmidtke, Felix Müri, Jeff Dike,
user-mode-linux-devel
-----BEGIN PGP SIGNED MESSAGE-----
>>>>> "Gerd" == Gerd Knorr <kraxel@bytesex.org> writes:
Gerd> Hmm, not sure I like that idea. Is this with vlan tagging
Gerd> support? How can this be configured? Is the command mode the
Gerd> only way, or can you also use some config file or command line
Gerd> switches for that?
>> No VLANs.
Gerd> Would be cool I think, so you could debug vlan code in the
Gerd> kernel using uml for example.
Having uml_switch decode vlan tags, and split it up into multiple
logical switches, would certainly be possible.
The log-to-pcap file might also be interesting if it could log
specific tags to specific files. That would certainly permit very easy
regression testing.
(And you don't want to use the VLAN code in the kernel to test the
vlan code in the kernel...)
>> Secondly, I do not put these things into uml_switch. Rather, I
>> *refactor* things so that uml_switch and uml_netjig share back
>> end code. uml_switch has none of the above things, only the same
>> port.c code.
Gerd> Oh, so for uml_netjig you just link in some more some object
Gerd> files which do the arp answering, packet injection and so on?
Gerd> That wasn't clear to me. This makes much more sense ...
Yes.
The idea is that uml_switch doesn't change.
Adding a bazillion command line switches seemed to be a loss to me.
No doubt some have gotten bit by being unable to use mcast between
UMLs while, on say, a train. lo isn't multicast capable (at least on 2.4
host, I don't know about 2.6), and sticking in a network card just to
get multicast seems silly.
We have a script called "localswitches", which invokes uml_netjig
under expect, and then invokes the appropriate UMLs, with the right
environment variables. The environment variables are clearly a bit
locally relevant, since they get plugged into the UML command line(s).
marajade-[nightly/testing/pluto/basic-pluto-06] mcr 1027 %localswitches east west
...
spawn /mara4/openswan-2/nightly/testing/utils/uml_netjig/uml_netjig --cmdproto -t
OK netjig>NEWSWITCH north
OK 3 LINES
ARPREPLY=0
UML_north_CTL=/tmp/umlyntoYX.d/north/ctl
UML_north_DATA=/tmp/umlyntoYX.d/north/data
OK netjig>NEWSWITCH south
OK 3 LINES
ARPREPLY=0
UML_south_CTL=/tmp/umlyntoYX.d/south/ctl
UML_south_DATA=/tmp/umlyntoYX.d/south/data
OK netjig>NEWSWITCH northpublic
OK 3 LINES
ARPREPLY=0
UML_northpublic_CTL=/tmp/umlyntoYX.d/northpublic/ctl
UML_northpublic_DATA=/tmp/umlyntoYX.d/northpublic/data
OK netjig>NEWSWITCH southpublic
OK 3 LINES
ARPREPLY=0
UML_southpublic_CTL=/tmp/umlyntoYX.d/southpublic/ctl
UML_southpublic_DATA=/tmp/umlyntoYX.d/southpublic/data
OK netjig>NEWSWITCH east
OK 3 LINES
ARPREPLY=0
UML_east_CTL=/tmp/umlyntoYX.d/east/ctl
UML_east_DATA=/tmp/umlyntoYX.d/east/data
OK netjig>NEWSWITCH west
OK 3 LINES
ARPREPLY=0
UML_west_CTL=/tmp/umlyntoYX.d/west/ctl
UML_west_DATA=/tmp/umlyntoYX.d/west/data
OK netjig>NEWSWITCH public
OK 3 LINES
ARPREPLY=0
UML_public_CTL=/tmp/umlyntoYX.d/public/ctl
UML_public_DATA=/tmp/umlyntoYX.d/public/data
OK netjig>NEWSWITCH admin
OK 3 LINES
ARPREPLY=0
UML_admin_CTL=/tmp/umlyntoYX.d/admin/ctl
UML_admin_DATA=/tmp/umlyntoYX.d/admin/data
OK netjig>
- --
] ON HUMILITY: to err is human. To moo, bovine. | firewalls [
] Michael Richardson, Xelerance Corporation, Ottawa, ON |net architect[
] mcr@xelerance.com http://www.sandelman.ottawa.on.ca/mcr/ |device driver[
] panic("Just another Debian GNU/Linux using, kernel hacking, security guy"); [
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.2 (GNU/Linux)
Comment: Finger me for keys
iQCVAwUBQbfFEIqHRg3pndX9AQFTKQP+I29St4Vr/2jOOLtLjRKCsULLF13q+IZR
Nws422J1sXbdmTsSxBEbjS0zhbRiXYqZmP8Q11G4oHxEC+zz8JPuYgU2XsfEnKhk
oDsuk89evlOgRkx3zo3S+iIbCA1gikdiiB7z3XVpGn31qmon6IJNuXlamoqjzjxd
9jAM9lu8r9A=
=c2Fv
-----END PGP SIGNATURE-----
-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://productguide.itmanagersjournal.com/
_______________________________________________
User-mode-linux-devel mailing list
User-mode-linux-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [uml-devel] Re: What to do with uml_switch?
2004-12-08 16:51 ` Michael Richardson
2004-12-08 19:33 ` Gerd Knorr
@ 2004-12-08 19:36 ` Steve Schmidtke
2004-12-08 21:37 ` Michael Richardson
1 sibling, 1 reply; 15+ messages in thread
From: Steve Schmidtke @ 2004-12-08 19:36 UTC (permalink / raw)
To: mcr, kraxel; +Cc: blaisorblade_spam, uml, jdike, user-mode-linux-devel
Michael Richardson wrote:
> Gerd> Hmm, I don't think it is a good idea to put that kind of
> Gerd> testing code into the switch daemon. I'd make the switch
> Gerd> daemon behave as close as possible to a real switch, then use
> Gerd> the normal tools you use for real networks as well. I think
> Gerd> uml_switch should just support a monitor port which will see
>
> Not practical, not reliable.
Why not reliable? A monitor port is a diagnostic tool, and there is no
reason you couldn't run it in a sychronous mode with the switch, i.e. the
switch is paused as the monitor inspects an IO event (an input packet) and
either allows it to proceed or be modified in some way (replaced, dropped,
etc).
I will agree that it wouldn't be fit for all purposes. There is obviously a
delay as a packet must be written to the monitor app for inspection, a
context switch to the monitor, an ACK written from the monitor, a context
switch back, and the ACK processed, before a packet can be disposed of.
Does that make a monitor port impractical? I don't think so. The real
world delay I've been seeing so far on my test monitor doing just that for
ping round trip times is less than a millisecond. I havn't tried larger
packets yet.
On the other hand, once the monitor has ACK'd a packet, the switch and
monitor app are free to continue processing independently, possibly reducing
overall delay times.
> Often, not even possible if you wish to play packets that Linux simply
>can not easily produce.
There is no reason you would need to use Linux as your packet source:
cat tcpdump.pcap | switch_mon_tool --socket /tmp/uml.mon --delay 100ms
is the type of functionality I'm shooting for (above example not to be taken
literally).
Steve Schmidtke
-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://productguide.itmanagersjournal.com/
_______________________________________________
User-mode-linux-devel mailing list
User-mode-linux-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [uml-devel] Re: What to do with uml_switch?
2004-12-08 19:36 ` Steve Schmidtke
@ 2004-12-08 21:37 ` Michael Richardson
2004-12-09 0:28 ` Steve Schmidtke
0 siblings, 1 reply; 15+ messages in thread
From: Michael Richardson @ 2004-12-08 21:37 UTC (permalink / raw)
To: Steve Schmidtke
Cc: kraxel, blaisorblade_spam, uml, jdike, user-mode-linux-devel
-----BEGIN PGP SIGNED MESSAGE-----
>>>>> "Steve" == Steve Schmidtke <steve_schmidtke@hotmail.com> writes:
Gerd> Hmm, I don't think it is a good idea to put that kind of
Gerd> testing code into the switch daemon. I'd make the switch
Gerd> daemon behave as close as possible to a real switch, then use
Gerd> the normal tools you use for real networks as well. I think
Gerd> uml_switch should just support a monitor port which will see
>> Not practical, not reliable.
Steve> Why not reliable? A monitor port is a diagnostic tool, and
What would I connect to the monitor port? Another UML?
This is the part that isn't practical.
My test cases sometimes have as many as 7 networks. Remember that we
have 170 test cases, and growing. Remember that we may have packets akin
to "ping-of-death", that may cause the Linux network stack to "oops".
(this isn't a good, but that's the point of regression tests... is to
make sure that old bugs do not get re-introduced)
So, we have to start the UMLs for each test, as they may have died.
To make it simple, we start/stop all of the UMLs each time.
The reason for having the ability to capture and play-back pcap files
in the uml_netjig is to eliminate the need to run as many UMLs.
Steve> There is no reason you would need to use Linux as your packet
Steve> source:
Steve> cat tcpdump.pcap | switch_mon_tool --socket /tmp/uml.mon
Steve> --delay 100ms
Steve> is the type of functionality I'm shooting for (above example
Steve> not to be taken literally).
Great. That works for 1 network.
Now, how do you replay packets where you need an actual time sequence
diagram to make it work? I.e.
- send packet A on network 1
- send packet B on network 2
- send packet C on network 1
- send packet D on network 2
In most cases, we have found round-robin amount input sources works
well, but in that we are disappointed with.
Further, remember that you may want to single step the packet sources,
because, you may spend *HOURS* in the debugger (with the UML in
question). That's hard with the method you proposed.
- --
] ON HUMILITY: to err is human. To moo, bovine. | firewalls [
] Michael Richardson, Xelerance Corporation, Ottawa, ON |net architect[
] mcr@xelerance.com http://www.sandelman.ottawa.on.ca/mcr/ |device driver[
] panic("Just another Debian GNU/Linux using, kernel hacking, security guy"); [
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.2 (GNU/Linux)
Comment: Finger me for keys
iQCVAwUBQbd0NIqHRg3pndX9AQEZFgQA5vDKTWQviO9NSLr9Y6Pkvq23KQbWPop2
GyR04q/ALPlMSbdPqsJfHFsqCXLZF/gmftZH6Cp52XpXX4AO7+7x47aUDG7SW2ug
WxYjBJVqHBgBSJQNHkpcXwswqJPV4fidMyiN0X60PtmW+o6hMa/NXr9LPFcElwVw
FiEFd3ONQ7U=
=F82m
-----END PGP SIGNATURE-----
-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://productguide.itmanagersjournal.com/
_______________________________________________
User-mode-linux-devel mailing list
User-mode-linux-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel
^ permalink raw reply [flat|nested] 15+ messages in thread* Re: [uml-devel] Re: What to do with uml_switch?
2004-12-08 21:37 ` Michael Richardson
@ 2004-12-09 0:28 ` Steve Schmidtke
2004-12-09 0:53 ` Michael Richardson
0 siblings, 1 reply; 15+ messages in thread
From: Steve Schmidtke @ 2004-12-09 0:28 UTC (permalink / raw)
To: mcr; +Cc: kraxel, blaisorblade_spam, uml, jdike, user-mode-linux-devel
Michael Richardson wrote:
> >> Not practical, not reliable.
>
> Steve> Why not reliable? A monitor port is a diagnostic tool, and
>
> What would I connect to the monitor port? Another UML?
A program that can inspect and/or create packets -- uml_netjig but with a
modular API.
> Steve> cat tcpdump.pcap | switch_mon_tool --socket /tmp/uml.mon
> Steve> --delay 100ms
>
> Steve> is the type of functionality I'm shooting for (above example
> Steve> not to be taken literally).
>
> Great. That works for 1 network.
>
> Now, how do you replay packets where you need an actual time sequence
>diagram to make it work? I.e.
> - send packet A on network 1
> - send packet B on network 2
> - send packet C on network 1
> - send packet D on network 2
Thinking out loud, I envision somone being able to write a monitor app that
would allow a session like this:
host:$> vmon_switch -i
Welcome to vapour_monitor version -0.01
Interactive mode ready.
> verbose
verbose mode on.
> connect swA /tmp/uml.mon1
swA connected ok.
> connect swB /tmp/uml.mon2
swB connected ok.
> connect swC /tmp/uml.mo3
swC connect failed: /tmp/uml.mo3
> connect swC /tmp/uml.mon3
swC connected ok.
> pcap source infile tcpdump.pcap
infile opened for reading ok. infile record: 1
> pcap dest outfile traffic.pcap
outfile opened for writing ok.
> pcap dump swA outfile
dumping switch swA, sending to outfile.
> pcap single input swA
1 packets to switch swA ok. infile record 2.
> pcap single input swB
1 packets to switch swB ok. infile record 3.
> pcap close outfile
outfile closed, 10 packets.
> pcap rewind infile
infile record 1.
> pcap single infile swC
1 packets to switch swC ok. infile record 2.
** EOF from swA **
> pcap delay 100 ms
send interval set to 100 milliseconds
> pcap send infile swC
..... 5 packets to switch swC ok. input position 7.
> quit
vapour_monitor Exiting...
host:$> tcpdump -n -r traffic.pcap
I put way too much time and effort into that example, but it was useful to
think through. The point is, a port allows the complexity of diagnostic
code and traffic analysis to reside externally in the monitor app, and not
be coded in the switch (the flip side is that the monitor apps don't have to
know how the switch works). If "switch_mon_tool" is unsuitable, it can be
replaced by "vmon_switch" in a heartbeat -- without modifying or even
restarting uml_switch.
Steve Schmidtke
-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://productguide.itmanagersjournal.com/
_______________________________________________
User-mode-linux-devel mailing list
User-mode-linux-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [uml-devel] Re: What to do with uml_switch?
2004-12-09 0:28 ` Steve Schmidtke
@ 2004-12-09 0:53 ` Michael Richardson
0 siblings, 0 replies; 15+ messages in thread
From: Michael Richardson @ 2004-12-09 0:53 UTC (permalink / raw)
To: Steve Schmidtke
Cc: kraxel, blaisorblade_spam, uml, jdike, user-mode-linux-devel
-----BEGIN PGP SIGNED MESSAGE-----
>>>>> "Steve" == Steve Schmidtke <steve_schmidtke@hotmail.com> writes:
Steve> Thinking out loud, I envision somone being able to write a
Steve> monitor app that would allow a session like this:
Okay, this is done already :-)
- --
] ON HUMILITY: to err is human. To moo, bovine. | firewalls [
] Michael Richardson, Xelerance Corporation, Ottawa, ON |net architect[
] mcr@xelerance.com http://www.sandelman.ottawa.on.ca/mcr/ |device driver[
] panic("Just another Debian GNU/Linux using, kernel hacking, security guy"); [
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.2 (GNU/Linux)
Comment: Finger me for keys
iQCVAwUBQbeh+oqHRg3pndX9AQGdqgQArmXb6Ha863CRyUfrgJPdK3LLBRfNfRmS
1dnfbu5GJbv9RoLtgazQ9PYA9JKqO9jjrMdrkze+zsxwztprMlQSDBWaLtotW5vW
KUFRRCc09xUXszVBWG4F+DdryaclRqhiYVLPj3IFPMm+7boWuYqCZVdhHngD/VMm
ItoUPSb1QGw=
=O5Yg
-----END PGP SIGNATURE-----
-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://productguide.itmanagersjournal.com/
_______________________________________________
User-mode-linux-devel mailing list
User-mode-linux-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel
^ permalink raw reply [flat|nested] 15+ messages in thread
* [uml-devel] RE: What to do with uml_switch?
2004-12-04 3:52 [uml-devel] What to do with uml_switch? Blaisorblade
2004-12-05 3:42 ` [uml-devel] " Michael Richardson
@ 2004-12-05 20:00 ` Steve Schmidtke
2004-12-06 18:30 ` [uml-devel] " Gerd Knorr
2004-12-06 19:35 ` [uml-devel] " Blaisorblade
2004-12-08 20:24 ` [uml-devel] " Felix Müri
2 siblings, 2 replies; 15+ messages in thread
From: Steve Schmidtke @ 2004-12-05 20:00 UTC (permalink / raw)
To: blaisorblade_spam, kraxel, uml, mcr; +Cc: jdike, user-mode-linux-devel
Blaisorblade wrote:
>It is apparent that something is wrong with uml_switch (though I don't know
>the code and I'm not going to express technical opinion, only "management"
>one).
Yes, the fact that a core file has sat in the directory for almost 2 years
says something. :)
>Steve, merging at least the earlier of your patches (they are splitup The
>Right Way(tm)) might be done soon, without lots of discussions.
Thanks. I havn't noticed any problems with the changes I've made so far.
>If you feel so, you might split uml_switch from the rest (but remember the
>user point of view - two packages doubles the setup time).
Who is this directed to? Who is the maintainer at the moment anyways?
>If you are good guys (and you are), I think you can sort out by discussing
>it
>here (I'm just against the creation of a separate ML for that development -
>things don't work that way).
>
>So, the ball is over to you. In this moment, Gerd Knorr seems the one who
>has
>the time and the position (working in SuSE) to manage it well (he can push
>updates to its users and so on, for instance) but it's just my little 2
>cents.
I'd be happy with Gerd as maintainer. I'd nominate myself, but I have no
system that I can dedicate to the project. I also have a hard time saying
no to interesting ideas.
Steve Schmidtke
-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://productguide.itmanagersjournal.com/
_______________________________________________
User-mode-linux-devel mailing list
User-mode-linux-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel
^ permalink raw reply [flat|nested] 15+ messages in thread
* [uml-devel] Re: What to do with uml_switch?
2004-12-05 20:00 ` [uml-devel] " Steve Schmidtke
@ 2004-12-06 18:30 ` Gerd Knorr
2004-12-06 19:35 ` [uml-devel] " Blaisorblade
1 sibling, 0 replies; 15+ messages in thread
From: Gerd Knorr @ 2004-12-06 18:30 UTC (permalink / raw)
To: Steve Schmidtke; +Cc: blaisorblade_spam, uml, mcr, jdike, user-mode-linux-devel
> >So, the ball is over to you. In this moment, Gerd Knorr seems the one
> >who has the time and the position (working in SuSE) to manage it well
> >(he can push updates to its users and so on, for instance) but it's
> >just my little 2 cents.
I wish I had more time for uml. uml isn't the only project I'm working
on, and in the end it's just shifting priorities. Time I spend on UML I
have to take away somewhere else ...
> I'd nominate myself,
Just go ahead ;)
Gerd
--
#define printk(args...) fprintf(stderr, ## args)
-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://productguide.itmanagersjournal.com/
_______________________________________________
User-mode-linux-devel mailing list
User-mode-linux-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [uml-devel] RE: What to do with uml_switch?
2004-12-05 20:00 ` [uml-devel] " Steve Schmidtke
2004-12-06 18:30 ` [uml-devel] " Gerd Knorr
@ 2004-12-06 19:35 ` Blaisorblade
1 sibling, 0 replies; 15+ messages in thread
From: Blaisorblade @ 2004-12-06 19:35 UTC (permalink / raw)
To: user-mode-linux-devel; +Cc: Steve Schmidtke, kraxel, uml, mcr, jdike
On Sunday 05 December 2004 21:00, Steve Schmidtke wrote:
> Blaisorblade wrote:
> >It is apparent that something is wrong with uml_switch (though I don't
> > know the code and I'm not going to express technical opinion, only
> > "management" one).
> Yes, the fact that a core file has sat in the directory for almost 2 years
> says something. :)
> >Steve, merging at least the earlier of your patches (they are splitup The
> >Right Way(tm)) might be done soon, without lots of discussions.
> Thanks. I havn't noticed any problems with the changes I've made so far.
> >If you feel so, you might split uml_switch from the rest (but remember the
> >user point of view - two packages doubles the setup time).
> Who is this directed to? Who is the maintainer at the moment anyways?
It's (un)maintained by Jeff Dike, i.e. he's the last one updating the version
on sf.net (you might call that "official version" - but I'm against the
"official version" concept). Actually, you can guess he has no time to do
anything else than bugfixes on it. We haven't yet managed to build one single
2.4 up-to-date UML tree (i.e. with both *all* security fixes and the work
against 2.6.9 host). Currently probably the stablest version seems to be one
of the 2.6.9 incarnations (either it or -bb4).
> >If you are good guys (and you are), I think you can sort out by discussing
> >it
> >here (I'm just against the creation of a separate ML for that development
> > - things don't work that way).
> >So, the ball is over to you. In this moment, Gerd Knorr seems the one who
> >has
> >the time and the position (working in SuSE) to manage it well (he can push
> >updates to its users and so on, for instance) but it's just my little 2
> >cents.
> I'd be happy with Gerd as maintainer. I'd nominate myself, but I have no
> system that I can dedicate to the project. I also have a hard time saying
> no to interesting ideas.
Which is bad about stability... however you share that with Jeff Dike, it
seems :-)
> Steve Schmidtke
--
Paolo Giarrusso, aka Blaisorblade
Linux registered user n. 292729
http://www.user-mode-linux.org/~blaisorblade
-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://productguide.itmanagersjournal.com/
_______________________________________________
User-mode-linux-devel mailing list
User-mode-linux-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [uml-devel] What to do with uml_switch?
2004-12-04 3:52 [uml-devel] What to do with uml_switch? Blaisorblade
2004-12-05 3:42 ` [uml-devel] " Michael Richardson
2004-12-05 20:00 ` [uml-devel] " Steve Schmidtke
@ 2004-12-08 20:24 ` Felix Müri
2 siblings, 0 replies; 15+ messages in thread
From: Felix Müri @ 2004-12-08 20:24 UTC (permalink / raw)
To: Blaisorblade, User-mode-linux-devel
Blaisorblade schrieb:
> Felix, even if your newer code is not yet "releasable", it can help anyway...
> even just describing the changes you did and why... design ideas are more
> important than code itself sometimes.
>
Hi Paolo, I found finally some time to summarize my ideas. You
can find some blurb on
http://www.uxu.ch/uxu/software/umls3_reasoning
My target is more an alternative of umlazi written as C-program
with an integrated uml_switch (but I doubt, that I will be
diligent enough to write an equivalent homepage for my program
:-). So there is still the need for a simple uml_switch program.
Regards,
Felix
-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://productguide.itmanagersjournal.com/
_______________________________________________
User-mode-linux-devel mailing list
User-mode-linux-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel
^ permalink raw reply [flat|nested] 15+ messages in thread
end of thread, other threads:[~2004-12-09 3:23 UTC | newest]
Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-12-04 3:52 [uml-devel] What to do with uml_switch? Blaisorblade
2004-12-05 3:42 ` [uml-devel] " Michael Richardson
2004-12-06 19:25 ` Gerd Knorr
2004-12-07 16:21 ` Steve Schmidtke
2004-12-08 16:51 ` Michael Richardson
2004-12-08 19:33 ` Gerd Knorr
2004-12-09 3:22 ` Michael Richardson
2004-12-08 19:36 ` Steve Schmidtke
2004-12-08 21:37 ` Michael Richardson
2004-12-09 0:28 ` Steve Schmidtke
2004-12-09 0:53 ` Michael Richardson
2004-12-05 20:00 ` [uml-devel] " Steve Schmidtke
2004-12-06 18:30 ` [uml-devel] " Gerd Knorr
2004-12-06 19:35 ` [uml-devel] " Blaisorblade
2004-12-08 20:24 ` [uml-devel] " Felix Müri
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.