ltm rule command PEM sessionΒΆ

iRule(1)					  BIG-IP TMSH Manual					     iRule(1)

PEM::session
       This command allows you to create, delete or retreive information of a PEM session using session IP address in
       the PEM Session DB.

SYNOPSIS
       PEM::session config policy ((get IP_ADDR) |
					   (referential ((update IP_ADDR ((add (PEM_POLICIES)+)
									  | (delete (PEM_POLICIES)+)
									  | (add (PEM_POLICIES)+ delete
       (PEM_POLICIES)+)
									  | (delete (PEM_POLICIES)+ add
       (PEM_POLICIES)+)))
							 | (set IP_ADDR (PEM_POLICIES)+))
							)
					  )

       PEM::session delete IP_ADDR

       PEM::session ip SUBS_ID (PEM_SUBS_TYPE2)? ('all')?

       PEM::session info (('attr' (delete)? IP_ADDR ATTR (VALUE)?)
				  | (IP_ADDR ( (imsi | imeisv | calling-station-id | called-station-id
					       | tower-id | user-name ) (VALUE)?)
					     | (rat-type (RAD_AVP_RAT_TYPE_VALUE)?)
					     | (state (PEM_SESSION_STATES)?)
					     | (subs-type | subscriber-type | subscriber-id-type)
					     | (subs-id | subscriber-id)
					     | (subscriber (VALUE) (PEM_SUBS_TYPE2))
					     | (aaa-reporting-interval (NONNEGATIVE_INTEGER)?) )
				  | ('dtos' ( ((user-agent | device | tcp-fingerprint)? os)
					    | (tcp-fingerprint (ttl | window-size | window-scaling | source-port |
       hdr-length))
					    | (device name) )
				     IP_ADDR)
				  | ('tethering' (detected | timestamp | sample-score) IP_ADDR)
				 )

       PEM::session create IP_ADDR ( (subscriber-id SUBS_ID (PEM_ATTR VALUE)* (subscriber-type | subscriber-id-type)
       (PEM_SUBS_TYPE))
					     | ((subscriber-type | subscriber-id-type) (PEM_SUBS_TYPE) (PEM_ATTR
       VALUE)* subscriber-id SUBS_ID)
					     | (provision (yes | no))
					     | (aaa-reporting-interval NONNEGATIVE_INTEGER)
					     | (policy (PEM_POLICIES)+)
					     | (PEM_ATTR VALUE)
					   )*

DESCRIPTION
       This command allows you to create, delete or retreive information of a PEM Session in the PEM Session DB.
       Each PEM session carries the following standard attributes: imsi, imeisv, tower-id, rat-type, user-name,
       state, aaa-reporting-interval, provision.

       Details (Syntax): PEM::session create  [subscriber-id  subscriber-type ] [imsi ] [user-name ] [tower-id ] [imeisv ] [provision ]
       [ ] [policy  ... ]
	   Create a PEM Session for  with [attr valule] pair, including custom attribute, custom value and
       session policies.
	   Note that if any of the subscriber-id and subscriber-type is specified, the other one should be specified
       as well.

       PEM::session info  imsi | imeisv | tower-id | rat-type | user-name | subs-type | subs-id | state
       ?
	   Retrieve the value of the specified field from the session with  if no  appended in the
       end.
	   With  appended, the command is used to set the corresponding attribute value for the session.
	   With  used in session events the ip address is added in command but replaced by stored session
       ip.

       PEM::session info attr delete  
	   Delete the custom attribute for the session.

       PEM::session info attr  
	   Get the value of specified custom attribute name for the session.

       PEM::session info attr   
	   Add a custom attribute to the session.

       PEM::session info dtos tcp-fingerprint 
       
	   Get the specified tcp fingerprint attribute for the specified session.
	   The attributes include (ttl, window size, window scaling value, source port, header length).

       PEM::session info dtos ? os 
	   Get the OS identified by specified mechanism, namely user-agent and TAC-code, for the specified session.
	   If no mechanism is specified, return the OS as determined by the sys db variable
       'tmm.pem.dtos.sampled.os.from'.

       PEM::session info dtos device name 
	   Get the device name identified by the TAC-code for the specified session.

       PEM::session info tethering detected 
	   Return true or false based whether tethering was detected for the session.

       PEM::session info tethering timestamp 
	   Returns the time at which tethering detected state is changed.

       PEM::session info tethering sample-score 
	   Returns score of the last sample. The score is used to determine if the subscriber session is tethering.

       PEM::session delete 
	   Delete session refered by the IP address.

       PEM::session config policy referential set  
	   Set referential policies to this pem session.

       PEM::session config policy referential update  add/delete 
	   Add/delete referential policies to this pem session.

       PEM::session config policy get 
	   Returns a ist of policies applied to this session.

       PEM::session ip  ?
	   Returns subscriber IP address when given subscriber id (subscriber type is optional).

RETURN VALUE
VALID DURING
EXAMPLES
	when HTTP_REQUEST {
	    PEM::session create 10.10.10.10 subscriber-id 12345 subscriber-type e164 policy pem-policy1 pem-policy2

	    set polisy_var [PEM::session config policy get 10.10.10.10]
	    set ip_var [PEM::session ip 12345 e164]
	    set id_var [PEM::session info 10.10.10.10 subscriber-id]

	    PEM::session delete 10.10.10.10
	}

HINTS
SEE ALSO
CHANGE LOG
       @BIGIP-11.3.0 --First introduced the command.

BIG-IP						      2020-06-23					     iRule(1)