All of lore.kernel.org
 help / color / mirror / Atom feed
* when IPVS into netfilter?
@ 2003-05-03 23:08 Xose Vazquez Perez
  2003-05-10 11:29 ` Roberto Nibali
  0 siblings, 1 reply; 7+ messages in thread
From: Xose Vazquez Perez @ 2003-05-03 23:08 UTC (permalink / raw)
  To: netfilter-devel

hi,

Are there some possibility to IPVS Netfilter
( http://www.linuxvirtualserver.org )
module for it can go into iptable 2.4.xx code?

-thanks-

regards,
-- 
Galiza nin perdoa nin esquence. Governo demision!

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: when IPVS into netfilter?
  2003-05-03 23:08 when IPVS into netfilter? Xose Vazquez Perez
@ 2003-05-10 11:29 ` Roberto Nibali
  2003-05-11 20:04   ` Xose Vazquez Perez
  0 siblings, 1 reply; 7+ messages in thread
From: Roberto Nibali @ 2003-05-10 11:29 UTC (permalink / raw)
  To: Xose Vazquez Perez; +Cc: netfilter-devel

Hello,

I hope the netfilter people do not mind if I answer this on behalf of 
the LVS project.

> Are there some possibility to IPVS Netfilter
> ( http://www.linuxvirtualserver.org )
> module for it can go into iptable 2.4.xx code?

I think not for 2.4.x because we're changing too much of the 
netfilter/routing code to make it a smooth and acceptable merge. There 
is also some code most people use which is completely not acceptable 
within the scope of routing extensions (like the hidden patch or some 
DGD code).

For 2.5 it is already too late, feature freeze was already called in and 
we haven't talked to the netfilter people anyways ;).

I'm going to talk to Harald about it this coming OLS (once again), 
provided he's got enough time. It's on my BoF list actually; for more 
information please check out the .plan:

http://marc.theaimsgroup.com/?l=linux-virtual-server&m=104756133813089&w=2

Another point is that we (Wensong the most) never felt the urge to 
submit the code to the networking maintainers for approval and 
inclusion. At OLS 2000, Wensong, Horms, Rusty, me and some others talked 
about a possible inclusion of LVS into netfilter. It simply never 
happened because noone felt about doing more than talking of it.

Yet another point is that we never really agreed on having someone being 
the lead developer and responsible for a possible kernel inclusion and 
most of us simply do not have the time to be a maintainer. It's a tough 
and time consuming job even if the code works for 99.999% of the people.

You have to talk to other involved parties, you have to monitor API 
changes and you will need to be responsive to an increasing amount of 
emails addressed directly to you (for example package responsibles for a 
distribution), because you're in the MAINTAINERS list.

Last but not least it is pretty easy to patch your kernel with LVS, 
There are as few as possible changes to the existing code, most of the 
patch is in form of additional code.

 > --
 > Galiza nin perdoa nin esquence. Governo demision!

:) Fair enough.

Best regards,
Roberto Nibali, ratz
-- 
echo '[q]sa[ln0=aln256%Pln256/snlbx]sb3135071790101768542287578439snlbxq'|dc

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: when IPVS into netfilter?
  2003-05-10 11:29 ` Roberto Nibali
@ 2003-05-11 20:04   ` Xose Vazquez Perez
  2003-05-20  7:42     ` Roberto Nibali
  0 siblings, 1 reply; 7+ messages in thread
From: Xose Vazquez Perez @ 2003-05-11 20:04 UTC (permalink / raw)
  To: Roberto Nibali; +Cc: netfilter-devel

Roberto Nibali wrote:

> I think not for 2.4.x because we're changing too much of the
> netfilter/routing code to make it a smooth and acceptable merge. There
> is also some code most people use which is completely not acceptable
> within the scope of routing extensions (like the hidden patch or some
> DGD code).

I can't understand this, the code is not ready for to put into kernel but
it is ready for enterprise use ;-)

> For 2.5 it is already too late, feature freeze was already called in and
> we haven't talked to the netfilter people anyways ;).

well, never is too late for 2.5. A lot of features were included into
latest 2.4.xx. And ,in theory, it is more frozen than a penguin at north pole.

