as-in/out interas-in/out recommendation
Cengiz Alaettinoglu
Wed Oct 5 19:52:11 CET 1994
I think it is clear that the interaction of as-in/out and interas-in/out policies is still ambiguous even though all the efforts made in the last couple of weeks. I think there is no simple fix without changing the interaction. Here is a solution which is in the middle of the solutions proposed by different people (marten, tony's original, mine, elise's). Interas-in does not replace as-in. If an as specifies interas-in, it also has to specify as-in. When an as specifies interas-in policy, this interas-in policy is only valid and entered to the dbase if it is a subset of the as-in policy. If there is a L1-R1 connection between two ASs and there is an interas-in policy for this connection, only the interas-in policy apply to this connection. If there is a L1-R1 connection between two ASs and there is NO interas-in policy for this connection, as-in policies apply to this connection. That is, NO IMPLICIT SHARING OF REMAINING ROUTES. Example 1: aut-num: AS1 as-in: from AS2 10 accept AS100 OR {10.0.0.0/8} interas-in: from AS2 L1 R1 (pref=100) accept AS100 interas-in: from AS2 L2 R2 (pref=100) accept AS100 interas-in: from AS2 L3 R3 (pref=100) accept AS100 OR {10.0.0.0/8} derived policies: interas-in: from AS2 L1 R1 (pref=100) accept AS100 interas-in: from AS2 L2 R2 (pref=100) accept AS100 interas-in: from AS2 L3 R3 (pref=100) accept AS100 OR {10.0.0.0/8} Example 2: aut-num: AS1 as-in: from AS2 10 accept AS100 OR {10.0.0.0/8} interas-in: from AS2 L3 R3 (pref=100) accept {10.0.0.0/8} derived policies: interas-in: from AS2 L1 R1 (pref=10) accept AS100 OR {10.0.0.0/8} interas-in: from AS2 L2 R2 (pref=10) accept AS100 OR {10.0.0.0/8} interas-in: from AS2 L3 R3 (pref=100) accept {10.0.0.0/8} Example 3: aut-num: AS1 as-in: from AS2 10 accept AS100 OR {10.0.0.0/8} interas-in: from AS2 L1 R1 (pref=100) accept AS100 interas-in: from AS2 L2 R2 (pref=100) accept AS100 derived policies: interas-in: from AS2 L1 R1 (pref=100) accept AS100 interas-in: from AS2 L2 R2 (pref=100) accept AS100 interas-in: from AS2 L3 R3 (pref=10) accept AS100 OR {10.0.0.0/8} ADVANTAGES: It is simple. It is not ambiguous. If a policy is explicitly stated for a connection it is used as it is. DISADVANTAGES: An AS may have to specify more interas-in policies to specify the same policy. Example 3 above can be done using 1 interas-in line using the implicit sharing. Why is it simple? This is the code: $_ = $polpeers{"$as%$br%i%$peeras%$peerbr"} || $polpeers{"$as%%i%$peeras%"} || "0 NOT ANY"; Very simple, if there is an interas policy use it, if not use the as-in policy, if not use "NOT ANY". Can someone provide code for the interaction in the document? I can not because I beleive the interaction in the document is ambiguous. Even with some assumptions on the ambiguities, I bet the code will turn out more complicated. Regards. Cengiz -- Cengiz Alaettinoglu Information Sciences Institute cengiz at isi.edu University of Southern California -------- Logged at Wed Oct 5 20:11:02 MET 1994 ---------
[ rr-impl Archive ]