On Mon, Jan 09, 2023 at 01:59:50PM +0100, Claudio Jeker wrote:
> So here is the validaton logic for ASPA. Now this is currently not
> hooked up to anything apart from a larger regress test.
> What is missing is code to send the ASPA table to the RDE and the reload
> logic for ASPA.
> 
> Most of the ASPA validation happens in rde_aspa.c.
> aspa_cp_lookup() checks if a customer - provider relation exists
> aspa_check_aspath() walks an AS_PATH and calls aspa_cp_lookup() for each
> touple. If check_downramp is true then both the upramp (source-as up
> towards the Internet) and downramp (from the Internet back to us) are
> checked.
> aspa_validation() uses aspa_check_aspath() to validate the path. I split
> the code up between aspa_check_aspath() and aspa_validation() to make it
> possible to unit test aspa_check_aspath().
> 
> The code does not implement all the special cases the draft talk about
> mainly because these special cases are not required and need to be removed
> from the draft.
> 
> Diff includes both bgpd and regress test.

This looks like a correct implementation of the algorithm in Sriram's
slides to me. I can't spot anything wrong. Since this isn't hooked up
yet, I think it should go in with whatever tweaks you have in your tree.

ok tb

Reply via email to