Configuring the RADIUS Listener Login Event Generator

Size: px
Start display at page:

Download "Configuring the RADIUS Listener Login Event Generator"

Transcription

1 CHAPTER 19 Configuring the RADIUS Listener Login Event Generator Published: December 21, 2012 Introduction This chapter describes the configuration procedure for the RADIUS listener Login Event Generator (LEG). The RADIUS listener LEG is configured using the Cisco Service Control Subscriber Manager configuration file p3sm.cfg, which resides in the sm-inst-dir/sm/server/root/config directory (sm-inst-dir refers to the SM installation directory). The configuration file consists of sections headed by a bracketed section title; for example, [Radius.Subscriber ID]. Each section consists of several parameters having the format parameter=value. The number sign (#) at the beginning of a line signifies that it is a remark. The general RADIUS listener LEG configuration settings reside in the [Radius Listener] section. All additional RADIUS listener LEG sections start with the prefix Radius., such as [Radius.NAS.nas1], and they are defined initially as remark lines. Configuring the General Settings, page 19-2 Information About the Regular Expression Utility, page 19-6 Configuring RADIUS Attributes Mapping, page Configuring the NAS Devices, page Configuring the NAS Devices, page Applying the Configuration on the Cisco Service Control Subscriber Manager, page

2 Configuring the General Settings Chapter 19 Configuring the RADIUS Listener Login Event Generator Configuring the General Settings [Radius Listener] Section The [Radius Listener] section in the SM configuration file contains the following parameters: start Defines whether the SM should run the RADIUS listener at startup. Possible values for this parameter are yes and no. The default value is no. accounting_port Defines the RADIUS listener accounting port number. The default value is ip The IP address to which the RADIUS listener should bind. Use this parameter only in cases in which the IP address used for RADIUS transactions is not the main IP address of the SM machine; for example, in an SM cluster. Possible values are any IP address in dotted notation. The default value is not set. packet_types Defines the RADIUS protocol packet types to analyze. Possible values are accounting-start, accounting-interim, accounting-stop separated by a comma. The default value is accounting-start, accounting-interim, accounting-stop. interim_aging_timeout Updates the lease time for each IP address received from RADIUS packets. After each autologout time interval, the SM checks for subscriber IP addresses with an expired lease time. These subscriber IP addresses are removed from the system and database. The autologout mechanism must be active to enable the interim_aging_timeout feature. The default value is 0 hours. To activate the interim_aging_timeout feature, set a value greater than 0. The log_auto_logouts parameter in the [Auto Logout] section defines whether to issue user log messages for each removed mapping. Possible values are true or false. The default value is false. RADIUS Listener Section Configuration Example The following is a portion of a configuration example illustrating the [Radius Listener] section: [Radius Listener] # The following parameter defines whether the SM should run the Radius Listener at # startup. # Receives the values: yes, no. (default no) start=no # accounting port number (default 1813) accounting_port=1813 # RADIUS protocol packet types to analyze 19-2

3 Chapter 19 Configuring the RADIUS Listener Login Event Generator [Radius.Subscriber Attributes] Section packet_types=accounting-start,accounting-interim,accounting-stop # Interim Aging Timeout #interim_aging_timeout=0 [Radius.Subscriber Attributes] Section The Subscriber Manager RADIUS Listener LEG can extract more RADIUS attributes from the RDRs. Users define the additional attributes to be extracted and these configurations are sent to Cisco SCE. To define the additional attributes, configure the [Radius.Subscriber Attributes] section with the following parameters: attributes_list This parameter defines the additional RADIUS attribute or attributes to extract and process. Multiple attribute names are separated by commas when listed in this parameter. All the attributes defined in attribute_list needs to have [Radius.Field.field name] section. enable_extended_vsa_support This parameter enables this feature when the value is defined as true. The default value for this parameter is false. Only 20 extended attributes can be configured in Cisco SCE. Therefore, we recommend that you configure the same attributes in the RADIUS Listener section of the Subscriber Manager that are configured in Cisco SCE. Regular expressions are not applicable for subscriber attributes. radius_attribute_type For IPv4 subscribers, the VSA field type can be integer, string, ip_address, or binary. RADIUS Subscriber Attributes Section Configuration Example The following is a configuration example defining a list of additional RADIUS attributes: [Radius.Subscriber Attributes] attributes_list=acct-session-id,acct-session-time,called-station-id,wimax-active-time,wima x-bsid,3gpp-charging-characteristics,3gpp-charging-gateway-address,3gpp-charging-id,3gpp-g GSN-Address-Code-7,3GPP-GGSN-Address,3GPP-GGSN-MCC-MNC,3GPP-GPRS-Negotiated-QoS-Profile,3G PP-IMEISV,3GPP-IMSI,3GPP-MS-Timezone,3GPP-NSAPI,3GPP-PDP-Type,3GPP-RAT-Type,3GPP-Selection -Mode,3GPP-SGSN-Address,3GPP-SGSN-MCC-MNC,3GPP-User-Location-Info enable_extended_vsa_support=true [Radius.Field.WiMax-Active-Time] radius_attribute=26(24757;39) radius_attribute_type=integer [Radius.Field.WiMax-BSID] radius_attribute=26(24757;46) 19-3

4 RADIUS Subscriber Attributes Section Configuration Example Chapter 19 Configuring the RADIUS Listener Login Event Generator [Radius.Field.3GPP-Charging-Characteristics] radius_attribute=26(10415;13) [Radius.Field.3GPP-Charging-Gateway-Address] radius_attribute=26(10415;4) radius_attribute_type=ip_address [Radius.Field.3GPP-Charging-ID] radius_attribute=26(10415;2) radius_attribute_type=integer [Radius.Field.3GPP-GGSN-Address-Code-7] radius_attribute=26(10415;7) radius_attribute_type=ip_address [Radius.Field.3GPP-GGSN-Address] radius_attribute=26(10415;16) radius_attribute_type=ip_address [Radius.Field.3GPP-GGSN-MCC-MNC] radius_attribute=26(10415;9) [Radius.Field.3GPP-GPRS-Negotiated-QoS-Profile] radius_attribute=26(10415;5) radius_attribute_type=integer [Radius.Field.3GPP-IMEISV] radius_attribute=26(10415;20) [Radius.Field.3GPP-IMSI] radius_attribute=26(10415;1) [Radius.Field.3GPP-MS-Timezone] radius_attribute=26(10415;23) [Radius.Field.3GPP-NSAPI] radius_attribute=26(10415;10) [Radius.Field.3GPP-PDP-Type] radius_attribute=26(10415;3) radius_attribute_type=integer [Radius.Field.3GPP-RAT-Type] radius_attribute=26(10415;21) [Radius.Field.3GPP-Selection-Mode] radius_attribute=26(10415;12) [Radius.Field.Called-Station-ID] radius_attribute=30 [Radius.Field.3GPP-SGSN-Address] radius_attribute=26(10415;15) radius_attribute_type=ip_address 19-4

5 Chapter 19 Configuring the RADIUS Listener Login Event Generator RADIUS Subscriber Attributes Section Configuration Example [Radius.Field.3GPP-SGSN-MCC-MNC] radius_attribute=26(10415;18) [Radius.Field.3GPP-User-Location-Info] radius_attribute=26(10415;22) [Radius.Field.Acct-Session-ID] radius_attribute=44 [Radius.Field.Acct-Session-Time] radius_attribute=46 radius_attribute_type=integer The command-line utility p3radius -show would result in the following output: Attributes: Cell-ID,attribute:26(10,68),string SGSG-IP,attribute:26(10,65),string RAI,attribute:26(10,66),string 19-5

6 Information About the Regular Expression Utility Chapter 19 Configuring the RADIUS Listener Login Event Generator Information About the Regular Expression Utility A regular expression consists of a character string in which some characters are given special meaning with regard to pattern matching. Regular expressions have been in use from the early days of computing and provide a powerful and efficient way to parse, interpret, and search and replace text within an application. Supported Syntax, page 19-6 Unsupported Syntax, page 19-8 Regular Expression Examples, page 19-8 Regular Expression Processing versus RADIUS Listener Login Rate, page 19-9 Supported Syntax Within a regular expression, the following characters have special meaning: Positional Operators ^ matches at the beginning of a line. $ matches at the end of a line. \A matches the start of the entire string. \Z matches the end of the entire string. \b matches at a word break (Perl5 syntax only). \B matches at a non-word break (opposite of \b) (Perl5 syntax only). \<matches at the start of a word (egrep syntax only). \>matches at the end of a word (egrep syntax only). One-Character Operators. matches any single character. \d matches any decimal digit. \D matches any non-digit. \n matches a newline character. \r matches a return character. \s matches any whitespace character. \S matches any non-whitespace character. \t matches a horizontal tab character. \w matches any word (alphanumeric) character. \W matches any non-word (alphanumeric) character. \x matches the character x, if x is not one of the above listed escape sequences. 19-6

7 Chapter 19 Configuring the RADIUS Listener Login Event Generator Supported Syntax Character Class Operator [abc] matches any character in the set a, b, or c [^abc] matches any character not in the set a, b, or c [a-z] matches any character in the range a to z, inclusive A leading or trailing dash is interpreted literally. Within a character class expression, the following sequences have special meaning if the syntax bit RE_CHAR_CLASSES is on: [:alnum:] Any alphanumeric character. [:alpha:] Any alphabetical character. [:blank:] A space or horizontal tab. [:cntrl:] A control character. [:digit:] A decimal digit. [:graph:] A non-space, non-control character. [:lower:] A lowercase letter. [:print:] Same as graph, but also space and tab. [:punct:] A punctuation character. [:space:] Any whitespace character, including newline and return. [:upper:] An uppercase letter. [:xdigit:] A valid hexadecimal digit. Subexpressions and Backreferences (abc) matches whatever the expression abc would match, and saves it as a subexpression. Also used for grouping. (?:...) pure grouping operator, does not save contents. (?#...) embedded comment, ignored by engine. \n where 0 < n <10, matches the same thing the nth subexpression matched. Branching (Alternation) Operator a b matches whatever the expression a would match, or whatever the expression b would match. Repeating Operators These symbols operate on the previous atomic expression.? matches the preceding expression or the null string * matches the null string or any number of repetitions of the preceding expression. + matches one or more repetitions of the preceding expression. {m} matches exactly m repetitions of the one-character expression. {m,n} matches between m and n repetitions of the preceding expression, inclusive. {m,} matches m or more repetitions of the preceding expression. Stingy (Minimal) Matching If a repeating operator is immediately followed by a?, the repeating operator stops at the smallest number of repetitions that can complete the rest of the match. 19-7

8 Unsupported Syntax Chapter 19 Configuring the RADIUS Listener Login Event Generator Lookahead Lookahead refers to the ability to match part of an expression without consuming any of the input text. There are two variations to this: (?=foo) matches at any position where foo would match, but does not consume any characters of the input. (?!foo) matches at any position where foo would not match, but does not consume any characters of the input. Unsupported Syntax Some flavors of regular expression utilities support additional escape sequences, and this is not meant to be an exhaustive list of unsupported syntax. (?mods) inline compilation/execution modifiers (Perl5). \G end of previous match (Perl5). [.symbol.] collating symbol in class expression (POSIX). [=class=] equivalence class in class expression (POSIX). s/foo/bar/ style expressions as in sed and awk (note: these can be accomplished through other means in the API). Regular Expression Examples The following examples show how to perform some basic manipulation using the regular expression tool. To remove the cisco.com suffix from a given name (e.g. name@cisco.com), define the following manipulation rule: (.*)@.* To remove the name prefix from a given name (e.g. name@cisco.com), define the following manipulation rule:.*@(.*) If no reduction is needed, either define the following reduction rule (.*), or do not define any rule. To find a partial match from of a name (e.g. find 'isco' in name@cisco.com), define the following matching rule: mapping_table.cisco=<value> To find a full match of a name, define the following matching rule: mapping_table.cisco=<value> To define a default value for an empty or non-existent attribute value: mapping_table.^$=<value> If the character or string was not found in the input string when performing reduction (stripping characters or strings), the result of the regular expression is an empty string. In previous versions, if the character or string was not found in the input string when performing reduction, the result of the regular expression was the input string. Brackets '[' or ']' are used by the regular expression mechanism and also in the section definitions in the configuration files. If either of these characters form a part of the reduction rule definition (field_manipulation parameter) or in matching rule definition (mapping_table parameter), it should be preceded by two backslashes ('\\') for it to be used as part of the value. 19-8

9 Chapter 19 Configuring the RADIUS Listener Login Event Generator Regular Expression Processing versus RADIUS Listener Login Rate Example: [Sample Section] mapping_table.^12\\[user7$=7 will have a full match result to the '12\[user7' string mapping_table.^12\[user7$=7 will have a full match result to the '12[user7' string mapping_table.^12[user7$=7 will have a full match result to the '12[user7' string as well. Parentheses '(' or ')' and the pipe character ' ' should be preceded by a single backslash '\'. For example, if you have the rule ^(?:88 99)(.*)$ --input=886, the CLU command should be as shown in the following example: p3radius --test-reduction-rule --reg-exp=^\(?:88\ 99\)\(.*\)$ --input=886 Regular Expression Processing versus RADIUS Listener Login Rate Using regular expressions for string reduction, pattern matching, or both can cause performance degradation on the RADIUS listener login rate. When using regular expressions, it is important to define the correct reduction and match patterns. There are three elements that affect the regular expression processing time. Complexity of the pattern. Length of the input string to reduce or match; a longer string will cause longer regular expression operation. Total number of reduction and matching rules defined in the configuration file. The following examples demonstrate regular expression operations that do not significantly impact performance: Removal of prefixes or suffixes Use a regular expression of the format.*<string>(.*) or (.*)<String>.*. Matching prefixes or suffixes Use a regular expression of the format ^<String>or <String>$. To calculate the impact of the regular expression usage on the login rate, the p3radius test-reduction-rule and test-manipulation-rule CLU commands provide the average processing time for a single reduction/matching operation. Using complex regular expression patterns will cause performance degradation; the degradation increases relative to the length of the string being manipulated. It is strongly recommended not to use the [] operands with the.* or with the (.*) operands. More number of regular expressions can impact the the processing. Order the regular expressions in such a way that all matches are at the top. 19-9

10 Configuring RADIUS Attributes Mapping Chapter 19 Configuring the RADIUS Listener Login Event Generator Configuring RADIUS Attributes Mapping Mapping a RADIUS Attribute to a Subscriber ID, page Mapping RADIUS Attribute to Subscriber Policy, page Mapping of RADIUS Attribute to Subscriber IP Address, page Mapping a RADIUS Attribute to a Subscriber ID The configuration described in this section is optional. The subscriber ID is usually put in the User-Name RADIUS attribute. However, in certain installations, it is possible to use a different RADIUS attribute. For example, in wireless environments, it is possible to use the 3GPP-IMSI or the 3GPP2-IMSI attributes. The default is to use the User-Name attribute. The RADIUS listener can be configured to concatenate up to five RADIUS attributes for use as the Subscriber ID. To define which attribute(s) to use for the subscriber ID, configure the [Radius.Subscriber ID] and the [Radius.Field.<field name>] sections. To define the attribute(s) to use, configure the following parameters in the [Radius.Subscriber ID] section: fields Defines the RADIUS protocol fields names. When defining multiple fields, use commas between the field names. The field name must not start or end with a space character and it cannot contain an '=' character. A maximum of three fields can be defined. The default value is user_name. The following is an example of setting this parameter: fields=user_name,vpn field_separator Defines the character or string to be used when concatenating several fields. If you define three values for the fields parameter (user_name, vpn, and IP) and the field separator is being defined: The field_separator parameter must contain user_name, vpn, and IP in the same order as they were defined in the fields parameter. The separator character between the 1st and 2nd attributes and between the 2nd and 3rd attributes can be different; for example, user_name-vpn::ip. The separator can be string; for example, ::. The separator can be an empty string; for example, field_separator=user_namevpnip. The default value is _. The following is an example of setting this parameter with the value '-': field_separator=user_name-vpn 19-10

11 Chapter 19 Configuring the RADIUS Listener Login Event Generator Mapping a RADIUS Attribute to a Subscriber ID field_manipulation.<field name>=<regular expression> The field_manipulation parameters define how to manipulate the RADIUS field values. The <field name> part of this parameter is one of the fields defined in the fields parameter. The <regular expression> part of this parameter is the regular expression reduction to be used on the <field name> value. It is possible to define a field_manipulation rule for each name in the field property. The following is an example of setting this parameter: field_manipulation.user_name=(.*)@.* field_manipulation.vpn=(.*) It is possible to configure the RADIUS listener to strip a RADIUS attribute based on a selected character or string using a regular expression rule. This provides a convenient method for obtaining the subscriber ID from a prefix or a suffix of an attribute value. For example, you can obtain the subscriber ID from the USERNAME attribute value of subscriber@domain-name by stripping the characters from the value by using the (.*)@.* regular expression rule to produce the subscriber. Similarly, you can obtain the domain name by using the.*@(.*) regular expression rule. concatenated_string_manipulation=<regular expression> The concatenated_string_manipulation parameters define how to manipulate the concatenated RADIUS field value. The LEG running a regular expression manipulation after concatenating the attribute values together. The regular expression is designed to identify the existence of each set of attributes and separators and to extract the relevant part of the concatenated string. Example: [Radius.Subscriber ID] fields=field_a,field_b field_separator=field_a:field_b field_manipulation.field_a=reg_exp_1 field_manipulation.field_b=reg_exp_2 concatenated_string_manipulation =REG_EXP_3 The Radius listener performs the following steps: 1. Retrieves the parameters represented by field_a and field_b. 2. Performs manipulation on the field data as follows: a. Performs REG_EXP_1 manipulation on field_a data. b. Performs REG_EXP_2 manipulation on field_b data. 3. Concatenates 2a and 2b result using the ":". 4. Performs REG_EXP_3 manipulation on the Step 3 result. For each field defined by the fields parameter, you must also define a [Radius.Field.<field name>] section with the following parameters: radius_attribute Configure the radius_attribute parameter with the RADIUS attribute number. Use the following format for Vendor-Specific Attributes (VSA): 26(vendor-id;sub-attribute). For example, 26(10415;1). The default value is

12 Mapping a RADIUS Attribute to a Subscriber ID Chapter 19 Configuring the RADIUS Listener Login Event Generator radius_attribute_type Configure radius_attribute_type parameter according to the RADIUS attribute format. Possible values for this parameter are integer, string, and IP_address. The default value is string. The IP_address type is actually similar to integer type, but after retrieving the data from the radius data, the LEG translates it to String value (A.B.C.D). [Radius.Field.example] # RADIUS protocol attribute number. radius_attribute = 4 # the type of the attribute (type "integer" or "string") radius_attribute_type = IP_address Validation Rules When regular expression rules are used for reduction of RADIUS attributes, the following validation rules are applied: The protocol field amount must not exceed three fields. Each field defined in the fields parameter must have a corresponding [Radius.Field.<field>] section. If the separator character is defined, the order of the fields is checked. Each field defined in the fields parameter may have a single reduction regular expression rule. If a rule exists, the regular expression validity check is performed. If an VPN value is available, then the user name is the VPN, otherwise the user name is the user without the domain. Configuring the Subscriber ID: Example concatenated_string_manipulation=.*-(.*) (.*)@.* The following is an example configuration file illustrating how to configure the subscriber ID assignment option. In this example, the User-Name and VPN attributes are assigned to the subscriber ID: [Radius.Subscriber ID] # Field name fields=user_name,vpn # Field separator # "-" is the separator between the user_name and vpn fields. field_separator=user_name-vpn [Radius.Field.user_name] # RADIUS protocol attribute number radius_attribute=1 # the type of the attribute (type "integer" or "string") radius_attribute_type = string [Radius.Field.vpn] # RADIUS protocol attribute number. radius_attribute = 5 # the type of the attribute (type "integer" or "string") radius_attribute_type = integer 19-12

13 Chapter 19 Configuring the RADIUS Listener Login Event Generator Mapping RADIUS Attribute to Subscriber Policy Configuring the Vendor-Specific Attribute as Subscriber ID: Example The following is an example configuration file illustrating how to configure the subscriber ID assignment option. In this example, the 3GPP_IMSI vendor-specific attribute is assigned to the subscriber ID: [Radius.Subscriber ID] # Field name fields=user_name [Radius.Field.user_name] # in case of a vendor specific attribute (VSA) # when the 'radius_attribute' is set to 26 # configuration for 3GPP_IMSI radius_attribute = 26(10415;1) # the type of the attribute (type "integer" or "string") radius_attribute_type = string Configuring Stripping of the Attribute Value Example Using the Regular Expression Rule The following is an example configuration file illustrating how to configure the stripping of an attribute value using a regular expression rule: [Radius.Subscriber ID] # Field name fields=user_name # Field manipulation field_manipulation.user_name=(.*)@.* [Radius.Field.user_name] # RADIUS protocol attribute number radius_attribute=1 # the type of the attribute (type "integer" or "string") radius_attribute_type = string The above configuration applied on john@some-domain.com will extract john as a Subscriber ID. Mapping RADIUS Attribute to Subscriber Policy The configuration described in this section is optional. Subscriber policy configuration in the RADIUS listener can be handled in any of the following ways: Extract the data from a RADIUS attribute. Set a default value for all subscribers that log on via the RADIUS listener. Do not set any policy to the subscriber

14 Mapping RADIUS Attribute to Subscriber Policy Chapter 19 Configuring the RADIUS Listener Login Event Generator Extracting Data from a RADIUS Attribute To define which RADIUS attribute to use for the subscriber policy, configure the [Radius.Property.Package] and [Radius.Field.<field name>] sections. To define the attribute to be used, configure the following parameters: fields Defines the RADIUS protocol fields names. When defining multiple fields, use commas between the field names. The field name must not start or end with a space character and it cannot contain an '=' character. This parameter has no default value. The following is an example of setting this parameter: fields=user_name,ip field_separator Defines the character to be used when concatenating several fields. The default value is underscore (_). The following is an example of setting this parameter with the value hyphen (-): field_separator=user_name-ip skip_policy_update_on_interim If the property of a subscriber is not to be updated during the interim packets, then the skip_policy_update_on_interim parameter should be set to true. The default value is false. field_manipulation.<field name>=<regular expression> The field_manipulation parameters define how to manipulate the RADIUS field values. The <field name> part of this parameter is one of the fields defined in the fields parameter. The <regular expression> part of this parameter is the reduction regular expression to be used on the <field name> value. It is possible to define a field_manipulation rule for each name in the field property. This is the default rule if there is a non-configured field manipulation. The following is an example of setting this parameter: field_manipulation.user_name=(.*)@.* field_manipulation.ip=(.*) mapping_table.<regexp>=<property-value> The mapping_table parameters define a conversion table between the result of the attribute value manipulation, the matching rule, and the property value. The <regexp> part of this parameter defines the regular expression matching rule. The <property-value> part of this parameter defines the integer result if the regular expression is matched. There is no default value for this parameter, but it is possible to set a default value by using the following expression: mapping_table.^$=<value>. This value is used if the mapping result is an empty string. The following is an example of setting this parameter. mapping_table..*@.*=1 mapping_table..*=

15 Chapter 19 Configuring the RADIUS Listener Login Event Generator Mapping RADIUS Attribute to Subscriber Policy For each field defined by the fields parameter, you must also define a [Radius.Field.<field name>] section with the following parameters: radius_attribute Configure the radius_attribute parameter with the RADIUS attribute number. Use the following format for Vendor-Specific Attributes (VSA): 26(vendor-id;sub-attribute). For example, 26(10415;1). The default value is 1. radius_attribute_type Configure the radius_attribute_type parameter according to the RADIUS attribute format. Possible values for this parameter are integer and string. The default value is string. use_default Defines whether to use a default policy, if no match is found in the mapping table. Possible values for this parameter are true and false. The default value is false. default_policy Defines the default policy ID to use if no policy information is extracted. This parameter is relevant only if the use_default parameter is set to true. Possible values for this parameter are any integer number. This parameter has no default value. ignore_policy_list Defines a list of policy IDs separated by commas. During login, if the policy ID matches one of the values defined in this parameter, a login operation occurs without changing the policy value. This parameter is valid only if the allow_login_with_no_policy parameter is set to true. This parameter has no default value. allow_login_with_no_policy Defines whether a login can be performed when no policy is found for assignment. Possible values for this parameter are true and false. The default value is false. Validation Rules When regular expression rules are used for reduction of RADIUS attributes, the following validation rules are applied: The protocol field amount must not exceed three fields. Each field defined in the fields parameter must have a corresponding [Radius.Field.<field>] section. The property value in the mapping table is an integer. The = operator is concatenated to the property value with no space between them. A validity test is performed for each regular expression that is used for matching and reduction

16 Mapping of RADIUS Attribute to Subscriber IP Address Chapter 19 Configuring the RADIUS Listener Login Event Generator Extracting Data from a RADIUS Attribute: Example The following example is a portion of a configuration file illustrating how to configure the subscriber policy assignment option. In this example, a VSA is assigned to the subscriber policy. It is stripped from its prefix and converted to integer type using a mapping table. [Radius.Property.Package] # Field name fields=user_name,vpn # Field separator field_separator=user_name@vpn # Field manipulation field_manipulation.user_name=(.*)@.* # Mapping table mapping_table..*@.*=1 mapping_table.^$=2 mapping_table..*=3 [Radius.Field.user_name] # RADIUS protocol attribute number radius_attribute = 1 # the type of the attribute (type "integer" or "string") radius_attribute type = string [Radius.Field.vpn] # RADIUS protocol attribute number. # use the following format for VSAs: 26 vendor-id;sub-attribute) # for example: 26(9;1) radius_attribute = 26(9;1) # the type of the attribute (type "integer" or "string") radius_attribute_type = string Not Setting Any Policy to the Subscriber Edit the [Radius.Property.Package] section with all remark lines. The number sign ( # ) at the beginning of a line signifies a remark line. Mapping of RADIUS Attribute to Subscriber IP Address The subscriber IP address is normally based on the Framed-IP-Address attribute; however, it can also be based on a different RADIUS attribute. The default is to use the Framed-IP-Address attribute. In addition, for environments with IP addresses over VPN, the RADIUS listener LEG supports the extraction of VPN information from a RADIUS attribute to be used with the extracted IP address. Currently the LEG supports subscriber mappings over VPN only for VPNs that are defined by a VLAN-ID (also referred to as VPNs of type VLAN ). The following algorithm is applied to handle IP addresses in this LEG: 1. If the user configured an attribute from which to extract the IP, the LEG looks for that attribute in the packet. If the attribute exists, the LEG uses the attribute as the subscriber IP address. 2. If the attribute does not exist or is not configured, the LEG looks for the Framed-Route attributes; several Framed-Route attributes may exist. If any Framed-Route attributes exist, the LEG uses these attributes as the subscriber IP addresses

17 Chapter 19 Configuring the RADIUS Listener Login Event Generator Mapping of RADIUS Attribute to Subscriber IP Address 3. If there are no Framed-Route attributes, the LEG looks for a Framed-IP-Address attribute and a Framed-IP-Netmask attribute. If a Framed-IP-Address attribute exists, the LEG uses this attribute as the subscriber IP address. If both the Framed-IP-Address and the Framed-IP-Netmask attributes exist, the operation is performed with the IP range represented by the IP address and the IP netmask. 4. Otherwise, the LEG performs a login without the IP address. The configured attribute can be a regular RADIUS attribute or a VSA. It is possible to encode the attribute as an integer, in which case it will be a single IP address. It can also be encoded as a string and will therefore be an IP-Address/IP-Range value, which must be formatted as A.B.C.D/E or A.B.C.D. The supported format of the Framed-Route attribute is as described in RFC2865. It must start with a string that starts with the route itself in the format A.B.C.D/E followed by a space. Other values follow the space, but the LEG ignores these other values. To define which attribute to use for the subscriber IP address, configure the [Radius.Subscriber IP Address] and the [Radius.Field.<field name>] sections. To define the attribute to use, configure the following parameters: fields Defines the RADIUS protocol field name. Only one field name can be defined. The default value is not set. vpn_field Defines the RADIUS protocol attribute field name to be used as the VPN information related to the IP address. The default value is not set. For the field defined by the fields parameter, you must also define a [Radius.Field.<field name>] section with the following parameters: radius_attribute Configure the radius_attribute parameter with the RADIUS attribute number. Use the following format for Vendor-Specific Attributes (VSA): 26(vendor-id;sub-attribute). For example, 26(10415;1). The default value is 1. radius_attribute_type Configure radius_attribute_type parameter according to the RADIUS attribute format. Possible values for this parameter are integer and string. The default value is string. Configuring Subscriber IP Address: Example The following is an example configuration file illustrating how to configure the subscriber IP assignment option. In the following example, the Framed-IP-Address attribute is used. [Radius.Subscriber IP Address] # Field name for IP fields=frame-ip-address [Radius.Field.frame-ip-address] # RADIUS protocol attribute number 19-17

18 Mapping of RADIUS Attribute to Subscriber IP Address Chapter 19 Configuring the RADIUS Listener Login Event Generator radius_attribute=8 # the type of the attribute (type "integer" or "string") # if type is string a mapping table must be supplied # below. # (no default) radius_attribute_type=integer Configuring Subscriber IP Address over VPN: Example The following is an example configuration file illustrating how to configure the subscriber IP assignment option for IP over VPN. In the following example, the Framed-IP-Address attribute is used for the IP address and the cisco-av-pair VSA attribute is used for the VPN information. [Radius.Subscriber IP Address] # RADIUS protocol field name. fields=ip # RADIUS protocol attribute field name to be used as the # VPN information related to the IP address. vpn_field=vpn [Radius.Field.ip] # RADIUS protocol attribute number radius_attribute = 8 # the type of the attribute (type "integer" or "string") radius_attribute type = integer [Radius.Field.vpn] # RADIUS protocol attribute number. # use the following format for VSAs: 26 vendor-id;sub-attribute) # for example: 26(9;1) radius_attribute = 26(9;1) # the type of the attribute (type "integer" or "string") radius_attribute_type = integer 19-18

19 Chapter 19 Configuring the RADIUS Listener Login Event Generator Configuring the NAS Devices Configuring the NAS Devices The RADIUS listener LEG must be configured with the RADIUS clients/nas devices that transmit RADIUS messages to the LEG, to accept RADIUS messages. Each [Radius.NAS.XXX] section specifies a single Network Access System (NAS), where XXX represents the NAS name. Step 1 Step 2 Step 3 Copy the example Radius.NAS.XXX section that exists in the configuration file. The remarks from the parameters and section header should be removed. Configure a section name of the format [Radius.NAS.my_name_for_the_NAS]. Configure the domain, IP_address, NAS_identifier, and secret parameters: domain Set the domain parameter with a valid subscriber domain name. IP_address Set the IP_address parameter with the NAS IP address with which the RADIUS messages arrive. IP address should be in dotted notation (xxx.xxx.xxx.xxx). NAS_identifier Set the NAS_identifier parameter with a NAS-ID attribute with which the RADIUS messages are sent. secret Set the secret parameter with the secret key defined in the NAS for this connection. Configuring the NAS Devices: Example This example is a section of a configuration file illustrating how to configure the NAS: [Radius.NAS.Access134] # Cisco subscriber domain name domain = subscribers # IP address in dotted notation IP_address = # name of the NAS that exists in the NAS-ID attribute NAS_identifier =ACCESS134 # secret string secret = secret123 Applying the Configuration on the Cisco Service Control Subscriber Manager After editing the relevant configuration files, use the following p3sm command-line utility to load the configuration file: >p3sm --load-config 19-19

20 Applying the Configuration on the Cisco Service Control Subscriber Manager Chapter 19 Configuring the RADIUS Listener Login Event Generator 19-20

Configuring the RADIUS Listener LEG

Configuring the RADIUS Listener LEG CHAPTER 16 Revised: July 28, 2009, Introduction This module describes the configuration procedure for the RADIUS Listener LEG. The RADIUS Listener LEG is configured using the SM configuration file p3sm.cfg,

More information

Configuring the RADIUS Listener Login Event Generator

Configuring the RADIUS Listener Login Event Generator CHAPTER 19 Configuring the RADIUS Listener Login Event Generator Published: May 27, 2013 Introduction This chapter describes the configuration procedure for the RADIUS listener Login Event Generator (LEG).

More information

Using the RADIUS Listener Login Event Generator Command Line Utility

Using the RADIUS Listener Login Event Generator Command Line Utility CHAPTER 18 Using the RADIUS Listener Login Event Generator Command Line Utility Revised: March 22, 2012, Introduction This chapter describes the command-line utility (CLU) commands when the software is

More information

Capturing and Reporting Subscriber Attributes

Capturing and Reporting Subscriber Attributes CHAPTER 6 Published: September 26, 2012 Introduction Vendor Specific Attributes (VSA) are RADIUS or Diameter attributes that are sent mostly in mobile environments. They can be captured from the traffic

More information

Using the RADIUS Listener LEG CLU

Using the RADIUS Listener LEG CLU CHAPTER 18 Revised: July 28, 2009, Introduction This module describes the command-line utility (CLU) commands when the software is installed on the Subscriber Manager (SM). Information About the p3radius

More information

Supported Message Formats

Supported Message Formats APPENDIXA Revised: July 27, 2012, Supported Diameter Messages The messages sent and received by the diameter infrastructure are as follows: Capability Exchange Request (CER) Sent upon new connection establishment

More information

Supported AVPs in DCCA Messages

Supported AVPs in DCCA Messages CHAPTER B The following sections of this appendix list the vendor-specific attribute value pairs (AVPs) supported by the Cisco GGSN in Diameter Credit Control Application (DCCA) Credit-Control-Request

More information

Configuring Security on the GGSN

Configuring Security on the GGSN CHAPTER 12 This chapter describes how to configure security features on the gateway GPRS support node (GGSN), including Authentication, Authorization, and Accounting (AAA), and RADIUS. IPSec on the Cisco

More information

GMM-SM Event Logging. Feature Description. Feature Overview. Events to be Logged

GMM-SM Event Logging. Feature Description. Feature Overview. Events to be Logged With the introduction of this feature, the SGSN now supports limited use of event data records (EDRs). This chapters details the SGSN's event logging feature, with the use of EDRs, which is intended to

More information

- c list The list specifies character positions.

- c list The list specifies character positions. CUT(1) BSD General Commands Manual CUT(1)... 1 PASTE(1) BSD General Commands Manual PASTE(1)... 3 UNIQ(1) BSD General Commands Manual UNIQ(1)... 5 HEAD(1) BSD General Commands Manual HEAD(1)... 7 TAIL(1)

More information

Full file at

Full file at Java Programming: From Problem Analysis to Program Design, 3 rd Edition 2-1 Chapter 2 Basic Elements of Java At a Glance Instructor s Manual Table of Contents Overview Objectives s Quick Quizzes Class

More information

show gprs access-point

show gprs access-point show gprs access-point show gprs access-point To display information about access points on the GGSN, use the show gprs access-point privileged EXEC command. show gprs access-point {access-point-index

More information

GGSN Configuration Example

GGSN Configuration Example This chapter provides information for configuring the system to function as a Gateway GPRS Support Node (GGSN) in General Packet Radio Service (GPRS) or Universal Mobile Telecommunications System (UMTS)

More information

L2TP Access Concentrator

L2TP Access Concentrator This chapter describes the Layer 2 Tunneling Protocol (L2TP) Access Concentrator (LAC) functionality support on Cisco ASR 5x00 chassis and explains how it is configured. The product Administration Guides

More information

GMM-SM Event Logging. Feature Description. Feature Overview. Events to be Logged

GMM-SM Event Logging. Feature Description. Feature Overview. Events to be Logged With the introduction of this feature, the SGSN now supports limited use of event data records (EDRs). This chapters details the SGSN's event logging feature, with the use of EDRs, which is intended to

More information

Regular Expressions. Todd Kelley CST8207 Todd Kelley 1

Regular Expressions. Todd Kelley CST8207 Todd Kelley 1 Regular Expressions Todd Kelley kelleyt@algonquincollege.com CST8207 Todd Kelley 1 POSIX character classes Some Regular Expression gotchas Regular Expression Resources Assignment 3 on Regular Expressions

More information

psed [-an] script [file...] psed [-an] [-e script] [-f script-file] [file...]

psed [-an] script [file...] psed [-an] [-e script] [-f script-file] [file...] NAME SYNOPSIS DESCRIPTION OPTIONS psed - a stream editor psed [-an] script [file...] psed [-an] [-e script] [-f script-file] [file...] s2p [-an] [-e script] [-f script-file] A stream editor reads the input

More information

Regular Expressions. Michael Wrzaczek Dept of Biosciences, Plant Biology Viikki Plant Science Centre (ViPS) University of Helsinki, Finland

Regular Expressions. Michael Wrzaczek Dept of Biosciences, Plant Biology Viikki Plant Science Centre (ViPS) University of Helsinki, Finland Regular Expressions Michael Wrzaczek Dept of Biosciences, Plant Biology Viikki Plant Science Centre (ViPS) University of Helsinki, Finland November 11 th, 2015 Regular expressions provide a flexible way

More information

Regular Expressions. Regular expressions are a powerful search-and-replace technique that is widely used in other environments (such as Unix and Perl)

Regular Expressions. Regular expressions are a powerful search-and-replace technique that is widely used in other environments (such as Unix and Perl) Regular Expressions Regular expressions are a powerful search-and-replace technique that is widely used in other environments (such as Unix and Perl) JavaScript started supporting regular expressions in

More information

JME Language Reference Manual

JME Language Reference Manual JME Language Reference Manual 1 Introduction JME (pronounced jay+me) is a lightweight language that allows programmers to easily perform statistic computations on tabular data as part of data analysis.

More information

Paolo Santinelli Sistemi e Reti. Regular expressions. Regular expressions aim to facilitate the solution of text manipulation problems

Paolo Santinelli Sistemi e Reti. Regular expressions. Regular expressions aim to facilitate the solution of text manipulation problems aim to facilitate the solution of text manipulation problems are symbolic notations used to identify patterns in text; are supported by many command line tools; are supported by most programming languages;

More information

System Operation and Configuration

System Operation and Configuration The ASR 5500 is designed to provide subscriber management services for high-capacity 4G wireless networks. Before you connect to the command line interface (CLI) and begin system configuration, you must

More information

Configuring QoS on the GGSN

Configuring QoS on the GGSN CHAPTER 9 This chapter describes how to configure Quality of Service (QoS) functions to differentiate traffic flow through the GGSN. For a complete description of the GGSN commands in this chapter, refer

More information

DHCP Server RADIUS Proxy

DHCP Server RADIUS Proxy The Dynamic Host Configuration Protocol (DHCP) Server RADIUS Proxy is a RADIUS-based address assignment mechanism in which a DHCP server authorizes remote clients and allocates addresses based on replies

More information

Full file at C How to Program, 6/e Multiple Choice Test Bank

Full file at   C How to Program, 6/e Multiple Choice Test Bank 2.1 Introduction 2.2 A Simple Program: Printing a Line of Text 2.1 Lines beginning with let the computer know that the rest of the line is a comment. (a) /* (b) ** (c) REM (d)

More information

Configuring Traffic Policies for Server Load Balancing

Configuring Traffic Policies for Server Load Balancing CHAPTER3 Configuring Traffic Policies for Server Load Balancing This chapter describes how to configure the ACE module to use classification (class) maps and policy maps to filter and match interesting

More information

c) Comments do not cause any machine language object code to be generated. d) Lengthy comments can cause poor execution-time performance.

c) Comments do not cause any machine language object code to be generated. d) Lengthy comments can cause poor execution-time performance. 2.1 Introduction (No questions.) 2.2 A Simple Program: Printing a Line of Text 2.1 Which of the following must every C program have? (a) main (b) #include (c) /* (d) 2.2 Every statement in C

More information

Computing Unit 3: Data Types

Computing Unit 3: Data Types Computing Unit 3: Data Types Kurt Hornik September 26, 2018 Character vectors String constants: enclosed in "... " (double quotes), alternatively single quotes. Slide 2 Character vectors String constants:

More information

STREAM EDITOR - REGULAR EXPRESSIONS

STREAM EDITOR - REGULAR EXPRESSIONS STREAM EDITOR - REGULAR EXPRESSIONS http://www.tutorialspoint.com/sed/sed_regular_expressions.htm Copyright tutorialspoint.com It is the regular expressions that make SED powerful and efficient. A number

More information

Chapter 2. Lexical Elements & Operators

Chapter 2. Lexical Elements & Operators Chapter 2. Lexical Elements & Operators Byoung-Tak Zhang TA: Hanock Kwak Biointelligence Laboratory School of Computer Science and Engineering Seoul National Univertisy http://bi.snu.ac.kr The C System

More information

Pattern Matching. An Introduction to File Globs and Regular Expressions

Pattern Matching. An Introduction to File Globs and Regular Expressions Pattern Matching An Introduction to File Globs and Regular Expressions Copyright 2006 2009 Stewart Weiss The danger that lies ahead Much to your disadvantage, there are two different forms of patterns

More information

Pattern Matching. An Introduction to File Globs and Regular Expressions. Adapted from Practical Unix and Programming Hunter College

Pattern Matching. An Introduction to File Globs and Regular Expressions. Adapted from Practical Unix and Programming Hunter College Pattern Matching An Introduction to File Globs and Regular Expressions Adapted from Practical Unix and Programming Hunter College Copyright 2006 2009 Stewart Weiss The danger that lies ahead Much to your

More information

GGSN CDR Field Descriptions

GGSN CDR Field Descriptions This chapter describes the CDR fields supported by the system for use in GGSN-CDRs (G-CDRs) and enhanced G-CDRs (eg-cdrs). The following information is provided for each field: Description: The field's

More information

Call Flows for 3G and 4G Mobile IP Users

Call Flows for 3G and 4G Mobile IP Users This chapter provides various call flows for 3G and 4G mobile IP users, and contains the following sections: Finding Feature Information, on page 1 3G DHCP Discover Call Flow, on page 1 4G DHCP Discover

More information

AAA Server Group Configuration Mode Commands

AAA Server Group Configuration Mode Commands AAA Server Group Configuration Mode Commands The AAA Server Group Configuration Mode is used to create and manage the Diameter/RADIUS server groups within the context or system. AAA server group facilitates

More information

Typescript on LLVM Language Reference Manual

Typescript on LLVM Language Reference Manual Typescript on LLVM Language Reference Manual Ratheet Pandya UNI: rp2707 COMS 4115 H01 (CVN) 1. Introduction 2. Lexical Conventions 2.1 Tokens 2.2 Comments 2.3 Identifiers 2.4 Reserved Keywords 2.5 String

More information

Configuring GPRS Tunneling Protocol Support

Configuring GPRS Tunneling Protocol Support The GPRS Tunneling Protocol Support feature provides firewall support for General Packet Radio Switching (GPRS) Tunneling Protocol (GTP). GPRS is a data network architecture, which integrates with existing

More information

Regular Expressions. Regular Expression Syntax in Python. Achtung!

Regular Expressions. Regular Expression Syntax in Python. Achtung! 1 Regular Expressions Lab Objective: Cleaning and formatting data are fundamental problems in data science. Regular expressions are an important tool for working with text carefully and eciently, and are

More information

Configuring Traffic Policies for Server Load Balancing

Configuring Traffic Policies for Server Load Balancing CHAPTER3 Configuring Traffic Policies for Server Load Balancing This chapter describes how to configure the ACE appliance to use classification (class) maps and policy maps to filter and match interesting

More information

Regex, Sed, Awk. Arindam Fadikar. December 12, 2017

Regex, Sed, Awk. Arindam Fadikar. December 12, 2017 Regex, Sed, Awk Arindam Fadikar December 12, 2017 Why Regex Lots of text data. twitter data (social network data) government records web scrapping many more... Regex Regular Expressions or regex or regexp

More information

Regular Expressions Explained

Regular Expressions Explained Found at: http://publish.ez.no/article/articleprint/11/ Regular Expressions Explained Author: Jan Borsodi Publishing date: 30.10.2000 18:02 This article will give you an introduction to the world of regular

More information

Chapter 2 Basic Elements of C++

Chapter 2 Basic Elements of C++ C++ Programming: From Problem Analysis to Program Design, Fifth Edition 2-1 Chapter 2 Basic Elements of C++ At a Glance Instructor s Manual Table of Contents Overview Objectives s Quick Quizzes Class Discussion

More information

Full file at

Full file at Java Programming, Fifth Edition 2-1 Chapter 2 Using Data within a Program At a Glance Instructor s Manual Table of Contents Overview Objectives Teaching Tips Quick Quizzes Class Discussion Topics Additional

More information

Regular Expressions Overview Suppose you needed to find a specific IPv4 address in a bunch of files? This is easy to do; you just specify the IP

Regular Expressions Overview Suppose you needed to find a specific IPv4 address in a bunch of files? This is easy to do; you just specify the IP Regular Expressions Overview Suppose you needed to find a specific IPv4 address in a bunch of files? This is easy to do; you just specify the IP address as a string and do a search. But, what if you didn

More information

Part III. Shell Config. Tobias Neckel: Scripting with Bash and Python Compact Max-Planck, February 16-26,

Part III. Shell Config. Tobias Neckel: Scripting with Bash and Python Compact Max-Planck, February 16-26, Part III Shell Config Compact Course @ Max-Planck, February 16-26, 2015 33 Special Directories. current directory.. parent directory ~ own home directory ~user home directory of user ~- previous directory

More information

Configuration and Management

Configuration and Management CHAPTER 4 This module describes how to configure and manage the SM. Information About SM Methods, page 4-1 How to Configure a Subscriber Management Solution, page 4-3 How to Use the CLU, page 4-13 Information

More information

Understanding Regular Expressions, Special Characters, and Patterns

Understanding Regular Expressions, Special Characters, and Patterns APPENDIXA Understanding Regular Expressions, Special Characters, and Patterns This appendix describes the regular expressions, special or wildcard characters, and patterns that can be used with filters

More information

Chapter 2 Using Data. Instructor s Manual Table of Contents. At a Glance. Overview. Objectives. Teaching Tips. Quick Quizzes. Class Discussion Topics

Chapter 2 Using Data. Instructor s Manual Table of Contents. At a Glance. Overview. Objectives. Teaching Tips. Quick Quizzes. Class Discussion Topics Java Programming, Sixth Edition 2-1 Chapter 2 Using Data At a Glance Instructor s Manual Table of Contents Overview Objectives Teaching Tips Quick Quizzes Class Discussion Topics Additional Projects Additional

More information

Using the aregcmd Commands

Using the aregcmd Commands CHAPTER 2 This chapter describes how to use each of the aregcmd commands. The Cisco Access Registrar aregcmd command is a command-line based configuration tool. It allows you to set any Cisco Access Registrar

More information

UNIX / LINUX - REGULAR EXPRESSIONS WITH SED

UNIX / LINUX - REGULAR EXPRESSIONS WITH SED UNIX / LINUX - REGULAR EXPRESSIONS WITH SED http://www.tutorialspoint.com/unix/unix-regular-expressions.htm Copyright tutorialspoint.com Advertisements In this chapter, we will discuss in detail about

More information

X-Header Insertion and Encryption

X-Header Insertion and Encryption This chapter describes the features and provides detailed information on the following topics: Feature Description, page 1 How It Works, page 7 Configuring, page 7 Monitoring and Troubleshooting the feature,

More information

User Commands sed ( 1 )

User Commands sed ( 1 ) NAME sed stream editor SYNOPSIS /usr/bin/sed [-n] script [file...] /usr/bin/sed [-n] [-e script]... [-f script_file]... [file...] /usr/xpg4/bin/sed [-n] script [file...] /usr/xpg4/bin/sed [-n] [-e script]...

More information

1. What type of error produces incorrect results but does not prevent the program from running? a. syntax b. logic c. grammatical d.

1. What type of error produces incorrect results but does not prevent the program from running? a. syntax b. logic c. grammatical d. Gaddis: Starting Out with Python, 2e - Test Bank Chapter Two MULTIPLE CHOICE 1. What type of error produces incorrect results but does not prevent the program from running? a. syntax b. logic c. grammatical

More information

L2TP Network Server. LNS Service Operation

L2TP Network Server. LNS Service Operation This chapter describes the support for Layer 2 Tunneling Protocol (L2TP) Network Server (LNS) functionality on Cisco ASR 5500 chassis and explains how it is configured. The product Administration Guides

More information

GTP-U Service Configuration Mode Commands

GTP-U Service Configuration Mode Commands GTP-U Service Configuration Mode Commands The GTP-U Service Configuration Mode is used to manage parameters applied to incoming GTP-U packets. Important The commands or keywords/variables that are available

More information

Programming for Engineers Introduction to C

Programming for Engineers Introduction to C Programming for Engineers Introduction to C ICEN 200 Spring 2018 Prof. Dola Saha 1 Simple Program 2 Comments // Fig. 2.1: fig02_01.c // A first program in C begin with //, indicating that these two lines

More information

UNIT - I. Introduction to C Programming. BY A. Vijay Bharath

UNIT - I. Introduction to C Programming. BY A. Vijay Bharath UNIT - I Introduction to C Programming Introduction to C C was originally developed in the year 1970s by Dennis Ritchie at Bell Laboratories, Inc. C is a general-purpose programming language. It has been

More information

MAG Service Configuration Mode Commands

MAG Service Configuration Mode Commands MAG Service Configuration Mode Commands The MAG Service Configuration Mode is used to create and manage a Mobility Access Gateway service in an (ehrpd network) or a P-MIP S-GW (LTE-SAE network). The MAG

More information

Chapter 2 Working with Data Types and Operators

Chapter 2 Working with Data Types and Operators JavaScript, Fourth Edition 2-1 Chapter 2 Working with Data Types and Operators At a Glance Instructor s Manual Table of Contents Overview Objectives Teaching Tips Quick Quizzes Class Discussion Topics

More information

Configuring Dynamic Addressing on the GGSN

Configuring Dynamic Addressing on the GGSN CHAPTER 13 This chapter describes how to configure dynamic IP addressing on the gateway GRPS support node (GGSN). Note Dynamic IP addressing is not supported for IPv6 and PPP PDP types. Therefore, the

More information

More Scripting and Regular Expressions. Todd Kelley CST8207 Todd Kelley 1

More Scripting and Regular Expressions. Todd Kelley CST8207 Todd Kelley 1 More Scripting and Regular Expressions Todd Kelley kelleyt@algonquincollege.com CST8207 Todd Kelley 1 Regular Expression Summary Regular Expression Examples Shell Scripting 2 Do not confuse filename globbing

More information

Lecture 18 Regular Expressions

Lecture 18 Regular Expressions Lecture 18 Regular Expressions In this lecture Background Text processing languages Pattern searches with grep Formal Languages and regular expressions Finite State Machines Regular Expression Grammer

More information

Using Prepaid Billing

Using Prepaid Billing CHAPTER 16 Cisco Prime Access Registrar (Cisco Prime AR) supports two types of prepaid billing, IS835C and Cisco Real-time Billing (CRB), a Cisco proprietary solution. The IS835C version adheres to industry

More information

Configuration and Management

Configuration and Management CHAPTER 5 Revised: February 2, 2011, Introduction This module describes how to configure and manage the Subscriber Manager. Information About Subscriber Manager Methods, page 5-1 How to Configure a Subscriber

More information

Regular Expression Reference

Regular Expression Reference APPENDIXB PCRE Regular Expression Details, page B-1 Backslash, page B-2 Circumflex and Dollar, page B-7 Full Stop (Period, Dot), page B-8 Matching a Single Byte, page B-8 Square Brackets and Character

More information

Language Basics. /* The NUMBER GAME - User tries to guess a number between 1 and 10 */ /* Generate a random number between 1 and 10 */

Language Basics. /* The NUMBER GAME - User tries to guess a number between 1 and 10 */ /* Generate a random number between 1 and 10 */ Overview Language Basics This chapter describes the basic elements of Rexx. It discusses the simple components that make up the language. These include script structure, elements of the language, operators,

More information

S206E Lecture 19, 5/24/2016, Python an overview

S206E Lecture 19, 5/24/2016, Python an overview S206E057 Spring 2016 Copyright 2016, Chiu-Shui Chan. All Rights Reserved. Global and local variables: differences between the two Global variable is usually declared at the start of the program, their

More information

DaMPL. Language Reference Manual. Henrique Grando

DaMPL. Language Reference Manual. Henrique Grando DaMPL Language Reference Manual Bernardo Abreu Felipe Rocha Henrique Grando Hugo Sousa bd2440 flt2107 hp2409 ha2398 Contents 1. Getting Started... 4 2. Syntax Notations... 4 3. Lexical Conventions... 4

More information

3G-2G Location Change Reporting

3G-2G Location Change Reporting 3G/2G Location Change Reporting on the SGSN facilitates location-based charging on the GGSN by providing the UE\'s location information when it is in connected mode. The SGSN notifies the GGSN whenever

More information

GGSN Pooling Support for Firewalls

GGSN Pooling Support for Firewalls The feature enhances the General Packet Radio Switching (GPRS) Tunneling Protocol (GTP) feature by adding load balancing support. GTP supports the inspection of control traffic that is designated to a

More information

Routing Behind the Mobile Station on an APN

Routing Behind the Mobile Station on an APN Feature Description How It Works The routing behind the Mobile Station(MS) feature enables the routing of packets to IPv4 addresses that do not belong to the PDN Session (the MS), but exist behind it.

More information

Cisco SCMS SM SCE-Sniffer DHCP LEG Reference Guide, Release 3.1.5

Cisco SCMS SM SCE-Sniffer DHCP LEG Reference Guide, Release 3.1.5 Cisco SCMS SM SCE-Sniffer DHCP LEG Reference Guide, Release 3.1.5 November 2007 Americas Headquarters Cisco Systems, Inc. 170 West Tasman Drive San Jose, CA 95134-1706 USA http://www.cisco.com Tel: 408

More information

1 Lexical Considerations

1 Lexical Considerations Massachusetts Institute of Technology Department of Electrical Engineering and Computer Science 6.035, Spring 2013 Handout Decaf Language Thursday, Feb 7 The project for the course is to write a compiler

More information

Introduction to Regular Expressions Version 1.3. Tom Sgouros

Introduction to Regular Expressions Version 1.3. Tom Sgouros Introduction to Regular Expressions Version 1.3 Tom Sgouros June 29, 2001 2 Contents 1 Beginning Regular Expresions 5 1.1 The Simple Version........................ 6 1.2 Difficult Characters........................

More information

Cisco Common Classification Policy Language

Cisco Common Classification Policy Language CHAPTER34 Cisco Common Classification Policy Language (C3PL) is a structured replacement for feature-specific configuration commands. C3PL allows you to create traffic policies based on events, conditions,

More information

Chapter 2: Introduction to C++

Chapter 2: Introduction to C++ Chapter 2: Introduction to C++ Copyright 2010 Pearson Education, Inc. Copyright Publishing as 2010 Pearson Pearson Addison-Wesley Education, Inc. Publishing as Pearson Addison-Wesley 2.1 Parts of a C++

More information

Chapter 2: Special Characters. Parts of a C++ Program. Introduction to C++ Displays output on the computer screen

Chapter 2: Special Characters. Parts of a C++ Program. Introduction to C++ Displays output on the computer screen Chapter 2: Introduction to C++ 2.1 Parts of a C++ Program Copyright 2009 Pearson Education, Inc. Copyright 2009 Publishing Pearson as Pearson Education, Addison-Wesley Inc. Publishing as Pearson Addison-Wesley

More information

Filtering Service

Filtering Service Secure E-Mail Gateway (SEG) Service Administrative Guides Email Filtering Service Regular Expressions Overview Regular Expressions Overview AT&T Secure E-Mail Gateway customers can use Regular Expressions

More information

=~ determines to which variable the regex is applied. In its absence, $_ is used.

=~ determines to which variable the regex is applied. In its absence, $_ is used. NAME DESCRIPTION OPERATORS perlreref - Perl Regular Expressions Reference This is a quick reference to Perl's regular expressions. For full information see perlre and perlop, as well as the SEE ALSO section

More information

System & Network Engineering. Regular Expressions ESA 2008/2009. Mark v/d Zwaag, Eelco Schatborn 22 september 2008

System & Network Engineering. Regular Expressions ESA 2008/2009. Mark v/d Zwaag, Eelco Schatborn 22 september 2008 1 Regular Expressions ESA 2008/2009 Mark v/d Zwaag, Eelco Schatborn eelco@os3.nl 22 september 2008 Today: Regular1 Expressions and Grammars Formal Languages Context-free grammars; BNF, ABNF Unix Regular

More information

Remote Authentication

Remote Authentication Authentication Services, page 1 Guidelines and Recommendations for Providers, page 2 User Attributes in Providers, page 2 Two-Factor Authentication, page 4 LDAP Providers and Groups, page 5 RADIUS Providers,

More information

Sprite an animation manipulation language Language Reference Manual

Sprite an animation manipulation language Language Reference Manual Sprite an animation manipulation language Language Reference Manual Team Leader Dave Smith Team Members Dan Benamy John Morales Monica Ranadive Table of Contents A. Introduction...3 B. Lexical Conventions...3

More information

A lexical analyzer generator for Standard ML. Version 1.6.0, October 1994

A lexical analyzer generator for Standard ML. Version 1.6.0, October 1994 A lexical analyzer generator for Standard ML. Version 1.6.0, October 1994 Andrew W. Appel 1 James S. Mattson David R. Tarditi 2 1 Department of Computer Science, Princeton University 2 School of Computer

More information

Expr Language Reference

Expr Language Reference Expr Language Reference Expr language defines expressions, which are evaluated in the context of an item in some structure. This article describes the syntax of the language and the rules that govern the

More information

In addition to the primary macro syntax, the system also supports several special macro types:

In addition to the primary macro syntax, the system also supports several special macro types: The system identifies macros using special parentheses. You need to enclose macro expressions into curly brackets and the percentage symbol: {% expression %} Kentico provides an object-oriented language

More information

2.1. Chapter 2: Parts of a C++ Program. Parts of a C++ Program. Introduction to C++ Parts of a C++ Program

2.1. Chapter 2: Parts of a C++ Program. Parts of a C++ Program. Introduction to C++ Parts of a C++ Program Chapter 2: Introduction to C++ 2.1 Parts of a C++ Program Copyright 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 2-1 Parts of a C++ Program Parts of a C++ Program // sample C++ program

More information

Language Reference Manual simplicity

Language Reference Manual simplicity Language Reference Manual simplicity Course: COMS S4115 Professor: Dr. Stephen Edwards TA: Graham Gobieski Date: July 20, 2016 Group members Rui Gu rg2970 Adam Hadar anh2130 Zachary Moffitt znm2104 Suzanna

More information

Using the Migration Utility to Migrate Data from ACS 4.x to ACS 5.5

Using the Migration Utility to Migrate Data from ACS 4.x to ACS 5.5 6 CHAPTER Using the Migration Utility to Migrate Data from ACS 4.x to ACS 5.5 This chapter describes how to migrate data from ACS 4.x to ACS 5.5 and contains: Introduction, page 6-1 Running the Migration

More information

aaa max-sessions maximum-number-of-sessions The default value for aaa max-sessions command is platform dependent. Release 15.0(1)M.

aaa max-sessions maximum-number-of-sessions The default value for aaa max-sessions command is platform dependent. Release 15.0(1)M. aaa max-sessions aaa max-sessions To set the maximum number of simultaneous authentication, authorization, and accounting (AAA) connections permitted for a user, use the aaa max-sessions command in global

More information

Fundamentals of Programming Session 4

Fundamentals of Programming Session 4 Fundamentals of Programming Session 4 Instructor: Reza Entezari-Maleki Email: entezari@ce.sharif.edu 1 Fall 2011 These slides are created using Deitel s slides, ( 1992-2010 by Pearson Education, Inc).

More information

IPCoreL. Phillip Duane Douglas, Jr. 11/3/2010

IPCoreL. Phillip Duane Douglas, Jr. 11/3/2010 IPCoreL Programming Language Reference Manual Phillip Duane Douglas, Jr. 11/3/2010 The IPCoreL Programming Language Reference Manual provides concise information about the grammar, syntax, semantics, and

More information

Domains. Overview. Figure 1: APN Profile Rules. CPS Mobile Configuration Guide, Release

Domains. Overview. Figure 1: APN Profile Rules. CPS Mobile Configuration Guide, Release Overview, page 1 Strategies for Defining, page 2 Defining a Domain, page 2 Creating a Custom Reference Data (CRD) table for APN mapping, page 19 Validation Steps, page 23 Overview The Access Point Network

More information

LESSON 1. A C program is constructed as a sequence of characters. Among the characters that can be used in a program are:

LESSON 1. A C program is constructed as a sequence of characters. Among the characters that can be used in a program are: LESSON 1 FUNDAMENTALS OF C The purpose of this lesson is to explain the fundamental elements of the C programming language. C like other languages has all alphabet and rules for putting together words

More information

SMURF Language Reference Manual Serial MUsic Represented as Functions

SMURF Language Reference Manual Serial MUsic Represented as Functions SMURF Language Reference Manual Serial MUsic Represented as Functions Richard Townsend, Lianne Lairmore, Lindsay Neubauer, Van Bui, Kuangya Zhai {rt2515, lel2143, lan2135, vb2363, kz2219}@columbia.edu

More information

C How to Program, 6/e by Pearson Education, Inc. All Rights Reserved.

C How to Program, 6/e by Pearson Education, Inc. All Rights Reserved. C How to Program, 6/e 1992-2010 by Pearson Education, Inc. An important part of the solution to any problem is the presentation of the results. In this chapter, we discuss in depth the formatting features

More information

The Warhol Language Reference Manual

The Warhol Language Reference Manual The Warhol Language Reference Manual Martina Atabong maa2247 Charvinia Neblett cdn2118 Samuel Nnodim son2105 Catherine Wes ciw2109 Sarina Xie sx2166 Introduction Warhol is a functional and imperative programming

More information

ML 4 A Lexer for OCaml s Type System

ML 4 A Lexer for OCaml s Type System ML 4 A Lexer for OCaml s Type System CS 421 Fall 2017 Revision 1.0 Assigned October 26, 2017 Due November 2, 2017 Extension November 4, 2017 1 Change Log 1.0 Initial Release. 2 Overview To complete this

More information

TCL - STRINGS. Boolean value can be represented as 1, yes or true for true and 0, no, or false for false.

TCL - STRINGS. Boolean value can be represented as 1, yes or true for true and 0, no, or false for false. http://www.tutorialspoint.com/tcl-tk/tcl_strings.htm TCL - STRINGS Copyright tutorialspoint.com The primitive data-type of Tcl is string and often we can find quotes on Tcl as string only language. These

More information

UNIT 4. Research Methods in Business

UNIT 4. Research Methods in Business UNIT 4 Preparing Data for Analysis:- After data are obtained through questionnaires, interviews, observation or through secondary sources, they need to be edited. The blank responses, if any have to be

More information

Configuring the Cisco ATA for SIP

Configuring the Cisco ATA for SIP CHAPTER 3 This section describes how to configure the Cisco ATA to operate with the Session Initiation Protocol (SIP) signaling image and how the Cisco ATA obtains the latest signaling image. You can configure

More information