Why is IPv6addr so careful (and slow) compared to IPaddr2 ?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Dear all,

 

This is my first post on this list, I hope this is the right forum for it…

 

On a router cluster I have a number of IP resources for IPv4 and IPv6 VLANs. The cluster is implemented with corosync and pacemaker on Debian Wheezy systems, with resource-agents version 1:3.9.2-5+deb7u1.

 

The IPv4 resources are implemented by /usr/lib/ocf/resource.d/heartbeat/IPaddr2.

The IPv6 resources are implemented by /usr/lib/ocf/resource.d/heartbeat/IPv6addr.

 

When the active router dies, the resources are moved to the other node. The IPv4 address resources are activated immediately, within a few milliseconds. The IPv6 address resources however take about 7 seconds each to start.

I have investigated why this takes so long:

-          first the address is assigned to the interface,

-          then a check is performed to see that the address is really active. This means that max 5 pings are done, waiting 1 second after each ping, until a response is received (which happens usually after 2 seconds),

-          and then 5 seconds are spent sending unsolicited advertisement packets to the neighbours.

 

The IPv4 address only sends ARP messages after the address assignment is made, but defaults to sending them in a background task.

 

Can anyone explain to me the design choices made here? Why does it take so long to start a IPv6 address resource? I had to increase the number of process children in corosync (responsible for starting the resources, defaults to 4) to get all the IP addresses started in a reasonable time (say 1 second), because in the initial default configuration, starting a lot of resources is blocked while waiting for the IPv6 address resources…

 

--
Best regards,
Reinier Boon



Reinier Boon | Senior software engineer | Telecats bv | KvK Enschede 06069106 | Tel: +31 53 488 99 26 | Fax: +31 53 488 99 10 | E‑mail: r.t.boon@xxxxxxxxxxx

 

 

 

--
Met vriendelijke groet,
Reinier Boon



Reinier Boon | Senior software engineer | Telecats bv | KvK Enschede 06069106 | Tel: 053 488 99 26 | Fax: 053 488 99 10 | E‑mail: r.t.boon@xxxxxxxxxxx

 

_______________________________________________
discuss mailing list
discuss@xxxxxxxxxxxx
http://lists.corosync.org/mailman/listinfo/discuss

[Index of Archives]     [Linux Clusters]     [Corosync Project]     [Linux USB Devel]     [Linux Audio Users]     [Photo]     [Yosemite News]    [Yosemite Photos]    [Linux Kernel]     [Linux SCSI]     [X.Org]

  Powered by Linux