m1gp -who’s (not) talking to whom?-

27
Inferring Visibility: Who’s (Not) Talking to Whom? Department of Computer Science Boston University Gonca Gürsun Natali Ruchansky Evimaria Terzi Mark Crovella 浅見・川原研究室 川本 貴史

Upload: takashi-kawamoto

Post on 07-Jul-2015

184 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: M1gp -Who’s (Not) Talking to Whom?-

Inferring Visibility:

Who’s (Not) Talking to Whom?

Department of Computer Science

Boston University

Gonca Gürsun

Natali

Ruchansky

Evimaria Terzi

Mark Crovella 浅見・川原研究室 川本貴史

Page 2: M1gp -Who’s (Not) Talking to Whom?-

目次

1. 要旨、背景

Visibilityの推定による正確性の向上

想定する状況

競合研究

2. 手法

3. 評価

4. 結論

1

Page 3: M1gp -Who’s (Not) Talking to Whom?-

1 要旨

目的

– BGPが用いられる大規模ネットワークで、

自ネットワークを経由する通信の把握

提案手法

– 「Visibility」の推定

結果

– 正確性の大幅な向上

2

Page 4: M1gp -Who’s (Not) Talking to Whom?-

大規模ネットワーク

AS : (Autonomous System)自立システム– ex) NTT東日本 AS17933 東大AS2500

BGP : (Border Gateway Protocol)

– AS間の経路情報交換の際に用いられる

– BGP table

• 隣接するルータ間で共有することを繰り返すことで共有される。

• 経路情報をすべて含み、この中から最適なものがルーティングテーブルとして保有

3

Page 5: M1gp -Who’s (Not) Talking to Whom?-

大規模ネットワーク東大からMITへTracerouteを投げた。

4

AS2501 [東大]

AS2500 [WIDE PROJECT]

AS22388

AS101 [Washington Unv.]

AS19401

[National Lambdarail]

AS3 [MIT]

こういったネットワーク単位での通信を考える

AS2501 [東大]

AS101 [Washington Unv.]

AS3 [MIT]

AS2500 AS19401

Page 6: M1gp -Who’s (Not) Talking to Whom?-

何がうれしいのか

トラフィック量の急激な変動の原因がわかる。

セキュリティ的には攻撃元のアドレスが分かる。

通信業者のビジネスインテリジェンスの向上。

– 直接契約関係にないノードの通信料を推定するのに役立つ

5

i(From 東大)

j(To MIT)

今の通信業者A

東大と契約したい通信業者B

Page 7: M1gp -Who’s (Not) Talking to Whom?-

競合研究

BGPが学習したルートから計算する方法

– 大規模ネットワークに使えない。(計算量大)

得られたトラフィックから推定する方法

– 大規模なネットワークに使える。正確性△

6

正確性の向上

Page 8: M1gp -Who’s (Not) Talking to Whom?-

目次

1. 要旨、背景

2. 手法

Visibilityの定義とゼロの分類

ノードの分類

Edge -トラフィックのみからの予測-

Core –近接性からの予測-

3. 評価

7

Page 9: M1gp -Who’s (Not) Talking to Whom?-

Visibilityの定義(src i, dst j)がAS x に対してVisibleである

||

iからjへのトラフィックがxにおいて観察される

8

i(From UT)

j(To MIT)x(Washington)

(i,j)がxに対してVisible

Page 10: M1gp -Who’s (Not) Talking to Whom?-

そもそもなぜ難しいのか 「通信が経由しない」かどうかはわからない

9

i

jx

i

jx

トラフィックが観察された

i

jx

トラフィックが観察されない

To j!!

???

To j!!

???

No packet sending…

通信を行ったとしても、パスは観察点を経由しない。

今回はたまたま通信がない。

通信を行うと観察点を経由する。 false zero true zero

今回の提案手法によってこれを分類することができる

Page 11: M1gp -Who’s (Not) Talking to Whom?-

ゼロの分類問題 導入

各成分が1,0からなる行列

T(src i, dst j)

– 実際にパスが通るか

– (知りたい情報 = Visibility)

M(src i, dst j)

– トラフィックが観察されたかどうか

10

ルーティング経路の類似性を用いてM(i,j) = 0 をtrue zero / false zero に分類

Page 12: M1gp -Who’s (Not) Talking to Whom?-

ノードの分類

Edge

隣接するノードが尐ない。

ルーティングの類似性高

T行列の1,0の分布が特定の行、列に集中。

Core

隣接するノードが多い

ルーティングの類似性 低

T行列の1,0の分布が分散的

トラフィックのみで予測可能

ノード同士の近接性を評価に加える必要

11

EDGE

Page 13: M1gp -Who’s (Not) Talking to Whom?-

