Routing

last person joined: 4 days ago 

Ask questions and share experiences about ACX Series, CTP Series, MX Series, PTX Series, SSR Series, JRR Series, and all things routing, including portfolios and protocols.
  • 1.  One VPLS instance for multiple VLANs

    Posted 08-04-2016 09:42

    Hello everyone,

     

    I realize this question has already been discussed here http://forums.juniper.net/t5/Routing/Multi-VLAN-VPLS-instance-and-VLAN-translation/td-p/93584, but I'm not sure if we need vlan translation in our enviornment. We have multiple LANs that need to be present on two sites across an MPLS backbone.  

     

    vlans10,20,30 -- CE1 ----- PE1 ----- MPLS Cloud ----- PE2 ----- CE2 -- vlans10,20,30

     

    Let's assume that CE interface ae10 is in vlan10, ae20 in vlan20, and ae30 in vlan30. And ae10.10, ae20.20, ae30.30 have the vlan-vpls encapsulation. Let's also assume that all the above aggregated ethernet interfaces have unit 0 with the ethernet-switching family configured as a trunk and multiple vlans as members.

     

    How can we configure one VPLS instance that accomodates all the vlans, instead of one instance per vlan.

    Can it be configured like so, by excluding the vlan-id statement and just including the required interfaces for different vlans.

     

    VPLS instance:

    instance-type vpls;
    interface ae10.10;
    interface ae20.20;
    interface ae30.30;
    interface ae30.10; --- maybe?
    interface ae30.20; --- maybe?
    route-distinguisher ASN:10000;
    vrf-target target:ASN:10000;
    protocols {
    vpls {
    site area-2 {
    site-identifier 2;
    }
    }
    }

     

    ae10:

    apply-groups lacp;
    unit 0 {
    family ethernet-switching {
    vlan {
    members [ vlan_10, ... ];
    }
    }
    }
    unit 10 {
    encapsulation vlan-vpls;
    vlan-id 10;
    }

     

    ae20:

    apply-groups lacp;
    unit 0 {
    family ethernet-switching {
    vlan {
    members [ vlan_20, ... ];
    }
    }
    }
    unit 20 {
    encapsulation vlan-vpls;
    vlan-id 20;
    }

     

    ae30:

    apply-groups lacp;
    unit 0 {
    family ethernet-switching {
    vlan {
    members [ vlan_10, vlan_20, vlan_30, ... ];
    }
    }
    }
    unit 30 {
    encapsulation vlan-vpls;
    vlan-id 30;
    }

     

    I believe the commit for this config doesn't fail, but would this work as expected - say vlan10's frames from CE1 travelling across the core and ending up in vlan10 on CE2. 



  • 2.  RE: One VPLS instance for multiple VLANs
    Best Answer

     
    Posted 08-09-2016 16:10

    Hi,

     

    I believe it would work as well as when the vlan-id is specified in the VPLS routing-instance [VLAN Normalization]. I have tested this successfully.

    Sample config:

    ---------- PE1 -----------
    root@PE01# show routing-instances VPLS-MULTI 
    instance-type vpls;
    inactive: vlan-id 200;
    interface ge-0/0/1.200;
    interface ge-0/0/1.201;
    interface ge-0/0/2.201;
    route-distinguisher 192.168.1.1:200;
    vrf-target target:65000:200;
    protocols {
        vpls {
            no-tunnel-services;
            site PE1 {
                site-identifier 1;
                interface ge-0/0/1.200;
                interface ge-0/0/1.201;
                interface ge-0/0/2.201;
            }
        }
    }
    
    ---------- PE2 ------------
    root@PE04# show routing-instances VPLS-MULTI 
    instance-type vpls;
    inactive: vlan-id 200; interface ge-0/0/1.200; interface ge-0/0/1.201; interface ge-0/0/2.201; route-distinguisher 192.168.1.4:200; vrf-target target:65000:200; protocols { vpls { no-tunnel-services; site PE4 { site-identifier 4; interface ge-0/0/1.200; interface ge-0/0/1.201; interface ge-0/0/2.201; } } }

    For consistency interface ge-x/x/x.y where y=vlan-id

    However, I am not sure to what extent this can scale. Perhaps up to the number of mac address the VPLS instance can support.

     

    Cheers,

    Ashvin



  • 3.  RE: One VPLS instance for multiple VLANs

    Posted 08-25-2016 14:39

    Awesome! Thanks Ashwin! I was wondering how the "vlan-id" statement makes a difference in the data path. If we configured "vlan-id 999" in the VPLS-MULTI instance (and have multiple CE interfaces belonging to different vlans), what would a packet walkthrough look like. Will the VLAN tag of all the frames received from the CE interfaces be swapped with the normalized vlan (999 in this case), broadcasted to different PE routers through l2circuits, where they'll again be compared to the normalized vlan. And since the VPLS-MULTI instance would have the same vlan-id statement in it, will these frames be sent out to all the CE interfaces on that PE? How does the PE know that it must forward a frame from say vlan 200 to an egress CE interface in vlan 200 (and not to CE interfaces in other vlans), since that information was swapped out (with vlan 999) at the ingress.

     

    Thanks again.



  • 4.  RE: One VPLS instance for multiple VLANs

     
    Posted 08-26-2016 01:19

    Hi,

     

    With the vlan-id statement [VLAN Normalization], all 802.1Q vlan tags are swapped with that vlan-id.

    Broadcast or unknown unicast traffic will be flooded out to all participating PEs and to all CE interfaces on that PE.

    For example, an arp request will be broadcast to all CE ports.  After the arp reply, the PEs will also learn the mac-address and cache it in the vpls mac-table.

    Thereon traffic would mostly be unicast with mac-addresses present in the vpls mac-table, hence unicast traffic does not cause further flooding and directed to the egress interface based on the mac-address table.

     

    Cheers,
    Ashvin