Searched hist:"430 a049190de3c9e219f43084de9f1122da04570" (Results 1 – 2 of 2) sorted by relevance
/linux/include/net/ |
H A D | nexthop.h | diff 430a049190de3c9e219f43084de9f1122da04570 Fri May 24 23:43:08 CEST 2019 David Ahern <dsahern@gmail.com> nexthop: Add support for nexthop groups
Allow the creation of nexthop groups which reference other nexthop objects to create multipath routes:
+--------------+ +------------+ +--------------+ | | nh nh_grp --->| nh_grp_entry |-+ +------------+ +---------|----+ ^ | | +------------+ +----------------+ +--->| nh, weight | nh_parent +------------+
A group entry points to a nexthop with a weight for that hop within the group. The nexthop has a list_head, grp_list, for tracking which groups it is a member of and the group entry has a reference back to the parent. The grp_list is used when a nexthop is deleted - to efficiently remove it from groups using it.
If a nexthop group spec is given, no other attributes can be set. Each nexthop id in a group spec must already exist.
Similar to single nexthops, the specification of a nexthop group can be updated so that data is managed with rcu locking.
Add path selection function to account for multiple paths and add ipv{4,6}_good_nh helpers to know that if a neighbor entry exists it is in a good state.
Update NETDEV event handling to rebalance multipath nexthop groups if a nexthop is deleted due to a link event (down or unregister).
When a nexthop is removed any groups using it are updated. Groups using a nexthop a tracked via a grp_list.
Nexthop dumps can be limited to groups only by adding NHA_GROUPS to the request.
Signed-off-by: David Ahern <dsahern@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
|
/linux/net/ipv4/ |
H A D | nexthop.c | diff 430a049190de3c9e219f43084de9f1122da04570 Fri May 24 23:43:08 CEST 2019 David Ahern <dsahern@gmail.com> nexthop: Add support for nexthop groups
Allow the creation of nexthop groups which reference other nexthop objects to create multipath routes:
+--------------+ +------------+ +--------------+ | | nh nh_grp --->| nh_grp_entry |-+ +------------+ +---------|----+ ^ | | +------------+ +----------------+ +--->| nh, weight | nh_parent +------------+
A group entry points to a nexthop with a weight for that hop within the group. The nexthop has a list_head, grp_list, for tracking which groups it is a member of and the group entry has a reference back to the parent. The grp_list is used when a nexthop is deleted - to efficiently remove it from groups using it.
If a nexthop group spec is given, no other attributes can be set. Each nexthop id in a group spec must already exist.
Similar to single nexthops, the specification of a nexthop group can be updated so that data is managed with rcu locking.
Add path selection function to account for multiple paths and add ipv{4,6}_good_nh helpers to know that if a neighbor entry exists it is in a good state.
Update NETDEV event handling to rebalance multipath nexthop groups if a nexthop is deleted due to a link event (down or unregister).
When a nexthop is removed any groups using it are updated. Groups using a nexthop a tracked via a grp_list.
Nexthop dumps can be limited to groups only by adding NHA_GROUPS to the request.
Signed-off-by: David Ahern <dsahern@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
|