N チャンネル通信のための 経路制御 200703006 小川 真人 木下研究室. Nチャンネル通信 N本の経路を用いて、ファイルを分散させて通信を行う方式である。 分散されたファイルが、すべて違う経路を通り相手に届くことが理想である。

Slides:



Advertisements
Similar presentations
TCP/IP によるチャットプログラ ム 薄井 秀晃. 基礎知識編 TCP/IP とは? IP とは・・・ Internet Protocol の略称であり通信方法の技術的なルールで あり、実際にデータを送受信する前にデータを小さなデータ に分割し、それに発信元と受信先の IP アドレスを付加させて.
Advertisements

IP over DVB-RCS の設計と実装 研究背景 DVB-RCS 衛星回線を用いて受信局から送信局への狭帯域な戻り回線を提供 Forward Link Return Link HUB Terminal.
ネットワークインタフェース 層/ インターネット層(IP層) (1) ネットワークシステムⅠ 第7回.
イーサアドレスとはなにか? 情報塾( ) IPアドレスとの関係は? ARP,DHCP?
Step.5 パケットダンプ Wiresharkでパケットをキャプチャする PC 1 PC 2 PC 3 PC 4 ネットワーク
Ibaraki Univ. Dept of Electrical & Electronic Eng.
コンテンツ配信に優れている P2P 技術と、著作権侵害問題の関係について 述べよ。
ネットワークと コミュニケーション技法 第7回 - インターネット(1) -.
インターネットのプロトコル階層 ネットワーク層(IPアドレス)
第1回.
Ibaraki Univ. Dept of Electrical & Electronic Eng.
前回の課題 IPv6アドレス IP ARP ICMP NAT インターネット層 2003年12月4日 情報ネットワーク論 新村太郎.
ネットワーク層.
TCP (Transmission Control Protocol)
Step.4 基本IPネットワーク PC 1 PC 2 PC 3 PC
30分でわかるTCP/IPの基礎 ~インターネットの標準プロトコル~ 所属: 法政大学 情報科学研究科 馬研究室 氏名: 川島友美
ネットワーク コミュニケーション トランスポート層 TCP/UDP 6/28/07.
Windows Network Programming
インターネット メールサーバ DNSサーバ WWWサーバ ファイアウォール/プロキシサーバ クライアント.
tracert(トレースルート)コマンドによるルーティング表示
輪講: 詳解TCP/IP ACE B3 suzuk.
IPマルチキャスト通信とXcast 早稲田大学後藤研究室 Xcast班.
Copyright Yumiko OHTAKE
トランスポート層.
コンテンツ配信 エンコード (符号化) CBR (Constant Bit Rate) VBR (Variable Bit Rate)
認証と負荷分散を考慮した ストリーミングシステムに関する研究
ま と め と 補 足 ネットワークシステムⅠ 第15回.
IPv6アドレスによる RFIDシステム利用方式
サーバ負荷分散におけるOpenFlowを用いた省電力法
Step.9 VPN VPNのトンネルを張る PC 3 PC 1 PC 2 論理ネットワーク1 xx (自動割当)
Ibaraki Univ. Dept of Electrical & Electronic Eng.
Ibaraki Univ. Dept of Electrical & Electronic Eng.
IPv6 ネットワークにおける エニーキャスト通信実現のための プロトコル設計と実装
大阪大学 大学院情報科学研究科 博士前期課程2年 宮原研究室 土居 聡
第11章 UDPユーザ・データグラム・プロトコル
第7回ネットワークプログラミング 中村 修.
イーサネットフレームの構造とデータリンク層アドレス
第9章 Error and Control Messages (ICMP)
分散IDSの実行環境の分離 による安全性の向上
Ibaraki Univ. Dept of Electrical & Electronic Eng.
IP ルーティングの図示 情報科学科 松澤 智史.
セキュリティ 05A2013 大川内 斉.
Ibaraki Univ. Dept of Electrical & Electronic Eng.
第16章 BOOTP:ブートストラップ・プロトコル
スキルチェック Network編.
Step.1 LinuxとIPコマンド ifconfig [-a] [インタフェース名] arp [-n]
DNSクエリーパターンを用いたOSの推定
TCP制御フラグの解析による ネットワーク負荷の推測
最低限インターネット ネットワークにつなぎましょ!
仮想環境を用いた 侵入検知システムの安全な構成法
岡村耕二 TCP通信プログラム 課題と回答例 岡村耕二 情報ネットワーク.
LAN(TCP/IP) インターネットワーキング編
勝手にインフラ隊 (の中の人といっしょ) に学ぶネットワーク講座 Part2
勝手にインフラ隊 (の中の人といっしょ) に学ぶネットワーク講座 Part2
仮想マシンに対する 高いサービス可用性を実現する パケットフィルタリング
OSI7層に関係する機器、仕様、機能など 物理層 データリンク層 ネットワーク層 トランスポート層 セッション層 プレゼンテーション層
岡村耕二 TCP通信プログラム 岡村耕二 情報ネットワーク.
4.3 IPとルーティングテーブル 国際産業情報学科 2年 大竹 雅子.
岡村耕二 情報ネットワーク 岡村耕二 情報ネットワーク.
nチャネルメッセージ伝送方式のためのjailによる経路制御
7月13日の演習問題・解答例 について ネットワーク長が 18、22、26、28 の場合の
牧野ゼミ 2年 産業情報 学科 韓 憲浩(カン ケンコウ)
情報ネットワーク 岡村耕二.
IPアドレス 平成14年7月9日 峯 肇史 牧之内研究室「UNIX とネットワーク基礎勉強会」Webページ
TCP/IPの通信手順 (tcpdump)
UDPデータグラムヘッダ 牧之内研究室 修士1年 久保正明.
プロトコル番号 長野 英彦.
ネットワークシステム ネットワークシステム概要.
岡村耕二 TCP通信プログラム 岡村耕二 情報ネットワーク.
Presentation transcript:

n チャンネル通信のための 経路制御 小川 真人 木下研究室

Nチャンネル通信 N本の経路を用いて、ファイルを分散させて通信を行う方式である。 分散されたファイルが、すべて違う経路を通り相手に届くことが理想である。

N 本の経路を用意すれば良い しかし、実装するにあたっ て 次のような問題点がある

一般のネットワーク

インターネット等の通信 指定したルートでデーターを送ることはで きない。

経路制御(ルーティング)

提案手法 n チャンネルまでの流れ N 本の経路を用いた通信をしたい しかし、ルーターが最短経路を選択してしま う ために不可能 ↓ そこで、ソースルーティングに着目した

ソースルーティング ソース・ルート・オプションの形式 SSRR ( strict soruce and record route )というオプ ションを使用する。 IP アドレスのリストを送信前に埋め込まなければ ならない。 ソース・ルート・オプションはデータグラムが 経路を通過するごとに IP アドレスリストが更新さ れる。 コー ド データ 長 ポイン タ IP アドレス #1 IP アドレス #2 IP アドレス #3 ・・ ・・ ・ IP アドレ ス#9 1114バイト ・・ ・・ ・ 4バイト 39 バイ ト

実験の概要 パソコン 4 台を使用し、 A 、 B のパソコンを任 意に選択し通信できるか、実験した net1 net4 net2 net eth1 eth2 eth1

送信プログラム LSR SourceRoute; memset(&SourceRoute,0,sizeof(LSR)); SourceRoute.Nop = IPOPT_NOP; SourceRoute.Code = 0x89; SourceRoute.Len = 11; SourceRoute.Offset = 4; SourceRoute.Addrs[0] = inet_addr(" "); SourceRoute.Addrs[1] = inet_addr(" "); setsockopt(sock,IPPROTO_IP,IP_OPTIONS,(char*)&SourceRoute,SourceRoute.Len+1) ; n = sendto(sock, "HELLO-1", 7, 0, (struct sockaddr *)&addr, sizeof(addr)); if (n < 1) { perror("sendto"); return 1; }

送信プログラム LSR SourceRoute; memset(&SourceRoute,0,sizeof(LSR)); SourceRoute.Nop = IPOPT_NOP; SourceRoute.Code = 0x89; SourceRoute.Len = 11; SourceRoute.Offset = 4; SourceRoute.Addrs[0] = inet_addr(" "); SourceRoute.Addrs[1] = inet_addr(" "); setsockopt(sock,IPPROTO_IP,IP_OPTIONS,(char*)&SourceRoute,SourceRoute.Len+1) ; n = sendto(sock, "HELLO-1", 7, 0, (struct sockaddr *)&addr, sizeof(addr)); if (n < 1) { perror("sendto"); return 1; } を通り に 着くように設定 SSRR を指定

実験の結果

listening on eth1, link-type EN10MB (Ethernet), capture size bytes 20:40: IP > : UDP, length 7 0x0000: a a4 22db '..9..'."...H. 0x0010: 002f f11 1f76 c0a8 010b 0x0020: b08 c0a c0a c8e x0030: f 6c8f c4c 4f2d l.HELLO-1 パケットの詳細

