人に聞けない痔の悩み、これでスッキリ >>

http通信とsocket通信について、特徴を調べているのですが、両方の長所、短所、特徴を教えていただけませんでしょうか?
ホームページを見ても、プログラミング等はたくさんあるのですが、特徴に関しての記述がありませんのでお願いいたします。

このQ&Aに関連する最新のQ&A

A 回答 (2件)

HTTP は TCP/IP を土台 (いわば「部品」) にしていますので,


その質問はパソコンと CPU (あるいは機械式時計と歯車) を比較するようなものです.

この回答への補足

すいません。そもそもの違いがわかっていなかったみたいです。
再度、勉強し直します

補足日時:2007/01/30 19:29
    • good
    • 0

TCP/IP(おそらくここで言うsocket)はトランスポート層のプロトコル、


HTTPはTCP/IPを利用したアプリケーション層のプロトコルです。
そもそも次元が違うので、長所短所などの比較は不可能です。
    • good
    • 0
この回答へのお礼

勉強不足だったみたいでもうしわけありません。そもそも比較対象がちがうということですね。

お礼日時:2007/02/03 23:09

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

QSocketとFTPの違いについて

両者の違いについて教えてください。

Aベストアンサー

socket
IPアドレスとポートをセットにしたもの
http://e-words.jp/w/E382BDE382B1E38383E38388.html

FTP
ファイルを送受信するためのプロトコル
http://e-words.jp/w/ftp.html

QIP-VPNとインターネットVPNの違い

就職活動をしている大学生です。
セキュリティとネットワークに興味があり、そこから自分が何をやりたいのか突き詰めて行った結果VPNを提供している企業が浮かび上がって来ました、業界研究をしている際に疑問が出てきました。

IP-VPNとインターネットVPNの違いの違いがいまいちわかりません。

インターネットVPNはインターネット上を介したVPN、IPは事業者のネットワーク内のVPNって解釈でよいのですかね??

そうなるとプライベート回線を引くのとIP-VPNの違いは???

提供している事業者の違い、VPNに関すること、VPNの今後&求められるもの等、教えてください。

よろしくお願いします。

Aベストアンサー

こんちは。hirasakuです。

簡単に言うと
インターネットVPNはその名の通り、インターネット網を利用した拠点間をあたかもLANのように使うためのWAN構築です。
基本的にVPN接続するためのルータの設定(トンネリングや暗号化・認証など)はユーザーが設定し、運用管理もユーザーが行います。
インターネット網なので通信に対する保障がありませんので、VPNに通すデータを検討しなければならない場合もあります。
一番安価に構築できランニングコストが抑えられます。

IP-VPNは通信事業者の閉域IPネットワーク網を通信経路として用い、自社専用ネットワークであるかのようなWANを構築できるサービスのことです。
通信事業者側で用意している網は品質を保証してあり、ユーザー側はIP-VPN網に接続するだけで、セキュアな通信ができ、インターネットVPN同様LANのように使えます。

プライベート回線とは専用線やフレームリレー網などのことを言っているのですかね?
専用線は料金が距離に比例し、拠点間の距離が離れるほどコストが大きくなり、セルリレー/フレームリレーは、フルメッシュ型接続ですけど、柔軟なネットワーク構築が難しいという問題があります。専用線・フレームリレーなどは回線帯域の割にはコストが高いので、インターネットVPNやIP-VPNでコストを安くしてネットワークを構築するようになってきてます。

インターネットVPNやIP-VPNはプロトコルにIPを使わなくてはならないので、データはIPに乗せる必要があります。
そこで、広域イーサネットというサービスを各通信事業者が行っています。広域イーサネットはプロトコルをIP以外(IPXやSNAなど)を通すことができ、またイーサなので、WAN側に接続するのに極端な話、スイッチでつなげられますので、今までのようにルータの設定などいらなくなります。(VLAN構成にするならスイッチの設定が必要ですけけど)また、QoSなどデータの優先制御や帯域制御などもできますので、VoIPなどにも使えますね。
ということで、簡単に拠点間のLAN構築が可能になります。

提供しているサービスの違いは、どこも似たり寄ったりかなって思いますけど。
サービス提供エリアや、構築にあったオプションサービスなどで選べばいいのでは。

こんちは。hirasakuです。

簡単に言うと
インターネットVPNはその名の通り、インターネット網を利用した拠点間をあたかもLANのように使うためのWAN構築です。
基本的にVPN接続するためのルータの設定(トンネリングや暗号化・認証など)はユーザーが設定し、運用管理もユーザーが行います。
インターネット網なので通信に対する保障がありませんので、VPNに通すデータを検討しなければならない場合もあります。
一番安価に構築できランニングコストが抑えられます。

IP-VPNは通信事業者の閉域IPネットワ...続きを読む

QMAX値を条件にデータを取得するには?

SQL文で困っています。
ご教授下さい。


下記のようなデータがあった場合、それぞれの区分毎に
年月が最大(最新)のデータを取得したいです。
(実際には1レコードにその他項目があり、それらも取得します。)
<検索対象データ>
区分 年月   金額
-----------------------------
A   200412  600
A   200503  560
B   200311  600
B   200508  1000
B   200504  560
C   200508  400
C   200301  1100


<取得したいデータ>

区分 年月   金額
-----------------------------
A   200503  560
B   200508  1000
C   200508  400

よろしくお願いします。

Aベストアンサー

テーブル名をXXXとすると次のようなSQLでよいと思います。(最善の方法かどうかは自信がないですが)

select B.* from (select 区分, max(年月) as 年月 from XXX group by 区分) As A
inner join XXX as B on A.区分 = B.区分 and A.年月 = B.年月
order by B.区分

Q文字列として"(ダブルコーテーション)を表示させる方法

こんにちは。文字列として、ダブルコーテーションを表示させるには、どうすればよいのか教えてください。m(__)m


例えば、
<font size="2">あいうえお</font>

というタグの「あいうえお」の部分が、セルA1にあった場合、

="<font size="2">"&A1&"</font>"という表示にしたいのです。

"2"のダブルコーテーションも文字列として表示させるには、どうすればよろしいのでしょうか。

教えてください。よろしくお願い致します。

Aベストアンサー

こんにちは~

表示形式は 「標準」 のままで、
ダブルコーテーションを、ダブルコーテーションで囲んでください。

""2""

="<font size=""2"">"&A1&"</font>"

としてみてください。

Qポートの80と443

