[mpls-linux-general] binding label/FEC to hosts
Status: Beta
Brought to you by:
jleu
From: krishnan n. <shy...@my...> - 2001-07-25 14:15:17
|
Hello, When the routing table contains net entries, say, 192.168.1.0, how do we set up a label/FEC mapping to a specific host, say, 192.168.1.1? Assuming we would want to create a Label Switch Path to a specific host and also don't want to make the the host routing entry in every LSR in the path - the net entry to reach this host already exists - how do we do it? Is it at all possible? Currently, we are able to create FEC using the net entry: mplsadm -B ... -f 192.168.1.0/24 What we would like to do is to have a label to a host: mpsadm -B ... -f 192.168.1.2/25 From the code (i'm on *very* shaky ground here) it looks a bit hard to write host FEC to a n/w route in fib. Traced it down to: net/mpls/mpls_out_info.c: mpls_bind_out2fec ... ... if(fib_add_proto_data(&k,&res,AUX_PROTO_DATA_MPLS) == 0) ... and in: net/ipv4/fib_hash.c:fn_hash_add_proto_data() ... ... f->fn_proto_data[proto_num] = res->proto_data[proto_num]; /* ?? appears, only one proto data may be added per proto num, even though fn_proto_data is declared *[] */ It appears to be easier to hold this FEC in the mpls_out_info _tree list ? I am curious to know: a) Would it be useful to be able to bind a label to a host given only a net entry in the routing table? b) does the Forwarding Information Base semantics support this at all? c) Alternatively, does it make sense to map a net entry to a host entry. What i mean is, if the user specifies a host entry ( mplsadm -f 192.168.1.2/32 in the example above) would it make sense to silently map this to 192.168.1.0/24? since only 192.168.1.0 entry exists in the routing table? d) (unrelated question) where can i get more information about the kernel mutiple table support / Forwarding Information Base? thank you, shyam ------------------------------------------------------------ --== Sent via Deja.com ==-- http://www.deja.com/ |