Product Documentation

service_class

Oct 21, 2015

Configuration for service classes.

Properties

Name Data Type Read-Only? Description
enabled
<Boolean>
No

Enable/Disable service class.

Possible values = [true, false]

index
<Integer>
Yes

Index of the service class in service class list.

qospolicy
<String>
No

QoS policy applied for this service class. This field applies only when QOS policy applied not per link.

filterrules
<[Object,...]>
No
Filter rules defining the service class
filterrules.directiontype
<String>
No

Direction of SYN for which the rule applies

Possible values = [Uni-directional, Bi-directional]

filterrules.vlans
<[Object,...]>
No
VLANs defining the rule. Note: VLANs in filter rules are not supported on CB 4000 and CB 5000 platform.
vlans.vlanid
<Integer>
No

vlan id to be used for this rule

Minimum value = 1

Maximum value = 4094

vlans.excluded
<Boolean>
No

If true, use the rule component as an exclude entity

Possible values = [true, false]

filterrules.diffservices
<[Object,...]>
No
Differntial service bits defining the rule
diffservices.excluded
<Boolean>
No

If true, use the rule component as an exclude entity

Possible values = [true, false]

diffservices.bitsvalue
<String>
No

bitsvalue of diff service to be used for this rule

Valid char set = ^DSCP ([6][0-3]|[1-5][0-9]|[0]\?[1-9])

filterrules.sslprofiles
<[String,...]>
No

SSL profile attached with rule to enable SSL optomization

filterrules.applications
<[Object,...]>
No
Applications defining the rule.
applications.excluded
<Boolean>
No

If true, use the rule component as an exclude entity

Possible values = [true, false]

applications.appname
<String>
No

app to be used for this rule

filterrules.srcipaddresses
<[Object,...]>
No
Source IP address range defining the rule
srcipaddresses.excluded
<Boolean>
No

If true, use the rule component as an exclude entity

Possible values = [true, false]

srcipaddresses.srcipaddress
<Object>
No
srcipaddress to be used for this rule
dstipaddress.rangetype
<String>
No

Use left/right fields for hyphen seperated IP range, ipaddressmask field for IP/mask, ipaddress field for IP address.

Possible values = [hyphen seperated, ipmask, ipaddress]

dstipaddress.ipaddressmask
<String>
No

IP adreess and mask representation . (IPv4/IPv6 string).

Bitmask = Optional (format IP[/bitmask])

dstipaddress.left
<String>
No
dstipaddress.ipaddress
<String>
No
dstipaddress.right
<String>
No
filterrules.dstipaddresses
<[Object,...]>
No
Destination IP address range defining the rule
dstipaddresses.excluded
<Boolean>
No

If true, use the rule component as an exclude entity

Possible values = [true, false]

dstipaddresses.dstipaddress
<Object>
No
dstipaddress to be used for this rule
dstipaddress.rangetype
<String>
No

Use left/right fields for hyphen seperated IP range, ipaddressmask field for IP/mask, ipaddress field for IP address.

Possible values = [hyphen seperated, ipmask, ipaddress]

dstipaddress.ipaddressmask
<String>
No

IP adreess and mask representation . (IPv4/IPv6 string).

Bitmask = Optional (format IP[/bitmask])

dstipaddress.left
<String>
No
dstipaddress.ipaddress
<String>
No
dstipaddress.right
<String>
No
filterrules.sslenabled
<Boolean>
No

Used to enable SSL profiles attached to rule

Possible values = [true, false]

accelerationpolicy
<String>
No

Acceleration policy for the service class.

Possible values = [flowcontrol, disk, memory, none]

order
<Integer>
Yes

Precedence order of the service class. Higher the order, more the precedence

classname
<String>
No

Service class name.

qoslinkpolicies
<[Object,...]>
No
Per link QOS policy for the service class.
qoslinkpolicies.qospolicyname
<String>
No

Use ipaddressmask paramter to define ip or ip/mask type range or use left/right parameters to define hyphen seperated range

qoslinkpolicies.linkname
<String>
No

Use ipaddressmask paramter to define ip or ip/mask type range or use left/right parameters to define hyphen seperated range

modified
<Boolean>
Yes

Flag to indicate user modified service classes.