> Another point is that we (Wensong the most) never felt the urge to
> submit the code to the networking maintainers for approval and
> inclusion. At OLS 2000, Wensong, Horms, Rusty, me and some others talked
> about a possible inclusion of LVS into netfilter. It simply never
> happened because noone felt about doing more than talking of it.

if the code is not into the kernel, then it's little useful. Because
not all people are kernel hackers and they need official distribution
support. And custom kernels are not supported.

> Yet another point is that we never really agreed on having someone being
> the lead developer and responsible for a possible kernel inclusion and
> most of us simply do not have the time to be a maintainer. It's a tough
> and time consuming job even if the code works for 99.999% of the people.

It is not necessary to have a leader, bugs must go to mailing-list.

> You have to talk to other involved parties, you have to monitor API
> changes and you will need to be responsive to an increasing amount of
> emails addressed directly to you (for example package responsibles for a
> distribution), because you're in the MAINTAINERS list.

well, ipvs has 5 years of history. Versions are released every XX time.
Red Hat has sold 6.2 and next distributions with ipvs patch.
It works! And how many headaches has you gotten?

> Last but not least it is pretty easy to patch your kernel with LVS,
> There are as few as possible changes to the existing code, most of the
> patch is in form of additional code.

it is easy to patch kernel, for me it's not a problem.
But now LiNUX is not only a hacker OS, there are places where you need
to have distribution support because the boss wants it :-)

-thanks for your time-

regards,
-- 
Galiza nin perdoa nin esquence. Governo demision!

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: when IPVS into netfilter?
  2003-05-11 20:04   ` Xose Vazquez Perez
@ 2003-05-20  7:42     ` Roberto Nibali
  2003-05-20 15:26       ` Xose Vazquez Perez
  2003-05-23 19:52       ` dropping support for ipfwadm/ipchains (Re: when IPVS into netfilter?) Harald Welte
  0 siblings, 2 replies; 7+ messages in thread
From: Roberto Nibali @ 2003-05-20  7:42 UTC (permalink / raw)
  To: Xose Vazquez Perez; +Cc: netfilter-devel

Hello Xose,

> I can't understand this, the code is not ready for to put into kernel but
> it is ready for enterprise use ;-)

1. That's your view, yes. Kernel net maintainers were not so nice with
    us when we first proposed the code for inclusion.
2. There is a lot of stable code around on the net that can't be
    included into the mainline kernel because the design doesn't suit the
    rest of the kernel control path. Think about the grsecurity patches.
3. We are now officially working on it :).

> well, never is too late for 2.5. A lot of features were included into
> latest 2.4.xx. And ,in theory, it is more frozen than a penguin at north pole.

We'll see. I've started a discussion in the core dev team about it.

> if the code is not into the kernel, then it's little useful. Because
> not all people are kernel hackers and they need official distribution
> support. And custom kernels are not supported.

There are official distributions which support LVS, RH and SuSE come to 
mind.

> It is not necessary to have a leader, bugs must go to mailing-list.

Yes, that's what they always say. The truth is different, ask Harald 
Welte about some netfilter questions he finds in his Inbox.

> well, ipvs has 5 years of history. Versions are released every XX time.
> Red Hat has sold 6.2 and next distributions with ipvs patch.
> It works! And how many headaches has you gotten?

Yes, I know it works, it was stable starting around June 1999 on 2.0.35 
and ever since. No headaches so far :).

> it is easy to patch kernel, for me it's not a problem.
> But now LiNUX is not only a hacker OS, there are places where you need
> to have distribution support because the boss wants it :-)

Now how exactly does this work? Only because a feature is in the kernel, 
doesn't necessarily mean that a distributor supports it. But as I've 
said, we'll be working on an inclusion comitee for LVS. Most of the core 
  LVS hackers will meet at OLS this year and we'll have a BoF too, so 
stay tuned until about August. A lot of decisions will be made then, 
kernel wise, gcc wise, netfilter wise, ... .

And to go back on being more on-topic, I'd like to ask the netfilter 
team if the ip_fw_compat.c is going to remain in the 2.5.x/2.6.x cycle?
I was under the impression that Rusty once mentioned that he'd wanted to 
get rid of it, but I could be dreaming here.

We have following patch which hooks up LVS to netfilter and sneaks away 
packets and a patch to export a symbol for multicasting.