こちらのサービス(https://secure.logmein.com/)を利用すると、インターネットを見られるサーバーのポートの80と443が空いていればルータやファイアウォールに特段の設定なく外部からサーバーを操作できるそうですが、逆にサーバーのポートの80や443を空けることには何か危険性があるのでしょうか。

Aベストアンサー

ポート80は一般的なHTTP、ポート443はHTTPSです。
この2つのポートがあいていなければインターネット接続(WEBブラウジング)は出来ません。
ですから、ほとんどのファイアウォールでこのポートは開いています。(インターネット接続を制限している社内LANでは当然閉じていますが)

ちなみに、よく使うポートとしてはFTPで20、21、SMTP(送信メール)で25、受信メールPOP3で110あたりです。セキュリティポリシー上、この辺は制限される事も多いですが、HTTP 80、HTTPS(暗号化用)443は通常閉じません。


危険性?
WEBプロトコルを使ってFTP的なファイル転送(WebDAV)やVPN等も出来るようになっています。当然そこにはある種の危険はつきものですが、WEBブラウジングに伴う危険と大きく変わりません。ウィルス等に感染していればこの2つのポートだけでも相当危険でしょうね。

参考まで。

Qpingでポートの指定

pingでIPアドレスを指定して、通信できるかどうかというのは
よく使いますが、pingでポートを指定して応答するかどうかは調べられるのでしょうか?

よろしくお願いします

Aベストアンサー

pingを含むICMPというプロトコルは、OSIの7レイヤで言うところのL2(同一セグメント内通信)とL3(IPルーティングされた通信)の両方にまたがる、ちょっと珍しいプロトコルです。

IPアドレスは指定できますが、別サブネットに属するIPアドレスに到達できればL3通信、できなければゲートウェイと呼ばれる同一サブネットに属する中継装置からの回答を得るという点でL2(MAC通信ではなく、同一セグメント内通信という意味)通信です。

ポート番号はL4で使用されるアドレスですから、L4機能の疎通確認はping(を含むICMP)ではできません。

FTPの疎通確認であれば、クライアントからサーバに対するTCP/21通信(FTP-CMD)が可能であること(サーバからクライアントへのTCP/21からの応答を含む)+サーバからクライアントに対するTCP/20通信(FTP-DATA)が可能であること(クライアントからサーバへのTCP/21からの応答を含む)が必要でしょう。

監視ソフトによるものであれば、
・クライアントからサーバへのログイン(TCP/21)
・クライアントからサーバへのlsの結果(TCP/20)
で確認すればよいでしょう。

pingを含むICMPというプロトコルは、OSIの7レイヤで言うところのL2(同一セグメント内通信)とL3(IPルーティングされた通信)の両方にまたがる、ちょっと珍しいプロトコルです。

IPアドレスは指定できますが、別サブネットに属するIPアドレスに到達できればL3通信、できなければゲートウェイと呼ばれる同一サブネットに属する中継装置からの回答を得るという点でL2(MAC通信ではなく、同一セグメント内通信という意味)通信です。

ポート番号はL4で使用されるアドレスですから、L4機能の疎通確認はping(を含む...続きを読む

Qなぜ、No such file or directory ?

LinuxにHORBをインストールし、パスも通しました。
HORBサーバーを起動するために
$ horb
と、すると
bash: /usr/local/horb2.1/bin/horb : No such file or directory
となって、実行できません。

horbファイルの中身は、
#!/bin/sh
java horb.orb.HORBServer $*
となっています。

直接、
$ java horb.orb.HORBServer
とすれば、HORBサーバーが起動します。

horbファイルの権限が理由でもないと思います。
$ ls -l horb
-rwxr-xr-x   1 myname   users
となっています。

なぜ、
$ horb
ができないのでしょうか。どうか、お教えください。

Aベストアンサー

そのエラーの出方は#!行がちゃんと解釈されないパターンに
見えますね。

改行コードをまず確認してみてください。samba経由かなにかで、
Windows上のエディタで編集してたりしてませんか?
$ vi horb
とviエディタなどで開いてみるとどうでしょう?あるいは
$ od -c horb | head
#!/bin/shのうしろに^Mとか\r\nが来ていませんか?

QJavaには、構造体はないんですか?

 C言語の構造体みたいなのはないんですか?

野球のデータを扱っているのですが、構造体がないのでできません。

打率の順位をソートしたいのですが、Cでは構造体でソートすれば選手名まで全部ソートできたのですが。。。

Javaでは、いちいち選手名、打率などの配列を作っているのですが、打率をソートしてから選手名と一緒に表示しようとしても打率の配列だけ、ソートしてあり選手名の配列と打率の配列があいません。

要するに、打率の配列はソートし、選手の配列はデータを入力したときのままなので、順番が違っているのです。

うまい方法を教えてください。初歩的な質問でごめんなさい。

Aベストアンサー

メンバーが public なクラスが構造体と(ほぼ)同じです。

大体こんな感じ。

// sort Object using Arrays.sort()

import java.util.Arrays;

class Batter implements Comparable {
 public double rate;
 public String name;
 Batter(double r, String n) {
  rate = r;
  name = n;
 }
 public int compareTo(Object o) {
  return (int)((rate - ((Batter)o).rate)*1000.);
 }
}

class w03 {
 public static void main(String[] args) {
  Object[] batter = {
   new Batter(0.3, "ichiro"),
   new Batter(0.1, "shinjo"),
   new Batter(0.0, "irabu")
  };

  // sort
  Arrays.sort(batter);

  // print-out to console
  for (int i=0; i < batter.length; i++) {
   Batter b = (Batter)batter[i];
   System.out.println(b.name + " " + Double.toString(b.rate));
  }
 }
}

このように java.util.Arrays の sort() メソッドを使うと、C でやってた
イメージに近くなります。

C の qsort() と違って、どんなデータでもソートできるわけではなく、対象と
なるクラスは Comparable インターフェースを実装しなくてはいけません。

メンバーが public なクラスが構造体と(ほぼ)同じです。

大体こんな感じ。

// sort Object using Arrays.sort()

import java.util.Arrays;

class Batter implements Comparable {
 public double rate;
 public String name;
 Batter(double r, String n) {
  rate = r;
  name = n;
 }
 public int compareTo(Object o) {
  return (int)((rate - ((Batter)o).rate)*1000.);
 }
}

class w03 {
 public static void main(String[] args) {
  Object[] batter = {
...続きを読む

QViewにインデックスは張れますか?

件名の通りなのですが、作成したViewが遅くて困っています。
改善方法としてはViewを作成しないで従来のSQLにインデックスを張って取得する方法にしようかなと考えています。
なにかいい方法はありますか?

Aベストアンサー

Viewの元テーブルに適切なIndexを貼る、ではいけないのですか?

QTCP/IPポートの最大接続数は

Web設計始めたばかりです。
基本かもしれませんが教えて下さい。
httpであれば80ポート、ftpであれば20ポートを
使って通信していますが
このポートへの接続数と言いますかアクセスできる
最大数でTCP/IPの規格またはOSで決まって
いるのですか。決まっていれば幾つ。
例えば1つのWebサーバに何万という利用者が同時に
アクセスしている状況ってhttpの80ポートを全員が
利用しているのですか。

Aベストアンサー

こんにちは
規格上の制約はありません。
主にServer のスペック(CPU/メモリ)に依存します。
実際の話となると、各ベンダー/SIer のノウハウの部分ですので、
そちらに確認される事をオススメします。

次に、利用するソケットでの制限(?)が考えられます。
以下のURL や”listen backlog”、”TCPソケット listen数”をキーワードに探してみてください。
http://www.kt.rim.or.jp/~ksk/wskfaq-ja/advanced.html

また、忘れてはならないのが、Server までの通信経路上のNW 機器の制約です。
特にFirewall やSLB といった機器は、
秒間の最大同時セッション数/新規セッション数などが仕様上決まっています。
ルータのスループット/パフォーマンスなどに注意が必要です。

その他、アプリケーション性能管理について参考になりそうなページを紹介しておきます。
http://www.empirix.co.jp/PlectureVol5/


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング