blob: 5e7d94166da2d2edd4420426a767684f93c3c850 [file] [log] [blame]
Title: 4.1 - Session Configuration
NavPrev: ch4-session.html
NavPrevText: Chapter 4 - Session
NavUp: ch4-session.html
NavUpText: Chapter 4 - Session
NavNext: ch4.2-session-statistics.html
NavNextText: 4.2 - Session Statistics
Notice: Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you 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.
# 4.1 - Session Configuration
Depending on the Session's type, we can configure various elements. Some of those elements are shared across all the session's type, some other are specific.
We currently support 4 session flavors :
* Socket : support for the TCP transport
* Datagram : support for the UDP transport
* Serial : support for the RS232 transport
* VmPipe : support for the IPC transport
## General parameters
Here is the list of all the global parameters (they can be set fo any of the Session flavors) :
| Parameter | type | Description | Default value |
|---|---|---|---|
| idleTimeForBoth | int | The number of seconds to wait before notify a session that is idle on reads and writes | Infinite |
| idleTimeForRead | int | The number of seconds to wait before notify a session that is idle on reads | Infinite |
| idleTimeForWrite | int | The number of seconds to wait before notify a session that is idle on writes | Infinite |
| maxReadBufferSize | int | The maximum size of the buffer used to read incomming data | 65536 bytes |
| minReadBufferSize | int | The minimal size of the buffer used to read incomming data | 64 bytes |
| readBufferSize | int | The default size of the buffer used to read incomming data | 2048 bytes |
| throughputCalculationInterval | int | The interval (seconds) between each throughput calculation. | 3s |
| useReadOperation | boolean | A flag set to TRUE when we allow an application to do a __session.read()_ | FALSE |
| writeTimeout | int | Delay to wait for completion before bailing out a write operation | 60s |
All those parameters can be accessed through the use of getters and setters (the _useReadOperation_ parameter getter is using the _isUseReadOperation()_ method).
## Socket specific parameters
| Parameter | type | Description | Default value |
|---|---|---|---|
| defaultReuseAddress | boolean | The value for the SO_REUSEADDR flag | true |
| keepAlive | boolean | The value for the SO_KEEPALIVE flag | false |
| oobInline | boolean | The value for the SO_OOBINLINE flag | false |
| receiveBufferSize | int | The value for the SO_RCVBUF parameter | -1 |
| reuseAddress | boolean | The value for the SO_REUSEADDR flag | false |
| sendBufferSize | int | The value for the SO_SNDBUF parameter | -1 |
| soLinger | int | The value for the SO_LINGER parameter | -1 |
| tcpNoDelay | boolean | The value for the TCP_NODELAY flag | false |
| trafficClass | int | The value for the IP_TOS parameter. One of IPTOS_LOWCOST(0x02), IPTOS_RELIABILITY(0x04), IPTOS_THROUGHPUT (0x08) or IPTOS_LOWDELAY (0x10) | 0 |
## Datagram specific parameters
| Parameter | type | Description | Default value |
|---|---|---|---|
| broadcast | boolean | The value for the SO_BROADCAST flag | false |
| closeOnPortUnreachable | boolean | Tells if we should close the session if the port is unreachable | true |
| receiveBufferSize | int | The value for the SO_RCVBUF parameter | -1 |
| reuseAddress | boolean | The value for the SO_REUSEADDR flag | false |
| sendBufferSize | int | The value for the SO_SNDBUF parameter | -1 |
| trafficClass | int | The value for the IP_TOS parameter. One of IPTOS_LOWCOST(0x02), IPTOS_RELIABILITY(0x04), IPTOS_THROUGHPUT (0x08) or IPTOS_LOWDELAY (0x10) | 0 |
## Serial specific parameters
| Parameter | type | Description | Default value |
|---|---|---|---|
| inputBufferSize | int | The input buffer size to use | 8 |
| lowLatency | boolean | Set the Low Latency mode | false |
| outputBufferSize | int | The ouput buffer size to use | 8 |
| receiveThreshold | int | Set the receive threshold in byte (set it to -1 for disable) | -1 |