BindExceptionとConnectExceptionの違いがわからず悩んでいます。
Socketを使って通信する際、すでに接続が確立しているポート番号を
使うことはできないのはわかります。
ここで、「すでに接続が確立している」とは
たとえばnetstatコマンド(netstat -n)でstatusがESTABLISHED
になっていることかなあと思っています。
ところが、同じESTABLISHEDとなっているポートでも、
ある番号ではBindExceptionが、別の番号ではConnectExceptionが出ます。
http://java.sun.com/j2se/1.5.0/ja/docs/ja/api/ja …
を見てみると、
BindException:
ソケットをローカルアドレスおよびポートにバインドしようとしているときエラーが発生したことを示します。
ConnectException :
ソケットをリモートアドレスおよびポートに接続しようとしたときエラーが発生したことを示します。
のようにありますが、「バインド」と「接続」の違いがわかりません。
どなかた教えて頂ける方、いらっしゃいませんでしょうか。
No.1ベストアンサー
- 回答日時:
TCP/IP の話となりますが、
TCP/IP では、ネットワーク通信の際に、クライアントとサーバ間にて、通信を
行う事になります。
クライアントとは、サーバへ接続を要求して、通信を処理する者です。
サーバとは、クライアントからの接続を受け付け、通信を処理する者です。
通信の流れとしては、
サーバが接続受付用のアドレスとポートを待ち受け用ポートとして、関連付けし、
使用します。この処理をバインドと呼んでいます。
次に、クライアントから、サーバが待ち受けしているアドレスとポートへ接続
を要求します。正しくサーバへ接続されると、クライアント/サーバ間にて、
通信が出来る事でしょう。
この接続を接続と呼んでいます。(#この説明は蛇足か。)
ですから、
> BindException:
> ソケットをローカルアドレスおよびポートにバインドしようとしているときエラーが発生したことを示します。
は、サーバ側で、待ち受け用ポートを準備している時に失敗。
ConnectException :
ソケットをリモートアドレスおよびポートに接続しようとしたときエラーが発生したことを示します。
は、クライアント側で、サーバへの接続に失敗。
と言う解釈だと思います。
TCP/IPや、クライアント/サーバに付いては、必要に応じて、別途調べてみてください。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- プリンタ・スキャナー キャノンmp490プリンター【エラー番号5400】で【プリンタートラブルが発生しました。電源を入れ直 2 2023/07/24 17:45
- その他(パソコン・周辺機器) Windowsマシン。USBタップの「自動切れ、再接続」がうざい。解決策は? 7 2023/01/25 08:27
- モニター・ディスプレイ 識別番号の決まり方 1 2022/06/14 20:44
- ルーター・ネットワーク機器 AU光10G回線について 6 2022/07/25 00:12
- オンラインゲーム とても急いでいます。Minecraft Java版についてです。 MinecraftのJava版でマ 1 2023/03/15 21:19
- その他(インターネット接続・インフラ) 一軒家のインターネット環境について質問です。 現在一軒家に住んでいますがWiFiの速度が遅く困ってお 3 2022/11/06 00:55
- ルーター・ネットワーク機器 YAMAHA RTX1210について初歩的な質問 1 2022/05/26 23:06
- Windows 10 リモートデスクトップ接続 1 2022/07/12 14:30
- ルーター・ネットワーク機器 ひとつのスイッチでルーターの冗長化を複数させたい 1 2023/04/12 22:46
- プロバイダー・ISP プロバイダを2社契約した場合 2 2022/12/06 21:24
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
TCP/IP通信時のサーバーからの受信
-
ソケットを用いた1対多通信につ...
-
同じLAN内パソコンのIPアドレス...
-
Socket通信の0バイト受信について
-
VB6のwinsockでconnectできない
-
UDP通信する時に、相手にどうや...
-
相手のIPアドレスを取得する方法
-
UDP通信におけるbind関数について
-
ソケット通信 同じポート番号...
-
Socket通信を待ち受け状態にす...
-
エクセル VBA でのCOMポート...
-
JavaによるXMLの送受信
-
ソケットのrecvの戻り値が0
-
株価チャートプログラム
-
Delphi で作成中 DLL の中で Pr...
-
UDPを使って通信速度測定プログ...
-
ソケット通信について(Tcp)
-
送信したデータの一部が文字化...
-
ネットワークプログラミングに...
-
ソケットでクライアントのipア...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
TCP/IP通信時のサーバーからの受信
-
UDP通信におけるbind関数について
-
Winsockで接続待ちタイムアウト...
-
recv関数でフリーズしてしまう
-
VB6のwinsockでconnectできない
-
ソケットのクローズについて
-
UDP通信する時に、相手にどうや...
-
エクセル VBA でのCOMポート...
-
ソケットのrecvの戻り値が0
-
UdpClient 送信元のIPアドレ...
-
Socket通信の0バイト受信について
-
WinSockでの通信プログラムがう...
-
同じLAN内パソコンのIPアドレス...
-
ソケット通信 同じポート番号...
-
VC++でのソケット通信について
-
Connectエラーが出てしまう・・...
-
CreateFile関数でCOMポートが開...
-
Winsockを使わずにVBでSocketを...
-
VB6‥ソケットについて
-
SIPがNATを越えられない理由
おすすめ情報