Metaswitch Integrated Control Plane Update Guide Icp

User Manual:

Open the PDF directly: View PDF PDF.
Page Count: 51

Metaswitch Integrated Control Plane
Update Guide
SOLUTIONS GUIDE
New features and
changes affecting the
June 2015 release of
the Metaswitch
Integrated Control Plane
Metaswitch Manual AKE-021-0107
June 2015
CONFIDENTIAL
Notice
This manual is issued on a controlled basis to a specific person on the understanding that
no part of the Metaswitch code or documentation (including this manual) will be copied or
distributed without prior agreement in writing from Metaswitch.
Metaswitch reserves the right to, without notice, modify or revise all or part of this
document and/or change product features or specifications and shall not be responsible for
any loss, cost, or damage, including consequential damage, caused by reliance on these
materials.
Metaswitch and the Metaswitch logos are trademarks of Metaswitch Networks. All other
trademarks and registered trademarks are the property of their respective owners.
Copyright © 2011-2015 by Metaswitch Networks. All rights reserved.
Metaswitch Networks
100 Church Street
Enfield
EN2 6BQ
England
+44 20 8366 1177
http://www.metaswitch.com
Metaswitch Integrated Control Plane Update Guide : AKE-021-0107
CONFIDENTIAL
Contents
1 INTRODUCTION ........................................................................................................... 1
1.1 Purpose of this Document ................................................................................... 1
1.2 Document Overview ............................................................................................ 1
2 SEPARATELY LICENSABLE FEATURES ................................................................. 2
2.1 VLAN Management: DC-VLAN Manager ........................................................... 2
2.2 Ethernet Ring Protection Switching: DC-ERPS .................................................. 2
2.3 L2VPN enhancements ........................................................................................ 3
2.3.1 BGP Autodiscovery and Signaling for VPWS ........................................ 3
2.3.2 VPLS support.......................................................................................... 3
2.4 DC-LACP............................................................................................................. 3
2.5 Multi-Chassis Link Aggregation (MC-LAG) ......................................................... 4
2.6 DC-Ethernet OAM Manager................................................................................ 4
2.7 DC-Traffic Classification Manager ...................................................................... 5
2.8 IS-IS policy control using administrative tags ..................................................... 5
2.9 IGMP and MLD Proxy and Snooping Graceful Restart ...................................... 6
2.10 Static IGMP ......................................................................................................... 6
2.11 Link Layer Discovery Protocol: DC-LLDP ........................................................... 6
2.11.1 LLDP-MED support ................................................................................ 6
2.11.2 802.1 and 802.3 Organizationally Specific TLVs ................................... 6
2.12 STP BPDU Guard ............................................................................................... 7
2.13 BGP Dynamic Peers ........................................................................................... 7
2.14 BGP Additional Paths ......................................................................................... 7
2.15 BGP AS-Path multipath-relax ............................................................................. 7
2.16 BGP Send Community ........................................................................................ 7
2.17 BGP Best Path Calculation Improvements ......................................................... 7
2.18 BGP Import / Export Policy ................................................................................. 8
2.19 OSPF LSA throttling ............................................................................................ 8
3 OTHER ENHANCEMENTS .......................................................................................... 9
3.1 BGP features ....................................................................................................... 9
3.1.1 BGP Route Flap Dampening .................................................................. 9
3.1.2 BGP AS number checking ...................................................................... 9
3.1.3 BGP Peer fallover ................................................................................... 9
3.1.4 BGP Graceful Restart Improvements ..................................................... 9
3.1.5 Additional per-peer group configuration for DC-BGP........................... 10
3.1.6 Peer Statistics ....................................................................................... 10
3.1.7 Improved error handling ....................................................................... 10
Metaswitch Integrated Control Plane Update Guide : AKE-021-0107
CONFIDENTIAL
3.2 MPLS features .................................................................................................. 10
3.2.1 More flexible LDP distribution support ................................................. 10
3.2.2 LDP Peer Support for Graceful Restart ................................................ 10
3.2.3 DC-LDP option to prevent distribution of labels for Prefix FECs over
targeted LDP peer sessions .............................................................................. 11
3.2.4 Read-only TE information available at Transit Nodes.......................... 11
3.2.5 New DC-LDP Management tables showing labels received/sent ....... 11
3.2.6 Reporting CC and CV types supported by peers ................................. 11
3.2.7 Notification for auto-discovered Pseudowires ...................................... 11
3.2.8 DC-LDP support for MAC Address Withdraw messages for
Generalized PWid FECs ................................................................................... 11
3.3 Multicast features .............................................................................................. 12
3.3.1 DC-VLAN Manager integration ............................................................. 12
3.4 OAM features .................................................................................................... 12
3.4.1 Reporting faults detected by OAM protocols........................................ 12
3.5 OSPF features .................................................................................................. 12
3.5.1 Local Interface Identifiers in OSPF Neighbor Tables ........................... 12
3.6 L3VPN Manager features ................................................................................. 12
3.6.1 Support for LSP Ping over Layer 3 VPNs ............................................ 12
3.7 RTM features .................................................................................................... 12
3.7.1 DC-RTM supports defining the weight of a Route ............................... 12
3.8 CSS features ..................................................................................................... 13
3.8.1 DC-CSS performance improvements ................................................... 13
3.9 General Integrated Control Plane features ....................................................... 13
3.9.1 Performance Improvement for Management Table Walks .................. 13
3.10 LMP features ..................................................................................................... 13
3.10.1 Extended LMP Hello Dead Interval ...................................................... 13
4 BUG FIXES ................................................................................................................. 14
5 INTEGRATING THIS RELEASE ................................................................................ 26
5.1 Non-Back compatible changes in this release .................................................. 26
5.1.1 General Integrated Control Plane changes .......................................... 26
5.1.2 BGP changes........................................................................................ 27
5.1.3 Multicast changes ................................................................................. 30
5.1.4 Layer 2 changes ................................................................................... 31
5.1.5 MPLS changes ..................................................................................... 31
5.1.6 OAM changes ....................................................................................... 32
5.1.7 RTM changes ....................................................................................... 33
5.1.8 CSS changes ........................................................................................ 33
5.2 Enabling the new features in this release ......................................................... 33
5.2.1 General Integrated Control Plane features .......................................... 33
5.2.2 L2VPN Manager features ..................................................................... 34
5.2.3 Layer 2 Features .................................................................................. 34
5.2.4 ISIS features ......................................................................................... 36
5.2.5 BGP features ........................................................................................ 36
5.2.6 MPLS features ...................................................................................... 40
5.2.7 Multicast features ................................................................................. 43
5.2.8 OAM features........................................................................................ 44
Metaswitch Integrated Control Plane Update Guide : AKE-021-0107
CONFIDENTIAL
5.2.9 OSPF features ...................................................................................... 45
5.2.10 L3VPN Manager features ..................................................................... 45
5.2.11 RTM features ........................................................................................ 46
5.2.12 LMP features ........................................................................................ 46
Metaswitch Integrated Control Plane Update Guide : AKE-021-0107
CONFIDENTIAL
1 Introduction
1.1 Purpose of this Document
This document is provided for the benefit of existing customers to help you decide whether
to integrate the June 2015 release of the Metaswitch Integrated Control Plane, and to help
you with that integration. This document
describes the new features and bug fixes contained in this release
gives you an overview of the steps required to integrate this release.
We strongly recommend that you read this document before integrating this release or
before deciding whether to integrate it.
For general advice about how to upgrade your code to this new release, please see the
Existing Users Getting Started Guide.
1.2 Document Overview
This document is divided into the following sections.
Chapter 2, Separately Licensable Features, describes the enhancements to the
Metaswitch Integrated Control Plane in the June 2015 release of the product code that may
require additional licenses.
Chapter 3, Other Enhancements, describes the enhancements to the Metaswitch
Integrated Control Plane available in the June 2015 release that are included in the
standard maintenance service.
Chapter 4, Bug Fixes, describes any bugs that have been fixed since the June 2014
release of the Metaswitch Integrated Control Plane.
Chapter 5, Integrating This Release, describes the steps required to integrate the June
2015 release of the Metaswitch Integrated Control Plane.
1
Metaswitch Integrated Control Plane Update Guide : AKE-021-0107
CONFIDENTIAL
2 Separately Licensable Features
This chapter describes the Metaswitch Integrated Control Plane enhancements available in
the June 2015 release that may require an additional license. Please talk to your
Metaswitch Sales Contact if you want to use any of these features.
2.1 VLAN Management: DC-VLAN Manager
DC-VLAN Manager is a new Metaswitch product that supports the management of VLANs,
as standardized by the IEEE in 802.1Q (2011).
The function provided by DC-VLAN Manager includes
configuring VLANs
configuring VLAN membership
configuring static MAC forwarding entries
configuring port states
triggering FDB flushing.
In addition, DC-VLAN Manager supports the following features.
Seamless integration with Metaswitch’s other Layer 2 products, such as DC-STP,
DC-ERPS and DC-IGMP Snooping.
Support for running multiple independent instances to support multiple virtual bridges.
2.2 Ethernet Ring Protection Switching: DC-ERPS
DC-ERPS is a new Metaswitch product that supports the Ethernet Ring Protection
Switching protocol, as standardized by the ITU in G.8032 (2012). Ethernet Ring Protection
Switching (ERPS) is a loop elimination protocol, providing a function similar to the spanning
tree protocols (STP, RSTP and MSTP). ERPS is optimized for Ethernet ring topologies. In
particular, the protocol ensures that the active topology is loop free at all times and
provides rapid protection switching in the event of a link failure.
DC-ERPS is architected for superior functionality, performance and scalability. As such it
supports the following features.
Support for multiple ring instances, to enable load balancing around a ring.
Support for interconnected rings.
Sub-50 ms protection switching. Typically the protection switching time within
DC-ERPS is < 1ms.
2
Metaswitch Integrated Control Plane Update Guide : AKE-021-0107
CONFIDENTIAL
Support for running multiple independent instances of the protocol to support multiple
virtual bridges, or to enable distribution of ring instances to line cards or additional
cores.
2.3 L2VPN enhancements
DC-L2VPN Manager provides a complete management solution for L2VPNs, which allows
network operators to provision L2VPN services across an IP/MPLS network. It is
enhanced with the following major features.
2.3.1 BGP Autodiscovery and Signaling for VPWS
DC-L2VPN Manager is enhanced to support BGP-auto-discovery and signaling of VPWS
Pseudowires as defined by RFC 4761. This feature allows network administrators to
provision a VPWS with much reduced configuration. For example, the specific remote PE
for a given site need not be configured on the local PE, allowing the network site to be re-
homed without pervasive changes throughout the network. It is a popular feature with
several major router manufacturers and will be required to interoperate in networks which
feature them. DC-L2VPN Manager now supports VPWSs using all the frequently used
mechanisms for provisioning Pseudowires: static configuration, LDP, and BGP signaling.
2.3.2 VPLS support
DC-L2VPN Manager is extended to support the complete management of VPLSs as
defined by RFC 4762. VPLS allows network operators to offer multipoint Ethernet VPN
services over their IP/MPLS networks by providing the equivalent of a distributed Ethernet
Switch across their IP/MPLS core. VPLS is a well-established technology used to provide
business services, as well as in Data Center interconnect use cases. BGP auto-discovery
can also be used to automatically discover other PE routers in the VPLS, further reducing
the configuration burden. As for VPWSs, DC-L2VPN Manager supports static
configuration, LDP signaling, and BGP signaling to provision the pseudowires to create the
VPLS.
2.4 DC-LACP
DC-LACP is a new Metaswitch product that supports both static aggregation and the Link
Aggregation Control Protocol, as standardized by the IEEE in 802.1AX (2008). Link
aggregation allows one or more interfaces to be aggregated together to form a bundle (also
referred to as a port channel, Link Aggregation Group (LAG), or bond). The bundle can
then be represented to higher layers as a single interface. This provides the following
benefits.
Increased bandwidth - the bundle interface is a logical interface with higher capacity.
Resilience - failure of a single link within the bundle does not cause the bundle to fail.
Load balancing - traffic can be distributed across the links within the bundle.
The Link Aggregation Control Protocol (LACP) provides a standardized way of exchanging
aggregation information between partner systems. This provides the following additional
benefits over static aggregation.
3
Metaswitch Integrated Control Plane Update Guide : AKE-021-0107
CONFIDENTIAL
Automatic failover if a link fails, LACP automatically removes the link from the bundle,
and selects a new link if possible.
Detecting misconfigurations LACP ensures that link aggregation is configured
consistently at both ends of the link.
DC-LACP is architected for superior performance and scalability. As such it supports the
following features.
Sub-50 ms link failover time.
Distributable components to enable offload of LACPDU transmission and reception to
line-cards or additional cores.
Support for running multiple independent instances of the protocol to support multiple
virtual bridges.
2.5 Multi-Chassis Link Aggregation (MC-LAG)
DC-LACP is enhanced to support a proprietary form of Multi-Chassis Link Aggregation.
This is similar to mLACP as defined by the Inter-Chassis Communication Protocol (ICCP)
and standardized by the IETF in RFC 7275. MC-LAG allows a Customer Edge (CE) device
to be multi-homed to multiple Provider Edge (PE) devices in a provider network. This can
be used to provide protection against PE failures, or to load balance across multiple links to
a provider network.
Metaswitch’s MC-LAG implementation supports the following features.
Support for active-standby operation for protection against PE failures or core isolation.
Proprietary extensions to support back-to-back MC-LAG to enable protection against
both CE and PE failures.
Distributable components to enable offload of LACPDU transmission and reception to
line-cards or additional cores.
Support for running multiple independent instances of the protocol to support multiple
virtual bridges.
2.6 DC-Ethernet OAM Manager
DC-Ethernet OAM Manager is a new product that provides complete management of
operations, administration and maintenance for Layer 2. Ethernet OAM function monitors
and diagnoses network behavior and can be used to ensure that the Ethernet service
provided meets any required Service Level Agreements. For example, Ethernet OAM is
required in order to implement MEF UNI Type 2.
DC-Ethernet OAM Manager provides configuration and management of this function, as
standardized by the ITU (Y.1731), IETF (IEEE 802.1ag and IEEE 802.1 ap), and MEF
(MEF 31 and MEF 36). This includes the following.
4
Metaswitch Integrated Control Plane Update Guide : AKE-021-0107
CONFIDENTIAL
Maintenance End Points (MEPs)
Proactive Continuity Check (ETH-CC)
Ethernet loopback (ETH-LB)
Loss Measurement (ETH-LM)
Delay Measurement (ETH-DM)
DC-ETH OAM Manager reports interface fault information based on faults on a MEP
learned by OAM protocols.
2.7 DC-Traffic Classification Manager
DC-Traffic Classification Manager is a new product that allows network administrators to
configure traffic classification. Traffic Classification plays a key role in network devices.
It can be used to enforce QoS for a given traffic class. Examples of this include
constraining bandwidth usage by traffic class and shaping outgoing traffic. In this way,
QoS can help significantly improve the overall efficiency of the network and can be
used to implement differentiated services or MEF 2.0 traffic classification, for example.
It can assign traffic to a different forwarding component, for example a VLAN, VPWS,
or VPLS.
DC-TCM provides the configuration of the following.
Match rules to classify traffic into flows, for example to match on port, VLAN ID, or
class of service.
Actions – to be applied to these flows, for example to mark a packet, add a VLAN ID or
assign to a queue. This flexible model allows complex forwarding functions to be
applied to a given flow.
Policers to constrain bandwidth usage by incoming data.
Shapers to control bandwidth usage by outgoing data.
Ports and queues to control per-port and per-queue scheduling.
2.8 IS-IS policy control using administrative tags
DC-ISIS is enhanced to support policy control using administrative tags as defined by RFC
5130. IS-IS administrative tagging provides improved management control of prefix
distribution within an IS-IS domain. It provides the following function.
Configurable policy for associating an administrative tag to a prefix.
Configurable filtering of routes based on administrative tag.
5
Metaswitch Integrated Control Plane Update Guide : AKE-021-0107
CONFIDENTIAL
2.9 IGMP and MLD Proxy and Snooping Graceful
Restart
DC-IGMP Snooping and DC-IGMP Proxy are enhanced to support Graceful Restart
following a control plane restart. This allows uninterrupted multicast data forwarding across
a planned or unplanned software restart or a hardware failure to the active control card (if
redundant control cards are available). This function applies to both IGMP (for IPv4 traffic)
and MLD (for IPv6).
2.10 Static IGMP
DC-IGMP is enhanced to support static configuration of multicast group membership. This
is required to support forwarding multicast traffic to hosts which do not support IGMP.
DC-IGMP allows both (*,G) and (S,G) group membership to be configured.
This feature is supported by DC-IGMP Router, DC-IGMP Proxy and DC-IGMP Snooping.
2.11 Link Layer Discovery Protocol: DC-LLDP
2.11.1 LLDP-MED support
DC-LLDP is enhanced to support the LLDP-MED protocol extensions defined in
ANSI/TIA-1057-2006, including explicit support for the mandatory and conditionally
mandatory TIA Organizationally Specific TLVs used for LLDP-MED. DC-LLDP now
validates and displays received TLVs of those types, and optionally transmits them.
These extensions enable a Network Connectivity Device to discover information about
connected Media Endpoint Devices (such as location information) and vice-versa. This
helps detect misconfiguration, and can be used to auto-configure Media Endpoint Devices.
2.11.2 802.1 and 802.3 Organizationally Specific TLVs
DC-LLDP is enhanced to support explicitly the following TLV types.
Several of the 802.1 Organizationally Specific TLVs defined in 802.1AB-2009 Annex E;
specifically, the Port VLAN ID TLV, Port and Protocol VLAN ID TLV, VLAN Name TLV,
Protocol Identity TLV and Link Aggregation TLV.
All of the 802.3 Organizationally Specific TLVs defined in 802.1AB-2009 Annex F.
DC-LLDP now validates and displays received TLVs of those types, and optionally
transmits them.
These extensions enable a network operator to discover 802.1-scope and 802.3-scope
information about the neighboring device, such as the default VLAN and MTU of the
connected port. This can be used by network administrators to help detect
misconfiguration.
6
Metaswitch Integrated Control Plane Update Guide : AKE-021-0107
CONFIDENTIAL
2.12 STP BPDU Guard
DC-STP is enhanced to support BPDU Guard, a feature that can be used to enforce the
edge of an STP network. When enabled, BPDU Guard prevents BPDUs received from
outside the boundary of the STP network from affecting the topology of the STP network.
When such BPDUs are received, DC-STP reports the fault to interface management so the
interface can be disabled. This improves network reliability and security.
2.13 BGP Dynamic Peers
DC-BGP is enhanced to support dynamic BGP peers (neighbors). This feature significantly
reduces the configuration burden for network administrators by removing the need to
configure all BGP peers at both ends of the desired BGP session. BGP peering can be
configured with a group of neighbors by specifying a series of IP prefixes which determines
the peer group that should be used for each peer. In this way, network administrators can
restrict access to peers that match a set of prefixes and apply different BGP configuration
on a per-prefix basis.
2.14 BGP Additional Paths
DC-BGP is enhanced to support advertising multiple BGP paths for the same destination.
This function allows the network to implement fast connectivity restoration. In the event of
a failure, the routers can switch to a backup route without waiting for BGP route
convergence to take place. DC-BGP Additional Paths can also be used for other features
that improve traffic forwarding in the network, such as load balancing across the best and
backup paths. It includes support for draft-ietf-idr-add-paths-09 and all mandatory function
in draft-ietf-idr-add-paths-guidelines-06.
2.15 BGP AS-Path multipath-relax
DC-BGP is enhanced to support an option to treat two BGP routes as equal cost even if
they travel through different Autonomous Systems (as recorded in AS_PATH). This allows
an administrator to enable ECMP routing in a larger range of topologies. Routes with
different AS_PATHs can now be programmed into the forwarding table as equal cost
multipath (ECMP) routes, as long as their AS_PATH lengths (and other relevant BGP
attributes) are the same.
2.16 BGP Send Community
DC-BGP is enhanced to support configuration options to enable or disable sending BGP
community and extended community attributes to specific BGP peers and peer groups.
This allows network administrators to use “bgp neighbor send-community” configuration
commands, for example, to prevent distribution of community attributes to peers that don’t
support them.
2.17 BGP Best Path Calculation Improvements
DC-BGP is enhanced to allow the administrator greater control over parameters used in
BGP best path calculations. This allows network administrators to tune the traffic flow
through their network. With this enhancement, administrators can now
7
Metaswitch Integrated Control Plane Update Guide : AKE-021-0107
CONFIDENTIAL
configure a default metric to be applied to all routes redistributed into DC-BGP from
RTM
set the weight of a route redistributed into DC-BGP
set a default weight to be applied to all routes received from a BGP neighbor
control which route characteristics are used in the best calculation, for example whether
or not to compare the AS-path length of received routes.
2.18 BGP Import / Export Policy
DC-BGP is enhanced to support configuration of import and export route maps at the peer
AFI/SAFI level. Import and export route maps identify a set of routes to which a given
policy should be applied (for example, to manipulate the set of routes distributed to a given
peer). By providing this configuration at the AFI/SAFI level, network operators have a
simplified configuration if they want to apply policies to sets of routes based on their
address family.
2.19 OSPF LSA throttling
DC-OSPF is enhanced to support Link-State Advertisement (LSA) Throttling. LSA
throttling allows more sophisticated handling of route changes to optimize for route
convergence times. LSA updates are initially sent quickly to decrease convergence times,
but will be slowed down if the network is unstable to prevent generation of excessive traffic.
8
Metaswitch Integrated Control Plane Update Guide : AKE-021-0107
CONFIDENTIAL
3 Other Enhancements
This chapter describes the key enhancements in the June 2015 release that are included
as part of the standard maintenance service.
In addition to these enhancements, this release includes a large number of additional minor
enhancements and bug fixes. These are listed in chapter 4, Bug Fixes.
In order to benefit from any of these enhancements, you must ensure that you have a
license for the underlying function.
For more information on integrating any of the features covered here, see chapter 5,
Integrating This Release.
3.1 BGP features
3.1.1 BGP Route Flap Dampening
DC-BGP is enhanced to support AFI/SAFI-level configuration for route flap dampening.
Route flap dampening reduces the churn in networks running BGP by preventing routes
from being advertised, withdrawn, then re-advertised in rapid succession. Extending DC-
BGP so that dampening can be configured on the AFI/SAFI-level (as well on a per-peer or
per-group basis) simplifies the configuration required by the network administrator.
3.1.2 BGP AS number checking
DC-BGP is enhanced to allow network administrators to disable checking of the first AS
number on routes received from external peers. This simplifies configuration in a network
where external peers do not conform to standard behavior.
3.1.3 BGP Peer fallover
DC-BGP is enhanced to support configuration of fast fallover on a per-peer and per-peer
group basis. This is in addition to the existing configuration option to configure fast fallover
for all peers. When fast fallover is enabled for a given peer, DC-BGP monitors the route to
the peer and brings the session down if the route fails. This allows DC-BGP to detect and
react to peer session failure more quickly than previously because it does not need to wait
until the BGP KEEPALIVE session times out.
3.1.4 BGP Graceful Restart Improvements
DC-BGP is enhanced to support an improved Graceful Restart configuration mechanism.
Graceful Restart can now be enabled or disabled at any time, allowing network
administrators to dynamically enable or disable the Graceful Restart feature.
DC-BGP’s management interface is enhanced to indicate when one or more peers do not
support Graceful Restart procedures. This allows network operators to more easily
diagnose why a Graceful Restart has exited unexpectedly.
9
Metaswitch Integrated Control Plane Update Guide : AKE-021-0107
CONFIDENTIAL
3.1.5 Additional per-peer group configuration for DC-BGP
DC-BGP is enhanced to support additional peer configuration fields using the
bgpPeergrTable and bgpPeergrAfiSafiTable, allowing you to set more configuration on a
per-peer group basis. Peer groups ease the configuration burden on network
administrators by allowing multiple peers to use the same configuration parameters. Per-
peer equivalents to all the new fields currently exist in the bgpPeerTable or
bgpPeerAfiSafiTable.
3.1.6 Peer Statistics
DC-BGP is extended to display the following statistics.
Counts of transmitted and received packets by type per neighbor for all packet types.
Counts of the number of prefixes denied for a given reason.
This provides improved management and problem resolution for BGP administrators.
3.1.7 Improved error handling
The BGP protocol requires a BGP session to be torn down when a malformed message is
received from a peer. This can cause network instability when the network contains
misbehaving BGP speakers.
To mitigate this problem, DC-BGP’s error handling is enhanced as follows.
DC-BGP is enhanced to support the ‘attribute-discard’ error handling procedures
defined in draft-ietf-idr-error-handling-03.
DC-BGP allows you to configure it to ignore malformed BGP_UPDATE messages,
rather than tearing down sessions.
3.2 MPLS features
3.2.1 More flexible LDP distribution support
DC-LDP Session Controller is distributable, for example to allow LDP messages to be
processed by intelligent line-cards handling a specific subset of LDP sessions. This
distribution support is enhanced to allow easier configuration of distributed systems.
3.2.2 LDP Peer Support for Graceful Restart
DC-LDP now provides read-only management fields to display, for a session, the LDP
peer’s support for Graceful Restart and whether the local LDP router is using Graceful
Restart procedures on that LDP session. This allows a network operator to more easily
diagnose configuration errors.
10
Metaswitch Integrated Control Plane Update Guide : AKE-021-0107
CONFIDENTIAL
3.2.3 DC-LDP option to prevent distribution of labels for Prefix FECs
over targeted LDP peer sessions
DC-LDP is enhanced to allow network administrators to disable distribution of labels for
Prefix FECs over targeted peer sessions. This allows devices to interoperate with non-
conformant LDP implementations that do not allow labels to be received for Prefix FECs
over targeted peer sessions.
3.2.4 Read-only TE information available at Transit Nodes
DC-TPM now supports the mplsTunnelResourceTable at transit, and therefore allows
support for show commands for RSVP state at transit nodes. This allows network
administrators to more easily analyze the state of their network and diagnose problems.
3.2.5 New DC-LDP Management tables showing labels received/sent
DC-LDP’s management interface is extended to provide full visibility into the labels that
LDP has distributed, programmed or retained for each FEC. This allows network
administrators to easily inspect the set of labels distributed by LDP in the network and
ensure their network is operating as expected.
3.2.6 Reporting CC and CV types supported by peers
DC-TPM now reports the Control Channel and Connectivity Verification types that a peer
has advertised support for on over a Pseudowire, in an extension to the pwTable MIB. This
allows identification of support for features such as LSP Ping on a per-Pseudowire basis.
3.2.7 Notification for auto-discovered Pseudowires
When using the BGP VPWS/VPLS auto-discovery feature, it is not always desirable to
have a full mesh of LDP peers set up in the network at all times. A new notification,
pwAutoCreated, is sent when an auto-discovered Pseudowire is created in DC-TPM. This
allows you to set up targeted LDP sessions to only those peers required to support the
current set of Pseudowires.
3.2.8 DC-LDP support for MAC Address Withdraw messages for
Generalized PWid FECs
DC-LDP is extended to support MAC Address Withdraw messages for Generalized PWid
FECs. These messages allow you to implement faster VPLS convergence when the
topology changes by forcing a MAC flush operation at the affected PE routers.
11
Metaswitch Integrated Control Plane Update Guide : AKE-021-0107
CONFIDENTIAL
3.3 Multicast features
3.3.1 DC-VLAN Manager integration
Metaswitch’s IGMP/MLD Snooping solution is now fully integrated with the new DC-VLAN
Manager component (see section 2). With this enhancement, an IGMP/MLD Snooping
instance will run over the active topology for a VLAN, meaning that you can drive changes
to the IGMP/MLD Snooping-programmed forwarding entries based on changes to the
active topology detected through, for example, DC-STP or DC-ERPS.
3.4 OAM features
3.4.1 Reporting faults detected by OAM protocols
DC-MPLS OAM Manager is extended to report interface faults learned by OAM protocols.
These failures are reported to your I3 Stub code over a new IPS interface, the Fault
Reporting Interface. This allows you to fully integrate DC-MPLS OAM function with the
rest of your architecture (for example, using fault information to determine the operational
status of the interface as represented to the other components in the architecture). The
reference I3 Stub includes code that implements this function.
3.5 OSPF features
3.5.1 Local Interface Identifiers in OSPF Neighbor Tables
DC-OSPF’s neighbor tables ospfPmNbrTable and ospfPmMultiAreaNbrTable now provide
read-only fields for the local interface IP address and interface index. This makes it easier
for network administrators to correlate between OSPF neighbors and the interface over
which they are connected.
3.6 L3VPN Manager features
3.6.1 Support for LSP Ping over Layer 3 VPNs
DC-L3VPN Manager now provides the Route Distinguisher when programming an LSP for
a BGP Layer 3 VPN. This allows you to implement support for LSP Ping over Layer 3
VPNs.
3.7 RTM features
3.7.1 DC-RTM supports defining the weight of a Route
DC-RTM is enhanced to set the weight of an individual route redistributed into DC-BGP.
This allows network administrators to tune the flow of traffic through their network by
making individual routes more or less preferred.
12
Metaswitch Integrated Control Plane Update Guide : AKE-021-0107
CONFIDENTIAL
3.8 CSS features
3.8.1 DC-CSS performance improvements
The performance of DC-CSS during rollback and Graceful Restart is significantly improved
in this release.
3.9 General Integrated Control Plane features
3.9.1 Performance Improvement for Management Table Walks
The Metaswitch Management Interface is enhanced to allow your management code to
request multiple rows in a single AMB_GET request, rather than solely individual rows.
This improves performance with large table walks and is particularly beneficial in distributed
architectures where each row requires two context switches between different OS
processes / cards. This is supported for all Layer 3 Unicast and Multicast routing solutions,
and all Layer 2 solutions.
3.10 LMP features
3.10.1 Extended LMP Hello Dead Interval
You can now configure an extended LMP Hello Dead interval. This allows LMP Graceful
Restart to work with devices that take more than 65 seconds to restart.
13
Metaswitch Integrated Control Plane Update Guide : AKE-021-0107
CONFIDENTIAL
4 Bug Fixes
The June 2015 release includes the following fixes and additional minor enhancements.
You can obtain further information about these changes by viewing the online SFR system.
Please contact your Customer Support representative for instructions on accessing this
system.
Product
SFR#
Summary
AI3
463066
Assertion failed: 'NBB_L3QE_EMPTY_LIST(((AI3_DATA *)lib_data)-
>pend_addr_change_interfaces)' file ../../../../code/comn/ai3/ai3apif.c, line
501
AI3
466883
Unexpected AI3 PD log seen when running LACP
BDST
467119
Assertion Failed:'INVALID BRANCH' file
../../../../code/comn/nbase/base/nbbpd.c, line 1381
BDST
467858
When programmed with ATG_BDPI_STLP_VLAN_INTERFACE scoped
STLP state, the BD stub doesn't update the per-VLAN forwarding state
BDST
475521
Adding a BD to the BD stub fails if an interface in the underlying bridge is
down.
BDST
475522
Adding an STLP when the BD interfaces have not been added to bridges
leads to problem logs
BFDST
462395
Assert in BFD stub when using BFDL to provide fast-hellos
BFDST
469752
BFD hardware assist not updated with new tx packet if remote changes its
my discriminator
CIPR
476445
Routes over interface indices greater than 4096 do not get programmed
into the O/S
CMLS
473248
Address list TLV with length 0xfffe causes RALC to assert.
DC-BGP
410798
Assert in qbra_loc_create_route, qbraloc1.c, line 454:
NBB_ASSERT_NUM_LT(num_ecmp_routes, max_ecmp_routes);
DC-BGP
454035
Assert in qbdc_del_replacing_ari_route (qbdcph12.c:609)
DC-BGP
457064
Assert in qbnm_check_conn_collision() on line 477 of qbnmutil.c
DC-BGP
457799
Mibstub crashes while receiving BGP Peer state
DC-BGP
460385
BGP fails to ignore recursive NLRI in IPv6 update when link local address
present
DC-BGP
462342
Assertion failed: '!(NBB_L_IN_LIST(aro_cb->eor_marker->lqe))' file
../../../../code/bgp/qbumadve.c, line 113
DC-BGP
462707
Invalid cell hit in NM Connection FSM - input 9 in state 1
DC-BGP
462796
Restart exit reason is not set correctly if peer fails to restart
DC-BGP
462933
DC-BGP's bgpRouteMapSeLocPref field should be of type Unsigned32
instead of Integer32
DC-BGP
463713
The description of bgpRmEntStrictConfed does not make clear what
confederation checks it applies to
DC-BGP
463852
BGP-NM applies cross-row MIB checking even for out-of-service rows
DC-BGP
463945
BGP updates restart_exit_reason to COMPLETE too early in processing
DC-BGP
464307
Assert !(LOCAL.rm_recovery_timer.pending), qbrmrst.c,
qbrm_restart_complete.
DC-BGP
464670
Assertion failed: '(NBB_BUF_SIZE)(((*offset))+((8))) <= ((NBB_IPS
*)((ips)))->data_size' file ../../../../code/bgp/qbmlenc2.c, line 725
DC-BGP
464778
Assert in qbra_loc_add_route during startup when using BGP with
aggregates
DC-BGP
465245
BGP GR can't complete until select-defer timer pops if no peers support an
AFI-SAFI with preserved state
14
Metaswitch Integrated Control Plane Update Guide : AKE-021-0107
CONFIDENTIAL
DC-BGP
465445
Set bgpRmEntRestartAge from the select defer timer not the recovery
timer
DC-BGP
465477
Assertion failed: 'replacing_route->replaced_route == loc_route_cb' file
../../../../code/bgp/qbumalfm.c, line 776
DC-BGP
465537
Assertion failed: 'AVL3_IN_TREE(*node)' file ../../../../code/comn/ntlavll.c,
line 675
DC-BGP
465769
Allow a BGP IP prefix with length 0
DC-BGP
466525
Assertion failed: 'ari_cb != NULL' file Z:\code\bgp\qbdcutil.c, line 711 -
qbdc_ari_iterate_next
DC-BGP
467282
Assert due to adding a node into a list it is already in.
qbra_loc_remove_route(), qbraloc1.c
DC-BGP
468048
Assertion failed: 'INVALID BRANCH' file ../../../../code/bgp/qbrmcfsm.c, line
844
DC-BGP
468375
Bugged assert in BGP: NM ORF capabilities array
DC-BGP
468468
Assert qbum_next_advert_loc_rib_route() qbumalfm.c line 948 when BGP
being deactivated
DC-BGP
469205
Segmentation fault in BGP in low memory conditions following resource
timer pop
DC-BGP
469682
DC-BGP cannot create both IPv4 and IPv6 'listen all' sockets
DC-BGP
470432
Improve BGP phase progression flow control
DC-BGP
470454
Remove restrictions on creation of peer MIB rows in BGP
DC-BGP
470502
Updated route never advertised to RTM by BGP
DC-BGP
471287
Assert in qbnm_bgp_sck_fsm() in very heavily loaded system
DC-BGP
472122
Assertion failed: 'LOCAL.pm.match_as_regex_test == NULL' file
../../../../code/bgp/qbpmrmm2.c, line 1496
DC-BGP
472123
Assertion failed: 'QBDC_AQL_IS_UNQ_PEND_FREE(next_hop_cb) ||
(next_hop_cb->next_hop_local == ATG_YES)' file
../../../../code/bgp/qbdcveri.c, line 561
DC-BGP
472150
NBB_ASSERT_INVALID_BRANCH qbrm_get_bitmask_from_pref_type().
qbrmutl4.c line 1010
DC-BGP
472157
NBB_ASSERT_NUM_LT(open_data_ptr->capabilities_count,
QBNM_MAX_NUM_CAPABILITY_OFFSETS); qbrm_store_peer_caps(),
qbrmnm1.c
DC-BGP
472772
Assert Fail: file ../../../../code/bgp/qbpmagg3.c:1656:
'qbpm_is_eligible_for_aggr(loc_route_cb, FALSE, aggr_cb NBB_CCXT)'
nasserts=1
DC-BGP
472998
BGP does not treat some TCP socket errors as fatal
DC-BGP
473817
Crash/assert with call stack including qbdc_prc_rpi_denied_loc_route()
when node restarts and advertise_inactive = AMB_FALSE
DC-BGP
474290
Aggregate routes advertised to peers in a peer group and with
next_hop_self are advertised with the wrong next hop
DC-BGP
474500
Assert hit in DC-BGP on receipt of invalid ORF Route Refresh message
DC-BGP
475185
BGP outbound policy with a mixture of NLRI matching and general rules
not working correctly
DC-BGP
475373
Assertion failed: 'mj_cb != NULL' file Z:\code\bgp\qbdcphas.c, line 243
during BGP deactivation
DC-BGP
476217
Assertion failed: 'config_cb->row_data.row_status == AMB_ROW_ACTIVE'
file ../../../../code/bgp/qbpmadd.c, line 1299
DC-BGP
477036
AS path string can wrap on a GET on the NLRI or ARO table
DC-BVM
462239
VPN Manager will not re-enable BGP routing successfully if it deactivated
while setting use_bgp_routing to ATG_NO
DC-BVM
462577
DC-BVM incorrectly logs resource shortage message for a normal
stop/restart of DC-BGP
15
Metaswitch Integrated Control Plane Update Guide : AKE-021-0107
CONFIDENTIAL
DC-BVM
462597
Assert in VPN Manager - qvb_rp_rv_calc_num_next_hops() line 957 -
Assertion Failed:'*num_invalid_next_hops == 0'
DC-BVM
463188
Hit invalid cell in qvbrxfsm.c if last tunnel deleted for route while Dissociate
FEC outstanding (Input 4 state 6)
DC-BVM
463917
Assert in qvbrxfut.c at line 104 : (null) NBB_L_EMPTY_LIST(vrf_cb-
>vrf_rvx_buf_req_root) 0 (null) 0
DC-BVM
464500
Assert in ahl_mj_add_join() called from qvb_add_lmgr_join()
DC-BVM
465492
VRF AFM can have no route to a destination if it has been advertised with
two different RDs and one is then withdrawn
DC-BVM
466338
L3VPN graceful restart fails when there is an incompletely configured VRF
DC-BVM
473111
DC-L3VPN Manager stops being able to process routes if it receives one
with no route target
DC-BVM
474804
Assert in asejoifm.c at line 2370 (null) INVALID BRANCH 0 (null) 0
DC-BVM
476389
After deleting route-target, BVM sends ATG_LSI_DISSOCIATE_FEC_XC
and ATG_LSI_ASSOCIATE_FEC_XC in quick succession
DC-CLDP
409254
Infinite loop hit in LDP when processing an ATG_PSI_RELEASE_LSP_XC
DC-CLDP
458901
Invalid FSM cell in rcpa_restart_fsm
DC-CLDP
459051
Assertion failed: 'fec_cb->fec_local_vc_status ==
ATS_LDP_VCSTAT_FORWARDING' file ../../../../code/cldp/rcpfverf.c, line
480
DC-CLDP
460424
LDP does not release XCs before attempting to add new ones
DC-CLDP
461761
Remote PW Status in Label Mapping is not reported to LSI stub until outer
tunnel is active
DC-CLDP
462276
Assertion Failure on line 375 of rcsefsk2.c when using IPv4 and IPv6
transports
DC-CLDP
462628
Hello adjacency and session fail to activate when using IPv4 and IPv6
transports and defined basic discovery entities
DC-CLDP
464115
Assert in rcse_maybe_create_entity() when using targeted and normal
adjacencies
DC-CLDP
464185
Targeted adjacencies are never established after LDP SC is
adminstratively disabled and then enabled
DC-CLDP
465235
Outgoing Hello rejected by sending Sockets Stub when using IPv4 and
IPv6 transports and defined basic discovery entities
DC-CLDP
465810
DC-LDP does not set the source address on ATG_BFDI_SESSION_ADD
DC-CLDP
465974
Assert when getting a buffer for ATG_BFDI_STARTUP_DONE after LDP
deactivated and reactivated
DC-CLDP
466848
Assert when getting a buffer for ATG_BFDI_STARTUP_DONE after LDP
deactivated and reactivated without join failures
DC-CLDP
467182
Changing BFD settings of an interface used for basic discovery does not
work if the entity is MIB-defined
DC-CLDP
467447
DC-LDP reports BFD status as ACTIVE before SESSION_UP is received
DC-CLDP
467595
NHR stub setting data_lost flag incorrectly causes DC-LDP to release PW
FECs learned over the PSI
DC-CLDP
467703
Assertion failure in LDP on line 1156 of rcpaprad.c when parallel targeted /
non-targeted sessions deactivate
DC-CLDP
468382
Crash in rcpl_build_recover_trnst_common()
DC-CLDP
468453
LDP assert when distributing the default route
DC-CLDP
468635
DC-LDP(SC) assert when trying to creating listening socket on learning
about global label space
DC-CLDP
469131
Assertion Failed:'addr_1->length == addr_2->length' file
../../../../code/cldp/rcplutl1.c, line 1376
DC-CLDP
470759
Incorrect remote Group ID when PW is dormant
DC-CLDP
471721
Codenomicon test with invalid VC Info causes assert in
ralc_decode_next_if_parm() (ralcdept.c)
16
Metaswitch Integrated Control Plane Update Guide : AKE-021-0107
CONFIDENTIAL
DC-CLDP
471724
Label Withdraw from Codenomicon with invalid Label type causes assert in
ralc_encode_label_tlv() (ralcenpl.c)
DC-CLDP
471726
Address Withdraw message from Codenomicon causes assert in
rcpa_proc_ldp_address_withdraw() (rcpaprad.c)
DC-CLDP
471891
LDP does not use the correct error code for LSP Ping queries in the case
of PHP
DC-CLDP
472180
Assert in nbb_free_buffer() called from rcsn_process_msg()
DC-CLDP
472523
MIB walk of DC-LDP's session table can return entries in the wrong order
after a session restarts
DC-CLDP
472804
Codenomicon LDP suite causes assert in rcpg_ralc_error_to_status()
(code/cldp/rcpgntfy.c, line 583)
DC-CLDP
473015
DC-LDP can hit a segmentation fault in rcpl_run_mapping_fsms(),
rcplmfsm.c:521
DC-CLDP
473783
LDP can send duplicate Label Mappings on session establishment when
large numbers of FECs are present
DC-CLDP
474822
DC-LDP can send LDP messages on the wrong session
DC-CLDP
475258
LDP never advertises address following address clash with peer
DC-CLDP
475662
LDP assert failure in rcse_cldp_ent_oper_req() disabling targeted entity
while socket being opened
DC-CLDP
476517
LDP may not program the switch correctly when FEC is deleted, re-added,
and then updated to use a new outgoing interface
DC-CLDP
476664
LDP will fail to complete processing I3 interface adds for a FEC if an I3
interface delete is queued.
DC-CLDP
477654
FECs reported only over the I3 are deleted if DC-LDP requests a complete
refresh of routes from the NHR stub
DC-CSPF
462716
DC-CSPF infinite loop in qccs_exclude_link_resources
DC-CSS
455317
Poor scaling of CSS prevents from loading a snapshot with large number
of PWs in reasonable time
DC-CSS
461270
CSS rolling between different BGP policy may lose AFI-SAFI table config
DC-CSS
462914
CSS doesn't handle dependencies of AMB_FAM_BGP_ROUTE_MAP
table correctly
DC-CSS
463354
Improve diagnostics on duplicate entry on CSS replay.
DC-CSS
464939
Segmentation fault: #0 0x0affd8df in css_check_replay_concurrency
(replay_cb=0x1157c9ac) at ../../../../code/css/cssrhfun.c:844
DC-CSS
465547
Add list of CSS_MIB_CBs that require retried replication
DC-CSS
465847
CSS fails to process a SET on a table that only contains trigger fields
DC-CSS
466091
RG stub state not replayed by CSS
DC-CSS
469231
Assertion failed: 'replay_type == CSS_REPLAY_DELTA' file
../../../../code/css/dep/bgp/cssbgppa.c, line 269
DC-CSS
469524
CSS rollback may create BGP policy holes/flaps
DC-CSS
472149
Poor PROBLEM log when CSS replay fails
DC-CSS
472621
CSS must set the AFI-SAFI explicitly when the next hop changes on the
route map table
DC-CSS
473841
CSS assert after configuration sync to standby then switch to active
DC-CSS
476415
CSS incorrectly sets BGP next hop length to 1
DC-CSS
476685
Hard loop in css_check_for_qopm_dependency() (cssospf.c) on rolling
back modification to an OSPF area
DC-HASL
473087
ERPS holds on to an erpsMjTable request forever
DC-IGRT
465511
Add missing IGMP snooping value to the MrpmType TEXTUAL-
CONVENTION
DC-IGRT
471345
IGMP non-querier is reducing grp expiry timer with leave packet reception
DC-IGRT
473294
IM activates before the AI3 library has finished initializing
DC-IGRT
473983
Fix IGMP non-queriers to ignore reports and act on queries for timer
updating purposes
17
Metaswitch Integrated Control Plane Update Guide : AKE-021-0107
CONFIDENTIAL
DC-IGRT
474554
Segmentation fault on mgmdRouterCacheCfgTable and
mgmdRouterSrcListCfgTable updates
DC-IGRT
474670
AMBL fills in MO incorrectly on big endian machines
DC-IGRT
474974
IGMP Router cannot time out state when (G,I) static configuration is
removed on non-querier
DC-ISIS
460365
Turning on IPv6 support for a circuit fails if there are 19 IPv6 addresses on
the circuit
DC-ISIS
461236
DC-ISIS: Fletcher Checksum can exceed 32-bit value for long updates
DC-ISIS
462958
DC-ISIS assert when remote IS withdraws support for topology during
calculation: 'mt_is_cb != NULL' file qiprendp.c line 231
DC-ISIS
463142
DC-ISIS(PM) assert after changing ISIS SYS type from level 2 to level 1+2
DC-ISIS
463198
SM Assert when DC-ISIS entity joins twice to the same DC-RTM entity for
multiple topologies (asejoifm.c line 2370)
DC-ISIS
463582
DC-ISIS problems found using Coverity
DC-ISIS
463681
Assertion failed in M-ISIS test: 'rc == AMBL_RC_OPER_STATE' -
amblmain.c, line 762
DC-ISIS
466568
DC-ISIS(SDC) returns wrong value for isisISAdjProtSuppLocalSupport on
MIB row if protocol is IPv6
DC-ISIS
467999
SM assert in join FSM for BFDI join during MIB Destroy processing for DC-
ISIS(SDC)
DC-ISIS
468604
Assertion failed: '(mt_local->mt_rc.state &
QIPM_RC_FLAG_CALC_PAUSED) == 0' file
../../../../code/isis/pm/qiprapi1.c, line 111
DC-ISIS
468661
Assertion failed: 'adjacency->stored_creation_hello != NULL' file
../../../../code/isis/sdc/qiscadj4.c, line 411
DC-ISIS
468816
DC-ISIS restart can complete before all interfaces have finished activating.
DC-ISIS
468833
Assertion failed: '*circuit != NULL' file ../../../../code/isis/sdc/qiscadm1.c, line
177
DC-ISIS
468834
Assertion failed: '!(NTL_BUF_REQUEST_PENDING(&level_info-
>dm.csnp_buf_req_cb.req_cb))' file ../../../../code/isis/pm/qipdapil.c, line
848
DC-ISIS
469003
DC-ISIS(SDC) assert in qisc_bf_addr_find() when SESSION_DOWN
crosses with SESSION_DELETE at BFDI
DC-ISIS
469235
Assertion failed: 'LOCAL.sd_join_cb.status ==
AMB_ISIS_MJ_JOIN_ACTIVE' file ../../../../code/isis/sdc/qischsnm.c, line
89
DC-ISIS
469347
DC-ISIS(SDC) assert in qisc_bfdi_fsm() - session-up/session-down input in
pending-add-response state
DC-ISIS
469493
Assertion failed: '(mt_local->mt_rc.state &
QIPM_RC_FLAG_CALC_PAUSED) == 0' file
../../../../code/isis/pm/qiprapi1.c, line 111
DC-ISIS
471262
ISIS set its MIN MTU size based on both L1 and L2 values even if it's only
operating at one level
DC-ISIS
471619
DC-ISIS assert when activating an MT enabled passive circuit
DC-ISIS
473330
ISIS asserts if enable_igp_shortcut is set to AMB_FALSE in initial
AMB_SET that creates PM component and I3 stub takes more than 3
seconds to respond to REGISTER
DC-ISIS
473391
ISIS can decide graceful restart has finished before all expected
adjacencies are up
DC-ISIS
473899
DC-ISIS assert in qipm_cs_build_link_update while processing incoming
LSP with zero system ID, zero age
DC-ISIS
476052
IS-IS assert if DL join configuration is deactivated while SDC is
deactivating and reactivating.
DC-L2VM
455511
L2VM admin cycles VPWSs when the config MIB is not changed.
18
Metaswitch Integrated Control Plane Update Guide : AKE-021-0107
CONFIDENTIAL
DC-L2VM
456893
L2VM planned restart withdraws BGP routes
DC-L2VM
464219
Assertion Failed:'pw_cb->pw_local_ve_id != 0' file
../../../../code/temb/rrtpwver.c, line 951
DC-L2VM
464444
DC-BGP advertises L2VPN routes with origin 'incomplete'; Juniper uses
'igp'
DC-L2VM
464449
Originated L2VPN routes have default local_pref of 0; Juniper sets 100
DC-L2VM
465724
Assertion failed: 'INVALID BRANCH' file
../../../../code/l2vm/l2vf_rp_rpi_join_int.c, line 667
DC-L2VM
465808
Segmentation fault: #0 0x09190471 in l2vv_wb_activation_sequence
(vpws_bind_cb=0x10fc2ff8, pw_set_index=0x0) at
../../../../code/l2vm/l2vv_wb_vpws_binding_int.c:216
DC-L2VM
468822
Typo in L2VM log 126 ('Deliver' should be 'Delivery')
DC-L2VM
469257
Configuring PW Parameters in case of BGP-AD
DC-L2VM
471120
VPWS fails to advertise local route after memory allocation failure
DC-L2VM
472262
Layer 2 Extended Community info should not be present on LDP-signaled
PWs
DC-LACP
475124
Assertion failed: 'if_cb != NULL' file ../../../../code/lacp/lacp_lm_im_api.c,
line 1178
DC-LACP
475703
Assertion failed: 'INVALID BRANCH' file
../../../../code/lacp/lacp_nm_ent_act_fsm.c, line 521
DC-LLDP
453429
Assertion failed: 'INVALID BRANCH' file Z:\code\lldp\lldp_hm_fsm.c, line
424
DC-LMGR
456506
Assertion failed: 'NBB_L3QE_IN_LIST(lsp_cb->lsp_group_list_entry)' file
../../../../code/lmgr/rlmlsiu3.c, line 76
DC-LMGR
462622
LMGR should return NO_MAPPING if the static FEC in an LPI_QUERY
does not match any known static FEC
DC-LMGR
464194
Label Manager assertion if block allocation enabled but no global label
space interface
DC-LMGR
465881
Assertion failed: 'label_block->ldb_lblk_rel_ips != NULL' file
../../../../code/lmgr/rlmlsil2.c, line 1603
DC-LMGR
466477
Label Manager allows deactivation when label block actions are pending
on the LSI
DC-LMGR
466735
DC-LMGR can get stuck in GOING_DOWN state, continuously resending
a ATG_LSI_RELEASE_LSP_XC to the LSI stub.
DC-LMGR
467172
Assertion failed: 'lblk_descriptor->base_label.len == sizeof(NBB_ULONG)'
file ../../../../code/l2vm/l2vd_lb_label_block.c, line 699
DC-LMGR
467886
Assertion failed: 'label_block == NULL' file ../../../../code/lmgr/rlmlsil2.c, line
1389
DC-LMGR
468519
Assert in rlm_ldb_init_lspg_fec_info(), 'avll_rc' in code/lmgr/rlmldbu9.c, line
859
DC-LMGR
470392
DC-LMGR stuck going down after continuous start / stop sequence
DC-LMP
459302
LMP crash during remove LMP port (without tunnel); : 'INVALID BRANCH'
lmprafsm.c, line 1324
DC-LMP
460344
'INVALID BRANCH' assert in lmpvfsm.c; input 5 in state 0
DC-LMP
461511
LMP hits assert when add/remove remote-id on DBL
DC-LMP
461522
LMP assert in lmp_vrfy_fsm(): Bad action 0XFF after input 0X06 in state
0X04
DC-LMP
461759
lmpDataLinkTestSent counter not incremented for OOB test messages
DC-LMP
464539
Make LMP Graceful Restart work when anonymous verification is in use
DC-OAM
462669
Allow DC-LSP Ping to correctly include Source and Destination TLVs in
Echo requests
DC-OAM
463137
Invalid assert in bfdl_rx_change()
DC-OAM
463429
LSP Ping should send an Echo reply for badly formed Echo request
packets
19
Metaswitch Integrated Control Plane Update Guide : AKE-021-0107
CONFIDENTIAL
DC-OAM
463798
Report correctly whether reverse path verification failed, or was not
attempted
DC-OAM
464266
BFD session not initiated over suitable oper up interface
DC-OAM
466550
Assert when terminating the BFD stub after rows have been created in the
bfdSessionConfig table.
DC-OAM
467724
LSP Ping does not support Nil FEC
DC-OAM
467942
BFDL doesn't handle incoming packet with Poll bit set
DC-OAM
469178
LSP ping reply mode is hard coded
DC-OAM
470054
LSP Ping replies do not contain the bottom-of-stack bit on the bottom label
DC-OAM
470984
LSP Ping Library does not encode and decode labels in the correct format
DC-OAM
471234
bfdSessPerfTable reports times in milliseconds rather than hundredths of
seconds
DC-OAM
472895
LSP Ping does not correctly send out initial Downstream Mapping on
traceroute request
DC-OAM
474631
Assert in oam_mgr_lp_tm_tran_cancel() when cancelling an LSP Ping
transaction
DC-OAM
475362
CV-only BFD sessions fail
DC-OSPF
365222
Assert hit in qoamlsts.c at line 1218 : == ignore_rxmt_cb 0x0x1928696c
rxmt_cb 0x0x1934088c
DC-OSPF
427817
DC-OSPF does not flush translated type-5 LSA when original type-7 LSA
is flushed if incremental calculations are disabled
DC-OSPF
430990
OSPF incorrectly chooses a type 2 external route in preference to type 1
external
DC-OSPF
443929
OSPF assert in qopmrst1.c, line 632.
DC-OSPF
460968
If a default route is distributed to and then removed from OSPF, no default
route is originated for attached NSSA
DC-OSPF
461121
DC-OSPF: Fletcher Checksum can exceed 32-bit value for LSAs bigger
than 10k bytes.
DC-OSPF
461913
Crash in qodmi_nssa_lsa_lcl_fwd_add_chng when disabling OSPF on
router
DC-OSPF
462240
OSPF associates neighbour with non-matching unnumbered interface
DC-OSPF
462902
DC-OSPF should preserve a neighbor's state as BDR while helping it
Gracefully Restart
DC-OSPF
463111
Incorrect Aggregate LSAs (and consequently routing) can occur when
optimal paths move between areas.
DC-OSPF
464039
Inter-area prefixes flap during L3VPN graceful restart with OSPF as CE-PE
protocol
DC-OSPF
464554
Routing loops can result when PE-CE link goes down while sham link and
back door link are up.
DC-OSPF
464677
NM must pass received Hello to PM if neighbor's view of PM's DR/BDR
status conflicts with PM's view
DC-OSPF
465029
The range specified for ospfPmEntRestartAge is incorrect for read-only
fields that may return zero.
DC-OSPF
465344
OSPF should run DR election if neighbors have just changed their view of
our state.
DC-OSPF
465467
Tight loop seen in OSPF Codenomicon test
DC-OSPF
465705
Aggregate with mask 0x00000000, length 0 fails to match with route.
DC-OSPF
465763
Do not start interface wait timer until after GR delay timer stops
DC-OSPF
466196
Discard received packets for an interface in NM during restart until
QONM_SEND_HELLO_PACKET is received.
DC-OSPF
466492
Codenomicon test: DC-OSPF propagates invalid Router LSA
DC-OSPF
466644
Adjacency not formed when OSPF P2MP interface configured with a 32 bit
mask
20
Metaswitch Integrated Control Plane Update Guide : AKE-021-0107
CONFIDENTIAL
DC-OSPF
466950
OSPFv3 should always consider originating a new Intra-Area-Prefix-LSA if
the set of addresses for an active OSPF interface is changed.
DC-OSPF
467117
ospfv3PmAreaLsdbType should have 'One of:' field in MMF
DC-OSPF
467118
ospfv3PmShamLinkHelperModePolicy defines wrong 'Combination of:'
group in MMF
DC-OSPF
467539
'Packet received was too small' error for valid OSPF packets.
DC-OSPF
467560
Assert in qopm_mib_if_update_nm_entity() while modifying
ospfPmIfNmEntity
DC-OSPF
467679
NBB_ASSERT_NUM_EQ(area_cb->deact_recursion_level, 0); in
qopm_area_activate() qopmmam3.c when taking an area down and up
quickly
DC-OSPF
467792
Fail to flush translated LSAs after interface to NSSA node dropped
DC-OSPF
468507
Crash in DC-OSPFv2 (qodmi_originate_router_lsa) when the I3 deletes
one of multiple addresses on an inactive interface.
DC-OSPF
469992
Must run full calculation when acting as NSSA translator and AS External
LSA received
DC-OSPF
469998
Only translate NSSA LSA if the forwarding address is reachable through
the NSSA
DC-OSPF
470498
User exit for ospfPmAreatable events
DC-OSPF
472335
NSSA LSAs with a forwarding address of a broadcast OSPF interface may
end up wrongly translated by ASBRs if the interface goes down
DC-OSPF
472361
OSPF sometimes asserts due to invalid LS type bits
DC-OSPF
472566
DC-OSPFv3 assert/crash due to non-existent Network LSA when
deactivating interface on which local router was DR
DC-OSPF
474046
qodm_user_database user exit is not called when a self-originated LSA is
refreshed
DC-OSPF
474188
Inter-Area prefix LSA for local address flushed when a Point-to-Point link
activates
DC-OSPF
474782
OSPF doesn't enter helper mode if non-routing related LSAs are on the
retransmit list (preventing simultaneous GR for multiple non-DRs on a
network from working)
DC-OSPF
475202
OSPF asserts when area destroyed which is associated to an interface
which is changing IP address.
DC-OSPF
475553
OSPFv3 handling of Router Information LSAs is poor and can lead to
asserts
DC-PIM
463712
DC-PIM(TM) asserts in QPTM_FMWK_GRP_CXT_IS_INIT() while
processing a new filter to clear group state
DC-PIM
463988
(S,G) state never gets deleted in single-node ASM test with directly
connected source and receiver
DC-PIM
464406
Prune not attempted when RP becomes Unreachable
DC-PIM
464903
DC-PIM asserts if MSD stub includes unknown (S,G) flow in
ATG_MSDI_REMOTE_DATA_INACT
DC-PIM
465890
DC-PIM never deletes (S,G) state because SwitchToSptDesired(S,G)
remains TRUE forever in some cases
DC-PIM
466180
DC-PIM uses Q0_INET_ADDR and ATG_INET_ADDRESS log filters
incorrectly
DC-PIM
466804
DC-PIM Neighbor filter sometimes incorrectly filters in packets that should
be excluded
DC-PIM
466871
DC-PIM: Consider reduced keepalive timer duration when restarting RLT
DC-PIM
466933
Handle changes to PIM-TM's Register filter synchronously for connected
flows
DC-PIM
467229
DC-PIM Neighbor filters don't work with rule indices greater than
0x80000000
DC-PIM
470556
Unable to distribute PIM entities onto locations other than location 1
21
Metaswitch Integrated Control Plane Update Guide : AKE-021-0107
CONFIDENTIAL
DC-PIM
471393
DC-PIM assert/crash in qptm_dsm_delete_s_g_i_tree() when processing
SSM (S,G) filter change
DC-PIM
471752
DC-PIM crash accessing freed Register (S,G) state CB
DC-PIM
471910
DC-PIM assert inserting (S,G) CB into tree after S stops being local - CB
already exists
DC-PIM
472185
DC-PIM assert inserting (S,G) CB into tree when group switches from SSM
to ASM - CB already exists
DC-PIM
472204
DC-PIM assert when modifiying pimStaticRPTable row: '(gm_cb-
>gmap_flags & QPTM_RPM_GMAP_OVERRIDE_SUBRANGE) != 0'
DC-PIM
472886
DC-PIM: For SSM group, send (S,G) TIB record with IIF and OIF before
data is received
DC-PIM
476908
PIM-TM: GMI message not sent if QPNM_INTERFACE_STATUS (UP)
received while a buffer post is already outstanding
DC-PSC
467082
DC-PSC behaves incorrectly if SF-working detected by both peers and
cleared by one end.
DC-PSC
467784
It is valid for PSC WTR timer to not be running if SF occurs during remote
lockout
DC-PSC
469109
PSC incorrectly handles remote LO in conjunction with local input.
DC-PSC
469763
PSC may update local admin state based on remote input without
informing user
DC-PSC
470956
PSC incorrectly enters WTR state
DC-PSC
472235
PSC dead lock after FS and SF-P
DC-PSC
475984
PSC ends up in wrong state after SF-P because messages not transmitted
during SF-P
DC-PSC
476524
PSC ends up in wrong state after SF-P when there is a remote FS or MS
DC-RSM
467011
NBB_ASSERT_TRUE(avl_rc); krs_init_tunnel_if_select, krsfrusr.c 663
DC-RSM
475650
FRR: Label from MP is not present in associated cross-connect
DC-RSM
475945
Route query fails due to link not having unreserved bandwidth information
even though tunnel has token_rate 0
DC-RSVP
325631
Assert failure: parms->if_user_data_len >=
sizeof(ATG_MPLS_IF_USER_DATA)
DC-RSVP
461653
Backup retry timer not started if LDB_CONNECT fails for PLR merging into
crossing transit detour.
DC-RSVP
461659
rrr_proc_ps_error_input_flags() shouldn't process more flags once TC
actions created
DC-RSVP
461660
Assert failure because find_rsb_from_psb() failed
DC-RSVP
462207
RSVP sends spurious RR_LRA_EVENT_TRANS_PATHTEAR after data
interface down at egress
DC-RSVP
462797
Backup retry timer not started if error on transit detour into which PLR
detour merges.
DC-RSVP
462822
Missing RSVP Resv from egress node after failed FS-P and rollback
DC-RSVP
462974
RSVP Path refresh timer expiring while CC recovery timer is running
DC-RSVP
462982
Inefficient looping through all PSBs when only the PSBs in the if_psb_list in
the RRR_IF_INFO are relevant
DC-RSVP
463291
Crash at rrr_dec_next_hop_event_usage
DC-RSVP
463482
RSVP e2e protecting or working sometimes not refreshed after link failure
and state change
DC-RSVP
463837
Change to resource class of interface not handled correctly by FRR LSPs
DC-RSVP
464137
Allow RSVP infinite neighbor recovery timers
DC-RSVP
466596
Crash handling framed objects due to confusion between sizeof structure
and sizeof structure pointer
DC-RSVP
466937
DC-RSVP crash on receipt of ResvErr message containing a Style object
but no ErrorSpec object
22
Metaswitch Integrated Control Plane Update Guide : AKE-021-0107
CONFIDENTIAL
DC-RSVP
467691
Do not use data-only links to acquire a valid source / destination address
for HELLO neighbours
DC-RSVP
468765
Codenomicon test: Assert in rripobj1.c sending ResvErr in response to
Resv which doesn't match session and has invalid hop object
DC-RSVP
468797
RSVP ignores updated RRO during neighbor restart for non-FRR LSPs
DC-RSVP
469572
Assert hit in release out seg
DC-RSVP
469630
RSVP Codenomicon: RESV Message containing MESSAGE_ID object
with 8192 repeated octets causes crash
DC-RSVP
470742
Infinite loop in RSVP codenomicon test with malformed DIAG_RESPONSE
object
DC-RSVP
471441
AMB_OID_RSVP_PROD_MAX in rr0pmib.h is not set correctly.
DC-RSVP
471888
RSVP does not use the correct error code for LSP Ping queries in the case
of PHP
DC-RSVP
472325
DC-RSVP assert at egress in rrip_find_api_sess_cb() after Sender
Template obj on Incoming Path msg has length > 24
DC-RSVP
472412
RSVP assert on receipt of Bundle message with invalid sub-message
DC-RSVP
472656
NBB_ASSERT_PTR_EQ(psbp->ps_recovery_cb->in_seg_label, NULL);
rrr_alloc_recovery_path_state() during graceful restart
DC-RSVP
472686
DC-RSVP FRR processing calls rrr_term_lsp_private_data() UE without
corresponding init call
DC-RSVP
473623
DC-RSVP crashes in rrr_sent_ero() on receipt of truncated ERO
DC-RSVP
475074
Assertion failed NBB_ASSERT_PTR_NE(tc_ldb_parms.tc_ldb_up_psbp,
NULL) in rrr_frr_initiate_local_repair()
DC-RSVP
475938
No LDB_RESERVE sent if initial RESERVE fails to be sent and then Path
refresh timer pops
DC-RSVP
476142
Assert in rrrbfd.c while configuring RSVP interface after it has been
previously unconfigured
DC-RTM
353061
RTM must cope with the I3 stub going away (and not abend)
DC-RTM
436298
Over-zealous EXCEPTION logging for re-distribution entries with equal
priority
DC-RTM
457305
DC-RTM incorrectly waits for startup timer to pop before sending routes to
FT stub if partner wait time is 0
DC-RTM
462932
DC-RTM's new MED and LOCAL_PREF fields should be of type
Unsigned32 instead of Integer32
DC-RTM
463664
DC-RTM rejects 2nd join from a single DC-ISIS entity joins (with 2 different
MT IDs)
DC-RTM
466275
DC-RTM assertion failure in BFD test: qcrtveri.c line 737
DC-RTM
466288
DC-RTM assert processing ATG_I3_GET_INET_INTERFACES response
with BFD join enabled
DC-RTM
468883
Interface route age is not set at initialization
DC-RTM
472576
Tight loop in RTM with RPM dead timer repeatedly popping
DC-RTM
473401
DC-RTM never sends snapshot over RPI if partner_wait_timer pops after
startup_timer and after RPI is cycled
DC-RTM
474898
DC-RTM assert in qcrs_route_check_delete() after deleting redistribution
rule matching a pending deleted route
DC-STP
455044
STP PM under heavy load in steady state
DC-STP
455205
STP PM may have unpredictable behavior when deactivating with many
interfaces.
DC-STP
462496
Unexpected CIST external cost seen in STP logs made during port role
selection
DC-STP
462591
STP interfaces do not finish deactivation when the BDPI join goes down
DC-STP
464293
STP NM MIB ASN.1 has incorrect value for IF_ATG_NMI
DC-STP
468896
Assertion failed: 'rc == ATG_ASYNC_COMPLETION' file
../../../../code/stp/stp_pm_pe_pst_fsm.c, line 455
23
Metaswitch Integrated Control Plane Update Guide : AKE-021-0107
CONFIDENTIAL
DC-STP
474300
Assertion failed: 'INVALID BRANCH' file
../../../../code/stp/stp_nm_pe_pim.c, line 457
DC-TPM
347626
Different TPM assertion failures on tunnel restart timer pops
DC-TPM
448475
DC-TPM can hang onto MIB requests changing pwEnable on entity MIB for
10s of seconds
DC-TPM
459650
Assertion failed: 'pw_cb->pw_oper_status ==
rrt_pw_calc_mib_oper_status(pw_cb, admin_up NBB_CCXT)' file
../../../../code/temb/rrtpwver.c, line 819
DC-TPM
462928
Assert int Tunnel Manager when RSVP-TE Notify received
DC-TPM
462956
Cannot configure a static co-routed bidirectional transit tunnel with tunnel
direction AMB_MPLS_TNNL_DIRECTION_TR_BI
DC-TPM
468509
If TPM is still going up you cannot destroy it
DC-TPM
469868
Crash/assert in rrt_destroy_tnnl_cb() when taking TPM down
DC-TPM
470514
Crashes/asserts and strange MIB behavior when toggling persistent tunnel
row status
DC-TPM
470857
Label Release sent incorrectly in PW admin-toggle window condition
DC-TPM
470896
Assert in rrt_send_ldb_del_lsp_tunnel() when posting for LRAPI and LDB
buffers
DC-TPM
471971
NBB_ASSERT_NUM_EQ((*pw_cb)->pw_vif_index, 0); rrtpwldb.c when
recreating a PW
DC-TPM
475200
Assert hit: qccsqury.c, line 381 due to invalid request from TPM
DLST
465413
Check for non-null VLAN ID before setting the VLAN type in
dls_lx_rcv_sck_data()
DLST
467777
DL stub does not take VLAN ID into account when performing an
attachment lookup on the SCK interface
DLST
470930
An (S,G) request for one source does not stop other (S,G) streams from
being forwarded using the default 'unknown group' rule
I3ST
462629
Segmentation fault in i3_if_prev_advertised(), i3ind.c line 1150
I3ST
463261
Error from Linux kernel 'netlink: 16 bytes leftover after parsing attributes'
I3ST
464329
Assertion failed: 'SHARED.config_poll.resched_ips == NULL' file
../../../../code/stubs/i3/i3vrfy.c, line 134
I3ST
464656
Assertion Failed:'buffer_size < 10000000' file
../../../../code/stubs/i3/unix/i3lx.c, line 764
I3ST
465350
VLAN-tagged interfaces not advertised to DC-LACP by the I3 stub
I3ST
465499
Several fields not correctly replicated in I3_INTERFACE_CB
I3ST
465965
I3 stub stores fault information for interfaces even if fault information is
unknown
I3ST
467173
Assertion failed: 'i3_join_cb->i3_status == I3_SJ_ACTIVE' file
../../../../code/stubs/i3/i3haf.c, line 443
I3ST
467283
Interface re-added to bundle is not withdrawn from components that
shouldn't see aggregated interfaces
I3ST
467509
Assertion failed: 'mem_not_valid_count == 0' file
../../../../code/comn/nbase/base/nbbverif.c, line 270
I3ST
467523
MC-LAG bundles are unstable
I3ST
469092
I3 stub fails to close ioctl socket
I3ST
469358
I3 stub does not calculate ethernet speed for bundles correctly if the
bundle includes multiple links
I3ST
469379
Linux kernels older than 2.6.32 do not support ethtool
I3ST
471402
Exception in I3 verify proc when two FRI masters register with the same
profile index
I3ST
471466
Bundle with no interfaces is still advertised as oper up by the I3 stub
I3ST
474506
Assertion failed: 'SHARED.config_poll.current_type !=
I3_POLL_TYPE_NONE' file ../../../../code/stubs/i3/i3ind2.c, line 2511
24
Metaswitch Integrated Control Plane Update Guide : AKE-021-0107
CONFIDENTIAL
I3ST
477753
Assertion Failed:'addr_cb->if_cb != NULL' file
../../../../code/stubs/i3/i3cbcomn.c, line 1189
I3ST
477865
Linux I3 stub stuck in tight loop with NBB_RESCHEDULE IPSs
IPST
471442
Unable to distribute IGMP and SCK on different locations
IPST
473037
Multicast sockets fail to activate on VxWorks with a little-endian CPU if the
suffix (LSB) is 0xE0
IPST
473537
Assert failure in sockets stub on attempting to delete an MD5 password
MSDST
464886
Sample MSD stub crashes when it has to post for an
ATG_MSDI_REMOTE_DATA_ACT/INACT buffer
N-BASE
353070
On removing and readding a backup card, MIBs are not unregistered, so
MIB operations on the new backup fail
N-BASE
452335
LDP can hog the scheduler when there are large numbers of FECs
pending work.
N-BASE
461514
VxWorks and Windows implementations of nbb_os_get_ntp_time()
calculate incorrect number of fractional seconds
N-BASE
464431
NBB_TRACE_TEXT is not threadsafe
N-BASE
470295
[ALERT] DCSI hangs when pdtrc.log wraps in MT N-BASE
N-BASE
470400
Unable to destroy MIB row due to invalid configuration
N-BASE
470490
AMBL does not support asynchronous MIB Gets with full storage of
configuration
N-BASE
470826
AMBL should delete automatically managed MOs in AMBL_TERMINATE
N-BASE
471762
Update PD log conversion buffers to be usable from both LOCAL and
SHARED
N-BASE
471988
nbb_get_num_procs_of_type() is not thread safe
N-BASE
472243
Change nbb_os_get_mtime() to use clock_gettime()
N-BASE
475123
Assertion failed: 'duration < 0x80000000' file ../../../../code/comn/ntlcltim.c,
line 547
N-BASE
475440
Assertion failed: 'indices[iindex].min_value <= indices[iindex].max_value'
file ../../../../code/comn/ambutil4.c, line 163
SMS
468536
L2VM SMS tests intermittently fail due to timing between SMS nodes
Tools
470788
Dmptrace logs 'failed to find any input log files to decode' even when there
are files in the directory
Tools
470791
Dmptrace fails to parse NBB_HANDLE64
25
Metaswitch Integrated Control Plane Update Guide : AKE-021-0107
CONFIDENTIAL
5 Integrating This Release
This section describes how to integrate the June 2015 release.
The delivery process for this release has been updated so that you can download the code
from a git repository. The code can still be made available on an ftp server if necessary.
Please work with your Customer Support Engineer to establish the best way to access the
code.
5.1 Non-Back compatible changes in this release
This section describes
any non-back compatible changes that are included in this release
the set of steps you will need to undertake in order to preserve the existing behavior of
your product.
Metaswitch tries to ensure that all interface changes are back compatible, however
occasionally this is not possible. For example, some Metaswitch products use specific
values that are defined by standards bodies (such as IANA). Occasionally, the standards
bodies change these values; Metaswitch updates its products to stay in line. This may
cause incompatibility with previous versions.
Where a non-back compatible change is required, Metaswitch makes a concerted effort to
minimize the scale of these changes and their impact on existing customers. For interface
back compatibility, Metaswitch assumes that your stub code memsets all IPSs to 0 after
allocation using NBB_ZERO_IPS. If this is not the case, you will have to make additional
changes to ensure that new fields are correctly initialized.
You must also ensure that you have updated your stubs to include any new functionality
and APIs. You should merge any changes that you have made to your stubs into the
version supplied with this release, as described in the Existing Users Getting Started
Guide, section 5.
Note that this section includes every non-back compatible change that could
potentially affect you. In many cases, you will find that there is no additional
integration work required.
For more information about the interface changes described below, please consult the
relevant interface specification manual or the Metaswitch Integrated Control Plane
Management Interface Reference.
5.1.1 General Integrated Control Plane changes
Change to cssFileStatusTrap structure
The cssFileStatus field of the cssFileStatusTrap MIB Trap is changed from an NBB_BYTE
to an NBB_ULONG. If your Management Stub makes use of this field then you must
update it to use the new type.
26
Metaswitch Integrated Control Plane Update Guide : AKE-021-0107
CONFIDENTIAL
Change to type value name for AMB_STUBS_BD_BRIDGE_DOMAIN
The type value name for the AMB_STUBS_BD_BRIDGE_DOMAIN family is changed from
AMB_FAM_STUBS_BD_BRDGE_DOMAIN to
AMB_FAM_STUBS_BD_BRIDGE_DOMAIN. If your Management Stub makes use of this
value then you must update it to use the new name.
5.1.2 BGP changes
BGP Dynamic Peers
DC-BGP now supports dynamic BGP peers configured as BGP peer address prefixes in
the new bgpPeerRangeTable, with peer status reported in the new bgpPeerStatusTable.
Previously DC-BGP only supported dynamic peers by setting bgpNmListenAcceptAll to
true in the bgpNmListenTable. This function was not widely used, but if you do use it then
you may need to update your Management Stub code to handle the following changes.
DC-BGP now reports dynamic BGP peers in the bgpPeerStatusTable but not in the
bgpPeerTable. If you use the bgpPeerTable to report or control dynamic peers then
you should update your Management Stub code to use the bgpPeerStatusTable
instead.
DC-BGP no longer retains state for dynamic BGP peers indefinitely. Instead, state for
dynamic BGP peers is freed when the BGP session has terminated and the graceful
restart timer has expired. If you need to get end of session status and statistics then
you should do so before the graceful restart timer expires.
Support for generic AFI/SAFIs
DC-BGP originally aimed to support generic AFI/SAFIs with NLRI as opaque data.
Experience has shown that new AFI/SAFIs typically require changes to BGP function and
that NLRI typically cannot be treated as opaque data. Therefore, DC-BGP no longer
supports generic AFI/SAFIs.
User exit updated to support decode errors
The QBML_USER_DC_MP_NLRI_DEST user exit now supports decode errors. This
allows the user exit to reject individual NLRI elements without rejecting an entire BGP
UPDATE message and terminating the BGP session. For further details see the user exit
definition in code/comn/custom/qbmluser.h.
If you have not modified the QBML_USER_DC_MP_NLRI_DEST code supplied by
Metaswitch you can simply use the new code supplied by Metaswitch.
If you have modified the QBML_USER_DC_MP_NLRI_DEST code supplied by Metaswitch
you should update the code using the Metaswitch implementation as a reference.
27
Metaswitch Integrated Control Plane Update Guide : AKE-021-0107
CONFIDENTIAL
ECMP Routes
DC-BGP’s handling of ECMP routes is improved in this release. It now uses next hop self
when advertising an ECMP route to an I-BGP peer. Previously the next hop attribute of the
best route was forwarded unchanged in this case. Using next hop self for ECMP routes
ensures data is forwarded via the local router and via all ECMP routes, rather than just via
the best route.
BGP Graceful Restart
DC-BGP is enhanced to support an improved Graceful Restart configuration mechanism. If
you currently implement Graceful Restart for DC-BGP you must make the following
changes.
To ensure DC-BGP runs Graceful Restart procedures, your Management Stub code
should set bgpRmEntDoGracefulRestart instead of setting bgpRmEntRestarting.
You can set this new field prior to the DC-BGP instance being restarted.
To read whether DC-BGP is restarting, your Management Stub code should use
bgpRmEntRestartTimeLeft. If the value of that field is non-zero, DC-BGP is
restarting.
The DC-BGP Graceful Restart exit reason field, bgpRmEntRestartExitReason is
updated to add a new value, bgpRstrtExitPeerNoSupp, to indicate that one or more
peers cannot help the local router to restart because they do not support Graceful
Restart procedures or are themselves restarting. To handle the new exit reason in a
back-compatible way, treat the new exit reason as equivalent to the existing
bgpRstrtExitComplete value. For more details, see the Metaswitch Integrated Control
Plane Management Interface Reference.
bgpRouteMapSeLocPref Type Change
The bgpRouteMapSeLocPref field has changed type from an NBB_LONG to
NBB_ULONG to match similar LOCAL_PREF fields. The range of allowed values is
unchanged (it was not policed before) but you may need to add casts to your Management
Stub code.
Change to bgpTrapData structure
The bgpPeerState field of bgpTrapData is changed from an NBB_BYTE to an
NBB_LONG. If your Management Stub makes use of this field then you must update it to
use the new type.
Performance improvements to DC-BGP regular expression handling
DC-BGP is enhanced to improve regular expression handling. If you have not modified the
DC-BGP regular expression handling user exit code supplied by Metaswitch, you can
simply use the new DC-BGP regular expression handling user exit code supplied by
Metaswitch with no further integration work required.
If you have modified the DC-BGP regular expression handling user exit code supplied by
Metaswitch, you should merge the following changes using the Metaswitch
implementations as a reference.
28
Metaswitch Integrated Control Plane Update Guide : AKE-021-0107
CONFIDENTIAL
The user exit qbpm_reg_exp_compiles_ok() is now qbpm_compile_reg_exp() and the
parameters are updated. The new user exit must return a pointer to the compiled
version of the regular expression. It is the responsibility of the user exit to allocate any
memory required to store the compiled regular expression.
You should implement the new functions qbpm_verify_reg_exp() and
qbpm_free_reg_exp(). Your implementation of these user exits must verify and free any
memory allocated in qbpm_compile_reg_exp().
The user exit functions qbpm_filter_as_path(), qbpm_filter_comm() and
qbpm_filter_ext_comm() now receive the compiled regular expression allocated in
qbpm_compile_reg_exp() instead of the uncompiled regular expression. Your
implementation of these functions no longer needs to compile the regular expression
before executing it.
For sample implementations, see /code/comn/custom/qbpmrex*.
Additional Index Field for BGP Management Tables
In order to support advertising multiple BGP paths to the same destination, the following
BGP Management tables have a new path ID index field.
bgpNlriTable now includes bgpNlriPathId
bgpNlriPrefixTable now includes bgpNlriPrefixPathId
bgpPathAttrUnknownTable now includes bgpNlriPathId
bgpPathAttrClusterTable now includes bgpNlriPathId
bgpPathAttrCommTable now includes bgpNlriPathId
bgpPathAttrExtCommTable now includes bgpNlriPathId
bgpAdjRibOutTable now includes bgpAdjRibOutPathId
You should update your Management Stub to fill in Management requests for these
Management tables with object IDs that include the new path ID index value. If you do not
support multiple BGP paths you should simply set the path ID index value to zero. If you
do support multiple BGP paths you should update your Management Stub to support
Management table rows with different path ID values.
Also, if you have modified any of the following Management table lookup user exits you
should update the code to include the following new path ID index values.
qbdc_mib_ue_nlri_prefix_lookup
qbdc_mib_ue_find_ari_route_prfx
qbdc_mib_ue_find_best_ari_route
qbdc_mib_ue_find_any_ari_route
qbdc_mib_nlri_lookup_ue
qbdc_mib_nlpf_lookup_ue
qbdc_mib_attr_unknw_lookup_ue
qbdc_mib_attr_clust_lookup_ue
qbdc_mib_attr_comm_lookup_ue
qbdc_mib_attr_xcomm_lookup_ue
qbum_mib_aro_lookup_ue
29
Metaswitch Integrated Control Plane Update Guide : AKE-021-0107
CONFIDENTIAL
New BGP NLRI Formats
In order to support advertising multiple BGP paths to the same destination, the following
BGP user exits now have to handle the modified NLRI format including a Path ID value.
qbml_user_parse_all_mp_nlri
qbml_user_parse_std_mp_nlri
qbml_user_dc_mp_nlri_dest
qbml_user_ec_add_mp_nlri_dest
qbml_user_ec_nlri_size
If you have modified these user exits you should update the code using the Metaswitch
implementation as a reference.
QBRM_USER_INIT_AFI_SAFI_CB User Exit
In order to support advertising multiple BGP paths to the same destination paths, the
qbrm_user_init_afi_safi_cb user exit now initializes additional fields in the
QBRM_AFI_SAFI_CB structure. If you have modified this user exit you should update the
code to initialize the new fields using the Metaswitch implementation as a reference.
Customizable Regular Expression Lengths
The length of regular expressions used on the BGP Management interface is now
customizable using the new QB_BGP_MAX_REG_EXP_LEN constant. In addition, the
default length is increased to 300. If you require this value to remain constant across
releases you will need to change the constant back to 127.
bgpRouteMapIndex Zero
DC-BGP no longer accepts configuration of route maps with bgpRouteMapIndex = 0.
Previously such route maps could be configured but not used, so valid configurations
without unusable route map entries are not affected. If your MIB stub uses an index value
of zero you should update it to use a non-zero index.
5.1.3 Multicast changes
DC-VLAN Manager integration
IGMP/MLD Snooping is now fully integrated with the new DC-VLAN Manager component,
allowing an IGMP/MLD Snooping instance to run over the active topology for a VLAN. By
default, DC-IGMP will attempt to use the BDII join to learn the active topology. Previously,
this information was learned over the I3 join. To retain the I3 join, you must set
mgmdRouterEntSnoopDisableBdii to AMB_TRUE.
For more information, see the IGMP Proxy and Snooping Cookbook and the DC-IGMP
Configuration and Management Guide.
30
Metaswitch Integrated Control Plane Update Guide : AKE-021-0107
CONFIDENTIAL
5.1.4 Layer 2 changes
Changes to names of some DC-LLDP management objects
DC-LLDP is now able to transmit several optional Organizationally Specific TLV types (see
section 2.11, Link Layer Discovery Protocol: DC-LLDP), which you enable using the
object lldpIfConfigTLVsTxEnable.
The default behavior is unchanged DC-LLDP transmits all the optional TLV types from
the Basic Management TLV set, as defined in 802.1AB-2009 s6.3a, but does not transmit
any Organizationally Specific TLV types.
To improve clarity, the #defined default value is renamed from
AMB_LLDP_TLV_ENABLE_ALL to AMB_LLDP_TLV_ENABLE_ALL_B_MGMT.
Also, in addition to lldpV2RemTablesChange management notifications, DC-LLDP can now
be configured to generate lldpRemDeviceChange management notifications, which you
enable using the objects lldpEntRemDeviceChgNtfyEnable and
lldpIfConfigRemDeviceChgNtfyEnable.
To improve clarity, the management objects that enable the lldpV2RemTablesChange
management notifications are renamed, from lldpEntNotificationEnable and
lldpIfConfigNotificationEnable to lldpEntRemTablesChgNtfyEnable and
lldpIfConfigRemTablesChgNtfyEnable, respectively.
Similarly, the associated C fields, textnames and #defined OID names are renamed, from
notification_enable to rem_tables_notification_enable, notification-enable to
rem-tables-notification-enable, and AMB_OID_LLDP_ENT_NOTIFY_ENABL and
AMB_OID_LLDP_IF_CFG_NOTIFY_EN to AMB_OID_LLDP_ENT_REM_TBL_NFY_EN
and AMB_OID_LLDP_IF_CFG_REM_TB_N_EN.
The default behavior is unchanged DC-LLDP does not generate management
notifications.
If your management code uses the listed management objects then you must update it to
use the new names.
5.1.5 MPLS changes
Disabling DC-TPM’s support for Pseudowires deactivates Pseudowires
Previously, disabling DC-TPM’s support for Pseudowires, either by deactivating DC-TPM or
by setting dcMplsTeMibPwEnable to AMB_FALSE, caused all Pseudowires and all rows
in the pwTable to be destroyed. That behavior is modified so that now all Pseudowires and
pwTable rows are deactivated rather than destroyed. If you wish to destroy all rows then
your management code should manually destroy each pwTable row when
dcMplsTeMibPwEnable is set to AMB_FALSE.
DC-RSVP now rejects an updated UNI Call-ID for UNI LSPs
The UNI Call-ID must not change over the lifetime of an LSP. Previously, DC-RSVP
allowed the UNI Call-ID to be updated on a received Path message, and propagated the
new value downstream. Now, it rejects the Path with a PathErr.
31
Metaswitch Integrated Control Plane Update Guide : AKE-021-0107
CONFIDENTIAL
The new behavior is essential to prevent two unrelated LSPs being merged into one. For
example, if a user deletes an LSP at ingress, and quickly creates another LSP using the
same RSVP tunnel identifiers but a different UNI Call-ID, the new LSP must not
accidentally merge with an existing fragment of the old LSP that may still exist downstream.
Activation/deactivation of cross connects based on interface state
If mplsXCAutoStaticXC in code/comn/intface/rl0mib.h is set to “no”, cross connects are
always programmed irrespective of interface state. Previously with this setting a static
cross connect would only be programmed if its underlying interface was up when the cross
connect was created.
DC-LDP supports MAC Address Withdraw messages for Generalized PWid
FECs
Support is added to DC-LDP for MAC Address Withdraw messages for Generalized PWid
FECs. MAC Address Withdraw messages can be generated by sending an
ATG_L2M_MAC_ADDR_IND IPS to DC-LDP in the same way as for PWid FECs. This
enhancement makes a minor non-back-compatible change to the
rcp_vc_maybe_send_mac_addr_wdrw() user exit. Any implementation of this function that
references vc_id will need to be updated to check the fec_def.fec_type and
fec_def.fec_vc_id parameters.
5.1.6 OAM changes
DC-LSP Ping now uses SHARED data
The DC-LSP Ping code that acts as the DC-LSP Ping Library user is changed to act like a
stub component and use SHARED data. This means integration of receive APIs can use
stub entry points to directly enter the required context. If you have customized the DC LSP
Ping code you may need to change your code to take this change into account.
Modify BFDL to report times in hundredths of seconds
The BFD Library interface is modified to report times in the BFDL_SESSION_STATS
structure in hundredths of a second rather than milliseconds, to match the definitions of
time fields in the bfdSessPerfTable.
DC-BFD Hardware Assist Modification
DC-BFD hardware assist is enhanced to close a window when bringing down a BFD
session. To integrate this feature, you will need to modify the BFDL_START_RX_DETECT
callback to take a new parameter (detect_mult). You should use the value of this
parameter to calculate the Detection Time for BFD Control packets. The Detection Time is
the rx_interval multiplied by detect_mult. If a BFD packet is not received on this session
within this Detection Time, the DC-BFD Library user must call BFDL_RX_CHANGE. A
value of 0 means the DC-BFD Library user should not time out received packets but should
continue to handle receipt of BFD packets and check for changes in the packets received.
32
Metaswitch Integrated Control Plane Update Guide : AKE-021-0107
CONFIDENTIAL
5.1.7 RTM changes
rtmRedistNwMed and rtmRedistNwLocalPref type change
The DC-RTM rtmRedistNwMed and rtmRedistNwLocalPref fields are changed from
NBB_LONG to NBB_ULONG to match similar MED and LOCAL_PREF fields in DC-BGP.
The range of allowed values is unchanged (it was not policed before) but you may need to
add casts to your Management Stub code to resolve compiler warnings.
These fields are passed over the Routing Protocol Interface, so the types of the
multi_exit_disc and local_pref fields in ATG_QCRP_BGP_INFO have also changed. Note
that this change affects routes redistributed from DC-RTM into DC-BGP and routes passed
to DC-RTM from DC-BGP. If you have written your own RPM or AFM that uses
ATG_QCRP_BGP_INFO then you may need to add casts to this code.
5.1.8 CSS changes
DC-CSS performance improvement
DC-CSS no longer calculates or validates a checksum for CSS snapshot files, as a
performance optimization. This means that up-level CSS snapshots will not be able to be
read by back-level DC-CSS. Please contact your support representative if you would like to
use Hot Software Downgrade with DC-CSS.
5.2 Enabling the new features in this release
This section describes how to enable the new features listed in chapters 2 and 3 of this
document. If the feature is in chapter 2, please consult your Metaswitch Sales Contact if
you want to use it.
5.2.1 General Integrated Control Plane features
Extensions to the HAF library
The HAF library is extended to provide a simplified API for replicating state. See the HAF
Interface Specification and HAF Cookbook for information on how to use this function.
Notification for number of prefixes in BGP RIB exceeding a configurable
value
You can now receive a bgpEntRibSizeWarnTrap MIB notification when the number of
prefixes in BGP’s RIB exceeds or drops below a configured value. To configure the value,
use the new MIB field bgpRmEntRibSizeWarning. The field bgpRmEntOverLimit in the
TRAP is set to ATG_YES to announce the RIB going above the limit, and ATG_NO to
announce falling beneath it again. For further information see the Integrated Control Plane
Management Interface Reference.
33
Metaswitch Integrated Control Plane Update Guide : AKE-021-0107
CONFIDENTIAL
Performance Improvement for Management Table Walks
The Metaswitch Management Interface is enhanced to allow your management code to
request multiple Management Table rows in a single AMB_GET request. You can use this
feature to improve the performance of large table walks for all the Layer 2 solutions and
Layer 3 routing solutions. Please see section 2.3.1 of the N-BASE Version 2.0 MIB
Management Interface Specification for details of how to use this feature.
5.2.2 L2VPN Manager features
BGP Autodiscovery and Signaling for VPWS
DC-L2VPN Manager is enhanced to support BGP-auto-discovery and signaling of VPWS
Pseudowires as defined by RFC 4761. This feature allows network administrators to
provision a VPWS with much reduced configuration. See the DC-MPLS Layer 2 VPN
Cookbook for details.
VPLS support
DC-L2VPN Manager is extended to support the complete management of VPLSs as
defined by RFC 4762. VPLS allows network operators to offer multipoint Ethernet VPN
services over their IP/MPLS networks by providing the equivalent of a distributed Ethernet
Switch across their IP/MPLS core. See the DC-MPLS Layer 2 VPN Cookbook for details.
5.2.3 Layer 2 Features
DC-STP BPDU Guard
DC-STP now allows you to enable BPDU Guard on any interface that is administratively
configured to be at the edge of an STP network. If a BPDU is received on an interface with
BPDU Guard enabled, DC-STP will attempt to disable the interface by reporting a fault over
the Fault Reporting Interface (FRI). For details of how to integrate the BPDU Guard feature
please refer to the DC-STP Integration Guide. For details of how to enable the BPDU
Guard feature on an interface please refer to the DC-STP Configuration and Management
Guide.
Link aggregation: DC-LACP
DC-LACP is a new Metaswitch product that supports both static aggregation and the Link
Aggregation Control Protocol, as standardized by the IEEE in 802.1AX (2008). For details
of how to use DC-LACP, see the DC-LACP Configuration and Management Guide.
Multi-Chassis Link Aggregation (MC-LAG)
DC-LACP is enhanced to support a proprietary form of Multi-Chassis Link Aggregation.
This is similar to mLACP as defined by the Inter-Chassis Communication Protocol (ICCP)
standardized by the IETF in RFC 7275. For details of how to enable MC-LAG, see the
DC-LACP Configuration and Management Guide.
34
Metaswitch Integrated Control Plane Update Guide : AKE-021-0107
CONFIDENTIAL
Ethernet Ring Protection Switching: DC-ERPS
DC-ERPS is a new Metaswitch product that supports the Ethernet Ring Protection
Switching protocol, as standardized by the ITU in G.8032 (2012). For details of how to use
DC-ERPS, see the DC-ERPS Configuration and Management Guide.
VLAN Management: DC-VLAN Manager
DC-VLAN Manager is a new Metaswitch product that supports the management of VLANs,
as standardized by the IEEE in 802.1Q (2011). For details of how to use DC-VLAN
Manager, see the DC-VLAN Manager Configuration and Management Guide.
DC-ERPS High Availability Support
DC-ERPS is enhanced to support high availability based on the replication of operational
state to a backup instance. See the DC-ERPS Integration Guide and DC-ERPS
Configuration and Management Guide for the integration steps required to implement this
feature.
DC-Traffic Classification Management
DC-TCM is a new Metaswitch product that that allows network administrators to configure
traffic classification. For details of how to integrate and use DC-TCM, see the DC-TCM
Integration Guide and DC-TCM Configuration and Management Guide.
Link Layer Discovery Protocol: DC-LLDP
DC-LLDP now provides explicit support for the following Organizationally Specific TLVs.
Several of the optional 802.1 Organizationally Specific TLVs defined in 802.1AB-2009
Annex E: specifically, the Port VLAN ID TLV, Port and Protocol VLAN ID TLV, VLAN
Name TLV, Protocol Identity TLV and Link Aggregation TLV.
All of the 802.3 Organizationally Specific TLVs defined in 802.1AB-2009 Annex F.
All of the mandatory and conditionally mandatory TIA (LLDP-MED) Organizationally
Specific TLVs defined in ANSI/TIA-1057-2006.
DC-LLDP validates and displays received TLVs of these types, and optionally transmits
them. For details of how to enable transmission of this information and to display received
information, see sections 4.7-4.9 of the DC-LLDP Configuration and Management Guide.
To transmit the following TLVs, you will need to enhance your I3 Stub code to provide
DC-LLDP with the information to transmit. For details of the new fields used to provide this
information, see code/comn/intface/a0i3if.h.
802.1 Port ID TLV, when used for LLDP-MED by devices that do not have a permanent
unique MAC address.
802.1 Organizationally Specific Port VLAN ID TLV.
802.1 Organizationally Specific Port and Protocol VLAN ID TLV.
802.1/802.3 Organizationally Specific Link Aggregation TLV.
802.3 Organizationally Specific MAC/PHY Configuration/Status TLV.
802.3 Organizationally Specific Power via MDI TLV.
802.3 Organizationally Specific Maximum Frame Size TLV.
35
Metaswitch Integrated Control Plane Update Guide : AKE-021-0107
CONFIDENTIAL
The geolocation information for LLDP-MED uses new user exit functions, defined in
code/comn/custom/a0_geolocn_parse_api.*, to support the configuration and display of
geolocation coordinates in a text string format. You can modify the supplied
implementation of these user exit functions to support different or additional character sets,
to modify the format of allowable strings, or to perform additional validity checks on the
coordinates.
5.2.4 ISIS features
IS-IS policy control using administrative tags
DC-ISIS is enhanced to support addition of administrative tags to routes as defined in RFC
5130.
The new isisCircAdminTag field allows you to add a tag to the routes generated in
topology 0 for the subnets for a local interface.
The new isisMtCircManAdminTag field allows you to add a tag to the routes
generated in other topologies for the subnets for a local interface.
The new isisSummAddrAdminTag field allows you to add a tag to a summary
address.
See the DC-ISIS Configuration and Management Guide for details.
In addition, DC-ISIS is enhanced to support redistribution policy based on administrative
tags. Policy can be configured using the new isisTagPolicyTable to control redistribution
from level 1 to level 2 and from level 2 to level 1. See the DC-ISIS Configuration and
Management Guide for details.
In addition, if you are using DC-RTM, you can use the new rtmRedistNwIsisTag field to
add tags to routes redistributed into DC-ISIS from DC-RTM and the rtmRedistIsisTag field
to filter routes from DC-ISIS. See the DC-RTM Configuration and Management Guide for
details.
5.2.5 BGP features
BGP Dynamic Peers
DC-BGP now supports dynamic BGP peers configured as BGP peer address prefixes with
associated peer groups. A new bgpPeerRangeTable table configures this feature, and the
new bgpPeerStatusTable reports both configured and dynamic peers. See the DC-BGP
Configuration and Management Guide for further information.
Extra information reported for selected local addresses for iBGP peers
In addition to reporting the selected local address and local port, DC-BGP now reports the
selected local address scope ID chosen by the TCP stack for BGP peers configured
without a local address and port. The scope ID is reported in a new field,
bgpPeerSelectedLocalAddrScopeId, in the bgpPeerTable; for further information see
code/comn/intface/qb0mib.h.
36
Metaswitch Integrated Control Plane Update Guide : AKE-021-0107
CONFIDENTIAL
BGP AS-Path multipath-relax
DC-BGP is enhanced to support an option to treat two BGP routes as equal cost even if
they travel through different Autonomous Systems (as recorded in AS_PATH). Routes with
different AS_PATHs can now be programmed into the forwarding table as equal cost
multipath (ECMP) routes, as long as their AS_PATH lengths (and other relevant BGP
attributes) are the same. A new bgpRmEntAsPathMultipathRelax field in the
bgpRmEntTable MIB enables this option. See the DC-BGP Configuration and
Management Guide for further information.
Disable programming of Reject route to AFM for aggregate routes
By default, DC-BGP will program a Reject route to the AFM for active aggregate routes.
This ensures that any traffic not routed by the more specific routes is black-holed. If there
is traffic in your network that uses the default route and would be aggregated by the
aggregate prefix then this behavior is undesirable, because the traffic will be black-holed
before reaching the default route. You can disable programming of the Reject route by
setting bgpAggrProgramRejectRoute to AMB_FALSE for the aggregate route. For more
details, please see code/comn/intface/qb0mib.h.
New BGP user exit to report session state changes
A new BGP user exit, QBDC_USER_SESSION_STATE_CHANGE, is added to report
changes in the state of BGP sessions. See code/comn/custom/qbdcuser.h for further
details.
Improved error handling
A new BGP user exit, QBNM_USER_IGNORE_BAD_UPDATE(), is added to allow your
code to decide what DC-BGP should do when it has received a malformed BGP_UPDATE
from a peer. The existing behavior (defined by RFC 4271) is to tear down the session to
the peer. The user exit can decide, instead, that the BGP_UPDATE should be ignored and
the session left intact. See the files code/comn/custom/qbnmuser.h and
code/comn/custom/qbnmuser.c for further information.
BGP Send Community
DC-BGP is enhanced to support configuration options to enable or disable sending BGP
community and extended community attributes to specific BGP peers and peer groups.
New bgpPeerSendComm and bgpPeerSendExtComm fields in the bgpPeerTable and
bgpPeergrTable MIBs specify the new configuration options. See the DC-BGP
Configuration and Management Guide for further information.
BGP Additional Paths
DC-BGP is enhanced to support advertising multiple BGP paths for the same destination to
BGP peers. Route programming to Address Family Managers is unchanged. New fields in
the bgpRmAfiSafiTable, bgpPeerAfiSafiTable and bgpPeergrAfiSafiTable tables configure
this feature. See the DC-BGP Configuration and Management Guide for further
information.
37
Metaswitch Integrated Control Plane Update Guide : AKE-021-0107
CONFIDENTIAL
Additional per-peer group configuration for DC-BGP
DC-BGP is enhanced to support the option of configuring peer level fields on a peer group
basis. Fields that are configured in the bgpPeerTable and bgpPeerAfiSafiTable are added
to the bgpPeergrTable or bgpPeergrAfiSafiTable. Please see
code/comn/intface/qb0mib.h for the full list of fields.
The bgpPeerConfigUsage and bgpPeerConfigUsage2 fields in the bgpPeerTable are
used to decide if the peer group or peer configuration values should be used for a peer that
belongs to a peer group. See the DC-BGP Configuration and Management Guide for
further information.
DC-BGP AS number checking
DC-BGP supports configuration of peer level checking for the first AS on routes received
from external peers (neighbors). If this option is configured for a peer in the
bgpPeerCheckFirstAsNum field, DC-BGP checks the first AS number in the AS_PATH
attribute in UPDATES received from the peer. If it is not the same as the AS number of the
peer, DC-BGP drops the UPDATE and sends a NOTIFCATION indicating an error in the
UPDATE. New fields bgpRmEntCheckFirstAsNum and bgpPeergrCheckFirstAsNum
now also support entity level and peer group level configuration of first AS checking. See
the Metaswitch Integrated Control Plane Management Interface Reference for more details,
including a description of when a change to the value of these fields takes effect and how
to set whether the entity, peer group or peer configuration applies.
DC-BGP Peer Statistics
The peer state and statistics counters for BGP Peers are now reported in a separate Peer
Status Table. This table contains fields equivalent to all the peer state and statistics
counters, and the fields that control those counters, currently present in the Peer Table
(that is, bgpPeerStatusClearCnts, bgpPeerStatusRtRefresh,
bgpPeerStatusFlapStatsClearStat and bgpPeerStatusFlapStatsClearMap).
New peer state and statistics counters are added to the Peer Status Table in this release.
DC-BGP now counts the number of messages received per peer for all types of
message. The counts for all message types are in the Peer Status Table. These
counts are enabled automatically.
DC-BGP now reports the number of prefix denials by the reason for denial in the Prefix
Counters Table. These counts are enabled automatically.
To access the new fields you will need to migrate your management code to use the new
table. See the DC-BGP Configuration and Management Guide for information on these
tables.
Martian Prefixes
DC-BGP now supports rejection of martian prefixes. For information on using the new
bgpRmAfiSafiCheckMartians field to configure support, and on reporting the number of
martian prefixes denied in the Prefix Counters Table, see the DC-BGP Configuration and
Management Guide, section 6.15.
38
Metaswitch Integrated Control Plane Update Guide : AKE-021-0107
CONFIDENTIAL
DC-BGP best path selection algorithm configuration
DC-BGP is enhanced to allow configuration of different behavior in the best path selection
algorithm. You can configure BGP to
ignore the AS-path length of received BGP routes when determining the best path
reduce route flapping when determining the best path from routes received from
external BGP peers that are essentially equal in priority by always preferring the
existing best path
use the highest possible value (least preferred) multi-exit discriminator (MED), if a
received route has no MED
not carry out MED comparison for BGP routes originating from the local confederation.
For further information see the DC-BGP Configuration and Management Guide.
Support for additional show commands
DC-BGP now supports the reporting of all routes advertised by a neighbor regardless of
whether or not the route was accepted by policy. Routes are reported in the
bgpRcvdNlriTable. The path attributes for these routes are reported in the
bgpRcvdPathAttrUnknownTable, bgpReceivedPathAttrClusterTable,
bgpReceivedPathAttrCommTable, and bgpReceivedPathAttrExtCommTable. The
bgpRcvdNlriTable displays all routes as they were received from the peer and prior to the
application of policy. A MIB field indicates whether a route has been accepted by policy.
Filtered MIB Get is supported, to allow a user to limit the set of routes returned.
DC-BGP now supports the reporting of information on routes recently withdrawn and for
which dampening is being applied, known as history routes, alongside those routes
currently advertised by a neighbor. New fields, bgpNlriHistory and bgpNlriPrefixHistory,
are added to the bgpNlriTable and bgpNlriPrefixTable respectively that show whether a
particular route is a history route or not. Filtered MIB Gets are supported to allow a user to
limit the set of routes returned so the set does not include history routes.
For further information about these changes see section 7 of the DC-BGP Configuration
and Management Guide. For further information on filtering MIB Gets see section 8.4 of
the DC-BGP Integration Guide.
DC-BGP metric and weight configuration
DC-BGP is enhanced to support additional configuration of route metrics and weights. You
can configure a default metric to be applied to all routes redistributed into DC-BGP from
DC-RTM without a MED value and, in DC-RTM, can set the weight of an individual route
redistributed into DC-BGP. You can also set a default weight to be applied to all routes
received from a BGP peer (on a per-peer or per-peer group basis). See the DC-BGP
Configuration and Management Guide for more details.
39
Metaswitch Integrated Control Plane Update Guide : AKE-021-0107
CONFIDENTIAL
DC-BGP peer fallover
DC-BGP is enhanced to support peer fallover. You can configure fallover at the peer or
peer group level. If this option is configured for a peer, DC-BGP tracks the route to that
peer and closes the session if that route fails. See the Metaswitch Integrated Control Plane
Management Interface Reference for more details.
DC-BGP Import / Export Policy
DC-BGP is enhanced to support configuration of import route maps and export route maps
at the peer AFI/SAFI level, and also to support separate import / export IP prefix lists in
addition to import / export route maps. New fields in the bgpPeerAfiSafiTable and
bgpPeergrAfiSafiTable MIBs specify the route maps and IP prefix lists. See the DC-BGP
Configuration and Management Guide for further information.
DC-BGP Route Flap Dampening
DC-BGP is enhanced to support AFI/SAFI level configuration for route flap dampening.
New bgpRmAfiSafiFlapConfigIndex and bgpRmAfiSafiFlapConfigMap fields in the
bgpRmAfiSafiTable MIB specify the new configuration options. See the DC-BGP
Configuration and Management Guide for further information.
BGP Graceful Restart
DC-BGP is enhanced to provide a better Graceful Restart configuration mechanism. This
feature is available when Graceful Restart is enabled. To enable Graceful Restart, set the
bgpRmEntRestartSupported field. See Graceful Restart Cookbook for more information.
5.2.6 MPLS features
Allow user to specify RSVP error code and value when deleting an LSP
through the MIB at transit or egress
When a user deletes an RSVP-signaled LSP through the mplsTunnelTable at transit and
egress nodes they can now specify user data for RSVP to use in the
RRR_DEFINE_USER_ERROR_SPEC and RRR_RC_MAP_TO_RSVP_ERR user exits.
The user configures the data using the new mplsTunnelRsvpDelUserErrorSpec field.
For more information, see the description of this object in the Metaswitch Integrated Control
Plane Management Interface Reference and the DC-MPLS Advanced Users Guide.
DC-RSVP now provides complete LSP information in the user exit that
determines whether a NOTIFY message may be sent
The existing RRR_SET_NOTIFY_RECIP() user exit parameters
RRR_SET_NOTIFY_RECIP_PARAMS now include a pointer to the Path State Control
Block, allowing full access to all parameters for the LSP that the user might wish to use to
determine whether a Notify message will be sent. See the DC-MPLS Integration Guide for
details.
40
Metaswitch Integrated Control Plane Update Guide : AKE-021-0107
CONFIDENTIAL
DC-RSVP: Allow user to not send an Ack to a Notify if the notify did not
match an RSVP session
A new user exit, RRR_UE_ACK_UNKNOWN_NOTIFY(), allows DC-RSVP to choose not to
send an Acknowledgement for a Notify that could not be matched to an existing RSVP
session. See code/comn/custom/rr0user.h for more details.
DC-RSVP: New User Exit called to allow modification of private data
before ATG_NHR_QUERY_ROUTE() request
New user exits RRR_QUERY_ROUTE_PRIV_DATA_SIZE() and
RRR_QUERY_ROUTE_PRIV_DATA() are added to DC-RSVP. You can use these user
exits to modify the private data in an ATG_NHR_QUERY_ROUTE to allow extra RSVP
information to be considered for route selection. For more details, see
code/comn/intface/rr0pousr.c and code/comn/intface/rr0pousr.h.
DC-TPM: New User Exit called when a Tunnel MIB row is modified
A new user exit RRT_UE_TUNNEL_MIB_UPDATE is added to DC-TPM, called when an
mplsTunnel MIB row is added or updated. For more details, see
code/comn/custom/rrtuser.c and code/comn/custom/rrtuser.h.
DC-LDP Fast Label deprogramming for LDP-signaled Pseudowires
DC-LDP now supports a mode of operation for LDP-signaled Pseudowires where a label
that has been distributed to a peer will be deprogrammed immediately when the
Pseudowire is deleted or disabled locally. Previously, DC-LDP would have waited for an
LDP Label release message from the peer before deprogramming the label. See the new
management field dccrldpPmPwFastUpstreamRelease in the Metaswitch Integrated
Control Plane Management Interface Reference for further details.
More flexible LDP distribution support
DC-LDP Session Controller now enables distribution of the Session Sontroller out to line
cards while the interface manager resides on a central controller card. Set the new
dccrldpSigTable field, dccrldpSigI3ProviderIndex to
zero, to maintain the current behavior of using the DC-LDP Session Controller’s Entity
Index to identify the I3 Stub to join to
non-zero, to specify the I3 Stub that the distributed LDP Session Controller should join
to.
Reporting CC and CV types supported by LDP peers
DC-MPLS now reports the Control Channel and Connectivity Verification types that an LDP
peer has advertised support for over a Pseudowire, in an extension to the pwTable MIB
table and the pwUnexpectedPwRcvd MIB trap. See the new fields pwRemoteCCTypes
and pwRemoteCVTypes in code/comn/intface/rr0pwmib.h for more details.
41
Metaswitch Integrated Control Plane Update Guide : AKE-021-0107
CONFIDENTIAL
DC-LDP option to prevent distribution of labels for Prefix FECs over
targeted LDP peer sessions
DC-LDP is enhanced to provide a configuration option, using a new field
dccrldpPmDistPrefixTargetSess, to disable distribution of Prefix FECs over targeted peer
sessions. This allows interoperation with LDP implementations that do not expect to
receive these labels, and in particular those that never respond to Label Withdraw
messages.
New DC-LDP Management tables showing received/sent labels
DC-LDP now supports three new management tables mplsLdpFecPrefixTable,
mplsLdpUpLabelTable and mplsLdpDownLabelTable. See code/comn/intface/rc0mib.h
for further details.
DC-LDP Peer Support for Graceful Restart
DC-LDP is enhanced to allow you to determine the LDP peer’s support for Graceful Restart
on an LDP session using three new read-only fields: mplsLdpSessionPeerRestartSupp,
mplsLdpSessionPeerReconnectTime and mplsLdpSessionPeerRecoveryTime in the
mplsLdpSessionTable table. In addition, you can determine whether the local LDP router
is using Graceful Restart procedures on an LDP session using another new read-only field
in the same table: mplsLdpSessionLocalRestartSupp. See the mplsLdpSessionTable table
in the Metaswitch Integrated Control Plane Management Interface Reference.
Flow control for static LSP programming in DC-LMGR
DC-LMGR is enhanced to use the dcLmgrLsrEntityMaxLsiBuffers field to configure the
size of a fixed size buffer pool for LSI messages.
Read-only TE information available at Transit Nodes
DC-TPM now supports the mplsTunnelResourceTable at transit nodes when using the TE-
MIB at transit feature. This enhancement is always available when using TE-MIB at
Transit. See the DC-MPLS Advanced User Guide, section 2.6, for more information.
New DC-RSVP user exits to track RSVP process creation and destruction
A new set of RSVP user exits, RRR_UE_CREATED and RRR_UE_DESTROYED, report
when the RSVP N-BASE process is created or destroyed. For more details see the
definition of the user exit in the header file code/comn/custom/rr0user.h.
New User Exit to disable label shuffling for the mplsTunnelARHopTable
If you want the mplsTunnelARHopTable to report the RRO hops and labels in the same
order as the received RRO, customize the new user exit
RRR_LABEL_SHUFFLING_REQD() to return TRUE. In particular, if you have previously
directly modified DC-RSVP source code to disable this feature, then do not apply the same
modifications to the new version of DC-RSVP. Instead, customize this new user exit to
obtain the required behavior. See the files code/comn/custom/rr0user.h and
code/comn/custom/ rr0user.c for further information.
42
Metaswitch Integrated Control Plane Update Guide : AKE-021-0107
CONFIDENTIAL
User control of how AC faults affect VPLS status and fault signaling
A new user exit, L2VM_UE_VPLS_CE_STATUS(), is added to DC-Layer 2 VPN Manager
to control how AC fault status affects the overall status of the VPLS and whether
corresponding faults are signaled. For more details, please see
code/comn/custom/l2vm_ue.c and code/comn/custom/l2vm_ue.h.
Notification for auto-discovered Pseudowires
A new MIB trap, pwAutoCreated, is added for notifying management when an auto-created
Pseudowire has been discovered by BGP-AD for LDP signaling. The existing MIB trap
pwDeleted is also extended with the field pwWasAutoCreated to allow management
correlation between these traps and the pwAutoCreated traps. Both types of traps can be
enabled in the DC-TPM Entity MIB and can be used for automatic management of LDP
sessions, avoiding implementing a full mesh across all PE routers. For more details,
please see code/comn/intface/rr0pwmib.h.
5.2.7 Multicast features
DC-IGMP Static
DC-IGMP now supports static configuration of multicast group membership on downstream
interfaces, allowing you to provide multicast streams to hosts that do not support the
IGMP/MLD protocol. To integrate with static IGMP configuration, update your management
code to configure the two new MIB tables: mgmdRouterCacheCfgTable and
mgmdRouterSrcListCfgTable. Statically configured memberships are displayed in the
existing mgmdRouterCacheTable, mgmdRouterInverseCacheTable and
mgmdRouterSrcListTable MIB tables, indicated as static by the new
mgmdRouterCacheType, mgmdRouterInverseCacheType and
mgmdRouterSrcListType fields.
For full details, see the IGMP/MLD Proxy and Snooping Cookbook and the DC-IGMP
Configuration and Management Guide.
IGMP and MLD Proxy and Snooping Graceful Restart
The Metaswitch Integrated Control Plane now supports Graceful Restart of IGMP Proxy
and Snooping function. To implement this function you must
enhance your MPF stub to support audit over the TIBI
configure DC-PIM-TM to support Graceful Restart by setting the new fields
pimTmEntGRBackstopDuration and pimTmEntGRJoinStartupDuration to non-zero
values.
For more information, see the IGMP Proxy and Snooping Cookbook.
DC-VLAN Manager integration
IGMP/MLD Snooping is now fully integrated with the new DC-VLAN Manager component,
allowing an IGMP/MLD Snooping instance to run over the active topology for a VLAN. This
feature is enabled by default and DC-IGMP will attempt to create a BDII join to an instance
of DC-VLAN Manager with the entity index specified in mgmdRouterEntBdiiIndex.
43
Metaswitch Integrated Control Plane Update Guide : AKE-021-0107
CONFIDENTIAL
For more information, see the IGMP Proxy and Snooping Cookbook and the DC-IGMP
Configuration and Management Guide.
5.2.8 OAM features
DC-ETH OAM Manager
This release contains a new product, DC-ETH OAM Manager, which provides complete
management of OAM for Layer 2. To integrate and use DC-ETH OAM Manager, see the
DC-ETH OAM Manager Integration Guide and the DC-ETH OAM Manager Configuration
and Management Guide.
Source and Destination TLVs in LSP Ping Packets
DC-MPLS OAM Manager is updated to provide the local Global ID and Node ID to
DC-LSP Ping as part of the ATG_LPI_TRANSACTION_ADD request. This allows DC-LSP
Ping to construct the Source and Destination TLVs for MPLS Echo Requests, as defined in
RFC 6426. To use this feature, you must ensure that your I3 Stub fills in the
local_global_id and local_node_id fields of the ATG_I3_INET_INTERFACE_ENTRY sent
to DC-MPLS OAM Manager for each Maintenance Point. For further information, please
see the DC-OAM Integration Guide.
Reporting faults detected by OAM protocols
DC-MPLS OAM Manager is extended to report faults on interfaces learned by the BFD
network protocol. These failures are reported to your code over a new IPS interface, the
Fault Reporting Interface (FRI). The DC-OAM Integration Guide describes how you can
integrate the FRI with your code. Configuration instructions for adding the FRI join are
given in the DC-OAM Configuration and Management Guide. Details of the FRI itself are in
the header file (code/comn/intface/a0fri.h).
Report remote diagnostic code in BFD session down trap
DC-BFD and DC-MPLS OAM Manager are enhanced to report the diagnostic code (also
known as Remote Defect Indication (RDI)) received in a BFD Down packet to the user in
the bfdSessDown trap. The diagnostic code is present in the new bfdSessRemoteDiag
field.
Reporting local state updates because of remote input
DC-PSC is enhanced to report the local admin state in the
PSC_MP_PROT_STATE_IND_PROC() callback and the
ATG_PSCI_SESSION_STATE_IND IPS. This allows the user to update its record of the
current admin state in the event of the state changing due to a remote input.
Modifications to DC-BFD use of hardware assist
DC-BFD is modified to allow use of hardware assist when the session is down and to pass
the expected packet receipt rate to hardware.
44
Metaswitch Integrated Control Plane Update Guide : AKE-021-0107
CONFIDENTIAL
Allow LSP Ping reply mode to be configured
DC-MPLS OAM Manager is updated to allow the reply mode in an LSP Ping packet to be
specified in the new mplsCvTrMpCvReplyMode field in the mplsCvTrMpTable.
5.2.9 OSPF features
Local Interface Identifiers in OSPF Neighbor Tables
The new fields ospfPmNbrLocalIfAddress and ospfPmNbrLocalIfIndex are added to
DC-OSPF’s ospfPmNbrTable. They identify the local IP address and the local interface
index of the OSPF interface the adjacency to the neighbor is running over. The new field
ospfPmMultiAreaNbrLocalIfIndex is added to the ospfPmMultiAreaNbrTable to identify
the local interface index the Multi-Area adjacency is running over. See
code/comn/intface/qo0pmib.h for details.
New OSPF user exit to report OSPF Area status
A new OSPF user exit reports when OSPF areas are created or destroyed, or go active or
inactive. For more details, see the definition of QOAM_USER_AREA_EVENT() in
code/comn/custom/qopmuser.h.
LSA Throttling
DC-OSPF is enhanced to support LSA throttling. This is a mechanism to slow down LSA
updates in OSPF during times of network instability and is configured using the new
ospfPmEntHoldLsInterval and ospfPmEntMaxLsInterval fields. See the Configuring
LSA Throttling section in the DC-OSPF Configuration and Management Guide for more
details.
Filtering of OSPF LSAs
Two new user exits, qodm_filter_received_lsa() and qodm_filter_sent_lsa() are added to
DC-OSPF to allow the user to filter the LSAs that are sent and received over a given
interface. To filter LSAs you should add code to these user exits to implement your filtering
criteria. See code/comn/custom/qopmuser.h for more details.
5.2.10 L3VPN Manager features
New value added to MplsVpnMjStatus
A new value, mjNotAvailable, is added to the group MplsVpnMjStatus. This group can be
returned in the read-only fields mplsVpnLmgrJoinStatus and mplsVpnI3JoinStatus.
Please see the Metaswitch Integrated Control Plane Management Interface Reference for
more details.
45
Metaswitch Integrated Control Plane Update Guide : AKE-021-0107
CONFIDENTIAL
Expose L2VPN Route Distinguisher when programming L3VPN LSPs
A new field, bvm_remote_route_distinguisher, is added to the
ATG_MPLS_BGP_VPN_FEC_XC_INFO structure passed on
ATG_LSI_ASSOCIATE_FEC_XC and ATG_LSI_DISSOCIATE_FEC_XC signals by
DC-Label Manager when setting up Layer 3 VPNs. This allows your LSI Stub to determine
the route distinguisher assigned by the remote BGP peer for the VPN route. That route
distinguisher may, for example, be used to issue an LSP Ping request on a Layer 3 VPN
route.
5.2.11 RTM features
Redistribute routes using custom match criteria
DC-RTM is updated to allow you to specify custom match criteria for rules in the
rtmRedistTable. To use this function you need to set the new rtmRedistUserMatch field
and update the new user exit QCRT_USER_REDIST_MATCH(). For more information,
see the DC-RTM Configuration and Management Guide.
Defining the weight of a Route
DC-RTM is updated to allow you to set the weight of an individual route redistributed into
DC-BGP. See the DC-RTM Configuration and Management Guide for more details.
5.2.12 LMP features
Extended LMP Hello Dead Interval
DC-LMP now allows you to configure an LMP Hello Dead interval greater than 65 seconds.
Use the new MIB field, dcLmpProductExtendedHelloDeadIvl, to configure a Hello Dead
Interval bigger than the protocol-limited times configured using
dcLmpProductHelloDeadIvlDflt and lmpCcHelloDeadInterval. For further details,
please refer to the DC-LMP Configuration and Management Guide.
Additional statistics in lmpControlChannelPerfTable
The DC-LMP implementation of the lmpControlChannelPerfTable is extended to provide
read-only packet statistics for BeginVerify, BeginVerifyAck, BeginVerifyNack,
LinkSummaryAck and LinkSummaryNack messages sent and received on a particular
control channel. You can now display these statistics in your user interface. For more
information on the new fields, see the definition in code/comn/intface/lmpmib.h or the
lmpControlChannelPerfTable entry in the Metaswitch Integrated Control Plane
Management Interface Reference.
46
Metaswitch Integrated Control Plane Update Guide : AKE-021-0107

Navigation menu