“sasuke” traffic monitoring tool...“sasuke” traffic monitoring tool traffic shift monitoring...

24
“SASUKE” Traffic Monitoring Tool “SASUKE” Traffic Monitoring Tool Traffic Shift Monitoring Based on Correlation between BGP Messages and Flow Data Atsushi Kobayashi Yutaka Hirokawa 1 Yutaka Hirokawa Hiroshi Kurakami NTT Information Sharing Laboratories

Upload: others

Post on 10-Aug-2020

7 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: “SASUKE” Traffic Monitoring Tool...“SASUKE” Traffic Monitoring Tool Traffic Shift Monitoring Based on Correlation between BGP Messages and Flow Data Atsushi Kobayashi Yutaka

“SASUKE” Traffic Monitoring Tool“SASUKE” Traffic Monitoring ToolTraffic Shift Monitoring Based on Correlation between BGP Messages and Flow Data

Atsushi Kobayashi

Yutaka Hirokawa

1

Yutaka Hirokawa

Hiroshi Kurakami

NTT Information Sharing Laboratories

Page 2: “SASUKE” Traffic Monitoring Tool...“SASUKE” Traffic Monitoring Tool Traffic Shift Monitoring Based on Correlation between BGP Messages and Flow Data Atsushi Kobayashi Yutaka

Outline

� Introduction� Background

�Motivation�Motivation

� Challenge

� System Architecture� BGP Collection

� Flow Collection

� Visualization

2

� Visualization

� Traffic Change Detection Method

� Conclusion

Page 3: “SASUKE” Traffic Monitoring Tool...“SASUKE” Traffic Monitoring Tool Traffic Shift Monitoring Based on Correlation between BGP Messages and Flow Data Atsushi Kobayashi Yutaka

Background

� Announcement of unwanted or invalid BGP route suddenly leads to traffic diversions.

� Cutting of submarine cable, route hijacking, � Cutting of submarine cable, route hijacking, misconfiguration, …

� Moreover, it disrupts traffic or causes congestion on other backbone links.

3

Page 4: “SASUKE” Traffic Monitoring Tool...“SASUKE” Traffic Monitoring Tool Traffic Shift Monitoring Based on Correlation between BGP Messages and Flow Data Atsushi Kobayashi Yutaka

Motivation

� Our goal is to reduce the load for troubleshooting.

� Our tool detects a traffic change and then � Our tool detects a traffic change and then identifies BGP route announcements involved.

Neighbor AS

Neighbor AS

Origin AS

AS#3

AS#1

AS#4

AS#5

� Monitors traffic volume for BGP attributes that have an impact on the traffic change:

� Origin ASN

� Neighbor ASN (peer ASN)

� AS Path

Target AS#6

BGP NH#1

BGP NH#2

Neighbor AS

AS Path: 5 3 1AS Path: 4 3 1

AS#5� AS Path

� BGP Next Hop

� Community.

� Identifies route changes that have an impact on the traffic change.

4

Page 5: “SASUKE” Traffic Monitoring Tool...“SASUKE” Traffic Monitoring Tool Traffic Shift Monitoring Based on Correlation between BGP Messages and Flow Data Atsushi Kobayashi Yutaka

Related Work

� Flow records from border routers can be utilized for origin or neighbor ASN traffic analysis. � However, border gateway router cannot export both origin and

neighbor ASNs.neighbor ASNs.

� Difficult to collect BGP Next Hop and AS Path info.

� Some commercial collectors with BGP sessions can sum up traffic on the basis of BGP attributes.� There are few tools for analyzing the interrelation of BGP and Flow

data.

BGP and Flow analysis system have been

5

� BGP and Flow analysis system have been proposed by several groups1).� Simpler method and its visualization are required.

1) For example, J. Wu, Z. M. Mao, J. Rexford, and J. Wang, "Finding a needle in a haystack: Pinpointing significant BGP routing changes in an IP network," in Proc. NSDI, May 2005.

Page 6: “SASUKE” Traffic Monitoring Tool...“SASUKE” Traffic Monitoring Tool Traffic Shift Monitoring Based on Correlation between BGP Messages and Flow Data Atsushi Kobayashi Yutaka

Challenge

� The challenge is to identify route changes from a huge number of BGP route announcements.announcements.� Hundreds of thousands of route announcements per day

� Handle the huge load of flow records.� Thousands of flow records per second

� Explore a simple detection method and its real-time visualization.

6

real-time visualization.

Page 7: “SASUKE” Traffic Monitoring Tool...“SASUKE” Traffic Monitoring Tool Traffic Shift Monitoring Based on Correlation between BGP Messages and Flow Data Atsushi Kobayashi Yutaka

Data Source

� Captures BGP data from BGP sessions to border routers or route reflectors as a BGP route reflector client.route reflector client.� Border router feeds best routes to SASUKE tool.

SASUKE

BGP NetFlow/sFlow

RR#1

BGP

AS#1AS#6

� Sets NetFlow/sFlow observation points at the periphery of the target AS.

7

RR#1

RR#2AS#2

AS#3

AS#4AS#5NetFlow/sFlowobservation points

Page 8: “SASUKE” Traffic Monitoring Tool...“SASUKE” Traffic Monitoring Tool Traffic Shift Monitoring Based on Correlation between BGP Messages and Flow Data Atsushi Kobayashi Yutaka

System Architecture

� 3 system components:

� BGP Collection

� Flow Collection� Flow Collection

� Data Analysis: correlation between BGP and Flow data

BGP Collection

DataPatricia trie

Labeled BGP logs

BGP

Reportvisualization

Web

8

Flow Collection

DataAnalysis

Patricia trie(BGP routing table)

Traffic volume for BGP attributes

NetFlow/sFlow

Web console

Page 9: “SASUKE” Traffic Monitoring Tool...“SASUKE” Traffic Monitoring Tool Traffic Shift Monitoring Based on Correlation between BGP Messages and Flow Data Atsushi Kobayashi Yutaka

BGP Collection

� Builds BGP routing tables as Patricia trie.

� Maintains tables for each BGP peering session.

� Creates a BGP log report B to identify BGP

messages that may cause a traffic change by messages that may cause a traffic change by comparing against the Patricia trie.

� Identifies BGP message type and BGP attributes that have changed from the old ones in the Patricia trie.

BGP CollectionLabeled BGP log reports B

BGP

NLRI=10.10.10.0/24

AS Path=4697-2914-2511BGP NH=192.168.1.1

B={t, New, ,192.168.1.1,

192.168.1.1, ”10.10.10.0/24”}BGP BGP

9

Patricia trie(BGP routing table)

192.168.1.1, ”10.10.10.0/24”}BGPdaemon

BGPAnalysis

NLRI=10.10.0.0/16

AS Path=4697-2914-2511

BGP NH=192.168.1.1

NLRI=10.10.10.0/24

AS Path=4697-2914-2511BGP NH=192.168.1.1

Look up Update

Page 10: “SASUKE” Traffic Monitoring Tool...“SASUKE” Traffic Monitoring Tool Traffic Shift Monitoring Based on Correlation between BGP Messages and Flow Data Atsushi Kobayashi Yutaka

BGP Log Reports

� BGP log report is represented as follows.

B={t, ctype, atype, anew, aold, prefix, id}

� t is timestamp of when the BGP message arrived.� t is timestamp of when the BGP message arrived.

� ctype is change type:

� “�ew”, “Withdraw”, “Change”, or “Duplicate”.

� atype indicates the changed BGP attribute type:

� “Origin AS�”, “�eighbor AS�”, “AS Path”, “BGP �H”, or “Community”

� BGP community often gives route categories: region, peering type.

� a /a are new/old BGP attribute values.

10

� anew/aold are new/old BGP attribute values.

� When ctype is “�ew” or “Withdraw”, aold or anew is a “null” value.

� Prefix is network address in NLRI.

� Id is an identifier to correlate with traffic data.

� At this stage, the value is “null”.

Page 11: “SASUKE” Traffic Monitoring Tool...“SASUKE” Traffic Monitoring Tool Traffic Shift Monitoring Based on Correlation between BGP Messages and Flow Data Atsushi Kobayashi Yutaka

BGP Log Reports

� Creates multiple BGP log reports when multiple BGP attributes are changed.

BGP Collection

Patricia trie(BGP routing table)

Labeled BGP log report B

BGPNLRI=10.0.0/8,AS Path=4697-2914-2511BGP NH=192.168.1.1

NLRI=10.0.0/8,AS Path=7321-2914-2511BGP NH=192.168.1.100

B1={t, PeerAS(P),4697,7321, ”10.0.0.0/8”}

B2={t, BGP-NH(B),192.168.1.1,192.168.1.100, ”10.0.0.0/8”}

11

Page 12: “SASUKE” Traffic Monitoring Tool...“SASUKE” Traffic Monitoring Tool Traffic Shift Monitoring Based on Correlation between BGP Messages and Flow Data Atsushi Kobayashi Yutaka

Visualization for BGP Log Reports

� Labeled BGP logs are presented in time-series.

� Top-N origin/neighbor ASNs involved in the most BGP messages are represented when the spike happens.

100,000

150,000

200,000

250,000

300,000

Daily route announcements

change duplicate

withdraw new

12

0

50,000

100,000

11/27

11/29

12/1

12/3

12/5

12/7

12/9

