Protocol extensions command reference
The following table lists all the new commands added for custom protocols, and the existing commands that have been modified for custom protocols.
show lb persistentSessions [
CLI command:
add user protocol
-transport ( TCP | SSL ) -extension -comment ]> Description:
Adds a new user protocol to the Citrix ADC appliance by using extensions. Currently only user protocols with transport value TCP or SSL are supported.
Example:
add user protocol MQTT -transport TCP -extension mqtt_code
CLI command:
rm user protocol
Description:
Removes a user protocol previously added to the Citrix ADC appliance.
Example:
rm user protocol mqtt
CLI command:
set user protocol
-comment Description:
Changes settings for a user protocol previously added to the Citrix ADC appliance.
Example:
set user protocol mqtt -comment “MQTT protocol implementation”
CLI command:
unset user protocol
-comment Description:
Removes settings for a user protocol previously added to the Citrix ADC appliance.
Example:
unset user protocol mqtt -comment “MQTT protocol implementation”
CLI command:
update ns extension
Description:
Updates the implementation for a previously added user protocol by using extensions.
You can update the protocol implementation only if the protocol is not being used by any user virtual server.
Example:
update ns extension my-extension
CLI command:
add lb vserver
[USER_TCP | USER_SSL_TCP] [-lbmethod USER_TOKEN] [-persistencetype USERSESSION] [-timeout ] Description:
Adds a load balancing virtual server to the Citrix ADC appliance. This is an existing CLI command.
For load balancing user virtual servers, the service type to use is USER_TCP or USER_SSL_TCP. The IP address and port are not allowed with user load balancing virtual servers.
For user load balancing virtual servers, only the ROUNDROBIN load balancing method is allowed, and the token value is provided by the extension code. Similarly, only USERSESSION persistence is allowed, and the persistence setting is provided by the extension code.
Example:
add lb vserver mysv USER_TCP –lbmethod ROUNDROBIN
CLI command:
add user vserver
-defaultLB [-params ] [-comment ] Description:
Adds a virtual server for a user protocol by using extensions. The configured default user load balancing virtual server is available to the TCP client data extension handler as ctxt.output. For a virtual server, extension parameters can be set by using the -params option with a name and a value pair. The corresponding parameter value is available to the extension handlers as ctxt.vserver.params.
. Example:
add user vs v_mqtt MQTT 10.217.24.28 80 -defaultlb mysv
CLI command:
rm user vserver
Description:
Removes a user virtual server previously added to to the Citrix ADC appliance.
Example:
rm user vserver v_mqtt
CLI command:
set user vserver
[-IPAddress ] [-defaultLB ] [-params ] [-comment ] Description:
Changes settings for a user virtual server previously added to to the Citrix ADC appliance. When an extension parameter is assigned a new value by the -params option, the old value is overwritten.
Example:
set user vs v_mqtt MQTT 10.217.24.28 -defaultlb mysv -comment “MQTT protocol implementation”
CLI command:
unset user vserver
[-params] [-comment] Description:
Removes the settings for a user virtual server previously added to to the Citrix ADC appliance. If you use the –params option to unset an extension parameter, the corresponding parameter value available to extension handlers is changed to nil.
Example:
unset user vs v_mqtt MQTT 10.217.24.28 -defaultlb mysv -comment “MQTT protocol implementation”
CLI command:
show user protocol [
] Description:
Displays information about a user protocol, such as extension and callbacks.
Example:
show user protocol mqtt
CLI command:
show user vserver [
] Description:
Displays information about a user virtual server.
Example:
显示用户vserver vs_mqtt
CLI command:
stat user vserver [
] Description:
Displays statistics about a user virtual server.
Example:
stat user vserver vs_mqtt
CLI command:
show lb persistentSessions [
] Description:
Displays information about persistent sessions. This is an existing CLI. For user protocols, the persistence type is shown as USERSESSION.
CLI command:
rm lb vserver
Description:
Removes a user LB vserver previously added to the Citrix ADC appliance.
Example:
rm lb vserver mysv
CLI command:
add service
(USER_TCP | USER_SSL_TCP) Description:
Adds a backend service to be used for a user protocol. This is an existing CLI command with new service types USER_TCP and USER_SSL_TCP.
Example:
add service mqtt_svr1 10.217.24.48 USER_TCP 1501
Note: The existing “set service and unset service” commands can be used to remove or change the settings of a previously added service for a user protocol.
CLI command:
bind lb vserver
Description:
Binds a service to a user LB vserver. The service type should be USER_TCP/USER_SSL_TCP for binding to an LB vserver with type of USER_TCP/USER_SSL_TCP.
Example:
bind lb vserver mysv mqtt_svr1
CLI command:
unbind lb vserver
Description:
Unbinds a previously bound service to a user LB vserver.
Example:
unbind lb vserver mysv mqtt_svr1
CLI command:
rm service
Description:
Removes a service that is previously added for a user protocol.
Example:
rm service mqtt_svr1