source: anotherchoice/tags/jsp-1.4.4-full-UTF8/config/cfv2/tinet_cpu_config.h@ 26

Last change on this file since 26 was 26, checked in by ykominami, 12 years ago

initial

File size: 13.0 KB
Line 
1/*
2 * TINET (TCP/IP Protocol Stack)
3 *
4 * Copyright (C) 2001-2006 by Dep. of Computer Science and Engineering
5 * Tomakomai National College of Technology, JAPAN
6 * Copyright (C) 2007 by KURUSUGAWA Electronics Industry Inc, JAPAN
7 *
8 * 上記著作権者
9は,以下の (1)〜(4) の条件か,Free Software Foundation
10 * によってå…
11¬è¡¨ã•ã‚Œã¦ã„ã‚‹ GNU General Public License の Version 2 に記
12 * 述されている条件を満たす場合に限り,本ソフトウェア(本ソフトウェア
13 * を改変したものを含む.以下同じ)を使用・複製・改変・再é…
14å¸ƒï¼ˆä»¥ä¸‹ï¼Œ
15 * 利用と呼ぶ)することを無償で許諾する.
16 * (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作
17 * 権表示,この利用条件および下記の無保証規定が,そのままの形でソー
18 * スコード中に含まれていること.
19 * (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使
20 * 用できる形で再é…
21å¸ƒã™ã‚‹å ´åˆã«ã¯ï¼Œå†é…
22å¸ƒã«ä¼´ã†ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆï¼ˆåˆ©ç”¨
23 * 者
24マニュアルなど)に,上記の著作権表示,この利用条件および下記
25 * の無保証規定を掲載すること.
26 * (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使
27 * 用できない形で再é…
28å¸ƒã™ã‚‹å ´åˆã«ã¯ï¼Œæ¬¡ã®æ¡ä»¶ã‚’満たすこと.
29 * (a) 再é…
30å¸ƒã«ä¼´ã†ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆï¼ˆåˆ©ç”¨è€…
31マニュアルなど)に,上記の著
32 * 作権表示,この利用条件および下記の無保証規定を掲載すること.
33 * (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
34 * 害からも,上記著作権者
35およびTOPPERSプロジェクトをå…
36è²¬ã™ã‚‹ã“と.
37 *
38 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者
39お
40 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
41 * 含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
42 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
43 *
44 * @(#) $Id: $
45 */
46
47#ifndef _TINET_CPU_CONFIG_H_
48#define _TINET_CPU_CONFIG_H_
49
50/*
51 * TCP/IP に関する定義
52 */
53
54/* TCP に関する定義 */
55
56/*
57 * MAX_TCP_SND_SEG: 送信セグメントサイズの最大値
58 *
59 * 相手から MSS オプションでセグメントサイズを指定されても、
60 * この値で、セグメントサイズを制限できる。
61 */
62
63#ifndef MAX_TCP_SND_SEG
64#define MAX_TCP_SND_SEG (IF_MTU - (IP_HDR_SIZE + TCP_HDR_SIZE))
65#endif /* of #ifndef MAX_TCP_SND_SEG */
66
67/*
68 * DEF_TCP_RCV_SEG: 受信セグメントサイズの規定値
69 */
70
71#ifndef DEF_TCP_RCV_SEG
72#define DEF_TCP_RCV_SEG (IF_MTU - (IP_HDR_SIZE + TCP_HDR_SIZE))
73#endif /* of #ifndef DEF_TCP_RCV_SEG */
74
75/*
76 * セグメントの順番をå…
77¥ã‚Œæ›¿ãˆã‚‹ã¨ãã«æ–°ãŸã«ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ãƒãƒƒãƒ•ã‚¡ã‚’割当てて、
78 * データをコピーするサイズのしきい値
79 */
80#define MAX_TCP_REALLOC_SIZE 1024
81
82#define TCP_CFG_OPT_MSS /* コネクション開設時に、セグメントサイズオプションをつけて送信する。*/
83#define TCP_CFG_DELAY_ACK /* ACK を遅
84らせるときはコメントを外す。 */
85#define TCP_CFG_ALWAYS_KEEP /* 常にキープアライブする時はコメントを外す。 */
86
87/* UDP に関する定義 */
88
89#define UDP_CFG_IN_CHECKSUM /* UDP のå…
90¥åŠ›ãƒã‚§ãƒƒã‚¯ã‚µãƒ ã‚’行う場合はコメントを外す。 */
91#define UDP_CFG_OUT_CHECKSUM /* UDP の出力チェックサムを行う場合はコメントを外す。 */
92
93/* ICMPv4/v6 に関する定義 */
94
95#define ICMP_REPLY_ERROR /* ICMP エラーメッセージを送信する場合はコメントを外す。*/
96
97/* IPv4 に関する定義 */
98
99//#define IP4_CFG_FRAGMENT /* データグラムの分割・再構成行う場合はコメントを外す。*/
100#define NUM_IP4_FRAG_QUEUE 2 /* データグラム再構成キューサイズ */
101#define IP4_CFG_FRAG_REASSM_SIZE 4096 /* 再構成バッファサイズ */
102
103/* IPv6 に関する定義 */
104
105#define NUM_IP6_DAD_COUNT 1 /* 重複アドレス検出で送信する近隣要請の回数、 */
106 /* 0 を指定すると、重複アドレス検出を行わない。 */
107#define NUM_ND6_CACHE_ENTRY 10 /* 近隣キャッシュのエントリ数 */
108
109#ifdef SUPPORT_ETHER
110
111#define IP6_CFG_AUTO_LINKLOCAL /* リンクローカルアドレスの自動設定を行う場合はコメントを外す。*/
112
113/*
114 * ディフォルトルータリストのエントリ数。
115 * 0 を指定するとルータ通知を受信しない。
116 */
117#define NUM_ND6_DEF_RTR_ENTRY 2
118
119/*
120 * 起動時のルータ要請出力回数。
121 * 0 を指定するとルータ要請を出力しない。
122 */
123#define NUM_ND6_RTR_SOL_RETRY 3
124
125#endif /* of #ifdef SUPPORT_ETHER */
126
127/*
128 * データリンク層 (ネットワークインタフェース) に関する定義
129 */
130
131/*
132 * PPP、モデムに関する定義
133 */
134
135#define MODEM_CFG_DIAL "ATD" /* ダイアルコマンド文字列 */
136#define MODEM_CFG_RETRY_CNT 3 /* ダイアルリトライ回数 */
137#define MODEM_CFG_RETRY_WAIT 10000 /* ダイアルリトライまでの待
138ち時間 [ms] */
139
140/*
141 * PPP、HDLC に関する定義
142 */
143
144#define DEF_LOCAL_ACCM 0x000a0000 /* 自分の ACCM、XON と XOFF のみ変換 */
145#define DEF_REMOTE_ACCM 0xffffffff /* 相手の ACCM、初期値はå…
146¨ã¦å¤‰æ› */
147
148/*
149 * PPP、LCP に関する定義
150 */
151
152#define LCP_CFG_MRU 0x0001 /* MRU */
153#define LCP_CFG_ACCM 0x0002 /* ACCM */
154#define LCP_CFG_MAGIC 0x0004 /* マジック番号 */
155#define LCP_CFG_PCOMP 0x0008 /* プロトコル部圧縮機能 */
156#define LCP_CFG_ACCOMP 0x0010 /* アドレス・制御部圧縮 */
157#define LCP_CFG_PAP 0x0020 /* PAP */
158/*#define LCP_CFG_CHAP 0x0040 CHAP は実装
159予定 */
160
161#ifdef LCP_CFG_MAGIC
162
163#define LCP_ECHO_INTERVAL (20*NET_TIMER_HZ) /* インターバル時間 */
164#define LCP_ECHO_FAILS 9 /* 失敗閾値 */
165
166#endif /* of #ifdef LCP_CFG_MAGIC */
167
168/*
169 * PPP、PAP に関する定義
170 */
171
172#define DEF_PAP_TIMEOUT (3*NET_TIMER_HZ)
173#define DEF_PAP_REQTIME (30*NET_TIMER_HZ) /* タイムアウト処理を行うときはコメントを外す。*/
174#define MAX_PAP_REXMT 10 /* 認証要求の最大再送回数 */
175
176/*
177 * ARP に関する定義
178 */
179
180#define NUM_ARP_ENTRY 10 /* ARP キャッシュエントリ数 */
181
182/*
183 * DHCP に関する定義
184 *
185 * ・注意: TINET は、DHCP を実装
186していない。応用プログラムで、
187 * DHCP メッセージを受信するための定義である。
188 * また、現在は IPv4 のみ有効である。
189 */
190
191/*#define DHCP_CFG DHCP を処理する場合はコメントを外す。*/
192
193/*
194 * Ethernet に関する定義
195 */
196
197/*#define ETHER_CFG_ACCEPT_ALL マルチキャスト、エラーフレームも受信するときはコメントを外す。 */
198/*#define ETHER_CFG_UNEXP_WARNING 非サポートフレームの警告を表示するときはコメントを外す。 */
199/*#define ETHER_CFG_802_WARNING IEEE 802.3 フレームの警告を表示するときはコメントを外す。 */
200/*#define ETHER_CFG_MCAST_WARNING マルチキャストの警告を表示するときはコメントを外す。 */
201
202/*
203 * 汎用ネットワークに関する定義
204 */
205
206/* ネットワークバッファ数 */
207
208#ifdef SUPPORT_PPP
209
210/*
211 * PPP では、受信用の ネットワークバッファは PDU (1502) サイズを常に
212 * 割り当てなければならないので PDU サイズを多めに確保する。
213 */
214
215#ifndef NUM_MPF_NET_BUF_CSEG
216#define NUM_MPF_NET_BUF_CSEG 2 /* IF + IP + TCP、2 以上*/
217#endif /* of #ifndef NUM_MPF_NET_BUF_CSEG */
218
219#ifndef NUM_MPF_NET_BUF_64
220#define NUM_MPF_NET_BUF_64 0 /* 64 オクテット */
221#endif /* of #ifndef NUM_MPF_NET_BUF_64 */
222
223#ifndef NUM_MPF_NET_BUF_128
224#define NUM_MPF_NET_BUF_128 0 /* 128 オクテット */
225#endif /* of #ifndef NUM_MPF_NET_BUF_128 */
226
227#ifndef NUM_MPF_NET_BUF_256
228#define NUM_MPF_NET_BUF_256 0 /* 256 オクテット */
229#endif /* of #ifndef NUM_MPF_NET_BUF_256 */
230
231#ifndef NUM_MPF_NET_BUF_512
232#define NUM_MPF_NET_BUF_512 0 /* 512 オクテット */
233#endif /* of #ifndef NUM_MPF_NET_BUF_512 */
234
235#ifndef NUM_MPF_NET_BUF_1024
236#define NUM_MPF_NET_BUF_1024 0 /* 1024 オクテット */
237#endif /* of #ifndef NUM_MPF_NET_BUF_1024 */
238
239#ifndef NUM_MPF_NET_BUF_IF_PDU
240#define NUM_MPF_NET_BUF_IF_PDU 2 /* IF 最大 PDU サイズ */
241#endif /* of #ifndef NUM_MPF_NET_BUF_IF_PDU */
242
243#if defined(SUPPORT_INET4) && defined(IP4_CFG_FRAGMENT)
244
245#ifndef NUM_MPF_NET_BUF_REASSM
246#define NUM_MPF_NET_BUF_REASSM 2 /* 再構成バッファサイズ */
247#endif /* of #ifndef NUM_MPF_NET_BUF_REASSM */
248
249#endif /* of #if defined(SUPPORT_INET4) && defined(IP4_CFG_FRAGMENT) */
250
251#endif /* of #ifdef SUPPORT_PPP */
252
253#ifdef SUPPORT_ETHER
254
255/*
256 * イーサネットの場合のネットワークバッファ数の割り当て
257 */
258
259/*
260 * 注意!!
261 *
262 * NE2000 互換 NIC のディバイスドライバ(if_ed)の最低割当て長は
263 * 60(アラインして 62)オクテットのため IF + IP +TCP よりは
264 * 64 オクテットのネットワークバッファの方が最適である。
265 */
266
267#ifndef NUM_MPF_NET_BUF_CSEG
268#define NUM_MPF_NET_BUF_CSEG 0 /* IF + IP + TCP */
269#endif /* of #ifndef NUM_MPF_NET_BUF_CSEG */
270
271#ifndef NUM_MPF_NET_BUF_64
272#define NUM_MPF_NET_BUF_64 2 /* 64 オクテット */
273#endif /* of #ifndef NUM_MPF_NET_BUF_64 */
274
275#ifndef NUM_MPF_NET_BUF_128
276#define NUM_MPF_NET_BUF_128 0 /* 128 オクテット */
277#endif /* of #ifndef NUM_MPF_NET_BUF_128 */
278
279#ifndef NUM_MPF_NET_BUF_256
280#define NUM_MPF_NET_BUF_256 0 /* 256 オクテット */
281#endif /* of #ifndef NUM_MPF_NET_BUF_256 */
282
283#ifndef NUM_MPF_NET_BUF_512
284#define NUM_MPF_NET_BUF_512 0 /* 512 オクテット */
285#endif /* of #ifndef NUM_MPF_NET_BUF_512 */
286
287#if defined(SUPPORT_INET4)
288
289#ifndef NUM_MPF_NET_BUF_IP_MSS
290#define NUM_MPF_NET_BUF_IP_MSS 0 /* IF + 576 オクテット */
291#endif /* of #ifndef NUM_MPF_NET_BUF_IP_MSS */
292
293#endif /* of #if defined(SUPPORT_INET4) */
294
295#ifndef NUM_MPF_NET_BUF_1024
296#define NUM_MPF_NET_BUF_1024 0 /* 1024 オクテット */
297#endif /* of #ifndef NUM_MPF_NET_BUF_1024 */
298
299#if defined(SUPPORT_INET6)
300
301#ifndef NUM_MPF_NET_BUF_IPV6_MMTU
302#define NUM_MPF_NET_BUF_IPV6_MMTU 0 /* IF + 1280 */
303#endif /* of #ifndef NUM_MPF_NET_BUF_IPV6_MMTU */
304
305#endif /* of #if defined(SUPPORT_INET6) */
306
307#ifndef NUM_MPF_NET_BUF_IF_PDU
308#define NUM_MPF_NET_BUF_IF_PDU 4 /* IF 最大 PDU サイズ */
309#endif /* of #ifndef NUM_MPF_NET_BUF_IF_PDU */
310
311#if defined(SUPPORT_INET4) && defined(IP4_CFG_FRAGMENT)
312
313#ifndef NUM_MPF_NET_BUF_REASSM
314#define NUM_MPF_NET_BUF_REASSM 2 /* 再構成バッファサイズ */
315#endif /* of #ifndef NUM_MPF_NET_BUF_REASSM */
316
317#endif /* of #if defined(SUPPORT_INET4) && defined(IP4_CFG_FRAGMENT) */
318
319#endif /* of #ifdef SUPPORT_ETHER */
320
321#ifdef SUPPORT_LOOP
322
323#ifndef NUM_MPF_NET_BUF_CSEG
324#define NUM_MPF_NET_BUF_CSEG 2 /* IF + IP + TCP */
325#endif /* of #ifndef NUM_MPF_NET_BUF_CSEG */
326
327#ifndef NUM_MPF_NET_BUF_64
328#define NUM_MPF_NET_BUF_64 0 /* 64 オクテット */
329#endif /* of #ifndef NUM_MPF_NET_BUF_64 */
330
331#ifndef NUM_MPF_NET_BUF_128
332#define NUM_MPF_NET_BUF_128 0 /* 128 オクテット、2 以上 */
333#endif /* of #ifndef NUM_MPF_NET_BUF_128 */
334
335#ifndef NUM_MPF_NET_BUF_256
336#define NUM_MPF_NET_BUF_256 0 /* 256 オクテット */
337#endif /* of #ifndef NUM_MPF_NET_BUF_256 */
338
339#ifndef NUM_MPF_NET_BUF_512
340#define NUM_MPF_NET_BUF_512 0 /* 512 オクテット */
341#endif /* of #ifndef NUM_MPF_NET_BUF_512 */
342
343#ifndef NUM_MPF_NET_BUF_1024
344#define NUM_MPF_NET_BUF_1024 0 /* 1024 オクテット */
345#endif /* of #ifndef NUM_MPF_NET_BUF_1024 */
346
347#ifndef NUM_MPF_NET_BUF_IF_PDU
348#define NUM_MPF_NET_BUF_IF_PDU 4 /* IF 最大 PDU サイズ */
349#endif /* of #ifndef NUM_MPF_NET_BUF_IF_PDU */
350
351#endif /* of #ifdef SUPPORT_PPP */
352
353/*
354 * ネットワーク統計情
355報の計測
356 *
357 * ネットワーク統計情
358報の計測を行う場合は、tinet/include/net/net.h
359 * で定義されているプロトコル識別フラグを指定する。
360 */
361
362#if 1
363
364#ifdef SUPPORT_INET4
365
366#define NET_COUNT_ENABLE (0 \
367 | PROTO_FLG_PPP_HDLC \
368 | PROTO_FLG_PPP_PAP \
369 | PROTO_FLG_PPP_LCP \
370 | PROTO_FLG_PPP_IPCP \
371 | PROTO_FLG_PPP \
372 | PROTO_FLG_LOOP \
373 | PROTO_FLG_ETHER_NIC \
374 | PROTO_FLG_ETHER \
375 | PROTO_FLG_ARP \
376 | PROTO_FLG_IP4 \
377 | PROTO_FLG_ICMP4 \
378 | PROTO_FLG_UDP \
379 | PROTO_FLG_TCP \
380 | PROTO_FLG_NET_BUF \
381 )
382
383#endif /* of #ifdef SUPPORT_INET4 */
384
385#ifdef SUPPORT_INET6
386
387#define NET_COUNT_ENABLE (0 \
388 | PROTO_FLG_PPP_HDLC \
389 | PROTO_FLG_PPP_PAP \
390 | PROTO_FLG_PPP_LCP \
391 | PROTO_FLG_PPP_IPCP \
392 | PROTO_FLG_PPP \
393 | PROTO_FLG_LOOP \
394 | PROTO_FLG_ETHER_NIC \
395 | PROTO_FLG_ETHER \
396 | PROTO_FLG_IP6 \
397 | PROTO_FLG_ICMP6 \
398 | PROTO_FLG_ND6 \
399 | PROTO_FLG_UDP \
400 | PROTO_FLG_TCP \
401 | PROTO_FLG_NET_BUF \
402 )
403
404#endif /* of #ifdef SUPPORT_INET6 */
405
406#else /* of #if 0 */
407
408#define NET_COUNT_ENABLE (0 \
409 )
410
411#endif /* of #if 0 */
412
413#endif /* _TINET_CPU_CONFIG_H_ */
Note: See TracBrowser for help on using the repository browser.