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
Linuxptp-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxptp-devel

Reply via email to