none
SQL2000SERVERでのTCPIPと名前つきパイプについて RRS feed

  • 質問

  • お世話になります。

    初心的な質問なのですが、TCPIPと名前つきパイプというのは
    どのような違いがあるのでしょうか?

    また、Windows2000SERVERには物理的なNICを二つ搭載しております。
    ①業務用LAN
    ②バックアップLAN

    上記の場合、名前つきパイプは使用できないのでしょうか?

    以上、よろしくお願いいたします。
    2010年3月17日 12:20

回答

  • こんにちは、nagino です。

    TCP/IP と 名前付きパイプはプロトコルの違いですので、SQL Server の機能面での違いはありません。
    NIC が複数あっても問題ありません。

    一般に、企業内の LAN は TCP/IP が主流ですので、そのまま素直に TCP/IP を使うことが多いようです。
    (名前付きパイプも TCP/IP 上のプロトコルですので、LAN で使えないという意味ではありません。)
    TCP/IP が使える環境であれば、とりあえずのところはそちらを使えば失敗しないと考えておいても良いかと思います。

    ネットワークエンジニアが近くにいらっしゃるなら、そちらの方にご相談されるのも良いかと思います。

    一応、名前付きパイプは元々 LAN 用のプロトコルとして開発されたため、間にルーターを挟む環境などではパフォーマンスがよろしくないケースがあります。
    もう一段細かい話をすると、TCP/IP は無名インスタンスの場合はポート 1433 番(設定次第で変更可能)上で通信するのに対し、名前付きパイプは TCP/IP のポート 445 番上の SMB(ダイレクトホスティング SMB、CIFS) 上で通信します。
    そのため名前付きパイプのほうは、SMB 上でエラーが出た際など独特のエラーとなる、ルーターの関係でポートを指定したい場合に(特別な対応をしないと)対応できない、などプロトコル特有の癖が見受けられます。

    # このあたりは Tech Fielders コラムのほうに昨年秋に書く予定だったのですが、ちょっと私事で入稿が遅れています・・・。


    MCITP(Database Developer/Database Administrator)
    • 回答としてマーク 菊地俊介 2010年3月31日 9:18
    2010年3月17日 14:48
  • こんにちは、nagino です。

    エラーはエラーで別途考えるほうがよろしいかと思います。

    パフォーマンスの影響で出るかどうかは、エラー表示の断片だけではわかりません。
    最新のSPが適用されていなかったり、コネクションをきちんと切断など後処理をしていないアプリケーションなど、様々な原因で似たような数々のエラーが出るようです。

    そのエラー表示はどのようなものか(エラーと一緒に表示されるIDなど文言全て)、どのような操作で表示されるか(何らかのアプリケーションのエラーダイアログで?サーバーのイベントログで?)、出るタイミングに規則性はあるか(特定の操作の後に出る、特定の周期で出る)、どのような構成か(独自のアプリケーションか、SQL Server Management Studioか)、どのような環境か(OSやSQL ServerのSPは?)、あたりの情報がまずはあると、何か分かるかもしれません。


    MCITP(Database Developer/Database Administrator)
    • 回答としてマーク 菊地俊介 2010年3月31日 9:18
    2010年3月24日 14:25

