ネットワークエンジニア を目指して

ようこそ「ネットワークエンジニアを目指して」へ!!
「ネットワークトラブルに恐れることなく立ち向かえるネットワークエンジニア」へと導くことを信条に、ネットワーク技術の解説とネットワークに関する情報を幅広く紹介します!

ホーム > TCP/IP技術(4) > TCP/UDP - 仮想コネクションの確立

TCP/UDP - 仮想コネクションの確立

Bookmark this on Hatena Bookmark   

 

信頼性を高めるための方法

TCP では信頼性を向上させるために以下の 3 つの技術を採用しています。

  • 相手が通信可能かどうかを確認する機能
    仮想コネクションの確立
  • 相手にパケットが届いたかどうかを確認する機能
    ACK による到達確認
  • 相手の処理能力に合わせてデータサイズを調整する機能
    ウインドウサイズを利用したフロー制御

この中から、今回は「仮想コネクションの確立」について解説していきます。

 

相手が通信可能かどうかを確認する機能(仮想コネクションの確立)

ノード A,B 間で通信を行う場合を例にとって説明していきましょう。

送信側であるノード A が、受信側ノード B へデータを送りたいと
考えたときに、ノード B が受信可能かどうかも分からずに、
データを送ったらどうなるでしょう?

ノード B が受信可能であれば、問題ありませんが、ノード B の電源が
入っていなかったり、ネットワークに接続されていなかったりした場合は、
当然データは届きません。

そんな問題を解決するために、TCP では相手が通信可能かどうかを
事前に確認し、通信可能であればデータのやり取りを行い、
通信不可能であれば通信可能に成るまで待機するか、一定時間後に
再送信を行う機能が備わっています。

この機能の事を「仮想コネクションの確立」といいます。

この「仮想コネクションの確立」を、「3 ウェイハンドシェイク」と
呼ばれる方法でノード間でやり取りされます。

 

3 ウェイハンドシェイク

3 ウェイハンドシェイクはその名の通り、パケットのやり取りを 3 回
行う事から呼ばれています。

具体的なやり取りは以下の通り。

 

3ウェイハンドシェイク

 

まず、送信側ノードから、接続要求のパケット(SYN)を
受信側ノードへ送ります。

SYN を受け取ったノードは接続可能であれば、接続許可(Ack)及び、
接続要求のパケット(SYN)を組み合わせたパケットを返信します。

受信側からも SYN パケットを送る理由は、TCP は双方向の通信のため、
受信側からも仮想コネクションの確立をする必要があるためです。

最後に、送信側からも接続許可パケット(Ack)を送り、
仮想コネクションが確立されます。

 

おすすめ記事

おすすめ書籍紹介

マスタリングTCP/IP 応用編
入門編を卒業したらこちら。
応用編も入門編と同様に豊富な図を使用し、TCP/IPに関するさらに詳細な解説を記している。
特にパッケットの構造はかなり詳細に解説しており、初心者にはすこしつらいかもしれないが非常に読みやすいのでぜひ読んでみてほしい。

インターネットルーティング入門 第2版
ネットワーク初心者の方にぜひおすすめしたい一冊。絵を豊富に使用し、「ルーティングとは」から始まり最後はRIP、BGP、MPLSまで深い解説ではなく、浅く満遍なく解説しています。
この本が理解できればルーティングスキルの第一歩を踏み出せるでしょう。

関連記事

トランスポート層(レイヤ 4)の役割
トランスポート層(レイヤ 4)の役割について

ポート番号
ポート番号について

コネクションとコネクションレス
コネクションとコネクションレスについて

UDP
UDPについて

TCP ヘッダ
TCP ヘッダについて

仮想コネクションの確立
TCP ヘッダについて

ACK による到達確認
TCP ヘッダについて

ウインドウサイズを利用したフロー制御
TCP ヘッダについて

TCPウインドウ制御
TCPウインドウ制御とスライディング・ウインドウについて

メールマガジン

ネットワ-ク初心者のみなさま。
ネットワークの基礎知識を疎かにすることは
大変危険です!!

「初心者にも理解できるネットワーク技術」

これを読めばネットワークの基礎が分かる!!
ネットワーク関連の仕事に就きたいとお考えの学生の方や、ネットワークに興味があって転職を考えている社会人の方、まずは登録してみてください。

もちろん無料です!!

↓メールマガジン購読はこちら↓

メールアドレス: