github.com/vmware/go-vmware-nsxt@v0.0.0-20230223012718-d31b8a1ca05e/loadbalancer/lb_tcp_profile.go (about) 1 /* 2 * NSX API 3 * 4 * VMware NSX REST API 5 * 6 * API version: 1.0.0 7 * Generated by: Swagger Codegen (https://github.com/swagger-api/swagger-codegen.git) 8 */ 9 10 package loadbalancer 11 12 import ( 13 "github.com/vmware/go-vmware-nsxt/common" 14 ) 15 16 // TCP profile allows customization of TCP stack behavior for each application. As TCP connections are terminated (or initiated) on the load balancer only for L7 virtual servers, TCP profiles are applicable only to them. As the desired TCP characteristics (e.g. Rx/Tx buffers) may be different for client (typically on WAN) and server (typically on LAN) sides, two separate profiles can be bound to virtual server, one for client-side (LbVirtualServer.client_tcp_profile_id) and another for server-side (LbVirtualServer.server_tcp_profile_id). 17 type LbTcpProfile struct { 18 19 // The server will populate this field when returing the resource. Ignored on PUT and POST. 20 Links []common.ResourceLink `json:"_links,omitempty"` 21 22 // Schema for this resource 23 Schema string `json:"_schema,omitempty"` 24 25 // Link to this resource 26 Self *common.SelfResourceLink `json:"_self,omitempty"` 27 28 // The _revision property describes the current revision of the resource. To prevent clients from overwriting each other's changes, PUT operations must include the current _revision of the resource, which clients should obtain by issuing a GET operation. If the _revision provided in a PUT request is missing or stale, the operation will be rejected. 29 Revision int32 `json:"_revision"` 30 31 // Timestamp of resource creation 32 CreateTime int64 `json:"_create_time,omitempty"` 33 34 // ID of the user who created this resource 35 CreateUser string `json:"_create_user,omitempty"` 36 37 // Timestamp of last modification 38 LastModifiedTime int64 `json:"_last_modified_time,omitempty"` 39 40 // ID of the user who last modified this resource 41 LastModifiedUser string `json:"_last_modified_user,omitempty"` 42 43 // Protection status is one of the following: PROTECTED - the client who retrieved the entity is not allowed to modify it. NOT_PROTECTED - the client who retrieved the entity is allowed to modify it REQUIRE_OVERRIDE - the client who retrieved the entity is a super user and can modify it, but only when providing the request header X-Allow-Overwrite=true. UNKNOWN - the _protection field could not be determined for this entity. 44 Protection string `json:"_protection,omitempty"` 45 46 // Indicates system owned resource 47 SystemOwned bool `json:"_system_owned,omitempty"` 48 49 // Description of this resource 50 Description string `json:"description,omitempty"` 51 52 // Defaults to ID if not set 53 DisplayName string `json:"display_name,omitempty"` 54 55 // Unique identifier of this resource 56 Id string `json:"id,omitempty"` 57 58 // The type of this resource. 59 ResourceType string `json:"resource_type,omitempty"` 60 61 // Opaque identifiers meaningful to the API user 62 Tags []common.Tag `json:"tags,omitempty"` 63 64 // If the field is not specified, the load balancer will use the default setting per load balancer service flavor. 65 FinWait2Timeout int64 `json:"fin_wait2_timeout,omitempty"` 66 67 // If the field is not specified, the load balancer will use the default setting per load balancer service flavor. 68 MaxSynRetransmissions int64 `json:"max_syn_retransmissions,omitempty"` 69 70 // Setting this option to enable or disable Nagle's algorithm. 71 NagleAlgorithmEnabled bool `json:"nagle_algorithm_enabled"` 72 73 // If the field is not specified, the load balancer will use the default setting per load balancer service flavor. 74 ReceiveWindowSize int64 `json:"receive_window_size,omitempty"` 75 76 // If the field is not specified, the load balancer will use the default setting per load balancer service flavor. 77 TransmitWindowSize int64 `json:"transmit_window_size,omitempty"` 78 }