トップ > インターネット > インターネット > IP Network Skill

IPを中心に、ネットワーク技術の説明。情報処理試験やベンダ試験対策に。ネスペ解説、技術動向解説。




[ IP Network Skill - No. 0228 - ] TCP (TCPコネクション確立、3ウェイハンドシェイク)

発行日: 2005/9/10

‥‥……━━━━━━ IP Network Skill No. 00000228 ━━━━━━……‥‥

     〜 TCP (TCPコネクション確立、3ウェイハンドシェイク)  〜

‥‥……━━━━━━━━━━━━━━━━━━━━━━━━━━━━……‥‥

DISCO-ZONE~恋のマイアヒ~
スマスマとか最近テレビでよく聞いたりパラパラ踊りを見たり。
2ちゃんねるのフラッシュで爆発したもの、こないだのブロードキャスター
でも取り上げられてました。フラッシュを作ったのは四国のOLさんだそうで。
米だ、米酒だ、飲ま飲まイェイ!
http://www.amazon.co.jp/exec/obidos/ASIN/B0007G8CDE/ipnetworkskil-22


 【まえがき】

 ◆ 台風、ハリケーン

 日本近辺では台風14号が、アメリカ中部ではハリケーンカトリーナ
 が猛威を振るいました。
 台風とハリケーンは何が違うのでしょう?

 台風(Typhoon)とは、北半球の東経100度〜東経180度にある熱帯低気圧。
 日本、フィリピン、パラオのほうですね。

 ハリケーン (Hurricane) とは、北半球の東経180度より東か南半球の東経
 160度より東にある熱帯低気圧。ハワイ、アメリカ、メキシコのほうです。  

 台風もハリケーンも低気圧(サイクロン)の一種です。

 身近でも今回の台風の影響で浸水してしまったところがあるようです。
 雨がすごくて、傘を差していたのにちょっとコンビにまで買い物行った
 だけでズブ濡れになりました。
 

╋━━┳━┳━┳━┳━┳━┳━┳━┳━┳━┳━━━━━━━━━━……‥‥
   ┃本┃日┃の┃試┃験┃対┃策┃問┃題┃ 
╋━━┻━┻━┻━┻━┻━┻━┻━┻━┻━┻━━━━━━━━━━……‥‥

 〔問題1〕TCPの3ウェイハンドシェイクの手順として正しいものはどれか。

    1.サーバからSYN送信、クライアントがSYN+ACK送信、サーバがACK送信
    2.クライアントからSYN送信、サーバがSYN+ACK送信、クライアントが
      ACK送信
    3.クライアントからSYN送信、サーバがACK送信、クライアントが
      SYN+ACK送信
    4.サーバからSYN送信、クライアントがACK送信、サーバがSYN+ACK送信

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 ネ┃ッ┃ト┃ワ┃ー┃ク┃の┃基┃礎┃講┃座┃
 ━┛━┛━┛━┛━┛━┛━┛━┛━┛━┛━┛
 -----------------------------------------------------------------
 この企画は処女作「TCP/IPネットワークステップアップラーニング」
http://www.amazon.co.jp/exec/obidos/ASIN/4774116351/ipnetworkskil-22
 を基に構成変更、加筆、修正、省略。。。いろいろ手を加えたものです。
 TCP/IPネットワークステップアップラーニングは第3刷を重ねました!
 講習教科書などでご利用いただいています。
 -----------------------------------------------------------------

 【8.TCP】

 8.2.TCP

 8.2.2.TCPコネクションの確立と終了

 8.2.2.1.コネクションの確立

 TCPを使った通信を行う場合、TCPコネクションという仮想通信路を確立する
 必要があります。送信側と受信側の2拠点間で確立され、通信データはこの
 仮想通信路内を通ってやりとりされます。

 TCPコネクションの確立は電話を例にするとわかりやすいです。

 電話の場合、以下のような一連の動作があって、はじめて通話ができます。