12/11

12/13

12/15

12/17

12/19

12/21

12/23

12/25

Daily route

Page 13: “SASUKE” Traffic Monitoring Tool...“SASUKE” Traffic Monitoring Tool Traffic Shift Monitoring Based on Correlation between BGP Messages and Flow Data Atsushi Kobayashi Yutaka

Flow Collection

� Selects an appropriate Patricia trie....� Compares the Flow Record and peering data.

� Are Exporter and BGP router the same device or not?

Are Exporter and BGP router located in the same region or not?� Are Exporter and BGP router located in the same region or not?

� Sums up traffic on the basis of BGP attributes:

� Origin ASN, Neighbor ASN, AS Path, BGP NH, Community, and Prefix

� These BGP attributes are retrieved from the Patricia trie by a longest match based on source/destination IP addresses.

13

Patricia trie(BGP routing table)

Traffic volume for BGP attributes

NetFlow/sFlowFlow Collection

Look up

Page 14: “SASUKE” Traffic Monitoring Tool...“SASUKE” Traffic Monitoring Tool Traffic Shift Monitoring Based on Correlation between BGP Messages and Flow Data Atsushi Kobayashi Yutaka

Visualization for Traffic Data

� Drill down into the detailed traffic data step by step from stacked area chart.

Prefix stackedDetailed Flow record list

Origin ASNs stacked

Neighbor ASNs stacked

Prefix stacked

Origin AS stacked

Detailed Flow record list

14

Neighbor ASNs stacked

AS Path stacked

Page 15: “SASUKE” Traffic Monitoring Tool...“SASUKE” Traffic Monitoring Tool Traffic Shift Monitoring Based on Correlation between BGP Messages and Flow Data Atsushi Kobayashi Yutaka

Traffic Change Detection Method

� Focuses on a Top-� ranked by traffic volume on

BGP attributes: � Origin ASN, Neighbor ASN, AS Path, BGP NH, and Community.

� Evaluates similarities of Top-� ranks between time slot t and t-1.� Traffic volume weights the evaluation results.

tt-1

15

Page 16: “SASUKE” Traffic Monitoring Tool...“SASUKE” Traffic Monitoring Tool Traffic Shift Monitoring Based on Correlation between BGP Messages and Flow Data Atsushi Kobayashi Yutaka

Traffic Change Detection Method

� Calculates the correlation coefficient r(t,t-1)

between the ranks of time slots tttt and tttt----1.1.1.1.

(((( ))))(((( )))) (((( ))))(((( )))) (((( ))))(((( )))) (((( ))))(((( ))))∑∑∑∑ −−−−−−−−−−−−−−−−�

tcttifctcttifc 11,,,,

� f(i,t) is defined as a BGP attribute value ranked i by traffic

volume of time slot t.

� c(f(i,t),t) is traffic volume of f(i.t).

� Top-� statistics data set C(t)C(t)C(t)C(t) is presented as an array:

(((( ))))(((( ))))(((( )))) (((( ))))(((( )))) (((( ))))(((( )))) (((( ))))(((( ))))

(((( ))))(((( )))) (((( ))))(((( )))) (((( ))))(((( )))) (((( ))))(((( ))))∑∑∑∑∑∑∑∑

∑∑∑∑

========

====

−−−−−−−−−−−−−−−−

−−−−−−−−−−−−−−−−====−−−−

i avg

i avg

i avgavg

tcttifctcttifc

tcttifctcttifcttr

1

2

1

2

1

11,,,,

11,,,,1,

16

� Top-� statistics data set C(t)C(t)C(t)C(t)iiii is presented as an array:

� C(t)i={c(f(1,t),t), c(f(2,t),t), …, c(f(�,t),t) } (i=1, 2, 3, …, �)

� Cavg(t) gives the average of C(t)i.

� Evaluates whether r(t,t-1) exceeds a threshold.

Page 17: “SASUKE” Traffic Monitoring Tool...“SASUKE” Traffic Monitoring Tool Traffic Shift Monitoring Based on Correlation between BGP Messages and Flow Data Atsushi Kobayashi Yutaka

Identify Most Affected Traffic

� Investigates which f(i,k) has the greatest

impact on traffic change, as follows.

� Top-� rank C(k)(t) indicates C(t) except for c(f(k,t),t) � Top-� rank C(k)(t)i indicates C(t)i except for c(f(k,t),t)

ranked k....

C(k)(t)i={c(f(1,t),t), …, c(f(k-1,t),t), c(f(k+1,t),t), …, c(f(�,t),t) }

� Calculates the correlation coefficient r(k)(t,t-1) ....

� Selects the greatest values r(k)(t,tr(k)(t,tr(k)(t,tr(k)(t,t----1) 1) 1) 1) from

