OpenSDN vRouter Next Hop Configuration ============================================== :date: 2020-07-28 In OpenSDN Release 1911, the next hop value in the vRouter is increased to 32 bits. By default, the vRouter can now create 512K next hops and supports up to 1 million next hops. Also, in release 1911 you can assign a high watermark limit in vRouter agent configuration file. If the number of next hops or Multiprotocol Label Switching (MPLS) labels exceed the watermark limit, the vRouter agent generates alarms. These alarms are generated based on the usage of next hops and MPLS labels against the watermark limit and maximum limit of next hops and MPLS labels. In releases prior to release 5.1, OpenSDN supported 16 bits next hop value in the vRouter. As the next hop value was assigned a 16 bit value, the vRouter could create a maximum of 65,536 next hops. The vRouter agent did not generate alarms when the number of next hops increased. When the number of next hops exceeded the maximum limit, the vRouter agent failed to perform another next hop, which led to loss of traffic. In the vRouter agent configuration file, ``contrail-vrouter-agent.conf``, you can configure a high watermark limit according to your requirement. The watermark limit specifies the maximum percentage of next hops or MPLS labels that you can use. The vRouter agent generates alarms when the next hop usage or the MPLS labels usage exceeds the watermark limit. For example, the default watermark limit is set to 80 (80% of the maximum next hops or MPLS labels vRouter can create). If the maximum number of next hops possible on the compute node is 100, an alarm is raised after 80 next hops are created. If the maximum number of MPLS labels that can be created on the compute node is 50, the alarm is raised after 40 MPLS labels are created. .. note:: The low watermark limit is calculated to be 95% of the high watermark limit. To configure vRouter object watermark limit in a cluster at the time of provisioning, you must assign a value to ``VROUTER_AGENT__DEFAULT__vr_object_high_watermark`` parameter either in the ``roles: vrouter:`` section or in the ``contrail_configuration`` section of the ``instances.yml`` file. You must assign a watermark limit in the range of 50–95 to the ``VROUTER_AGENT__DEFAULT__vr_object_high_watermark`` parameter. For example, to configure watermark limit to 60%, you must assign a value 60 to the ``VROUTER_AGENT__DEFAULT__vr_object_high_watermark`` parameter under the following sections: :: roles: vrouter: VROUTER_AGENT__DEFAULT__vr_object_high_watermark: 60 :: contrail_configuration: VROUTER_AGENT__DEFAULT__vr_object_high_watermark: 60 .. note:: If you assign a value to ``VROUTER_AGENT__DEFAULT__vr_object_high_watermark`` in the ``contrail_configuration`` section, the watermark limit for all vRouters that are configured using ``instances.yml`` file will be the same. To assign a different watermark limit to a vRouter, you have to assign the watermark limit to the ``VROUTER_AGENT__DEFAULT__vr_object_high_watermark`` parameter under the ``roles: vrouter:`` section of a vRouter. To change the watermark limit later, you must modify the ``vr_object_high_watermark`` parameter present in the ``[DEFAULT]`` section of the ``entrypoint.sh`` file. After you assign a watermark value to the ``vr_object_high_watermark`` parameter in the ``entrypoint.sh`` file, the ``contrail-vrouter-agent.conf`` configuration file is now updated with the ``vr_object_high_watermark`` parameter, which denotes the watermark limit. For example, to configure watermark limit to 75%, you must assign a value 75 to the ``vr_object_high_watermark`` parameter under the ``[DEFAULT]`` section: :: [DEFAULT] vr_object_high_watermark Based on the next hops or MPLS labels usage, the vRouter agent generates system defined alarms with various severity. Table 1: Alarms Generated by vRouter Agent +----------------------------------+----------------------------------+ | Next Hop and MPLS Label Usage | Severity Level of Alarm | | Against the Watermark Limit and | | | Maximum Limit | | +==================================+==================================+ | Next hop or MPLS labels usage | Major alarm is generated. | | exceeds the high watermark limit | | +----------------------------------+----------------------------------+ | Next hop or MPLS labels usage | Critical alarm is generated, and | | equals 100% of the maximum limit | high watermark alarm is also | | | present. | +----------------------------------+----------------------------------+ | Next hop or MPLS labels usage | Critical alarm is cleared, and | | reduces to 95% of the maximum | high watermark alarm is present. | | limit | | +----------------------------------+----------------------------------+ | Next hop or MPLS labels usage | High watermark alarm is cleared. | | reduces to 95% of the high | | | watermark limit | | +----------------------------------+----------------------------------+ Benefits of Increasing Next Hop Limit ------------------------------------- - Increase in next hop limit allows OpenSDN to scale more next hops than in earlier releases. - The alarms generated by vRouter agent enables you to monitor the usage and availability of next hops and MPLS labels. .. list-table:: **Release History Table** :header-rows: 1 * - Release - Description * - 2011 - In OpenSDN Release 1911, the next hop value in the vRouter is increased to 32 bits. By default, the vRouter can now create 512K next hops and supports up to 1 million next hops. Also, in release 1911 you can assign a high watermark limit in vRouter agent configuration file. If the number of next hops or Multiprotocol Label Switching (MPLS) labels exceed the watermark limit, the vRouter agent generates alarms.