┌───────┬────────┬─┬────────┬───────┐
│  発信者  │発信側システム │ │受信側システム │  受信者  │
├───────┼────────┼─┼────────┼───────┤
│電話番号をダイ│電話番号情報を │→│信号受信    │       │
│ヤル     │使って信号発信 │ │        │       │
├───────┼────────┼─┼────────┼───────┤
│プルプルッと │受信確認をもらう│←│受信したことを │電話が鳴る  │
│発信音が鳴る │        │ │お知らせ    │       │
├───────┼────────┼─┼────────┼───────┤
│カチャッとなっ│コネクション確立│←│電話に出たことを│電話に出る  │
│て相手が電話に│        │ │お知らせ    │       │
│出たことを確認│        │ │        │       │
│、通話    │        │ │        │       │
└───────┴────────┴─┴────────┴───────┘

 このような動作をコネクションの確立といいます。
 電話でコネクションが確立されてから出ないと通話ができないように、TCPでの
 通信もTCPコネクションが確立されていないとできません。


 8.2.2.2. 3ウェイハンドシェイク

 TCPでは、データを流す前にTCPコネクションを確立する必要があります。
 電話と似ていますが、TCPコネクション確立の動作を“3ウェイ・ハンドシェイク 
 (three-way handshake)”といいます。

┌───────┬───────────────────┬───────┐
│クライアント │                   │  サーバ  │
│ (送信側) │                   │ (受信側) │
├───────┼───────────────────┼───────┤
│ SYN送信   │SYN  (シーケンス番号:100)      →│ SYN受信   │
├───────┼───────────────────┼───────┤
│ SYN+ACK受信 │← SYN(シーケンス番号:300)     │SYN+ACK送信  │
│       │   ACK(シーケンス番号:101)     │       │
├───────┼───────────────────┼───────┤
│ ACK送信   │ACK (シーケンス番号:301)     →│ ACK受信    │
└───────┴───────────────────┴───────┘

 上の表は送信側から受信側にTCPコネクションを張りにいく場合の例です。
 自分からコネクション確立を試みる端末をクライアント (Client) といい、それ
 を受けてサービスを提供する端末をサーバ (Server) といいます。

 最初にクライアントがSYNを送るというのは、TCPヘッダの中にあるSYNビットを1
 に設定したTCPセグメントを送るということです。

 SYNはシンと発音して、同期をとるという意味のSynchronizationという単語の頭
 文字です。

 SYNは「これから始めるよ」という合図のようなものです。電話でいうと受話器を
 取って電話番号をダイヤルしたところです。

 クライアントからのSYNを受け取ったサーバは、受け取り確認としてのACKとともに、
 サーバとしてのSYNを送ります。ACK(アック)は受け取り通知という意味の
 Acknowledgementという単語の頭文字です。

 TCPではアプリケーションデータをどこまで送ったのかを表すのにシーケンス番号
 を使います。
 3ウェイ・ハンドシェイクでは、TCPコネクションで使われるシーケンス番号の初
 期値を決めます。この初期値をイニシャルシーケンス番号と呼びます。

 シーケンス番号は、クライアントからサーバへの上り方向へ向かうTCPセグメント
 で使われるものと、サーバからクライアントへの下り方向へ向かうTCPセグメント
 で使われるものの2種類あります。

 この上りと下りで論理的に2つのコネクションが確立され、それぞれの初期シーケ
 ンス番号には異なるランダムな値が使われます。

 例では、クライアントからサーバへ向かうシーケンス番号の初期値は100です。
 この値はクライアントが決めて、サーバがACKで101を返すことで了承します。
 サーバからクライアントの方では300で、これはサーバが決めてクライアントが
 301というACKを返すことで了承します。

 この例で分かるように、SYNで送られるNという初期シーケンス番号に対してN+1と
 いうACKを返します。
 クライアントがサーバのSYNに対するACKを返すことで、コネクション確立が完了
 します。

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 解┃答┃と┃解┃説┃
 ━┛━┛━┛━┛━┛

 《本日の試験対策問題》
  (解答1)2
    
  (解説1) 
    TCPコネクションの確立で使われる3ウェイハンドシェイクは、
    まずクライアント(TCPコネクションの開始側)がSYNをサーバ
    へ送出します。次にSYNを受け取ったサーバがSYN+ACKをクライ
    アントに送り返し、それを受信したクライアントがACKをサーバ
    へ返信します。サーバがACKを受け取るとTCPコネクションの確立
    となります。

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

