HTTP(Hyper Text Transfer Protocol)とは、ネットワークカメラとの関係
こんにちは!
システム・ケイ新人のクッキーです。
突然ですが、皆さんは「ネットワークカメラ」と「Webカメラ」の違いをご存知ですか?
ネットワークカメラについて話す時、
よく引き合いに出されるものに「Webカメラ」があります。
これらには、様々な違いがあるのですが、
最も大きな違いは「Webサーバーであるかどうか」、
つまり「HTTP」による通信を行えるかどうか、という点にあります。
今回は、その「HTTP」とネットワークカメラの関係についてのお話です。
ネットワークカメラとWebカメラ何が違うの?
Webカメラは、USBケーブルなどでコンピューターに接続し、
直接コンピューターに映像を配信するカメラのことです。
最近のノートPCには、内蔵されているものも多く、
SKYPEなどのインターネット電話サービスでよく利用されます。
対して、ネットワークカメラは、LANケーブルでネットワークに接続し、
ネットワークを介して、コンピューターに映像を配信するカメラのことです。
この2つはどう違うのか。
第一に、接続方法(USB接続とLAN接続)が違います。
第二に、こちらがより大きな違いですが、ネットワークカメラは、
カメラ自体がコンピューター(Webサーバー)である、という違いがあります。
HTTPはWebサーバーとクライアントの間の通信ルール
HTTPとは
皆さんは、今PCやスマートフォンを使ってブラウザ上で見ているWebページ、
これがどの様な仕組みで表示されているかご存知でしょうか。
そもそも、インターネット上で見ることのできる、すべてのWebページは、
「Webサーバー」と呼ばれるコンピューターの中に保存されています。
皆さんのPCやスマートフォンのブラウザ(「クライアント」と言います)は、
このWebサーバーから、Webページの情報を受け取って、画面にページを表示しています。
この、クライアントとWebサーバーの間でWebページをやり取りする際には、
インターネットを介した通信が必要になるわけですが、この通信はあるルール(プロトコル)に従って行われます。
そのルール(プロトコル)のことを、「HTTP(Hyper Text Transfer Protocol)」と呼びます。
なぜHTTPが必要なのか
なぜ、Webページのやり取りにHTTPというルールが必要なのでしょうか。
例えば、2人の日本人がいるとして、その2人が会話をするとき、
片方が日本語でしか喋らず、もう片方が英語でしか喋らなかったら、
お互いの意思を正確に伝えることはかなり難しくなると思います。
そこで、あらかじめ「2人とも日本語で話すことにしよう」というルールを決めておけば、
より円滑に意思を伝えることができる様になります。
コンピューターの世界では、これがより顕著で、
一つのルールに従わなければコンピューター同士の通信(会話)は決して成立しません。
その為、クライアントとWebサーバーの間の通信のルールとして、
HTTPというプロトコルが必要になるわけです。
HTTPリクエストとレスポンス
では、HTTPが具体的にどのようなルールなのか、についてお話していきます。
HTTPによる通信は、「HTTPリクエスト」と「HTTPレスポンス」の2つのやり取りによって成り立っています。
Webページのやり取りは、クライアントとWebサーバーの通信だとお話しましたが、
HTTPリクエストは、クライアントがWebサーバーに対してページを要求することを言い、
HTTPレスポンスは、その要求に対して、Webサーバーがクライアントに対してページを返送することを言います。
インターネットを利用すると、下に書いてあるような、「URL」というものをよく目にすると思います。
▼システム・ケイホームページのURL
https://www.systemk.co.jp/
URLは、インターネット上における、Webページなどの位置を示す、「住所」の様なものです。
このURLをブラウザに入力すると、弊社のホームページが表示されると思いますが、
この時クライアント(ブラウザ)は、
このホームページが保存されているWebサーバーに対して、
「このURLの場所にあるページを読みたい」というHTTPリクエストを送信しています。
そして、Webサーバーは、その要求に応じて、
システム・ケイのホームページの情報を、HTTPレスポンスとして送り返します。
ネットワークカメラはWebサーバー
ネットワークカメラとHTTP
この記事の初めに、
ネットワークカメラがWebカメラと違う点は、
カメラ自体がコンピューター(Webサーバー)である所である、というお話をしたと思います。
ネットワークカメラは、どのようにして使うものでしょうか。
皆さんがネットワークカメラを使う時、NVRやVMS、ブラウザを利用してカメラにアクセスすることで、
カメラの映像を見ていると思います。
それぞれ細かな特徴の違いはありますが、
どの方法でネットワークにアクセスしても、実際にはほとんど同じ仕組みでカメラにアクセスしています。
それはHTTPを使って、カメラとやり取りをしているということです。
ネットワークカメラはWebサーバー
ブラウザでネットワークカメラを利用する時の例が、最もわかり易いと思います。
ブラウザからカメラにアクセスする時、ブラウザにカメラのIPアドレス(=URL)を打ち、カメラに接続します。
この時カメラは、自身が持っている、「映像を表示する為のWebページ」をブラウザに送り返します。
これは、ブラウザからカメラの映像ページを「HTTPリクエスト」で要求し、
カメラからブラウザにカメラの映像ページを「HTTPレスポンス」で返しているということです。
これがブラウザでなくNVRやVMSだったとしても、
カメラから返ってきた情報の表示の仕方が異なるだけで、実際の仕組み自体は大きく変わりません。
(NVRやVMSであれば、映像自体の取得はRTSPというプロトコルを使用するなど、違いもあります。)
先ほどのHTTPの話で言えば、NVRやVMS、ブラウザが「クライアント」に当たり、
ネットワークカメラが、「Webサーバー」に当たります。
このように、ネットワークカメラとHTTPはとても親密な関係にあり、
皆さんは、ブラウザでインターネットのページを見るのとほとんど同じ仕組みで、
ネットワークカメラの映像を見ているのです。
まとめ
- HTTPとは、Webページを見るときに使う、通信のルール
- HTTPは、「リクエスト」と「レスポンス」という2つによって成り立っている
- ネットワークカメラの映像を見る際は、HTTPを使用して通信をしている