LVS
lvs-users
Google
 
Web LinuxVirtualServer.org

Re: TCP flag NONE timer

To: Horms <horms@xxxxxxxxxxxx>
Subject: Re: TCP flag NONE timer
Cc: "LinuxVirtualServer.org users mailing list." <lvs-users@xxxxxxxxxxxxxxxxxxxxxx>
Cc: Wensong Zhang <wensong@xxxxxxxxxxxx>
Cc: Julian Anastasov <ja@xxxxxx>
From: Roberto Nibali <ratz@xxxxxxxxxxxx>
Date: Wed, 22 Feb 2006 19:50:54 +0100
I'm comfortable with that.
Though do you know the details of why it was removed in the first place?

Nope, however I can imagine following reasons:

1. Too many proc-fs entries
2. Not too often used
3. Planned to be replaced by per-app entries through ipvsadm

-#define NET_IPV4_VS              21
+#define NET_IPV4_VS    39

Actually this is not such a good idea as I've just realised. This defines the binary id for the proc-fs handler. I haven't figured out where this would ever be needed but the 21 has a reason (just 1 above the NETFILTER entry) d'existence; even if's just half of 42 :).

-       NET_IPV4_VS_LBLCR_EXPIRE=20,
-       NET_IPV4_VS_CACHE_BYPASS=22,

Jump, because of the 21.

If you want to change the style of define to ommit numerical values
(which I am cool with as these values are only used in the kernel), I
think it would be better to make it a separate patch.

I'll leave them since all the other sub systems defined them too. I think it was planned to have those binary id's back in 1995 when sysctl was put in place by Stephen Tweedie. Sort of a ABI for sysctl or somesuch. I simply cannot remember anymore. On our 2.4.x IPVS code I have integrated the removal of the numerical values and it's running on productive servers without any problems.

+        {NET_IPV4_VS_DOS_TO_LI, "dos_timeout_listen",
+         &vs_timeout_table_dos.timeout[IP_VS_S_LISTEN],
+         sizeof(int), 0644, NULL, &proc_dointvec_jiffies},
+        {NET_IPV4_VS_DOS_TO_SA, "dos_timeout_synack",
+         &vs_timeout_table_dos.timeout[IP_VS_S_SYNACK],
+         sizeof(int), 0644, NULL, &proc_dointvec_jiffies},
+        {NET_IPV4_VS_DOS_TO_UDP, "dos_timeout_udp",
+         &vs_timeout_table_dos.timeout[IP_VS_S_UDP],
+         sizeof(int), 0644, NULL, &proc_dointvec_jiffies},
+        {NET_IPV4_VS_DOS_TO_ICMP, "dos_timeout_icmp",
          &vs_timeout_table_dos.timeout[IP_VS_S_ICMP],
          sizeof(int), 0644, NULL, &proc_dointvec_jiffies},
         {NET_IPV4_VS_CACHE_BYPASS, "cache_bypass",
The above hunk should look quite different on 2.6.
But in principle I think it looks ok.

Yes.

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

<Prev in Thread] Current Thread [Next in Thread>