--- linux-2.5.69/net/ipv4/netfilter/ip_fw_compat.c      Mon May  5 
07:53:13 2003
+++ linux-2.5.69-ipvs-1.1.5/net/ipv4/netfilter/ip_fw_compat.c   Fri May 
  9 11:52:09 200
3
@@ -43,6 +43,10 @@
  extern int __init masq_init(void);
  extern void masq_cleanup(void);

+/* From ip_vs_core.c */
+extern unsigned int
+check_for_ip_vs_out(struct sk_buff **skb_p, int (*okfn)(struct sk_buff *));
+
  /* They call these; we do what they want. */
  int register_firewall(int pf, struct firewall_ops *fw)
  {
@@ -172,8 +176,14 @@
                 return NF_ACCEPT;

         case FW_MASQUERADE:
-               if (hooknum == NF_IP_FORWARD)
+               if (hooknum == NF_IP_FORWARD) {
+#ifdef CONFIG_IP_VS
+                        /* check if it is for ip_vs */
+                        if (check_for_ip_vs_out(pskb, okfn) == NF_STOLEN)
+                                return NF_STOLEN;
+#endif
                         return do_masquerade(pskb, out);
+                }
                 else return NF_ACCEPT;

         case FW_REDIRECT:


I will send in a patch to correct the extern part as it is not ifdef'd. 
The second one is, which makes the whole LVS code as non-intrusive as 
even possible. I think the netfilter community could live with two more 
ifdef-blocks, right? :)

The next one is a symbol export which we need to smuggle into the kernel 
bypassing DaveM :). No, seriously, it should be feasable.

--- linux-2.5.69/net/netsyms.c  Mon May  5 07:53:13 2003
+++ linux-2.5.69-ipvs-1.1.5/net/netsyms.c       Fri May  9 11:52:08 2003
@@ -265,6 +265,7 @@
  EXPORT_SYMBOL(in_aton);
  EXPORT_SYMBOL(ip_mc_inc_group);
  EXPORT_SYMBOL(ip_mc_dec_group);
+EXPORT_SYMBOL(ip_mc_join_group);
  EXPORT_SYMBOL(ip_finish_output);
  EXPORT_SYMBOL(inet_stream_ops);
  EXPORT_SYMBOL(inet_dgram_ops);


Comments, flames?

Best regards,
Roberto Nibali, ratz
-- 
echo '[q]sa[ln0=aln256%Pln256/snlbx]sb3135071790101768542287578439snlbxq'|dc

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: when IPVS into netfilter?
  2003-05-20  7:42     ` Roberto Nibali
@ 2003-05-20 15:26       ` Xose Vazquez Perez
  2003-05-23 19:52       ` dropping support for ipfwadm/ipchains (Re: when IPVS into netfilter?) Harald Welte
  1 sibling, 0 replies; 7+ messages in thread
From: Xose Vazquez Perez @ 2003-05-20 15:26 UTC (permalink / raw)
  To: Roberto Nibali; +Cc: netfilter-devel

Roberto Nibali wrote:

>>Xose wrote:
>>if the code is not into the kernel, then it's little useful. Because
>>not all people are kernel hackers and they need official distribution
>>support. And custom kernels are not supported.

> There are official distributions which support LVS, RH and SuSE come to
> mind.

not now, rhl 7.x, 8 and 9 don't have lvs.
they _only_ put lvs patch in enterpri$e di$tribution$

regards,
-- 
Software is like sex, it's better when it's bug free.

^ permalink raw reply	[flat|nested] 7+ messages in thread

* dropping support for ipfwadm/ipchains (Re: when IPVS into netfilter?)
  2003-05-20  7:42     ` Roberto Nibali
  2003-05-20 15:26       ` Xose Vazquez Perez
@ 2003-05-23 19:52       ` Harald Welte
  2003-05-23 21:11         ` Roberto Nibali
  1 sibling, 1 reply; 7+ messages in thread
From: Harald Welte @ 2003-05-23 19:52 UTC (permalink / raw)
  To: Roberto Nibali; +Cc: Xose Vazquez Perez, netfilter-devel

[-- Attachment #1: Type: text/plain, Size: 1965 bytes --]

On Tue, May 20, 2003 at 09:42:17AM +0200, Roberto Nibali wrote:

> And to go back on being more on-topic, I'd like to ask the netfilter 
> team if the ip_fw_compat.c is going to remain in the 2.5.x/2.6.x cycle?
> I was under the impression that Rusty once mentioned that he'd wanted to 
> get rid of it, but I could be dreaming here.

To quote from the packet filtering howto:
---
 There are modules in the netfilter distribution called ipchains.o and
 ipfwadm.o. Insert one of these in your kernel (NOTE: they are
 incompatible with ip_tables.o!). Then you can use ipchains or ipfwadm
 just like the good old days.

 This will be supported for some time yet. I think a reasonable formula
 is 2 * [notice of replacement - initial stable release], beyond the
 date that a stable release of the replacement is available. This means
 that support will probably be dropped in Linux 2.6 or 2.8.
---

So this would make something like 2*(iptables_included-ipchains_included).
But then the question is whether we are talking about stable kernels or
development kernels?

I think ipfwadm can be dropped safely, but ipchains will have to stay.

> The second one is, which makes the whole LVS code as non-intrusive as 
> even possible. I think the netfilter community could live with two more 
> ifdef-blocks, right? :)

We certainly don't mind.  However, having IPVS specific ifdefs in the
mainline kernel while IPVS is outside the mainstream kernel sounds a bit
odd to me.   I think in general this is discouraged...

> Best regards,
> Roberto Nibali, ratz
> -- 

-- 
- Harald Welte <laforge@netfilter.org>             http://www.netfilter.org/
============================================================================
  "Fragmentation is like classful addressing -- an interesting early
   architectural error that shows how much experimentation was going
   on while IP was being designed."                    -- Paul Vixie

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: dropping support for ipfwadm/ipchains (Re: when IPVS into netfilter?)
  2003-05-23 19:52       ` dropping support for ipfwadm/ipchains (Re: when IPVS into netfilter?) Harald Welte