{r(1)(t,t-1), r(2)(t,t-1), …, r(�)(t,t-1) }....

17

� Then, we recognize that f(k,t) f(k,t) f(k,t) f(k,t) is the most

affected BGP attribute.

Page 18: “SASUKE” Traffic Monitoring Tool...“SASUKE” Traffic Monitoring Tool Traffic Shift Monitoring Based on Correlation between BGP Messages and Flow Data Atsushi Kobayashi Yutaka

Traffic Change Reports

� Finally, it creates a traffic change report R....

R={t, type, f(i,k), r(t,tr(t,tr(t,tr(t,t----1) , 1) , 1) , 1) , δ, id}R={t, type, f(i,k), r(t,tr(t,tr(t,tr(t,t----1) , 1) , 1) , 1) , δ, id}

� type gives traffic volume type:

� “Origin AS�”, “�eighbor AS�”, “AS Path”, “BGP �H”, or “Community”

� δ gives the traffic volume difference between t and t-1.

� id is an identifier to correlate with BGP log reports.

� At this stage, the value is set to a unique value.

18

� At this stage, the value is set to a unique value.

Page 19: “SASUKE” Traffic Monitoring Tool...“SASUKE” Traffic Monitoring Tool Traffic Shift Monitoring Based on Correlation between BGP Messages and Flow Data Atsushi Kobayashi Yutaka

Correlation between BGP and Flow

� Correlates between BGP log report B and traffic change report R.

� Looks for the BGP log report B involved with traffic � Looks for the BGP log report B involved with traffic change report R.

� Then, R and B are given the same id value to link them.

R={t, type, f(i,k), r(t,t-1) , δ, id}

B={t, ctype, atype, anew, aold, prefix, id} for all BGP log reports B where t-Tw < B.t < t+Tw do

19

if R.δ > 0 and B.atype = R.type and B.anew = R.f(i,k) then

B.id = R.id ; else if R.δ < 0 and B.atype = R.type and B.aold = R.f(i,k) then

B.id = R.id ; end if end for

Page 20: “SASUKE” Traffic Monitoring Tool...“SASUKE” Traffic Monitoring Tool Traffic Shift Monitoring Based on Correlation between BGP Messages and Flow Data Atsushi Kobayashi Yutaka

Visualization for BGP and Flow

� Creates traffic-change-related alert for operators.

� Alert links the graphs of traffic volume area chart and of BGP log reports involved. BGP log reports involved.

Alert information

Outgoing trafficIncoming traffic

20

BGP log reports involved

Number of prefixes

Page 21: “SASUKE” Traffic Monitoring Tool...“SASUKE” Traffic Monitoring Tool Traffic Shift Monitoring Based on Correlation between BGP Messages and Flow Data Atsushi Kobayashi Yutaka

Overall Traffic View

Outgoing TrafficIncoming Traffic

21

BGP log reportsNumber of Prefix

Page 22: “SASUKE” Traffic Monitoring Tool...“SASUKE” Traffic Monitoring Tool Traffic Shift Monitoring Based on Correlation between BGP Messages and Flow Data Atsushi Kobayashi Yutaka

Evaluation of SASUKE Tool

� “SASUKE” has been introduced in some commercial networks as an experimental phase.phase.

� Much more performance evaluation is needed.

40

50

60

70

80

90

100

40

50

60

70

80

90

100

Flow records [f/s]

CPU/Memory [%]

pcpu pmem flow

22

0

10

20

30

40

0

10

20

30

40

0 1,200 2,400 3,600 4,800 6,000 7,200

Flow records [f/s]

CPU/Memory [%]

Elapsed time [s]

Page 23: “SASUKE” Traffic Monitoring Tool...“SASUKE” Traffic Monitoring Tool Traffic Shift Monitoring Based on Correlation between BGP Messages and Flow Data Atsushi Kobayashi Yutaka

Conclusion

� I demonstrated the traffic change detection method implemented in the “SASUKE” tool.

� Focuses on the similarities between time consecutive Top-� Focuses on the similarities between time consecutive Top-N ranks in time-series.

� Correlates between BGP log reports B and traffic change reports R.

� Alleviates the troubleshooting load for network operators.

� Visualizes BGP log and traffic data.

� Links multidimensional traffic data related to BGP attributes.

23

� Links multidimensional traffic data related to BGP attributes.

� More evaluation is needed for performance and accuracy.

Page 24: “SASUKE” Traffic Monitoring Tool...“SASUKE” Traffic Monitoring Tool Traffic Shift Monitoring Based on Correlation between BGP Messages and Flow Data Atsushi Kobayashi Yutaka

Thank you very much.

24

This study was supported by the Ministry of Internal Affairs and Communications of Japan.