/
ltm_profile_fastl4.go
158 lines (112 loc) · 9.95 KB
/
ltm_profile_fastl4.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
/*
* BigIP iControl REST
*
* REST API for F5 BigIP. List of operations is not complete, nor known to be accurate.
*
* OpenAPI spec version: 12.0
*
* Generated by: https://github.com/swagger-api/swagger-codegen.git
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package f5api
// This describes a message sent to or received from some operations
type LtmProfileFastl4 struct {
// Enables or disables the TCP timestamp options to measure the round trip time to the client. The default value is disabled.
RttFromClient string `json:"rttFromClient,omitempty"`
// Specifies that the system closes a loosely-initiated connection when the system receives the first FIN packet from either the client or the server. The default value is disabled.
LooseClose string `json:"looseClose,omitempty"`
// Specifies an idle timeout in seconds. This setting specifies the number of seconds that a connection is idle before the connection is eligible for deletion.When you specify an idle timeout for the Fast L4 profile, the value must be greater than the bigdb database variable Pva.Scrub time in msec for it to work properly.The default value is 300 seconds.
IdleTimeout string `json:"idleTimeout,omitempty"`
// Specifies an IP ToS number for the server side. This setting specifies the Type of Service level that the traffic management system assigns to IP packets when sending them to servers. The default value is 65535 (pass-through), which indicates, do not modify.
IpTosToServer string `json:"ipTosToServer,omitempty"`
// Specifies how you want to handle the TCP window scale. The default value is preserve, which preserves TCP window scale.
TcpWscaleMode string `json:"tcpWscaleMode,omitempty"`
// Specifies internal packet priority for the server side. This option specifies the internal packet priority that the system assigns to packets when sending them to servers. The default value is 65535 (pass-through), which indicates, do not modify.
PriorityToServer string `json:"priorityToServer,omitempty"`
// Specifies the profile that you want to use as the parent profile. Your new profile inherits all settings and values from the parent profile specified.
DefaultsFrom string `json:"defaultsFrom,omitempty"`
// Specifies that the system initializes a connection when it receives any TCP packet, rather than requiring a SYN packet for connection initiation. The default value is disabled.
LooseInitialization string `json:"looseInitialization,omitempty"`
// Enables or disables the TCP timestamp options to measure the round trip time to the server. The default value is disabled.
RttFromServer string `json:"rttFromServer,omitempty"`
// Specifies late binding client timeout in seconds. This setting specifies the number of seconds allowed for a client to transmit enough data to select a server when late binding is enabled. If it expires timeout-recovery mode will dictate what action to take.
ClientTimeout int64 `json:"clientTimeout,omitempty"`
// Enables or disables late binding to control L7 to FastL4 Flow migration. The default value is disabled.
LateBinding string `json:"lateBinding,omitempty"`
// Enables or disables late binding explicit flow migration that allows iRules to control when flows move from software to hardware. Explicit flow migration is disabled by default hence BIG-IP automatically migrates flows from software to hardware.
ExplicitFlowMigration string `json:"explicitFlowMigration,omitempty"`
// Specifies an TCP close timeout in seconds. The default value is 5 seconds.
TcpCloseTimeout string `json:"tcpCloseTimeout,omitempty"`
// Specifies how you want to handle the TCP timestamp. The default value is preserve.
TcpTimestampMode string `json:"tcpTimestampMode,omitempty"`
// Enables or disables hardware SYN cookie support when PVA10 is present on the system. Note that when you set the hardware syncookie option to enabled, you may also want to set the following bigdb database variables using the \"/sys modify db\" command, based on your requirements: pva.SynCookies.Full.ConnectionThreshold (default: 500000), pva.SynCookies.Assist.ConnectionThreshold (default: 500000) pva.SynCookies.ClientWindow (default: 0). The default value is disabled.
HardwareSynCookie string `json:"hardwareSynCookie,omitempty"`
// Specifies whether PVA flow dynamic offloading is enabled or not.
PvaOffloadDynamic string `json:"pvaOffloadDynamic,omitempty"`
// Specifies whether to support server timestamp option in cookie response by default. The default is disabled.
ServerTimestamp string `json:"serverTimestamp,omitempty"`
// User defined description.
Description string `json:"description,omitempty"`
// Specifies at what stage the ePVA performs hardware offload. embryonic implies TCP SYN or first UDP packet, establish implies 3WAY handshaking or CS round trip confirmed.
PvaOffloadState string `json:"pvaOffloadState,omitempty"`
// Specifies the size of the receive window, in bytes. The minimum and default value is 65535 bytes without scale.
ReceiveWindowSize int64 `json:"receiveWindowSize,omitempty"`
// Specifies a TCP handshake timeout in seconds. The default value is 5 seconds.
TcpHandshakeTimeout string `json:"tcpHandshakeTimeout,omitempty"`
// Specifies a maximum segment size (MSS) override for server-side connections. Note that this is also the MSS advertised to a client when a client first connects. The default value is 0 (zero), which disables this option. You can specify an integer from 256 to 9162.
MssOverride int64 `json:"mssOverride,omitempty"`
// Specifies if enabling automatic epva flow aging when flow becomes idle or inactive for a period of time. use with care,
PvaFlowAging string `json:"pvaFlowAging,omitempty"`
// Specifies internal packet priority for the client side. This option specifies the internal packet priority that the system assigns to packets when sending them to clients. The default value is 65535 (pass-through), which indicates, do not modify.
PriorityToClient string `json:"priorityToClient,omitempty"`
// The application service to which the object belongs.
AppService string `json:"appService,omitempty"`
// Specifies a Link QoS (VLAN priority) number for the server side. This option specifies the Quality of Service level that the system assigns to packets when sending them to servers. The default value is 65535, which indicates, do not modify.
LinkQosToServer string `json:"linkQosToServer,omitempty"`
// Specifies whether you want to block the TCP SackOK option from passing to server on an initiating SYN. The default value is disabled.
TcpStripSack string `json:"tcpStripSack,omitempty"`
// Specifies the number of server packets before dynamic ePVA hardware re-offloading occurs. The valid value is 0~10.
PvaDynamicServerPackets int64 `json:"pvaDynamicServerPackets,omitempty"`
// Specifies late binding timeout recovery mode. This setting specifies the action to take when the client timeout expires. The default is to disconnect the connection. It can be configured to fallback to the normal FastL4 load-balancing for selecting the back-end servers.
TimeoutRecovery string `json:"timeoutRecovery,omitempty"`
// Kind of entity
Kind string `json:"kind,omitempty"`
// Specifies the Packet Velocity ASIC acceleration policy.
PvaAcceleration string `json:"pvaAcceleration,omitempty"`
// Specifies whether you want to generate TCP sequence numbers on all SYNs that conform with RFC1948, and allow timestamp recycling. The default value is disabled.
TcpGenerateIsn string `json:"tcpGenerateIsn,omitempty"`
// Specifies whether to support server sack option in cookie response by default. The default is disabled.
ServerSack string `json:"serverSack,omitempty"`
// Enables or disables software SYN cookie support when PVA10 is not present on the system. The default value is disabled.
SoftwareSynCookie string `json:"softwareSynCookie,omitempty"`
// Specifies whether to reassemble fragments. The default value is disabled.
ReassembleFragments string `json:"reassembleFragments,omitempty"`
// Specifies if epva flow can be evicted upon hash collision with a new flow snoop learn request. use with care.
PvaFlowEvict string `json:"pvaFlowEvict,omitempty"`
// Name of entity
Name string `json:"name,omitempty"`
// Specifies the number of client packets before dynamic ePVA hardware re-offloading occurs. The valid value is 0~10.
PvaDynamicClientPackets int64 `json:"pvaDynamicClientPackets,omitempty"`
// Displays the administrative partition within which this profile resides.
Partition string `json:"partition,omitempty"`
// Specifies the keep alive probe interval, in seconds. The default value is disabled (0 seconds).
KeepAliveInterval string `json:"keepAliveInterval,omitempty"`
// Specifies an IP ToS number for the client side. This option specifies the Type of Service level that the traffic management system assigns to IP packets when sending them to clients. The default value is 65535 (pass-through), which indicates, do not modify.
IpTosToClient string `json:"ipTosToClient,omitempty"`
// Specifies whether you want to reset connections on timeout. The default value is enabled.The default value is enabled.
ResetOnTimeout string `json:"resetOnTimeout,omitempty"`
SynCookieWhitelist string `json:"synCookieWhitelist,omitempty"`
// Specifies a Link QoS (VLAN priority) number for the client side. This option specifies the Quality of Service level that the system assigns to packets when sending them to clients. The default value is 65535 (pass-through), which indicates, do not modify.
LinkQosToClient string `json:"linkQosToClient,omitempty"`
}