すべての返信

  • こんにちは、nagino です。

    TCP/IP と 名前付きパイプはプロトコルの違いですので、SQL Server の機能面での違いはありません。
    NIC が複数あっても問題ありません。

    一般に、企業内の LAN は TCP/IP が主流ですので、そのまま素直に TCP/IP を使うことが多いようです。
    (名前付きパイプも TCP/IP 上のプロトコルですので、LAN で使えないという意味ではありません。)
    TCP/IP が使える環境であれば、とりあえずのところはそちらを使えば失敗しないと考えておいても良いかと思います。

    ネットワークエンジニアが近くにいらっしゃるなら、そちらの方にご相談されるのも良いかと思います。

    一応、名前付きパイプは元々 LAN 用のプロトコルとして開発されたため、間にルーターを挟む環境などではパフォーマンスがよろしくないケースがあります。
    もう一段細かい話をすると、TCP/IP は無名インスタンスの場合はポート 1433 番(設定次第で変更可能)上で通信するのに対し、名前付きパイプは TCP/IP のポート 445 番上の SMB(ダイレクトホスティング SMB、CIFS) 上で通信します。
    そのため名前付きパイプのほうは、SMB 上でエラーが出た際など独特のエラーとなる、ルーターの関係でポートを指定したい場合に(特別な対応をしないと)対応できない、などプロトコル特有の癖が見受けられます。

    # このあたりは Tech Fielders コラムのほうに昨年秋に書く予定だったのですが、ちょっと私事で入稿が遅れています・・・。


    MCITP(Database Developer/Database Administrator)
    • 回答としてマーク 菊地俊介 2010年3月31日 9:18
    2010年3月17日 14:48
  • ご連絡ありがとうございます。

    大変参考になりました。

    今回の環境では既存も名前付きパイプをしようしていることで、

    名前付きパイプを使用するということにしました。

    しかし、本番環境で一般ネットワークエラーというエラーでたまに(※①)エラーが発生します。

    本番環境ではWEBサーバとSQLサーバ間にルーターおよびF/Wがあります。

    そのことにより、パフォーマンスの影響により一般ネットワークエラーが発生する可能性はあるのでしょうか?

    ※①週に1~2回程度

    2010年3月23日 12:53
  • こんにちは、nagino です。

    エラーはエラーで別途考えるほうがよろしいかと思います。

    パフォーマンスの影響で出るかどうかは、エラー表示の断片だけではわかりません。
    最新のSPが適用されていなかったり、コネクションをきちんと切断など後処理をしていないアプリケーションなど、様々な原因で似たような数々のエラーが出るようです。

    そのエラー表示はどのようなものか(エラーと一緒に表示されるIDなど文言全て)、どのような操作で表示されるか(何らかのアプリケーションのエラーダイアログで?サーバーのイベントログで?)、出るタイミングに規則性はあるか(特定の操作の後に出る、特定の周期で出る)、どのような構成か(独自のアプリケーションか、SQL Server Management Studioか)、どのような環境か(OSやSQL ServerのSPは?)、あたりの情報がまずはあると、何か分かるかもしれません。


    MCITP(Database Developer/Database Administrator)
    • 回答としてマーク 菊地俊介 2010年3月31日 9:18
    2010年3月24日 14:25
  • 皆様、こんにちは。

    naginoさん、詳しい回答ありがとうございます。

    のつおさん、フォーラムのご利用ありがとうございます。ネットワークエラーについて、なにか進展は有りましたか?

    勝手ながら、有用な情報と思われたためnaginoさんの回答へ回答マークをつけさせていただきました。

    今後ともフォーラムをよろしくお願いします。
    それでは!
    2010年3月31日 9:21
  • ご連絡ありがとうございます。

    ネットワークエラーの件ですが、WEBサーバとDBサーバ間でときおりネットワークが

    途切れる現象が発生しているようです。

    この根本的な原因はありますが、既存サーバでは、ネットワークエラーという現象は発生しておりません

    ※既存サーバでは、ネットワークが途切れても再接続することにより、通信維持はできております。

    また、既存サーバはネットワークカードが1つです。

    新サーバはネットワークカードは二つ搭載しており、用途はユーザアクセス用LANとバックアップLANとなっており、

    既存サーバにはバックアップLANはありません。

    ネットワーク接続エラーが発生した際に、WEBサーバからDBサーバへ接続する際のポート情報に

    バックアップLANから接続しようとしているように思われます。

    そのため、ネットワークカードを2枚搭載していることが原因のように思われます。

    ※バックアップLANを無効にすると、現象は発生しません。

    根本的なネットワークがときおり不通になるという原因の調査は顧客ネットワークのため、

    難しいのが現状のため、接続不通が起こった際にバックアップLANから接続しようとする原因を

    調査しようと考えております。

    どんな情報でもよろしいので、情報提供をお待ちしております。

    以上、よろしくお願いいたします。

     

    2010年4月7日 14:34
  • デフォルトゲートウェイの設定とルーティングの設定は適切でしょうか。

    以前マルチホーム環境でデフォルトゲートウェイの設定を誤って不安定な通信になったことがあります。

    http://support.microsoft.com/kb/157025/ja

    2010年4月8日 7:44
    モデレータ
  • こんにちは、nagino です。

    既存環境(NIC が 1 枚の環境)と新規環境(Windows 2000 の NIC が 2 枚の環境)とで差異があるということでしょうか。
    それぞれの環境が良く分かりませんが、おっしゃっている通りだとすれば既に SQL Server は関係なく、OS や TCP/IP の問題のように見受けられます。

    Windows 2000 は 7 月に延長サポートまで終了するので、Technet / MSDN Forum には対象としたフォーラムがありませんが、ネットワーク関連に詳しい方がいらっしゃるところで改めて環境を整理して質問されたほうがよろしいかと思います。

     


    MCITP(Database Developer/Database Administrator)
    2010年4月15日 13:37