Originating: A-B-C-D
Terminating: D-C-B-A
Scenario 1 - In orig region, application B issues a reverse. We assume that application B has already made the necessary changes to the request to 'swap' the source and target addresses. This can't be the job of the router since it can't change the message. So, let the Source Address = s and the Target Address = t in the request as presented to AR. Algorithm proceeds:
- Calculate TermRouteSet(t) = {D,C,B,A}
- Calcualte Suffix(B, TRS(t)) where the suffix of a ordered list is those elements in the list that occur after the first parameter. So it's {A} for this scenario.
- Proceed as usual.
Scenario 2 - In term region, application B issues a reverse. Source Address = s, Target Address = t. Algorithm proceeds:
- Calculate OrigRouteSet(s) = ORS(s) = {A,B,C,D}
- Calculate Suffix(B, ORS(s)) = {C,D}
- Proceed as usual.