2009-03-31 13 views
9

ポートからいくつのソケットを作成できますか?ポートからいくつのソケットを作成できますか?

+0

ostはおそらくhttp://stackoverflow.com/questions/651665/how-many-socket-connections-possibleを参照してください。 – jonny

+0

「聞く」という用語の使用はあいまいですが、一般的にはソケットではなくポートで待機します。この質問は、「どのくらい多くの港が聴くことができるの?または "ポート(またはポートのセット)からいくつのソケットを作成できますか?" – AnthonyWJones

答えて

5

これはオペレーティングシステムの制限です。

基本的に、各ソケットにはファイル記述子が必要です(Linux/Unixの用語では、Windowsではおそらく同等です)。 OSにはプロセスごとのファイル記述子の制限(250〜1000など)があり、それは上限になります。

+1

必要ありません。リスニングスレッドは、接続処理を別のスレッドに委譲し、すぐにファイル記述子を閉じることができます。そのため、最大数のスレッドは、スレッドあたりのファイル記述子の最大数に時間をかけます。 – artistoex

+0

@artistoexどのOSが_process_ではなく_thread_ごとにファイル記述子の制限を持っていますか? – tzot

+0

@tzot Linuxスレッドでは基本的に_are_processです。 [clone(2)](https://linux.die.net/man/2/clone)を見てください。わかっている限り、ファイル記述子を共有しないスレッドを作成することができます。 – artistoex

8

オペレーティングシステムによって異なります。

  • Windowsの場合、MaxConnectionsエントリはhereです。

  • Linuxの場合、質問のコメントにはhereと表示されます。

2

それはあなたがリモートホスト/ポートの組み合わせへの接続を開いたとき、私は、あなたもあなたの末尾にポートを必要とするであろうこと(あなたのプロセスで使用できるクライアント側のポートの数によって支配されます)。

クライアント側(または一時的)ポートの合計は、マシン上のすべてのプロセスで使用できるようになります。だから、現在実行中のものに依存します。

ポート数と構成はOSによって異なります。あなたのOSに加えて、「最大ポート数」のGoogleだけ。

関連する問題