Edge -トラフィックのみからの予測-

M(i,j)=0となる(i,j)毎に部分行列M(S_i,D_j)を作成

– S_i はj列を見て1を与える行とi行の集合

– D_jはi行を見て1を与える列とj列の集合

12

(0)

部分行列の合計で分類!

3

2

1

0

false zerotru

e zero

Page 14: M1gp -Who’s (Not) Talking to Whom?-

CORE -ノードの近接性-

ノードの近接性を示す指標

– hop distanceを拡張

• rsd(x1,x2)

= #{xi | nexthop(xi, x1) != nexthop(xi, x2)}

13

部分行列M(S_i,D_j)を作成。

– S_i はrsd((i, j), (i’, j))が閾値γより小さい行の集合

– D_jはrsd((i, j), (i, j’))が閾値γより小さい列の集合

Page 15: M1gp -Who’s (Not) Talking to Whom?-

目次

1. 要旨、背景

2. 手法

3. 評価

手法の妥当性

閾値の妥当性

4. 結論

14

Page 16: M1gp -Who’s (Not) Talking to Whom?-

手法の妥当性の評価

目的

– false zero / true zero を分類する可能性を示す。

データ

– 2011/12/06のトラフィックデータから行列T

を作成

– 行列Tの1である成分をランダムに0に変更し、擬似的にfalse zero を持った行列Mを作成する。

環境

– false zeroの割合を10,30,50,95%と変更する

15

Page 17: M1gp -Who’s (Not) Talking to Whom?-

16T

RU

E Z

ER

OFA

LS

E Z

ER

O

EDGE-1000 CORE-100

True zero ~1

False zero ~0累

積度

数分布

合計(Log)

True zero ~1

False zero ~0

累積

度数

分布

合計(Log)

累積

度数

分布

合計(Log)

累積

度数

分布

合計(Log)

false

zero

true

zero

false

zero

true

zero

結果

これを繰り返すことでM(i,j)=1の成分に対して求めた部分行列の合計の下位3%のラインが、閾値として求められる。

Page 18: M1gp -Who’s (Not) Talking to Whom?-

手順

– 先ほどの評価手順を1000回行う。

結果

閾値の妥当性の評価

Edge Core

Flip(%) TPR FPR TPR FPR

10 0.99 (0.062) 0.032 (0.15) 0.95 (0.067) 0.027 (0.022)

30 0.99 (0.061) 0.045 (0.15) 0.95 (0.071) 0.028 (0.021)

50 0.99 (0.067) 0.061 (0.17) 0.95 (0.064) 0.034 (0.025)

95 0.85 (0.18) 0.08 (0.18) 0.96 (0.054) 0.069 (0.046)

正しく true zero と把握した確率(標準偏差)

誤ってfalse zero と把握した確率(標準偏差)

Visibilityの推定ができている

17

Page 19: M1gp -Who’s (Not) Talking to Whom?-

VisibilityからTrafficへ 概論

– Traffic量を表す行列(Traffic Matrix)の予測(*)に、推測したVisibilityを導入することで性能を向上させる。

評価Coreのデータから

Traffic Matrixのデータを作り

予測の方法を変えることで

誤差がどう変化するかを評価する。

18

正規化平均絶対予測誤差

*行列の成分予測を行うLMAFITというアルゴリズムを用いる

Page 20: M1gp -Who’s (Not) Talking to Whom?-

目次

1. 要旨、背景

2. 手法

3. 評価

4. 結論

19

Page 21: M1gp -Who’s (Not) Talking to Whom?-

結論

ルーティングの類似性を用いてトラフィックの観察からflip rate 50%までは9

割以上の精度でVisibilityを推定することができた。

この推定したVisibilityを既存のアルゴリズムに追加して用いることでTM

completionの精度を最大で3.5倍程度向上させることができた。

20

Page 22: M1gp -Who’s (Not) Talking to Whom?-

ご清聴ありがとうございました!!

21

Page 23: M1gp -Who’s (Not) Talking to Whom?-

結果-トラフィックからの予測

22

Page 24: M1gp -Who’s (Not) Talking to Whom?-

結果-近接性からの予測

23

Page 25: M1gp -Who’s (Not) Talking to Whom?-

TPR と FPR

TPR : 左上/左

FPR : 右上/右

24

本当の情報(今回は p : true zero

n : false zero

仮説の情報(今回は Y : true zeroと予想、

N : false zeroと予想

全体: トラフィックがなかった

Page 26: M1gp -Who’s (Not) Talking to Whom?-

NMAME

Normalized Mean Absolut Error (NMAE)

25

Page 27: M1gp -Who’s (Not) Talking to Whom?-

ALL SMALL LARGE

26