Possible values = [true, false]

classid
<Integer>
Yes

Unique Id generated for each service class.

propertyflags
<String>
Yes

Defines operations allowed on the service class

Operations

Hinweis

Mandatory parameters are marked in red and placeholder content is marked in <green>.

ADD

Use this operation to get plugin diagnostic configuration details

HTTP Method: POST

URL: https://<cb_ip_address>/cb/nitro/v1/config/service_class

Request Headers:

Authorization: Basic <base64 encoded(username:password)>
Content-Type: application/vnd.com.citrix.cloudbridge.service_class+json

Request Payload: JSON

{"service_class":{
"enabled": <boolean_value>,
"qospolicy": <string_value>,
"filterrules": [{
"directiontype": <string_value>,
"vlans": [{
"vlanid": <integer_value>,
"excluded": <boolean_value>
}, ...],
"diffservices": [{
"excluded": <boolean_value>,
"bitsvalue": <string_value>
}, ...],
"sslprofiles": <string_value>,
"applications": [{
"excluded": <boolean_value>,
"appname": <string_value>
}, ...],
"srcipaddresses": [{
"excluded": <boolean_value>,
"srcipaddress": {
"rangetype": <string_value>,
"ipaddressmask": <string_value>,
"left": <string_value>,
"ipaddress": <string_value>,
"right": <string_value>
}
}, ...],
"dstipaddresses": [{
"excluded": <boolean_value>,
"dstipaddress": {
"rangetype": <string_value>,
"ipaddressmask": <string_value>,
"left": <string_value>,
"ipaddress": <string_value>,
"right": <string_value>
}
}, ...],
"sslenabled": <boolean_value>
}, ...],
"accelerationpolicy": <string_value>,
"classname": <string_value>,
"qoslinkpolicies": [{
"qospolicyname": <string_value>,
"linkname": <string_value>
}, ...]
}}

Response Headers:

Content-Type: application/vnd.com.citrix.cloudbridge.service_class+json

Response Payload: JSON

{"service_class":{
"enabled": <boolean_value>,
"index": <integer_value>,
"qospolicy": <string_value>,
"filterrules": [{
"directiontype": <string_value>,
"vlans": [{
"vlanid": <integer_value>,
"excluded": <boolean_value>
}, ...],
"diffservices": [{
"excluded": <boolean_value>,
"bitsvalue": <string_value>
}, ...],
"sslprofiles": <string_value>,
"applications": [{
"excluded": <boolean_value>,
"appname": <string_value>
}, ...],
"srcipaddresses": [{
"excluded": <boolean_value>,
"srcipaddress": {
"rangetype": <string_value>,
"ipaddressmask": <string_value>,
"left": <string_value>,
"ipaddress": <string_value>,
"right": <string_value>
},
}, ...],
"dstipaddresses": [{
"excluded": <boolean_value>,
"dstipaddress": {
"rangetype": <string_value>,
"ipaddressmask": <string_value>,
"left": <string_value>,
"ipaddress": <string_value>,
"right": <string_value>
},
}, ...],
"sslenabled": <boolean_value>
}, ...],
"accelerationpolicy": <string_value>,
"order": <integer_value>,
"classname": <string_value>,
"qoslinkpolicies": [{
"qospolicyname": <string_value>,
"linkname": <string_value>
}, ...],
"modified": <boolean_value>,
"classid": <integer_value>,
"propertyflags": <string_value>
}}

DELETE

Use this operation to get plugin diagnostic configuration details

HTTP Method: DELETE

URL: https://<cb_ip_address>/cb/nitro/v1/config/service_class/<classname>

Request Headers:

Authorization: Basic <base64 encoded(username:password)>

Response Payload: EMPTY

GET (ALL)

Use this operation to get plugin diagnostic configuration details

HTTP Method: GET

URL: https://<cb_ip_address>/cb/nitro/v1/config/service_class

Request Headers:

Authorization: Basic <base64 encoded(username:password)>
Accept: application/vnd.com.citrix.cloudbridge.service_class_list+json

Response Headers:

Content-Type: application/vnd.com.citrix.cloudbridge.service_class_list+json

Response Payload: JSON