◆◆◆◆◆◆ ┃ あとがき ┃ ◆◆◆◆◆◆


 ◆ 地震災害から身を守る

 東京や宮城沖で大きい地震がありました。

 9月1日が防災の日だったこともあって、先週、先々週は各地で
 防災訓練があったと思います。

 地震がいつ発生するかは分かりません。
 しかし地震に対する備えを行うことはできます。

 地震に対する備えということでまず考えるのは非常袋の備え。
 非常食や水、ライト、ラジオ、、などを緊急時のために用意して
 おくこと。

 最近知ったもう一つの備え。
 これはできる人とできない人がいるかもしれませんが。。。
 同じ地域でも、地震の震度は異なるようです。
 たとえば先日の東京の地震、最大震度がでたところは足立区でし
 た。
 震度は地形や地質など地盤の条件に大きく左右されます。

 川沿い、埋立地は震度が大きくなり、台地や山地は小さくなります。
 以下のサイトに関東大震災の場合を研究した詳しい資料があります。

http://www.kajima.co.jp/news/press/200209/3a1fo-j.htm

 自宅をどこにするか、というのも地震から身を守る手段の一つです。 

  adzuki

………………………………………………………           
 IP Network Skill vol.000228 9/10/05
 発行者:adzuki http://www.xai.nu/ipnet  
…………… ipnet6@xai.nu ……           

◎ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄◎
| 新規購読・購読解除・バックナンバー ⇒ http://www.xai.nu/ipnet  
|  IP Network Skill 掲示板
|  ⇒ http://www.xai.nu/cgibin/ipnet/bbs.cgi  
|  バックナンバー一覧              
|  ⇒ http://xai.nu/ipnet/stack/index.html 
|  間違いご指摘
|  ⇒ メルマガにコメントを添えて返信ください。
◎_________________________________◎


 
このメルマガの読者になる
規約 
>> メルマ!の会報誌もお届けします

ブックマーク: はてなブックマークに追加del.icio.usに追加Buzzurlにブックマークニフティクリップに追加ライブドアクリップに追加Yahoo!ブックマークに登録My Yahoo!に追加Add to GoogleRSS

このメルマガを読んでいる人はこんなメルマガも読んでいます

のんびりやろう!情報処理試験! 〜1問1問コツコツと〜
ソフトウェア開発&基本情報技術者試験対策を中心に初級シスアドや高度区分まで幅広く対応。流行のIT用語の解説も行っているので,パソコンについて勉強した...
Office & VBA パーフェクトマスター
Excel・Access・Word等の今さら聞けない「疑問」、今すぐ知りたい「困った」、たちまち解決!のmoug(モーグ)がお送りする、関数初心者か...
ネットワークのおべんきょしませんか?
TCP/IPってなに?LANって?ルータって何をするの?というネットワークに関することをわかりやすく解説します。情報処理の試験を受ける方にもぴったり...
全部フリーソフト!!
ネット上にはこんなに便利なフリーソフトがいっぱい。お金なんか使わなくても、あると絶対にお得で楽しいソフトを1つずつご紹介します。
IPネットワーク考
インターネットのネットワークSEの実務者が、IPネットワークにまつわる話題、問題、技術について実務者ならではの視点から解説します。ネットワーク、TC...


この記事へのコメント


コメントを書く
コメントはありません。

おすすめキャンペーン

■三菱東京UFJ銀行系 モビット■
【1】ネットで自動審査・来店不要!
【2】限度額300万円
【3】年利9.8%-18.0%(実質年率)

急な出費にモビット!

発行者プロフィール

ペンネーム :


このメルマガの読者になる

規約に同意する



このメルマガの最近の記事


このメルマガの最近のコメント


注目情報


新着記事トピックス