

#include <nitroWiFi/cps.h>
#define tcpwritetimeout1 CPS_MilliSecondsToLTicks(2*1000)
#define tcpwritetimeout2 CPS_MilliSecondsToLTicks(20*1000)
#define tcpsyntimeout CPS_MilliSecondsToLTicks(5*1000)
#define tcpclosetimeout CPS_MilliSecondsToLTicks(5*1000)
#define arpcache_entries 8
#define fragtable_entries 8
#define TCPIP_STACK_SIZE 2048
#define SCAVENGER_STACK_SIZE 2048
#define DEFAULT_HELPER_THREADS_PRIORITY 16
#define MAX_IP_PAYLOAD 1480
#define SCA_SLEEP (1*1000) // 1 second
#define ARP_TIMEOUT (2*60*1000) // 2 minutes
#define GARP_TIMEOUT (3*1000) // 3 seconds
#define IPFRAG_TIMEOUT (30*1000) // 30 seconds
#define DHCP_TIMEOUT CPS_MilliSecondsToLTicks(4*1000)
#define DHCP_RETRIES 2
#define RESOLVER_TIMEOUT CPS_MilliSecondsToLTicks(5*1000)
#define RESOLVER_MAXNAMELEN 48
| tcpwritetimeout1 | TCPモードにおけるCPS_SocWrite()での相手のACKのタイムアウト。これを過ぎたら再送します。 |
| tcpwritetimeout2 | TCPモードにおけるCPS_SocWrite()での送信処理全体のタイムアウト。これを過ぎたら送信を打ち切ります。 |
| tcpsyntimeout | CPS_TcpConnect()、CPS_TcpListen()のハンドシェイクの時のタイムアウト。これを過ぎたらハンドシェイクを打ち切ります。 |
| tcpclosetimeout | CPS_TcpClose()のタイムアウト。これを過ぎても正常なクローズ処理が行われなかったら、強制的終了します。 |
| arpcache_entries | ARPキャッシュのエントリ数。 |
| fragtable_entries | フラグメント化されたIPパケットの再構成に使用されるテーブルのエントリ数。 |
| TCPIP_STACK_SIZE | CPSの受信スレッド用スタックサイズ。 |
| SCAVENGER_STACK_SIZE | CPSの定期処理スレッド用スタックサイズ。 |
| DEFAULT_HELPER_THREADS_PRIORITY | CPSの受信スレッド、CPSの定期処理スレッドの優先度。 |
| MAX_IP_PAYLOAD | IPパケットの最大長。これ以上のIPパケットはフラグメント化して送られます。 |
| SCA_SLEEP | CPSの定期処理スレッドの動作頻度。 |
| ARP_TIMEOUT | ARPキャッシュの寿命。 |
| GARP_TIMEOUT | 手動設定されたIPアドレスの重複検査の際の待ち時間。 |
| IPFRAG_TIMEOUT | フラグメント化されたIPパケットを再構成する際のタイムアウト。これをすぎても再構成できないパケットは破棄されます。 |
| DHCP_TIMEOUT | DHCPサーバと通信する際のタイムアウト。最初はこの値、次はこの2倍、次はそのさらに2倍、というように増加します。 |
| DHCP_RETRIES | DHCPサーバと通信する際のリトライ数。 |
| RESOLVER_TIMEOUT | DNSサーバと通信する際のタイムアウト。 |
| RESOLVER_MAXNAMELEN | DNSサーバに問い合わせる名前の最大長。 |
CPSソケット内部で使用されているタイムアウト値について、以下に示します。
タイムアウト値に関しては、上記の定数で定義されていないものも存在します。
| ARP のリトライ | 2 秒間隔で 8 回 |
| ARP キャッシュのタイムアウト | 最後の参照から 2 分 |
| IP フラグメントの廃棄時間 | 30 秒 |
| DHCP のリトライ | 計 4 回の送信で、タイムアウト値が 2, 4, 6, 8 秒 |
| DNS のリトライ | 2 秒間隔で 3 回 |
| TCP 送信リトライ | 2 秒間隔で 20 秒が経過するまで |
| TCP 接続時タイムアウト | 5 秒 |
| TCP 切断時タイムアウト | 5 秒 |
2005/10/24 初版