Understanding PPPoE Service Name Tables
On an MX Series router acting as a remote access concentrator (AC), also referred to as a PPPoE server, you can configure up to 32 PPPoE service name tables and assign the service name tables to PPPoE underlying interfaces. A PPPoE service name table defines the set of services that the router can provide to a PPPoE client. Service entries configured in a PPPoE service name table represent the service name tags transmitted between the client and the router in a PPPoE control packet.
This overview covers the following topics to help you understand and configure PPPoE service name tables:
Interaction Among PPPoE Clients and Routers During the Discovery Stage
In networks with mesh topologies, PPPoE clients are often connected to multiple PPPoE servers (remote ACs). During the PPPoE discovery stage, a PPPoE client identifies the Ethernet MAC address of the remote AC that can service its request, and establishes a unique PPPoE session identifier for a connection to that AC.
The following steps describe, at a high level, how the PPPoE client and the remote AC (router) use the PPPoE service name table to interact during the PPPoE discovery stage:
The PPPoE client broadcasts a PPPoE Active Discovery Initiation (PADI) control packet to all remote ACs in the network to request that an AC support certain services.
The PADI packet must contain either, but not both, of the following:
One and only one nonzero-length service name tag that represents a specific client service
One and only one empty (zero-length) service name tag that represents an unspecified service
One or more remote ACs respond to the PADI packet by sending a PPPoE Active Discovery Offer (PADO) packet to the client, indicating that the AC can service the client request.
To determine whether it can service a particular client request, the router matches the service name tag received in the PADI packet against the service name tags configured in its service name table. If a matching service name tag is found in the PPPoE service name table, the router sends the client a PADO packet that includes the name of the AC from which it was sent. If no matching service name tag is found in the PPPoE service name table, the router drops the PADI request and does not send a PADO response to the client.
The PPPoE client sends a unicast PPPoE Active Discovery Request (PADR) packet to the AC to which it wants to connect, based on the responses received in the PADO packets.
The selected AC sends a PPPoE Active Discovery Session (PADS) packet to establish the PPPoE connection with the client.
Service Entries and Actions in PPPoE Service Name Tables
A PPPoE service name table can include three types of service
entries: named services, an empty
service, and an any
service. For each service entry, you specify the action
to be taken by the underlying interface when the router receives a
PADI packet containing the specified service name tag.
You can configure the following services and actions in a PPPoE service name table:
Named service—Specifies a PPPoE client service that an AC can support. For example, you might configure named services associated with different subscribers who log in to the PPPoE server, such as
user1-service
oruser2-service
, or that correspond to different ISP service level agreements, such aspremium
andstandard
. Each PPPoE service name table can include a maximum of 512 named service entries, excludingempty
andany
service entries. A named service is associated with theterminate
action by default.empty
service—A service tag of zero length that represents an unspecified service. Each PPPoE service name table includes one empty service. Theempty
service is associated with theterminate
action by default.any
service—Acts as a default service for non-empty service entries that do not match the named service entries orempty
service entry configured in the PPPoE service name table. Each PPPoE service name table includes oneany
service. Theany
service is useful when you want to match the agent circuit identifier and agent remote identifier information for a PPPoE client, but do not care about the contents of the service name tag transmitted in the control packet. Theany
service is associated with thedrop
action by default.Action—Specifies the action taken by the underlying PPPoE interface assigned to the PPPoE service name table on receipt of a PADI packet from the client containing a particular service request. You can configure one of the following actions for the associated named service,
empty
service,any
service, or agent circuit identifier/agent remote identifier (ACI/ARI) pair in the PPPoE service name table on the router:terminate
—(Default) Directs the router to immediately respond to the PADI packet by sending the client a PADO packet containing the name of the AC that can service the request. Named services,empty
services, and ACI/ARI pairs are associated with theterminate
action by default. Configuring theterminate
action for a service enables you to more tightly control which PPPoE clients can access and receive services from a particular PPPoE server.delay
—Number of seconds that the PPPoE underlying interface waits after receiving a PADI packet from the client before sending a PADO packet in response. In networks with mesh topologies, you might want to designate a primary PPPoE server and a backup PPPoE server for handling a particular service request. In such a scenario, you can configure a delay for the associated service entry on the backup PPPoE server to allow sufficient time for the primary PPPoE server to respond to the client with a PADO packet. If the primary server does not send the PADO packet within the delay period configured on the backup server, then the backup server sends the PADO packet after the delay period expires.drop
—Directs the router to drop (ignore) a PADI packet containing the specified service name tag when received from a PPPoE client, which effectively denies the client’s request to provide the associated service. Theany
service is associated with thedrop
action by default. To prohibit the router from responding to PADI packets that containempty
orany
service name tags, you can configure thedrop
action for the empty orany
service. You can also use thedrop
action in combination with ACI/ARI pairs to accept specific service name tags only from specific subscribers, as described in the following information about ACI/ARI pairs.
ACI/ARI Pairs in PPPoE Service Name Tables
To specify agent circuit identifier (ACI) and agent remote identifier
(ARI) information for a named service, empty
service, or any
service in a PPPoE service name table, you can configure
an ACI/ARI pair. An ACI/ARI pair contains an agent circuit ID string
that identifies the DSLAM interface that initiated the service request,
and an agent remote ID string that identifies the subscriber on the
DSLAM interface that initiated the service request. You can think
of an ACI/ARI pair as the representation of one or more PPPoE clients
accessing the router by means of the PPPoE service name table.
ACI/ARI specifications support the use of wildcard characters in certain formats. You can configure a combined maximum of 8000 ACI/ARI pairs, both with and without wildcards, per PPPoE service name table. You can distribute the ACI/ARI pairs in any combination among the service entries in the service name table.
You must specify the action—terminate
, delay
, or drop
—taken by the underlying PPPoE
interface when it receives a client request containing vendor-specific
ACI/ARI information that matches the ACI/ARI information configured
in the PPPoE service name table on the router. An ACI/ARI pair is
associated with the terminate
action by default.
For example, assume that for the user1-service
named
service, you configure the drop
action for the service
and the terminate
action for the associated ACI/ARI pairs.
In this case, the ACI/ARI pairs identify the DSLAM interfaces and
associated subscribers authorized to access the PPPoE server. Using
this configuration causes the router to drop PADI packets containing
the user1-service
tag unless the PADI
packet also contains vendor-specific ACI/ARI information that matches
the subscribers identified in one or more of the ACI/ARI pairs. For
PADI packets containing matching ACI/ARI information, the router sends
an immediate PADO response to the client indicating that it can provide
the requested service for the specified subscribers.
You can also associate a PPPoE dynamic profile, routing instance, and static PPPoE interface with an ACI/ARI pair.
Dynamic Profiles and Routing Instances in PPPoE Service Name Tables
You can associate a previously configured PPPoE dynamic profile
with a named service, empty
service, or any
service
in the PPPoE service name table, or with an ACI/ARI pair defined for
these services. The router uses the attributes defined in the profile
to instantiate a dynamic PPPoE subscriber interface based on the service
name, ACI, and ARI information provided by the PPPoE client during
PPPoE negotiation. The dynamic profile configured for a service entry
or ACI/ARI pair in a PPPoE service name table overrides the dynamic
profile assigned to the PPPoE underlying interface on which the dynamic
PPPoE interface is created.
To specify the routing instance in which to instantiate the
dynamic PPPoE interface, you can associate a previously configured
routing instance with a named service, empty
service, or any
service in the PPPoE service name table, or with an ACI/ARI
pair defined for these services. Like dynamic profiles configured
for service entries or ACI/ARI pairs, the routing instance configured
for the PPPoE service name table overrides the routing instance assigned
to the PPPoE underlying interface.
For information about configuring the PPPoE service name table to create a dynamic PPPoE subscriber interface, see Assigning a Dynamic Profile and Routing Instance to a Service Name or ACI/ARI Pair for Dynamic PPPoE Interface Creation.
Maximum Sessions Limit in PPPoE Service Name Tables
To limit the number of PPPoE client sessions that can use a
particular service entry in the PPPoE service name table, you can
configure the maximum number of active PPPoE sessions using either
dynamically-created or statically-created PPPoE interfaces that the
router can establish with a particular named service, empty
service, or any
service. (You cannot configure the maximum
sessions limit for an ACI/ARI pair.) The maximum sessions limit must
be in the range 1 through the platform-specific maximum PPPoE sessions
supported for your routing platform. The router maintains a count
of active PPPoE sessions for each service entry to determine when
the maximum sessions limit has been reached.
The router uses the maximum sessions value for a service entry in the PPPoE service name table in conjunction with both of the following:
The maximum sessions (
max-sessions
) value configured for the PPPoE underlying interfaceThe maximum number of PPPoE sessions supported on your routing platform
If your configuration exceeds either of these maximum session limits, the router cannot establish the PPPoE session.
Static PPPoE Interfaces in PPPoE Service Name Tables
To reserve a previously configured static PPPoE interface for
use only by the PPPoE client with matching ACI/ARI information, you
can specify a single static PPPoE interface for each ACI/ARI pair
defined for a named service entry, empty
service entry,
or any
service entry in a PPPoE service name table. (You
cannot configure a static interface for a service entry that does
not have an ACI/ARI pair defined.) The static PPPoE interface associated
with an ACI/ARI pair takes precedence over the general pool of static
PPPoE interfaces associated with the PPPoE underlying interface configured
on the router.
When you configure a static interface in the PPPoE service name table, make sure there is a one-to-one correspondence between the PPPoE client and the static interface. For example, if two clients have identical ACI/ARI information that matches the information in the PPPoE service name table, the router reserves the static interface for exclusive use by the first client that logs in to the router. As a result, the router prevents the second client from logging in.
You cannot configure a static interface for an ACI/ARI pair already configured with a dynamic profile and routing instance. Conversely, you cannot configure a dynamic profile and routing instance for an ACI/ARI pair already configured with a static interface.
PADO Advertisement of Named Services in PPPoE Service Name Tables
By default, the advertisement of named services in PADO control packets sent by the router to the PPPoE client is disabled. You can enable advertisement of named services in the PADO packet as a global option when you configure the PPPoE protocol on the router. Configuring PADO advertisement notifies PPPoE clients of the services that the router (AC) can offer.
If you enable advertisement of named services in PADO packets, make sure the number and length of all advertised service entries does not exceed the maximum transmission unit (MTU) size supported by the PPPoE underlying interface.
Limiting the subscriber sessions per AE or PFE Bundle in PPPoE Service Name Tables
The PPPoE Service-Name table functionality may be used to limit the number of PPPoE subscriber sessions per PFE or AE bundle. This is accomplished by configuring all PPPoE underlying VLAN interfaces over a specific PFE or AE bundle with a single Service-Name table. This Service-Name table should contain only the service “any” with a max-sessions value equal to the PPPoE subscriber session limit for the PFE or AE bundle. The each PFE or AE bundle must have its own unique Service-Name table to ensure that PPPoE subscribers from other PFE or AE bundles are not incorrectly counted against a PFE or AE-specific session limit.
To configure a service-name table for PPPoE sessions on underlying
VLAN interfaces to limit the number of subscriber sessions per PFE
or AFE bundle, include the set service-name-table <PFE/AE-table-name>
service any max-sessions <PPPoE-subscriber-limit> statement at
the [edit protocols pppoe]
hierarchy level.