Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

Announcement: Try the Ask AI chatbot for answers to your technical questions about Juniper products and solutions.

close
header-navigation
keyboard_arrow_up
close
keyboard_arrow_left
How to Configure the NFX150
Table of Contents Expand all
list Table of Contents
file_download PDF
{ "lLangCode": "en", "lName": "English", "lCountryCode": "us", "transcode": "en_US" }
English
keyboard_arrow_right

Example: Configuring Service Chaining Using a Custom Bridge

date_range 18-Feb-21

This example shows how to configure service chaining using a custom bridge.

Requirements

This example uses the following hardware and software components:

  • NFX150 running Junos OS Release 18.1R1

Overview

The default system bridge is OVS. The OVS bridge is a VLAN-aware system bridge, which acts as the NFV backplane to which the VNFs and FPCs connect. However, you can choose to create a custom bridge based on your requirement. This example explains how to configure service chaining using a custom bridge.

Topology

This example uses the topology shown in Figure 1.

Figure 1: Service Chaining Using a Custom BridgeService Chaining Using a Custom Bridge

Configuration

Create VLANs and the Custom Bridge

Step-by-Step Procedure

  1. Configure VLANs for the LAN-side interfaces.

    content_copy zoom_out_map
    user@host# set vlans vlan100 vlan-id 100
  2. Create a custom bridge:

    content_copy zoom_out_map
    user@host# set vmhost vlans custom-br vlan-id none

Map the Interfaces

Step-by-Step Procedure

  1. Map the heth-0-0 physical port to the FPC0 interface.

    content_copy zoom_out_map
    user@host# set vmhost virtualization-options interfaces ge-0/0/0 mapping interface heth-0-0
  2. Map the FPC1 interface ge-1/0/2 to the custom bridge.

    content_copy zoom_out_map
    user@host# set vmhost virtualization-options interfaces ge-1/0/2 mapping vlan custom-br

Configure the Layer 2 Datapath

Step-by-Step Procedure

  1. Configure the LAN-side front panel ports and add them to the LAN-side VLAN.

    content_copy zoom_out_map
    user@host# set interfaces ge-0/0/0 unit 0 family ethernet-switching interface-mode trunk
    user@host# set interfaces ge-0/0/0 unit 0 family ethernet-switching vlan members vlan100
  2. Configure the internal-facing interfaces as trunk ports and add them to the LAN-side VLAN. The internal-facing interfaces are typically trunk ports, as they must support traffic from multiple front panel ports and VLANs.

    content_copy zoom_out_map
    user@host# set interfaces sxe-0/0/0 unit 0 family ethernet-switching interface-mode trunk
    user@host# set interfaces sxe-0/0/0 unit 0 family ethernet-switching vlan members vlan100

Configure the Layer 3 Datapath

Step-by-Step Procedure

  1. Configure VLAN tagging on ge-1/0/0:

    content_copy zoom_out_map
    user@host# set interfaces ge-1/0/0 vlan-tagging
    user@host# set interfaces ge-1/0/0 unit 0 vlan-id 100
    user@host# set interfaces ge-1/0/0 unit 0 family inet address 192.168.2.1/24
  2. Configure VLAN tagging on ge-1/0/2:

    content_copy zoom_out_map
    user@host# set interfaces ge-1/0/2 vlan-tagging
    user@host# set interfaces ge-1/0/2 unit 0 vlan-id 200
    user@host# set interfaces ge-1/0/2 unit 0 family inet address 203.0.113.2/24

Configure the VNF

Step-by-Step Procedure

  1. Launch the VNF:

    content_copy zoom_out_map
    user@host# set virtual-network-functions vnf-test image /var/public/centos.img
    user@host# set virtual-network-functions vnf-test image image-type raw
  2. Specify the number of CPUs required for the VNF:

    content_copy zoom_out_map
    user@host# set virtual-network-functions vnf-test virtual-cpu count 1
  3. Pin a virtual CPU to a physical CPU:

    content_copy zoom_out_map
    user@host# set virtual-network-functions vnf-test virtual-cpu 0 physical-cpu 2
  4. Create a VNF interface on the custom OVS bridge:

    content_copy zoom_out_map
    user@host# set virtual-network-functions vnf-test interfaces eth2 mapping vlan members custom-br
  5. Attach a VNF interface to a physical interface by using the SR-IOV virtual function:

    content_copy zoom_out_map
    user@host# set virtual-network-functions vnf-test interfaces eth3 mapping interface heth-0-4 virtual-function vlan-id 300
  6. Specify the memory allocation for the VNF:

    content_copy zoom_out_map
    user@host# set virtual-network-functions vnf-test memory size 1048576
    Note:

    When a VNF interface is mapped to a custom bridge, you should restart the VNF for the mapping to take effect.

Verifying the Configuration

Verify the Control Plane Configuration

Purpose

Verify the control plane configuration:

Action

