Powered by SmartDoc

情報通信ネットワーク(2004/06/18)
Ver. 1.0

2004年6月18日
栗野 俊一
kurino@math.cst.nihon-u.ac.jp
http://edu-gw2.math.cst.nihon-u.ac.jp/~kurino/2004/ccna/ccna.html
情報通信ネットワーク2004年6月18日 のメモ

目次

トランスポート層

トランスポート層の役割

End-to-Endの通信機能は、下位のNetwork層に任せているので、これより上の層の役割は、通信機能そのものではなく、通信に様々な「付加価値」を加えることにある。

  1. ネットワーク層の通信では、End-to-Endというののは、Host-to-Hostを意味する(原則として、network addressは、Hostに振られている)。そこで、同一Host間であっても、複数の通信を行うための仕組が必要なる。(1)以上、一つの用途に、通信経路を専有させるわけには行かない。

    例えば、最近の携帯電話では、音声と同時に、画像やe-mailなども、同じ通信経路で、並行に送ることができる。

  2. cf.回線交換とパケット交換の話。
  3. 本質的には、相手にデータが届いているかどうかを確認し、もし、届いていないようならば、再送するという仕組で行う。

    その他にも、予め、冗長な形で情報を伝達することによって、多少の情報が失われても、ある程度は、元の情報が再現できるような仕組(エラー訂正)を提供することもある。

  4. すいていれば、どんどん通信するが、混んでいる状態で、多くの通信を行おうとすると却って、無駄が生じてしまい、損をすることになる(cf.コリジョン)。

TCP/IP でのトランスポート層

ソケット

TCP/IP Modelでは、IP Addressで、Network上のHostをAddressingするが、更に同一のHostが複数の通信を行えるように、同一Hostを更に、サービスで区別するためPortという、更にHost内での通信を区別するための仕組(6)がある。

Hostは、IP AddressとPort番号の対(これをソケットと呼ぶ.. )で、通信の端点( End )を表現しており、通信は、このEnd間(すなわち、ソケット対)で、通信を区別する。

これによって、同一のHost内の同一のサービス(したがって、IP AddressとPort番号が共に同じになるので、当然、ソケットも同じ.. )を、Internet内の複数のHostや、同一Hostからの複数接続を可能にしている。

  1. これは、16 bitの数値(約6万個)で表現される。このPortを区別するために、利用される数値をPort番号と呼ぶ

TCP

UDP

  1. つまり、このトラスポート層には、「機能が追加できる」が、「追加しなければならない」わけではない。

    機能を犠牲にして、効率を尊ぶ場合もあるし、そもそも、機能が不要な場合も十分に有りうる。

  2. この結果、効率よく、かつ、信頼牲のある通信が可能になる可能性があるが、その代わりに、上位層で余分な心配をしなければならない。

    結局は、どこでトレードオフするかという問題。

セッション層

セッション層の役割

認証や、通信の許可の発行、複数システムの同期等を行う。

プレゼンテーション層

プレゼンテーション層の役割

交換されるデータの形式に関する取り決めを行う。

例えば、e-mailの交換を行う場合は、To:やSubject:がある部分( Header )と、本文( Body )に分れるが、それらのデータがそれぞれどんな形をし、どんな意味を持つかを取り決める。

アプリケーション層

アプリケーション層の役割

End Userとやりとりをし、通信を行う全てのプログラムはアプリケーション層のプログラム。

  1. 電子メール
  2. ファイル転送
  3. ウェブブラウザ
  4. リモートアクセス