{"service_class": [{
"enabled": <boolean_value>,
"index": <integer_value>,
"qospolicy": <string_value>,
"filterrules": [{
"directiontype": <string_value>,
"vlans": [{
"vlanid": <integer_value>,
"excluded": <boolean_value>
}, ...],
"diffservices": [{
"excluded": <boolean_value>,
"bitsvalue": <string_value>
}, ...],
"sslprofiles": <string_value>,
"applications": [{
"excluded": <boolean_value>,
"appname": <string_value>
}, ...],
"srcipaddresses": [{
"excluded": <boolean_value>,
"srcipaddress": {
"rangetype": <string_value>,
"ipaddressmask": <string_value>,
"left": <string_value>,
"ipaddress": <string_value>,
"right": <string_value>
},
}, ...],
"dstipaddresses": [{
"excluded": <boolean_value>,
"dstipaddress": {
"rangetype": <string_value>,
"ipaddressmask": <string_value>,
"left": <string_value>,
"ipaddress": <string_value>,
"right": <string_value>
},
}, ...],
"sslenabled": <boolean_value>
"directiontype": <string_value>,
"vlans": [{
"vlanid": <integer_value>,
"excluded": <boolean_value>
}, ...],
"diffservices": [{
"excluded": <boolean_value>,
"bitsvalue": <string_value>
}, ...],
"sslprofiles": <string_value>,
"applications": [{
"excluded": <boolean_value>,
"appname": <string_value>
}, ...],
"srcipaddresses": [{
"excluded": <boolean_value>,
"srcipaddress": {
"rangetype": <string_value>,
"ipaddressmask": <string_value>,
"left": <string_value>,
"ipaddress": <string_value>,
"right": <string_value>
},
}, ...],
"dstipaddresses": [{
"excluded": <boolean_value>,
"dstipaddress": {
"rangetype": <string_value>,
"ipaddressmask": <string_value>,
"left": <string_value>,
"ipaddress": <string_value>,
"right": <string_value>
},
}, ...],
"sslenabled": <boolean_value>
}, ...],
"accelerationpolicy": <string_value>,
"order": <integer_value>,
"classname": <string_value>,
"qoslinkpolicies": [{
"qospolicyname": <string_value>,
"linkname": <string_value>
"qospolicyname": <string_value>,
"linkname": <string_value>
}, ...],
"modified": <boolean_value>,
"classid": <integer_value>,
"propertyflags": <string_value>
}, ...]}

GET

Use this operation to get plugin diagnostic configuration details

HTTP Method: GET

URL: https://<cb_ip_address>/cb/nitro/v1/config/service_class/<classname>

Request Headers:

Authorization: Basic <base64 encoded(username:password)>
Accept: application/vnd.com.citrix.cloudbridge.service_class+json

Response Headers:

Content-Type: application/vnd.com.citrix.cloudbridge.service_class+json

Response Payload: JSON

{"service_class":{
"enabled": <boolean_value>,
"index": <integer_value>,
"qospolicy": <string_value>,
"filterrules": [{
"directiontype": <string_value>,
"vlans": [{
"vlanid": <integer_value>,
"excluded": <boolean_value>
}, ...],
"diffservices": [{
"excluded": <boolean_value>,
"bitsvalue": <string_value>
}, ...],
"sslprofiles": <string_value>,
"applications": [{
"excluded": <boolean_value>,
"appname": <string_value>
}, ...],
"srcipaddresses": [{
"excluded": <boolean_value>,
"srcipaddress": {
"rangetype": <string_value>,
"ipaddressmask": <string_value>,
"left": <string_value>,
"ipaddress": <string_value>,
"right": <string_value>
},
}, ...],
"dstipaddresses": [{
"excluded": <boolean_value>,
"dstipaddress": {
"rangetype": <string_value>,
"ipaddressmask": <string_value>,
"left": <string_value>,
"ipaddress": <string_value>,
"right": <string_value>
},
}, ...],
"sslenabled": <boolean_value>
"directiontype": <string_value>,
"vlans": [{
"vlanid": <integer_value>,
"excluded": <boolean_value>
}, ...],
"diffservices": [{
"excluded": <boolean_value>,
"bitsvalue": <string_value>
}, ...],
"sslprofiles": <string_value>,
"applications": [{
"excluded": <boolean_value>,
"appname": <string_value>
}, ...],
"srcipaddresses": [{
"excluded": <boolean_value>,
"srcipaddress": {
"rangetype": <string_value>,
"ipaddressmask": <string_value>,
"left": <string_value>,
"ipaddress": <string_value>,
"right": <string_value>
},
}, ...],
"dstipaddresses": [{
"excluded": <boolean_value>,
"dstipaddress": {
"rangetype": <string_value>,
"ipaddressmask": <string_value>,
"left": <string_value>,
"ipaddress": <string_value>,
"right": <string_value>
},
}, ...],
"sslenabled": <boolean_value>
}, ...],
"accelerationpolicy": <string_value>,
"order": <integer_value>,
"classname": <string_value>,
"qoslinkpolicies": [{
"qospolicyname": <string_value>,
"linkname": <string_value>
"qospolicyname": <string_value>,
"linkname": <string_value>
}, ...],
"modified": <boolean_value>,
"classid": <integer_value>,
"propertyflags": <string_value>
}}

MODIFY

Use this operation to modify plugin diagnostic configuration

HTTP Method: PUT

URL: https://<cb_ip_address>/cb/nitro/v1/config/service_class/<classname>

Request Headers:

Authorization: Basic <base64 encoded(username:password)>
Content-Type: application/vnd.com.citrix.cloudbridge.service_class+json

Request Payload: JSON

{"service_class":{
"enabled": <boolean_value>,
"qospolicy": <string_value>,
"filterrules": [{
"directiontype": <string_value>,
"vlans": [{
"vlanid": <integer_value>,
"excluded": <boolean_value>
}, ...],
"diffservices": [{
"excluded": <boolean_value>,
"bitsvalue": <string_value>
}, ...],
"sslprofiles": <string_value>,
"applications": [{
"excluded": <boolean_value>,
"appname": <string_value>
}, ...],
"srcipaddresses": [{
"excluded": <boolean_value>,
"srcipaddress": {
"rangetype": <string_value>,
"ipaddressmask": <string_value>,
"left": <string_value>,
"ipaddress": <string_value>,
"right": <string_value>
}
}, ...],
"dstipaddresses": [{
"excluded": <boolean_value>,
"dstipaddress": {
"rangetype": <string_value>,
"ipaddressmask": <string_value>,
"left": <string_value>,
"ipaddress": <string_value>,
"right": <string_value>
}
}, ...],
"sslenabled": <boolean_value>
}, ...],
"accelerationpolicy": <string_value>,
"classname": <string_value>,
"qoslinkpolicies": [{
"qospolicyname": <string_value>,
"linkname": <string_value>
}, ...]
}}

Response Headers:

Content-Type: application/vnd.com.citrix.cloudbridge.service_class+json

Response Payload: JSON

{"service_class":{
"enabled": <boolean_value>,
"index": <integer_value>,
"qospolicy": <string_value>,
"filterrules": [{
"directiontype": <string_value>,
"vlans": [{
"vlanid": <integer_value>,
"excluded": <boolean_value>
}, ...],
"diffservices": [{
"excluded": <boolean_value>,
"bitsvalue": <string_value>
}, ...],
"sslprofiles": <string_value>,
"applications": [{
"excluded": <boolean_value>,
"appname": <string_value>
}, ...],
"srcipaddresses": [{
"excluded": <boolean_value>,
"srcipaddress": {
"rangetype": <string_value>,
"ipaddressmask": <string_value>,
"left": <string_value>,
"ipaddress": <string_value>,
"right": <string_value>
},
}, ...],
"dstipaddresses": [{
"excluded": <boolean_value>,
"dstipaddress": {
"rangetype": <string_value>,
"ipaddressmask": <string_value>,
"left": <string_value>,
"ipaddress": <string_value>,
"right": <string_value>
},
}, ...],
"sslenabled": <boolean_value>
}, ...],
"accelerationpolicy": <string_value>,
"order": <integer_value>,
"classname": <string_value>,
"qoslinkpolicies": [{
"qospolicyname": <string_value>,
"linkname": <string_value>
}, ...],
"modified": <boolean_value>,
"classid": <integer_value>,
"propertyflags": <string_value>
}}