@ 2003-05-23 21:11         ` Roberto Nibali
  0 siblings, 0 replies; 7+ messages in thread
From: Roberto Nibali @ 2003-05-23 21:11 UTC (permalink / raw)
  To: Harald Welte; +Cc: Xose Vazquez Perez, netfilter-devel

Hi Harald,

> So this would make something like 2*(iptables_included-ipchains_included).
> But then the question is whether we are talking about stable kernels or
> development kernels?

I'd say development, that's how I interprete that "formula" und the 
wording around it, so it would be 2.7 then. But this is entirely up to 
you guys.

> I think ipfwadm can be dropped safely, but ipchains will have to stay.

Good, I just wanted to establish if the part my previous patch was 
against is going to remain for the 2.6 timeline. This seems to be the 
case then.

>>The second one is, which makes the whole LVS code as non-intrusive as 
>>even possible. I think the netfilter community could live with two more 
>>ifdef-blocks, right? :)
>  
> We certainly don't mind.  However, having IPVS specific ifdefs in the
> mainline kernel while IPVS is outside the mainstream kernel sounds a bit
> odd to me.   I think in general this is discouraged...

:) Of course. The idea is to submit LVS in overviewable chunks to the 
respective kernel lieutnants. The patch I posted is actually the only 
part where we change anything of the existing kernel tree. The rest are 
new files (also thanks to the cool Kconfig).

I only wanted to ask if those two ifdef'd hooks would be acceptable for 
you guys without sending the whole ipvs patch. You can have a look at it 
for yourselves:

http://www.linux-vs.org/software/kernel-2.5/linux-2.5.69-ipvs-1.1.5.patch.gz

Thanks for you time and the positive answer. See you at OLS,
Roberto Nibali, ratz
-- 
echo '[q]sa[ln0=aln256%Pln256/snlbx]sb3135071790101768542287578439snlbxq'|dc

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2003-05-23 21:11 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2003-05-03 23:08 when IPVS into netfilter? Xose Vazquez Perez
2003-05-10 11:29 ` Roberto Nibali
2003-05-11 20:04   ` Xose Vazquez Perez
2003-05-20  7:42     ` Roberto Nibali
2003-05-20 15:26       ` Xose Vazquez Perez
2003-05-23 19:52       ` dropping support for ipfwadm/ipchains (Re: when IPVS into netfilter?) Harald Welte
2003-05-23 21:11         ` Roberto Nibali

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.