roopa <ro...@cumulusnetworks.com> writes: > On 6/1/15, 9:46 AM, Robert Shearman wrote: >> In order to be able to function as a Label Edge Router in an MPLS >> network, it is necessary to be able to take IP packets and impose an >> MPLS encap and forward them out. The traditional approach of setting >> up an interface for each "tunnel" endpoint doesn't scale for the >> common MPLS use-cases where each IP route tends to be assigned a >> different label as encap. >> >> The solution suggested here for further discussion is to provide the >> facility to define encap data on a per-nexthop basis using a new >> netlink attribue, RTA_ENCAP, which would be opaque to the IPv4/IPv6 >> forwarding code, but interpreted by the virtual interface assigned to >> the nexthop. >> >> A new ipmpls interface type is defined to show the use of this >> facility to allow IP packets to be imposed with an MPLS >> encap. However, the facility is designed to be general enough to be >> used by any encapsulation/tunneling mechanism that has similar >> requirements of high-scale, high-variation-of-encap. >> >> RFC because: >> - IPv6 side not implemented >> - struct rtable shouldn't be bloated by pointer+uint >> - Hasn't been thoroughly tested yet >> >> Robert Shearman (3): >> net: infra for per-nexthop encap data >> ipv4: storing and retrieval of per-nexthop encap >> mpls: new ipmpls device for encapsulating IP packets as mpls >> >> > Glad to see these patches!. > I have a similar series i have been working on...but no netdevice. > A set of ops similar to iptun_encaps and I store encap data in fib_nh > and in ip_route_output_slow i point the dst.output to the output func provided > by one of the encap ops. > > I see the advantages of using a netdevice...and i see this align with patches > from thomas.
roopa I think I would prefer your patches. I thinking using a netdevice the way Robert is proposing is quite possibly a mess, from a scalability stand point. Do you mean ip_route_input_slow? There is no ip_route_output_slow. Eric -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html