Anchor PFEs and Redundancy in Junos Multi-Access User Plane
Understanding the Anchor PFE
An anchor PFE is the Packet Forwarding Engine (PFE) on a standard line card that has no direct interface connections, but rather provides the core processing of data traffic by doing the following:
Encoding/decoding of GTP-U packets. The anchor PFE decodes GTP-U packets from eNodeBs and forwards them to the core network and encodes IPv4 packets from the core network and forwards them to eNodeBs.
Enforces class of service and firewall filter rules on subscriber sessions.
Collects statistics on data usage for charging/accounting purpose.
Following are important points to consider when setting up anchor PFEs:
You must configure at least one anchor PFE line card. We recommend at least two with 1:1 hot-standby redundancy.
Each anchor PFE requires a defined
pfe-
interface of the formpfe-x/y/z
.
Configuring No Redundancy for the Anchor PFEs
When no redundancy is required, all anchor PFE interfaces are equally available. The SAEGW-U uses all anchor PFE logical interfaces to anchor sessions/bearers. The routing engine (RE) of the SAEGW-U steers the GTP-U traffic for sessions and bearers to each of the anchor PFEs. The GTP processing for sessions and bearers and filter processing happens on the respective anchor PFE. The charging data is also maintained, collected and reported from the anchor for each session and its bearer.
When there is no redundancy configured, a failure of the anchor
PFE line card is catastrophic for the SAEGW-U sessions/bearers in
that control plane sessions corresponding to the failed anchor PFE
and its data plane are lost. If supported by the SAEGW-C, the SAEGW-U
can send an Sx Session Set Deletion Request
for the lost
sessions through the Sx interface, and the sessions are flushed in
the SAEGW-C. All charging and other accounting data is lost for the
sessions and bearers. New sessions can come up on the failed anchor
PFE interface only when all sessions are flushed
in the SAEGW-C for the failed anchor PFE, even if the anchor PFE comes
up sooner. If other anchor PFE interfaces are available, new sessions
can come up instantly on those anchor PFE interfaces.
Following is a typical configuration for two anchor PFEs with no redundancy.
Configuring 1:1 Hot-standby Redundancy for the Anchor PFEs
To have 1:1 PFE redundancy, an aggregated anchor PFE group can be formed as below using exactly two PFE logical interfaces from different slots:
Aggregated Anchor PFE group 1 – pfe-0/0/0 (primary), pfe-1/0/0 (secondary)
Aggregated Anchor PFE group 2 – pfe-0/1/0 (primary), pfe-1/1/0 (secondary)
You cannot have primary and secondary anchor PFEs on the same line card. For example, the following combination is not supported:
Aggregated anchor PFE group 1 – pfe-0/0/0 (primary), pfe-1/1/0 (secondary)
Aggregated anchor PFE group 2 – pfe-1/0/0 (primary), pfe-0/1/0 (secondary)
We also do not recommended configuring anchor PFEs on two separate line cards with their secondary anchor PFEs on just one line card. For examle:
Aggregated anchor PFE group 1 – pfe-0/0/0 (primary), pfe-2/0/0 (secondary)
Aggregated anchor PFE group 2 – pfe-1/0/0 (primary), pfe-2/1/0 (secondary)
When aggregated anchor PFE configuration is used, both the primary anchor PFE and secondary anchor PFE have the session state. But the routing engine (RE) steers the GTP-U traffic for sessions and bearers only to the primary anchor PFE. The GTP processing for sessions and bearers and filter processing happens on the primary anchor PFE. The charging data is also maintained, collected and reported from the primary anchor PFE. The secondary is in hot-standby mode and is ready for takeover only in the event of primary anchor PFE failure.
Given the considerable load that a single anchor PFE linecard can need to handle, a single anchor PFE linecard is limited to a maximum of two redundancy groups. You can configure a single anchor PFE for one of the following roles:
Dedicated primary for one redundancy group
Dedicated secondary for one redundancy group
Primary for two redundancy groups
Secondary for two redundancy groups
When 1:1 redundancy is operational, the redundancy interface process monitors the health of the primary and secondary anchor PFEs.
A secondary anchor PFE failure results in zero data plane traffic loss on the primary anchor PFE. All active sessions remain unaffected. New sessions can come up without any latency. When the secondary anchor PFE is restored, there is a catchup phase to program the already active sessions and bearers in the secondary anchor PFE. After this is completed, new sessions are programmed in the secondary anchor PFE in parallel to the primary anchor PFE. From this point forward, the secondary anchor PFE can take over anytime.
If the primary anchor PFE fails, the secondary anchor PFE starts
handling traffic. It might take a few seconds to detect the failure
of the primary anchor PFE and for the RE to re-route the GTP-U traffic
to the secondary PFE. This delay results in traffic loss during the
anchor PFE switchover. Additionally, there is a loss of any charging
data not reported by the primary anchor PFE before it failed. Anchor
PFE switchover does not affect active sessions/bearers. In-flight
changes to sessions and bearers as well as new sessions being created
during anchor PFE switchover are rolled back. If supported by the
SAEGW-C, the SAEGW-U can send an Sx Session Set Deletion Request
for the lost sessions through the Sx interface, and the sessions
are flushed in the SAEGW-C. After the anchor PFE switchover, the configured
primary anchor PFE can be restored, starting as a secondary anchor
PFE and going through catch-up similar to secondary APFE failure and
restoration described above.
To configure redundancy for two anchor PFE line cards:
When the configured primary anchor PFE fails, the secondary anchor PFE takes over. When the failed primary anchor PFE recovers, it does not automatically resume primary status. It is now in secondary status until the configured secondary anchor PFE fails.
However, you can force the two anchor PFEs to revert to their configured state by setting a
revert-time
, in hours, under the[edit interfaces aggregated-pfe-group anchoring-options]
hierarchy. For example:[edit interfaces] user@host# set apfe0 anchoring-options revert-time 2 user@host# set apfe1 anchoring-options revert-time 2