To verify the control plane configuration:

  • Verify that the VLANs and VLAN memberships are correct by using the show vmhost vlans command.

    content_copy zoom_out_map
    user@host> show vmhost vlans
    Routing instance        VLAN name             Tag          Interfaces
    vmhost                  custom-br
                                                               ge-1/0/2.0
                                                               vnf-test_eth2.0
    
  • Verify that the VNF is operational. View the status of the VNF to ensure that the VNF is up and running.

    content_copy zoom_out_map
    user@host> show virtual-network-functions vnf-test 
    ID       Name                                              State      Liveliness
    --------------------------------------------------------------------------------
    1        vjunos0                                           Running    alive
    2        vnf-test                                          Running    alive
    

    The Liveliness output field of the VNF indicates whether the IP address of the VNF is reachable or not reachable from Junos.

    To view more details of the VNF:

    content_copy zoom_out_map
    user@host> show virtual-network-functions vnf-test detail
    Virtual Network Function Information
    ------------------------------------
    
    Id:                 2
    Name:               vnf-test
    State:              Running
    Liveliness:         alive
    IP Address:         192.0.2.100
    VCPUs:              1
    Maximum Memory:     1048576 KiB
    Used Memory:        1087795 KiB
    Used 1G Hugepages:  0
    Used 2M Hugepages:  0
    Error:              None
    

Verify the Data Plane Configuration

Purpose

Verify the data plane configuration.

Action

To verify the data plane configuration:

  • Verify the status of the physical ports.

    content_copy zoom_out_map
    user@host> show interfaces heth-0-0 statistics
    Physical interface: heth-0-0, Enabled, Physical link is Up
      Link-level type: Ethernet, Media type: Copper, MTU: 9192, Speed: 1Gbps, Duplex: Full-duplex, Auto-negotiation: Enabled
      Device flags   : Present Running
      Current address: 00:00:5e:00:53:8d, Hardware address: 00:00:5e:00:53:8d
        Input packets : 1522
        Output packets: 1466
      MAC statistics:
            Input bytes: 161164, Input packets: 1522, Output bytes: 155312, Output packets: 1466
      VF statistics:
        VF Number: 0, PCI Address: 0000:06:10:1, Mapped to: ge-0/0/0
          Input bytes: 161164, Input packets: 1522, Output bytes: 155312, Output packets: 1466, Multicast packets: 4
        VF Number: 1, PCI Address: 0000:06:10:5, Mapped to: ge-0/0/0
          Input bytes: 0, Input packets: 0, Output bytes: 0, Output packets: 0, Multicast packets: 0
        VF Number: 2, PCI Address: 0000:06:11:1, Mapped to: ge-0/0/0
          Input bytes: 0, Input packets: 0, Output bytes: 0, Output packets: 0, Multicast packets: 0
        VF Number: 3, PCI Address: 0000:06:11:5, Mapped to: ge-0/0/0
          Input bytes: 0, Input packets: 0, Output bytes: 0, Output packets: 0, Multicast packets: 0
    
  • Verify the status of the Layer 2 (ge-0/0/x) and Layer 3 (ge-1/0/x) interfaces.

    content_copy zoom_out_map
    user@host> show interfaces interface-name statistics

    For example:

    content_copy zoom_out_map
    user@host> show interfaces ge-0/0/0 statistics
    Physical interface: ge-0/0/0, Enabled, Physical link is Up
      Interface index: 169, SNMP ifIndex: 521
      Link-level type: Ethernet, MTU: 9192, LAN-PHY mode, Speed: 1000mbps, BPDU Error: None, Loop Detect PDU Error: None, Ethernet-Switching Error: None,
      MAC-REWRITE Error: None, Loopback: Disabled, Source filtering: Disabled, Flow control: Enabled
      Device flags   : Present Running
      Interface flags: SNMP-Traps Internal: 0x4000
      Link flags     : None
      CoS queues     : 8 supported, 8 maximum usable queues
      Current address: 00:00:5e:00:53:43, Hardware address: 00:00:5e:00:53:43
      Last flapped   : 2020-07-08 09:22:06 UTC (20:46:40 ago)
      Statistics last cleared: Never
      Input rate     : 792 bps (0 pps)
      Output rate    : 792 bps (0 pps)
    
      Input errors: 0, Output errors: 0
      Active alarms  : None
      Active defects : None
      PCS statistics                      Seconds
        Bit errors                             0
        Errored blocks                         0
      Ethernet FEC statistics              Errors
        FEC Corrected Errors                    0
        FEC Uncorrected Errors                  0
        FEC Corrected Errors Rate               0
        FEC Uncorrected Errors Rate             0
      PRBS Statistics : Disabled
      Interface transmit statistics: Disabled
    
      Logical interface ge-0/0/0.0 (Index 333) (SNMP ifIndex 524)
        Flags: Up SNMP-Traps 0x24024000 Encapsulation: Ethernet-Bridge
        Input packets : 1608
        Output packets: 1552
        Protocol eth-switch, MTU: 9192
          Flags: Is-Primary, Trunk-Mode
    
footer-navigation