Service Definitions

A service definition is a high-level, platform-independent template that defines a service that you want to let your subscribers use. You use the JunosE Software’s embedded macro language on your computer to create the macro file that defines the service. You copy and install the macro file on the E Series Broadband Services Routers, and then you can associate the service definition with subscribers to create their service sessions.

Service definitions gives you flexibility by enabling you to use:

A service definition might use the following types of JunosE objects to define the characteristics and capabilities of the service you want to provide:

Creating Service Definitions

To create a service definition, you use the JunosE Software’s macro language to specify the parameters that define the desired service. A macro file can define only one service—however, the file can have multiple templates to define characteristics of the desired service. You create service definitions independent of the Service Manager commands and operations, which are performed on the E Series router.

For detailed information about the JunosE Software’s macro language, see the Command Line Interface chapter in JunosE System Basics Configuration Guide.

Figure 29 is an example of a service definition macro file that creates a tiered service. A tiered service typically provides set bandwidths for both inbound and outbound traffic for a subscriber. In this example, the input (inputBW) and output (outputBW) bandwidth values are parameterized. This example assumes that QoS profile triplePlayIP and QoS parameter maxSubscBW are configured. See Service Definition Examples for additional service definition examples.

Service Manager only tracks JunosE objects that are passed back in the env.setResult method when a service definition is executed. Table 141 describes the supported objects:

Table 141: JunosE Objects Tracked by Service Manager

Name

Requirement

Description

input-stat-clacl

Optional

  • Collects input statistics from policy manager
  • Can be a list of clacls

secondary-input-stat-clacl

Optional

  • Collects input statistics from policy manager
  • Can be a list of clacls

output-stat-clacl

Optional

  • Collects output statistics from policy manager
  • Can be a list of clacls

activate-profile

Required

  • Specifies the interface profile used on activation of the service
  • Deletion of the profile is Service Manager’s responsibility

deactivate-profile

Optional

  • Specifies the interface profile used on deactivation of the service
  • If not specified, is the same as the activation-profile
  • Deletion of the profile is Service Manager’s responsibility

command-in-error

Optional

  • Passes the value env.getErrorCommand
  • Service Manager displays the line in the service definition that has the error

command-error-status

Optional

  • Passes the value env.getErrorStatus
  • Service Manager displays the error status for the error

service-interface-type

  • Optional for IPv4 or L2TP services
  • Mandatory for independent IPv6 services or combined IPv4 and IPv6 services in a dual stack
  • Specifies the type of interface, IPv4, IPv6, combination of IPv4 and IPv6, or L2TP, to which the service session profile must be applied

input-stat-epg

Optional

  • Collects input statistics associated with the external group from policy manager
  • Both the external parent group and the corresponding hierarchical policy parameter must be specified
  • Can be multiple pairs of external parent groups and hierarchical policy parameters

output-stat-epg

Optional

  • Collects output statistics associated with the external group from policy manager
  • Both the external parent group and the corresponding hierarchical policy parameter must be specified
  • Can be multiple pairs of external parent groups and hierarchical policy parameters

secondary-input-stat-epg

Optional

  • Collects input statistics associated with the external group that is attached at the secondary input stage from policy manager
  • Both the external parent group and the corresponding hierarchical policy parameter must be specified
  • Can be multiple pairs of external parent groups and hierarchical policy parameters

Figure 29: Sample Service Definition Macro File

Image service-definition-macro-example.gif

Managing Your Service Definitions

After you have created the macro file for your service definition, you can perform the following operations with the service definition macro file:

  1. Copy—You must copy the service definition from the local computer that you used to create the macro file to the router’s NVS card.
  2. Install—You must install the service definition before you can use it to create a service session. During installation, Service Manager precompiles the definition and extracts the definition file’s timestamp. Precompiling the service definition improves Service Manager performance. The timestamp enables the Service Manager application to track any modifications you might make while the definition is being used.
  3. Uninstall—You can uninstall a service definition file, for example, if you no longer want to use that definition. When you uninstall a service definition file, any existing service sessions that were activated using the original service definition continue to use the original definition until you deactivate the service session.
  4. Modify—You can update an existing service definition file at any time. To update a service definition file:
    1. Use your text editor on your computer to make changes to the original service definition file.
    2. Copy the updated service definition file back to your router’s NVS—this overwrites the original file on the router.
    3. Install the new service definition file.

    All new service sessions will be activated using the new service definition. Any existing service sessions that were activated using the original service definition continue to use the original definition until you deactivate the service session.

copy

service-management install