Hangbin
Finally getting back to this...
On Tue, Jun 06, 2017 at 06:22:28PM +0800, Hangbin Liu wrote:
> Now more and more customers are asking for linuxptp bond/team fail over
> support.
> I have a draft plan to implement this feature. Would you like to help review
> it
> to see if it's OK or not?
Overall, it sounds good. This case is similar to the JBOD case.
> Here are the brief descriptions.
>
> 1. add slave info in struct interface, something like
> struct interface {
> STAILQ_ENTRY(interface) list;
> char name[MAX_IFNAME_SIZE + 1];
> char slave[MAX_IFNAME_SIZE + 1];
> int index;
> int slave_index;
> int linkup;
> int slave_changed;
I don't think this new state is needed, because...
> struct sk_ts_info ts_info;
> };
> 2. get current interface's active slave via netlink message when
> config_create_interface()
> 3. set clock's PHC index to active slave's PHC index when clock_create()
... step 2 can also be done in clock_create(), can't it?
> 4. when bond/team fail over, get new active slave index
How do you detect fail over?
> 5. update clock phc info via clock_switch_phc(), update port status
> via port_dispatch()
> 6. Use automatic mode in phc2sys to automatically sync correct PHC.
Another question: The sockets must be bound to the slave interface,
and not to the bonding master interface, correct? If so, there is
more work to do than clock_switch_phc() at fail over time.
> Limits and unresolved issues:
> 1. Only support bond/team active-backup
> 2. Only works with phc2sys automatic mode. But how about manual
> config? -s bond0?
I think phc2sys will also need some work.
> 3. What about vlan?
VLAN already works with normal (non-bonding) interfaces. Not sure
about the bonding case.
> 4. What if new active slave do not support required timestamp flags.
> Just report fail?
Yes, just let the port become FAULTY.
Thanks,
Richard
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Linuxptp-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/linuxptp-devel