listening on eth1, link-type EN10MB (Ethernet), capture size bytes 20:40: IP > : UDP, length 7 0x0000: a a4 22db '..9..'."...H. 0x0010: 002f f11 1f76 c0a8 010b 0x0020: b08 c0a c0a c8e x0030: f 6c8f c4c 4f2d l.HELLO-1 パケットの詳細 時刻; HH:MM:SS. マイク ロ秒 のポート から のポート に UDP で 7 文字 ( HELLO-1 )

listening on eth1, link-type EN10MB (Ethernet), capture size bytes 20:40: IP > : UDP, length 7 0x0000: a a4 22db '..9..'."...H. 0x0010: 002f f11 1f76 c0a x0020: b08 c0a c0a c R 0x0030: f 6c8f c4c 4f2d l.HELLO-1 パケットの詳細 08:00:27:a0:03:39 受信側 MAC アドレ ス 08:00:27:a4:22:db 送信側 MAC アドレ ス イーサネットタイプ 0800(IP) Version:4 , ヘッダ長 :8(8x4=32byte) , サービスタイプ :00 , IP から見た全データ長 :002 f (47) イーサネットのプロトコル ヘッ ダと IP ヘッダ ここから IP ヘッダ

listening on eth1, link-type EN10MB (Ethernet), capture size bytes 20:40: IP > : UDP, length 7 0x0000: a a4 22db '..9..'."...H. 0x0010: 002f f11 1f76 c0a x0020: b08 c0a c0a c R 0x0030: f 6c8f c4c 4f2d l.HELLO-1 パケットの詳細 識別 ID:0000 フラグメント :4000( オク テッ ト ) 生存時間( TTL ) :3f(63) プロトコル :11(17=UDP) チェックサム 1 f 76 IP ヘッダ

listening on eth1, link-type EN10MB (Ethernet), capture size bytes 20:40: IP > : UDP, length 7 0x0000: a a4 22db '..9..'."...H. 0x0010: 002f f11 1f76 c0a x0020: b08 c0a c0a c R 0x0030: f 6c8f c4c 4f2d l.HELLO-1 パケットの詳細 送信元 IP アドレ ス : 送信先 IP アドレ ス : (受信側) オプショ ン: 01 0 x 89 : SSRR SourceRoute.Len : 0b(11) SourceRoute.Offset :08 IP ヘッダ

listening on eth1, link-type EN10MB (Ethernet), capture size bytes 20:40: IP > : UDP, length 7 0x0000: a a4 22db '..9..'."...H. 0x0010: 002f f11 1f76 c0a x0020: b08 c0a c0a c R 0x0030: f 6c8f c4c 4f2d l.HELLO-1 パケットの詳細 経由アドレス : 送信先 IP アドレ ス : (受信側) IP ヘッダ

listening on eth1, link-type EN10MB (Ethernet), capture size bytes 20:40: IP > : UDP, length 7 0x0000: a a4 22db '..9..'."...H. 0x0010: 002f f11 1f76 c0a x0020: b08 c0a c0a c R 0x0030: f 6c8f c4c 4f2d l.HELLO-1 パケットの詳細 ポート番号: c352(50002) ポート番号: 3039 (12345) ここからが UDP のヘッ ダ

listening on eth1, link-type EN10MB (Ethernet), capture size bytes 20:40: IP > : UDP, length 7 0x0000: a a4 22db '..9..'."...H. 0x0010: 002f f11 1f76 c0a x0020: b08 c0a c0a c R 0x0030: f 6c8f c4c 4f2d l.HELLO-1 パケットの詳細 データ: c4c 4f2d 31 ( HELLO- 1 ) UDP から見たデータ長 :000f(15byte) チェックサム :6c8f UDP のヘッダ とデータ

禁止設定の解除 各ホストで、 /etc/sysctl.conf を以下のように修正する。 # があれば外して、項目が無ければ追加する。 net.ipv4.conf.default.rp_filter=1 net.ipv4.conf.all.rp_filter=1 net.ipv4.ip_forward=1 net.ipv4.conf.all.accept_source_route = 1 この設定をしないと、ソースルーティングができない。

まとめ ・nチャンネル通信の実装手法としてソースルー ティングを用いることを提案した ・送信パケットのヘッダにオプションを加えるだけ で済むため、ネットワークに負荷をかけずに実現が 可能である ・パケットに経路情報を付け加えるだけで、複数の 経路に異なるデータを同時に送信できることを実験 によって確認できた ・ソースルーティングはその危険性のため、各ルー ターごとに設定を解除する必要があることが分かっ た

①ルート検索を自動で行い、ソースルー ティングを自動的に行えるようにする ②ソースルーティングは危険性があるため に、制限されているので、対策を考える ③ IP v6ではルーティングヘッダを付ける だけでソースルーティングが可能になった ので、 IPv6 での実装も今後の課題である 課題