[j-nsp] EXP based LSP selection

Dragan Jovicic draganj84 at gmail.com
Sun Aug 14 06:35:33 EDT 2016


Hello,
In lab, tested and works as following. Traffic arrives as MPLS (LDP in
control plane) on a core router , and then is forced to whichever RSVP LSP
depending on EXP bits. The key is to run LDP tunneling over RSVP LSPs - as
the route in control plane must point over these tunnels. Traffic that is
not matching any of the RSVP LSPs specified in specified policy will be
forwarded using next best forwarding method (it can be default RSVP LSP,
LDP, or reject is specified). Something like this:

> show configuration policy-options policy-statement lsp-policy1
then cos-next-hop-map cos-map1;

> show configuration class-of-service forwarding-policy
next-hop-map cos-map1 {
    forwarding-class BE {
        lsp-next-hop lsp-be;
    }
    forwarding-class REALTIME {
        lsp-next-hop lsp-realtime;
    }
}

> show configuration class-of-service interfaces
ge-1/0/9 {
    unit * {
        classifiers {
            exp BA-exp;
        }
    }
}

> show configuration routing-options forwarding-table
export lsp-policy1;

> show configuration protocols mpls
label-switched-path lsp-be {
    to 120.10.255.1;
    ldp-tunneling;
}
label-switched-path lsp-realtime {
    to 120.10.255.1;
    ldp-tunneling;
}




This is on core router will LDP tunneling:

> show route table inet.3 120.10.255.1

inet.3: 20 destinations, 24 routes (4 active, 0 holddown, 19 hidden)
+ = Active Route, - = Last Active, * = Both

120.10.255.1/32    *[RSVP/7/1] 1d 21:00:43, metric 1000
                    > to 120.10.50.2 via ge-1/0/9.500, label-switched-path
lsp-be
                      to 120.10.50.2 via ge-1/0/9.500, label-switched-path
lsp-realtime
                    [LDP/9] 00:12:40, metric 1000
                    > to 120.10.50.2 via ge-1/0/9.500, label-switched-path
lsp-be
                      to 120.10.50.2 via ge-1/0/9.500, label-switched-path
lsp-realtime


This is PE router pinging using LDP (mpls-forwarding enabled to force ping
use MPLS):

# run ping 120.10.255.1 tos 0 count 100 rapid
PING 120.10.255.1 (120.10.255.1): 56 data bytes
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
--- 120.10.255.1 ping statistics ---
100 packets transmitted, 100 packets received, 0% packet loss
round-trip min/avg/max/stddev = 0.592/0.946/11.955/1.465 ms



CORE router:

# run show mpls lsp statistics
Ingress LSP: 2 sessions
To              From            State     Packets            Bytes LSPname
120.10.255.1    150.1.3.1       Up            104             9116 lsp-be
120.10.255.1    150.1.3.1       Up              4              364
lsp-realtime



# run ping 120.10.255.1 tos 160 count 100 rapid
PING 120.10.255.1 (120.10.255.1): 56 data bytes
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
--- 120.10.255.1 ping statistics ---
100 packets transmitted, 100 packets received, 0% packet loss
round-trip min/avg/max/stddev = 0.585/0.695/1.904/0.191 ms


CORE router:

# run show mpls lsp statistics
Ingress LSP: 2 sessions
To              From            State     Packets            Bytes LSPname
120.10.255.1    150.1.3.1       Up            104             9116 lsp-be
120.10.255.1    150.1.3.1       Up            104             9164
lsp-realtime



Something similar is tested in a different scenario and sniffed with
Wireshark to make sure it really does work.

Regards,

Dragan



On Fri, Aug 12, 2016 at 2:06 PM, Adam Vitkovsky <Adam.Vitkovsky at gamma.co.uk>
wrote:

> Hi folks,
>
> How do ya’ll do the below in Junos?
> On a core router send EF traffic via one LSP and BE via other LSP.
>
> CR1:
> class-map type traffic match-any PBTS_C-MAP_EF
>   match mpls experimental topmost 5
> end-class-map
> !
> policy-map type pbr PBTS_P-MAP
>  class type traffic PBTS_C-MAP_EF
>    set forward-class 5
>  class type traffic class-default
> end-policy-map
> !
> interface Te0/0/0/0
>   description ingress-mpls-interface
>   service-policy type pbr input PBTS-PMAP
> !
> interface tunnel-te501
>   forward-class 5
>
>
> In Junos I found out that except static route only policy can set LSP next
> hop (either via "install-nexthop lsp" or via  "cos-next-hop-map" ). But the
> policy is applied to FIB so I can match only on route properties rather
> than on actual packet properties.
> And with FW filter I can match exp 5 but can't set next-hop.
> Do I understand my options correctly or am I missing something.
>
> On a PE I guess I could use the policy to match all other PE's NHs and
> then set LSP (so that i won't loop packets coming to me to the LSP) -
> complex.
> Or I could use FW filter and the ("then VRF" + vrf statically routed to
> LSP) trick -which obviously does not scale.
>
> I'll appreciate any pointers.
>
> adam
>
>
>
>
>
>
>
>
>
>         Adam Vitkovsky
>         IP Engineer
>
> T:      0333 006 5936
> E:      Adam.Vitkovsky at gamma.co.uk
> W:      www.gamma.co.uk
>
> This is an email from Gamma Telecom Ltd, trading as “Gamma”. The contents
> of this email are confidential to the ordinary user of the email address to
> which it was addressed. This email is not intended to create any legal
> relationship. No one else may place any reliance upon it, or copy or
> forward all or any of it in any form (unless otherwise notified). If you
> receive this email in error, please accept our apologies, we would be
> obliged if you would telephone our postmaster on +44 (0) 808 178 9652 or
> email postmaster at gamma.co.uk
>
> Gamma Telecom Limited, a company incorporated in England and Wales, with
> limited liability, with registered number 04340834, and whose registered
> office is at 5 Fleet Place London EC4M 7RD and whose principal place of
> business is at Kings House, Kings Road West, Newbury, Berkshire, RG14 5BY.
> ------------------------------------------------------------
> ---------------------------
>  This email has been scanned for email related threats and delivered
> safely by Mimecast.
>  For more information please visit http://www.mimecast.com
> ------------------------------------------------------------
> ---------------------------
> _______________________________________________
> juniper-nsp mailing list juniper-nsp at puck.nether.net
> https://puck.nether.net/mailman/listinfo/juniper-nsp


More information about the juniper-nsp mailing list