32nd IEEE Conference on Local Computer Networks

A Methodology for Finding Significant Network Hosts DongJin Lee, Nevil Brownlee Department of Computer Science The University of Auckland [email protected], [email protected] monitor their networks. Perhaps isolating only the significant hosts could reduce much of the complexities. Therefore, we ask what would constitute a significant host. Some operators are worried about user traffic levels, which increase with increasing backbone and access link speeds. For them, a significant host could be one that downloads or uploads more than some specified amount of traffic. Again, some operators are concerned about various changes in traffic behavior. Thus, a significant host could include hosts that produce many flows (e.g., p2p nodes). We then ask how host ranking could be useful to the network operators. We began by attempting to understand host behaviors and their significance in traffic analysis that operators must deal with in network monitoring. Generally, they are interested in hosts that behave in ‘remarkable’ ways. For instance, high traffic rates, interactions with other hosts, malicious behaviors or hosts that change their behaviors over time. Hence, choosing the right metrics could be considered as one of their important activities. In this paper, we examine several attributes that may indicate significant host traffic. The term ‘attribute’ is a characteristic quality that can be easily measured by observing the host behaviors. For instance, number of flows or host connections can be regarded as attributes. The term ‘significant’ is used when a particular host has sufficiently high attribute values that their sum meets certain thresholds. Thus, in contrast to other studies in application identification, we think that if the operators need to identify significant hosts, then all the hosts should be scored or ranked. Our ‘finding significant host’ scheme provides a different approach to network analysis, in which we measure attribute values for hosts rather than flows. Our objective for this paper is to score (and rank) hosts expressed as a single numerical value by aggregating individual attribute values. Our aim is not to identify or classify host applications, but to identify significant hosts regardless of application types. Our approach has several advantages:

Abstract— In recent years, much work has been done on observing and determining application types for network traffic flows. This is non-trivial because newer applications often encrypt their packets and do not use default port numbers. Also, application updates or protocol changes could vary the distributions of flow behaviors and patterns, resulting in complicated identification methods. We propose a different approach, in which we measure attribute values for hosts rather than flows to find significant hosts. We describe the attribute values that seem most useful in quantifying host behavior, and explain how we use an attribute sum to rank the hosts. Since host ranking does not rely on payload signatures or port numbers it is simple to implement, and can handle hosts running newly emerging applications and mixtures of applications. We suggest that hosts may be ‘significant in various ways’. For instance, they may have high traffic rates (busy servers), interaction with many other hosts (p2p behaviors) or initiate many unidirectional flows (malicious behaviors). Further, they may change their behaviors over time (compromised hosts). We compute a set of host rankings at 60s intervals so as to observe changes in them. Index Terms–monitoring, attribute, score, rank, significant host

I.

INTRODUCTION

Network operators are often concerned with network monitoring. For instance, they may measure individual host activities and overall throughputs so as to verify Service Level Agreements (SLA). The end customer’s network behaviors are significant issues, particularly since they change as new applications and protocols become popular. In the past, packet payload analysis has been considered as one of the most accurate identification methods. This can be done without difficulty assuming that the captured packets include sufficient payload to match against known signatures. However, this method requires unencrypted packets and could raise privacy issues. Recently, several novel approaches [9, 14, 18] using 5-tuple flows to classify applications have been studied. Unfortunately, many techniques are sensitive towards host behaviors, and changes in protocols and applications. Also, the authors in [13] stated that identifying applications (with accuracy) is usually complicated and the processes are often not automated, due to the fact that a particular traffic pattern could satisfy more than one classification criterion (e.g., mixed applications), or it could belong to an emerging application having behavior that is not yet common knowledge. Such techniques may require algorithm revisions as applications and protocols evolve, and thus could be impractical for network operators who generally prefer simple and scalable methods to

0742-1303/07 $25.00 © 2007 IEEE DOI 10.1109/LCN.2007.21

− simple and efficient, because only seven attributes (requiring only 5-tuple flow measurement) are used to return one score per host. − completely anonymous, as no actual identifications are conducted for host applications, hence there are no privacy issues. − highly flexible, as the attributes can be either weighted differently or added/removed depending on what behaviors an operator regards as significant. − versatile, as we do not assume that a host runs a single or dominant application, it is able to identify hosts that may run an arbitrary set of applications.

981

Ours is a work-in-progress, which we believe could be developed into a useful network monitoring tool. Our approach, however, should not be seen as a replacement of existing practices used in network monitoring; instead we believe that it can provide an alternative technique that could co-exist as a part of existing monitoring toolkits. The rest of this paper is organized as follows. Section II discusses relevant works. Section III discusses our basic ranking schemes and Section IV shows the methodologies for our attribute selections, aggregation method and the traces we have analyzed so far. We demonstrate our analysis and selection of significant hosts in Section V. We discuss attribute weight tuning in Section VI. Section VII discusses tradeoffs in attribute selections and summarizes the paper. II.

unidirectional flow bidirectional flow host

Web-server

DNS

Web-client

File-transfer

Malicious

Proxy/NAT

Unknown

Figure 1. Abstract host behavior patterns: the arrows represent flows, the circles represent hosts and the points where flows meet their circumference represent ports A

B

C

D

E

F

G

H

RELATED WORK

Many authors have conducted studies of packets, flows and application behaviors. The authors in [13] justified making tradeoffs in ‘accurate identification’. Their work showed nine identification methods and requirements (in terms of complexity and amount of data) so as to identify up to 99.99% of the traffic. Packet payload analysis ([16] and references therein) has been widely used to identify various applications due to its simplicity and accuracy. However, this usually requires complex packet processing since it depends strongly upon matching payload signatures. Further, accessing payloads could raise privacy issues. Since the introduction of packet-train models [8], flows are constructed from each packet’s 5-tuple: a series of packets that have the same protocol, source IP address, destination IP address, source port and destination port are considered a single flow. Early work on flows and their appropriate expiry timeouts is presented in [5], and such flows are often called CBP flows. Recently, there have been broad researches in analyzing flow behaviors and patterns. Such analyses include the studies of flow lifetimes ([4, 12, 15] and references therein), flow rates [20], ranks [17] and flow anomalies [2, 11]. Hence, various application classifications logically stem from different approaches in flow analysis. For instance, the authors in [9] used several levels: social, functional and application to classify various applications. In [18] the authors used relative uncertainty to profile backbone links into many behaviorcluster models. Clustering [7] and statistical Fingerprinting [6] use attributes such as total packets, sizes in bytes, inter-arrival time and so on. Machine Learning [19] and Real-time classification attempts (using first few packets) [3] are proposed as well. One recent study in [10] outlined end-host profiling by using and compacting ‘graphlets’ to store and visualize the host interaction patterns. However, often the previous techniques are specific to a few (known behavior) applications and require careful finetuning. They unfortunately often fail to classify ‘mixed’ behaviors where the hosts may use several applications simultaneously. In other words, they tend to necessitate additional complexities for more detailed identifications and are thus unlikely to be used in practice, especially in real-time environments. To the best of our knowledge, previous studies (except [10]) were ‘detecting’ applications or behaviors, taking little notice of whether particular hosts are ‘significant’ in their network. In contrast, our work instead focuses only on finding potentially significant hosts.

Figure 2. Abstract host behaviors from the least significant A to the most significant H

III.

BASIC RANKING

A. Common host behaviors We find several common behaviors from our initial analysis; they are illustrated in Figure 1. A Web-server usually serves from a few source ports (e.g., port 80) to many destination ports, i.e., several flows are exchanged for each client. A Web-client usually has the opposite behaviors to a Web-server. A File transfer host usually produces only a few flows, but those flow sizes in bytes are large. A DNS server tends to produce many flows, but each flow represents a host connection whose source and destination port numbers stay consistent (e.g., port 53 and 32770). A Malicious host produces many flows that are travelling in one direction and often each flow represents a host connection attempt. Proxy/NAT hosts could be regarded as the mix-behavior of many hosts: they usually produce many flows, host connections and port numbers (ephemeral ports). Also, there may be Unknown behaviors due to emerging applications. B. Attributes and their selections Since we are interested in ranking individual hosts by summing the attribute scores into a single value, we first categorize attributes after reviewing several traces and their overall behaviors from three levels (packet-level, flow-level and hostlevel). For example, how many bytes are transmitted/received? How many flows are produced? How many unique source port numbers are used? We then evaluated various aspects of our attribute selection to decide whether they reliably represented a significant host. The chosen attributes must be countable, and we require that they must be meaningful in that ‘the higher the attribute value, the more remarkable it is’. Thus, the higher the score, the more significant the host is. For example, consider several hosts using different applications. Although rare, if all of the hosts happened to produce equal values for the attributes (e.g., all hosts produced 10kB of

982

Three level Attributes

(1)

Raw packets Process every collection intervals (e.g., 60s)

Host Table

Flow Table

Build host entities

Host-level No. of adjacent hosts (ah)

To find the host scores, for each interval, we scale every host attribute value in relation to the maximum attribute value in the same column. Thus, we normalize scores by dividing each element by its column maximum – the scaled attribute now have values in the range 0,1 . We weight all scores attributes equally2, then aggregate all the scaled attribute scores to produce the overall score for hosts … ,

Flow-level No. of one-way flows (ow) No. of two-way flows (tw) No. of unique src port (sp) No. of unique dst port (dp) No. of unique protocol (pr)

Packet-level Total transmit bytes (tx) Total receive bytes (rx)

(2)

Figure 3. Overview schemes of our attribute selections

data, one flow and one adjacent host, etc), then they would all have the same score. If one host then increases one of the attribute values, that host will have higher score than the rest. Figure 2 shows eight simplified host behaviors with the order from the least (A) to the most (E) significance, assuming that all flows are equal size and destination ports are the same. Suppose we take individual attributes equally, behavior A is communicating using one bidirectional flow. If we compare this with B where the host is communicating using two bidirectional flows, A is less significant than B. Behavior C is more significant than B because it is not only using two flows, but also connects to two different hosts. However, F and G have the same score because F is communicating to three hosts with four unique source ports, while G is communicating to four hosts with three unique source ports, their sum of scores are equal. Furthermore, H is more significant than G even though it has fewer hosts, because the sum of flows, unique source ports and hosts is greater than the sum in G. An overview of our scheme is shown in Figure 3. For the packet-level, we use the total transmitted (tx) and received (rx) sizes in kB. For the flow-level, 5-tuples from the packets are used to produce flows from which we extract four useful attributes. Flows are separated into two types: one-way (ow) and two-way (tw) flows. We regard strictly unidirectional packets as one-way flows and bidirectional packets as two-way flows1. These two types of flows depict flow interactions, e.g., malicious-attempts are often one-way flows. Additionally, we only count unique ports instead of studying the port numbers. That is, the actual port numbers are not used, we only count the number of unique source (sp) and destination (dp) ports. At the host-level, we extract destination IP addresses to find the number of adjacent hosts (ah). In this, only unique hosts are counted towards ah. We did not include unique protocols (pr) since the majority of the hosts we observed only had two or three at most (e.g., TCP, UDP and ICMP). Thus, we use seven attributes (tx, rx, ow, tw, sp, dp, ah) in our analysis.

Thus, the maximum possible score that a single host could obtain is when all its scaled attribute scores are at their highest. Intuitively, the overall host score reflects its rank in the measured network i.e., we compute rank by sorting the scores into descending order. We repeat the above computations every measurement interval producing a set of 3-tuples (IP address, host score, host rank), then plot timeseries of score or rank for each distinct host. For a given host, we compute mean and standard deviation for individual scores over the measurement intervals, and then compute the host’s coefficient of variation to measure a dispersion, (3) where is the standard deviation and is the mean of a host’s scores. We ignore hosts that appeared in less than 2 intervals. returned from Eq.(3) represents the relative variations of host scores. The advantage of using this is that the variations can be comparable by sorting  ratios regardless of their actual scores. Note that the ranks can be substituted instead of scores in Eq.(3) to observe rank timeseries and variations. Here, we observe two main outcomes of an individual host in each interval: 1) Score/Rank, and 2) Score/Rank over time. We then decide how to select significant hosts based on those observations. IV.

METHODOLOGY

A. Network monitor and traces Since we are not interested in flow behaviors or their lifetimes, instead of expiring flows at certain times (e.g., 64s), we expire all flows for every collection interval. The monitor updates a flow table as it sees each packet. The building of the (bidirectional) flow is identical to our previous work in [12], ‘one-way and two-way flows’. As the flows are updated in the flow table, the monitor also builds a host table based on IP addresses from the flows3. Hence, for each (new) bidirectional flow, two host entities are inserted into the table and keeping their attributes. Thus, host datasets (including previous ones) are generated for every collection interval. Because our objective is to find significant hosts from their attributes, we tested

C. Host Score and Rank Network Matrix: For each 60s collection interval ending at time , hosts are observed (i.e., distinct IP addresses) , … ( x 1 row vector) and each host contains   , … (1 x column attribute variables such that, vector), forming an by score matrix,  . 1 Our traces were collected at one measurement point inside the campus gateway where both inbound (to the edge network) and outbound (to the Internet) packets are observed.

2

Refer Section VI for more about attribute weights. A host entity in the host table can be expired to save memory. For our analysis however, none of hosts were expired. 3

983

TABLE I.

1

IP Hosts

10

Auck03

Auck06

Wits04

Wits05

SUMMARY OF THE TRACES Analyzed after Filtering

Monitor Observed

100 Trace

Date

Duration (h)

Local Times [Start - End] (24h)

Total IP Hosts (k)

Total Bytes (GB)

Total IP Hosts (%)

Total Bytes (%)

1k

Auckland 2003 Auckland 2006 Wits 2004 Wits 2005

10k

100k 1GB

1MB Total volume per host

1kB

Figure 4. Number of hosts vs their per-host total volume plot (3-hour): we see that a few hosts have the high total volume whereas many hosts typically have low total volume.

2003-Dec-04

3

00:00 - 03:00

62.0

2.8

50.0

97.5

2006-Jul-27

3

13:00 - 16:00

128.1

21.8

54.3

99.1

2004-Mar-01

3

00:00 - 03:00

88.1

5.7

56.9

98.7

2005-May-12

3

00:00 - 03:00

87.8

8.7

46.1

98.7

V.

HOST ANALYSIS

A. Host scores In this section, we present timeseries plots of host scores. In particular, we show various host score plots for Auckland 2003 and 2006. Figure 5(a) shows four busy hosts (two DNS servers A, B and two proxy servers C, D) and their score variations over time. We observe moderate score variations for A, B and C, and higher score variations for D (e.g., peak score impulse at about 55 minutes). To understand a host score in detail, Figure 5(b) shows a one-hour plot of the seven attribute scores for D. Generally, we observe that tx, ow, and ah scored relatively low while rx, tw and dp were relatively high. At about 55 minutes, the high rises were caused by two attributes rx and tw, reaching a score of 1 showing that these attributes had the largest value compared to every other hosts’ rx and tw attributes for that interval. Figure 5(c) shows four malicious hosts (E, F, G, H). Interestingly, these hosts scored the highest for some periods. Upon inspection, we found that E was a port-scan attempting host (i.e., high tx with no rx, high ow with no tw scores) scanning for about 55 minutes. About 15 minutes from the start, F appeared with high, but systematic (a pattern that occurs regularly) variations of scores. This host had similar scan activities to E, but its score rise was caused by the increases in the number of unique source ports (high sp), and its fall was caused by the decreases in that number (low sp). This is presumably due to changes made by (automated) malicious scripts. G and H had similar behavior to the host E. Figure 6(a) shows four top-scored hosts where A and B are proxy servers, C and D are web-servers serving e-learning/eassessment to students. Similarly to Figure 5(a), we observe score variations over time. A had consistent and nearmaximum scores, showing the domination of the individual attribute scores. The score hardly exceeds 6 mainly due to the fact that one-way (ow) flows are often not presented by the busy hosts. During the busy hours from about 2pm onwards, we see the score rise for C and D as they serve more connections to students. Figure 6(b) shows four low-scoring hosts with their approximate average ranks around 1000th. E is a webserver using port 80 bulk-transferred three files, totaling about 50MB over time (i.e., high tx/rx, but very little tw/ah scores). F and G are p2p clients that transferred less than 10MB of data. High peaks show that these hosts are actively connecting to various peers. H is also a web-server that consistently scored low over time.

relatively short periods (i.e., 3 hours) of traces for edge networks (university campus network) from NLANR PMA (Auckland VIII, 2003) [1], WAND (Wits 2004 and 2005 from University of Waikato network) [15] and our own trace from the University of Auckland network (Auckland 2006). All traces contain several outbound proxy and DNS servers that contribute numerous flows compared to the rest of the hosts. The proxy hosts allow campus students to access outside-network resources, and the access fees are charged per MB. B. Collection Interval and Preliminary Filtering Since our prototype monitor is configured to process in real-time and we observe the score/rank over time, we use relatively small collection intervals of 60s. Thus, datasets collected from the traces are immediately processed to produce scores on the timeseries plots for each interval. During the collection intervals, we found that tracking every host is computationally intensive, and removing insignificant hosts based on their attributes can be a challenging task. For instance, some hosts only produce a few flows but transfer many bytes (bulk data), while other hosts may only produce a few host-to-host interactions but continuously communicate for long periods. In our traces, we observe that there are many hosts that never appear again after sending only a few bytes (e.g., one 60-byte packet) within the measurement time: about 50% of the total hosts appeared for only one collection interval and were never seen again (they were mostly inbound DNS hosts). Similarly, the relationship between the number of hosts vs their per-host total volume in Figure 4 shows that there are many hosts that only managed to send a tiny volume (less than 100kB) over the whole measurement time. Also, we observe that the volume relationship between 1GB and about 1MB shows roughly a straight line, but the plot is rather curved for lower volumes (about the bottom 70% of hosts). For our analysis, one condition is initially applied to disregard hosts: a host must appear in at least two 60s measurement intervals over the whole period of the measurement (three-hour). Further, we regard two host scores as the minimum for which we can compute a standard deviation. Here, we were able to disregard as many as 54% of total hosts, loosing as little as 1% of total bytes observed. Table I describes four traces that our monitor observed, together with a summary of analyzed (after preliminary filtering) total host and byte percentages.

984

4

4

tx (transmit) rx (receive) ow (one‐way flow) tw (two‐way flow)

0.5

score [s]

0:00 1

1

0:30 sp (unique src port) dp (unique dst port) ah (adjacent host)

2

1

0.5

0

0

0 0:00

E F G H

3

0 2

score [k]

score [s]

3

1

score [k]

A (DNS) B (DNS) C (Proxy) D (Proxy)

1:00 2:00 Local Time (NZDT, UTC +1300) [3h]

0:00

(a) high-scoring hosts

0:00

0:30 Local Time (NZDT, UTC +1300) [1h]

1:00 2:00 Local Time (NZDT, UTC +1300) [3h]

(c) malicious hosts

(b) host D: proxy Figure 5. Timeseries score plot: Auckland 2003, selected hosts A to H

8

0.2

A (Proxy) B (Proxy) C (Web) D (Web)

0.12 I (MAIL) J (NTP) K (AFS) L (DNS)

E (Web) F (P2P) G (P2P) H (Web)

6

4

score [s]

score [s]

score [s]

0.08

0.1

0.04 2

0

0 13:00

14:00 15:00 Local Time (NZDT, UTC +1300) [3h]

(a) high-scoring hosts

0 13:00

14:00 15:00 Local Time (NZDT, UTC +1300) [3h]

(b) low-scoring hosts: web-servers and p2p clients

13:00

13:30 Local Time (NZDT, UTC +1300) [1h]

(c) very low-scoring hosts: systematic hosts

Figure 6. Timeseries score plot: Auckland 2006, selected hosts A to L. Note, these are not the same hosts as those shown in Figure 5.

Figure 6(c) shows various hosts that systematically activate connections, causing regular spikes in the plot. These hosts have even lower scores than the hosts in Figure 6(b). I is a POP/IMAP relay-host and J is a local NTP host. We also see AFS (K) and DNS (L) hosts frequently producing score rises and falls systematically. That is, their host score changes with respect to its individual attribute scores, and seems to occur periodically. To summarize, we observe various individual host scores over the measurement time with respect to their attribute interactions. Interestingly, many busy hosts exhibited consistent score variations, and we observe that systematic score fluctuations are often caused by the behaviors of the host’s automated configurations such as malicious or network-specific protocols. Note that the host scores do not necessarily identify the actual applications, but rather indicate their significance relative to the rest of the network traffic. We believe this distinction is important since the score behaviors are not analyzed per-application; instead they identify hosts, whose scores are not fixed, but dynamically dependent on the highest host’s attribute values in each interval.

main reasons is that often many busy hosts we observed are heavy-hitters that continuously dominate the top scores over other hosts. Here, we show that score and rank variations could be compared with other hosts’ variation using coefficients of variation . Figure 7 shows four hosts with different scores and rank, their are calculated at the end of three-hour (Figure 7(a)), or one-hour periods (Figure 7(b)). For scaling purposes, we selected hosts with similar (mean) scores. Two web-servers M and N have relatively low (0.7 and 1) scoring between 0.1 and 0.3, while two clients O and P have higher (2 and 3) scoring from 0 to more than 1 (for P). In other words, the score varies less at low , and varies more at high . Generally, these behaviors indicate that busy hosts (e.g., proxy, p2p, etc) often have low score variations due to their nature of constantly being ‘active’, while idle hosts (e.g., clients, etc) often have high score variations because of their inactivity. For instance, P scored reasonably high, but appeared only for the first 27 minutes from the start of the measurement, thereby returning a higher than other hosts which scored lower but appeared many intervals over the measurement time. Figure 7(b) shows five different hosts with their rank variations for a one-hour measurement. First, dispersion for A was zero because there were no variations of its rank. It stayed consistently at the top rank-1. B and C have relatively consistent high ranks returning low ratios. For C, we observe the systematic rank fluctuation averaging between 100th and 2000th over time. Upon inspection, this host was found to be an idle

B. Score and Rank Variations In this section, we analyze host scores and ranks over a timeseries. That is, we observe that not only the score changes, but also the host ranks change over time. Although we suggested previously that the host scores reflect their relative ranks, not all host ranks fluctuate as time changes. One of the

985

1

1 M [cv=0.7] N [cv=1] O [cv=2]

0.8

P [cv=3]

10 A [cv=0] B [cv=0.15] C [cv=0.7] D [cv=3.6] E [cv=5]

rank [r]

score [s]

0.6 100

0.4 1000 0.2

10000

0 13:00

14:00

0:00

15:00

0:20

(a) Auckland 2006: score vs time plot (three-hour Figure 7. Various

0:40

Local Time (NZDT, UTC +1300) [1h]

Local Time (NZDT, UTC +1300) [3h]

)

(b) Wits 2005: rank vs time plot (one-hour

)

ratios at three/one-hour, illustrating score/rank variations. Note, these are not the same hosts shown in previous Figures.

outbound client connected to the remote access server. The rank rise shows the use of its telnet port (presumably data transmission) roughly every five minutes, and the fall shows when that transmission ceased, along with the only service using port number 113 and ICMP packets constantly. D was an inbound DNS server that appeared a few times; this host had a higher , with its rank changing between 20th and 1500th over time. Its high rank for the first four minutes was caused by numerous name-lookups, after which its rank fall down to 10000th showing that it became idle. Additionally, E kept its rank relatively high with B for about 35 minutes before it sharply dropped for five minutes (thus,  5). Upon inspection, E was found to be an HTTPS server, and the event was most likely caused by server outages. To summarize, hosts are scored and ranked with one numerical value based on the summations of their individual attributes. These scores and ranks are visualized in timeseries to observe their . We find several host behaviors from this. First, we observe that most heavy-hitters dominate the high scores consistently, which in turn produces low for the scores and ranks. Second, idle hosts such as clients (and likely including malicious hosts) often exhibit high , mainly due to the fact that their appearances are marginally small. Our values are computed at one-hour and three-hour intervals, and none of the hosts were expired, allowing us to observe values even for the idle hosts. This however can be tuned for the desired operation to smaller or longer intervals. Third, values are comparable either between the host scores or between ranks. That is, regardless of the actual scores or ranks, we observe dispersion for each host, which allows a more detailed analysis. For instance, we found several systematic score (and rank) dispersion behaviors (shown in Figure 6(c) and Figure 7(b)), which could merit additional study, and may perhaps require operators to trigger alarms when such behaviors occur.

Figure 8 shows relationships between dispersion ratio ( ) and mean score ( ) for three traces 4 , with each scatter plot representing an one-hour interval. As expected, nearly all hosts with a high score have a low , depicting consistent host (behavior) scores over time. However, we observe that not all hosts with high scores have a low , some high-scoring hosts also have very high values (e.g., a few malicious and ftp transferring hosts), exhibiting high activity (high score) with few appearances (high ). From our analysis, we therefore think it is important not to ignore hosts with a high . In general, different approaches and their tradeoffs in selecting hosts are considered. Our first approach (Figure 8(a)) is to select on the basis of overall scores the top 10% to 30% of hosts. Taking up to 30% of hosts actually selected hosts that sent and received only 100kB of data over one-hour. The remaining 70% of hosts mostly had extremely low scores (many were inbound DNS hosts, producing about 1kB, one flow and one host connection). Unfortunately, even selecting up to 30% of the hosts was not sufficient to find all the hosts having low . That is, several hosts that consistently communicate for long durations (low ) are not selected by this approach. Such hosts could be systematic hosts (Figure 6(c)) or even low-level scanning attacks. The second approach (Figure 8(b)) is to select by . For our traces, taking the top 30% captured the host with values of around 3 (e.g., hosts that appeared as briefly as seven minutes). The advantage of this approach is that it does not deal with the host scores. That is, we are able to capture many lowscoring hosts that behaved like systematic hosts or low-level scans. However, some hosts (e.g., those malicious hosts in Figure 5(c)) have relatively high scores because they have short periods of high activity. In other words, this approach tends to miss out hosts that have reasonable scores, which was the advantage of the first approach. After reviewing two tradeoffs, finally, we decide on our third approach: both selections as shown in Figure 8(c). In this, we are able to select about 14% of the hosts by taking the top 10% for both and . Taking the top 20% enables to select about 22%, and top 30% selects about 41% of the hosts. As mentioned however, many of the hosts beyond the top 30% in our traces were inbound DNS servers, and we think that taking

C. Selecting significant hosts So far, we have explained and showed the host scores, ranks and dispersion ratios. In this section, we explain our simple method of selecting significant hosts. We consider our method could vary depending on the interest of individual network operators: choosing ‘as many’ or ‘as few’ hosts could vary the method’s applicability or feasibility. We think applying 20/80 or 30/70 split by selecting the top 20 or 30 percent of the total hosts as remarkable hosts, could be a suitable approach.

4 Relationships between the score.

986

and are not discussed due to the similar results to

10 Top 10%

Top 20%

Top 20%

Top 30% Rest 70%

6

4

8

Top 10% [14%] Top 20% [22%]

Top 30%

coefficient of variation [cv]

8

10

Top 10% coefficient of variation [cv]

coefficient of variation [cv]

10

Rest 70% 6

4

2

2

0 1

0.1 mean score [s]

0.01

0.001

(a) Auckland 2003: selection

Top 30% [41%] Rest 70% [59%]

6

4

2

0 10

8

0 10

1

0.1 mean score [s]

(b) Wits 2005:

0.01

0.001

10

selection

1

0.1 mean score [s]

0.01

0.001

(c) Wits 2004: both selection

Figure 8. Three traces (one-hour) with different selection methods

more than this fraction could be infeasible since the hosts should be selected for their significance. We summarize the characteristics for our selected hosts. The top 1% and 2% ranked hosts (e.g., outbound DNS and proxy) often dominated most of the attribute scores and mostly had low . We observe that some malicious attempting hosts ranked very high due to their high attribute scores for ow, sp, and ah. Mail and p2p hosts were observed with lower attribute scores, but they exhibit similar behaviors to a typical proxy (e.g., high sp/dp). We also observe many typical servers and clients that were within the top 14%. We think that is an interesting metric because it is independent from actual scores or ranks, allowing us to compare the variations between hosts. VI.

score [s]

0.4

E [15m]

E

E'

F

F'

F[18m]

0.2

F [58m]

F [37m]

0 13:00

13:20

13:40

Local Time (NZDT, UTC +1300) [1h]

Figure 9. Auckland 2006: Two hosts E, F and their weight (tx,rx) tuned from the default to 3 times (E’, F’)

ATTRIBUTE WEIGHTS

This section discusses adjusting attribute weights. Although our aforementioned score and rank calculation weighted all of the individual attributes equally, we found that our scheme could be slightly biased towards the behaviors of hosts that produce many flows and different port numbers (e.g., score higher for the likely p2p hosts, which often exhibit many-tomany relationship for the flow, host and port counts). This however can be changed for different usage purposes.

that the rest of the hosts had lower (tx, rx) scores as compared to E. Second, we observe the increased scores where E was amplified by almost three times from the default, showing that this host score was solely based on the file-transfer (tx, rx). In contrast, F only amplified for certain periods (a p2p file being exchanged), e.g., we observe F score rises at about 18, 37 and 58 minutes from the start of the measurement. The scores and ranks can be simultaneously computed using different attribute weights so that operators could also observe the changes in scores and ranks. Another test could involve increasing ow attribute weight which can better identify malicious behaviors. Further, the weight schemes can be highly flexible since they are simple, and bias the host scores and ranks to match the desired operational priorities.

(4) Eq.(4) adds a weight for each attribute. Suppose one network operator regards a host’s transmitted and received data as more significant (i.e., heavy file downloaders and uploaders) so as to manage the capacity of the traffic; then the tx and rx attributes should be weighted more than the rest. Here, we increase these two attributes to three times their default. That is, a 1 has changed to single attribute’s maximum score . 3 . Figure 9 is a one-hour timeseries plot showing two . previous hosts from Figure 6(b) with different weights (tx, rx). E is a web-server that bulk-transferred 24MB of a file for 17 minutes, while F is a p2p client (3MB of data exchange). Their attribute weights have been increased from the default to three times more (E’, F’). The increased weights show a few different host behaviors. First, E and F were originally ranked 2704th and 782nd: increasing the default weights increased their ranks to 297th and 208th (E’, F’) respectively. This presumably shows

VII. DISCUSSIONS AND CONCLUSIONS Attribute Selections: this paper used seven attributes. Interestingly, attributes themselves could be analyzed and processed independently, either on a per-host or per-flow basis. Adding more attributes could yield further insights. On the other hand, reducing the number of attributes could be thought as a tradeoff in order to further increase the efficiency, although it would probably decrease the score’s reliabilities. For instance, if one network operator is only interested in finding the top 30% significant hosts as opposed to 10%, we then think attributes such as tx and rx could be merged into a single attribute. Finding the relationship between each attribute would require correlation coefficients for each variable in the matrix.

987

Principal Component Analysis (PCA) is one of the useful methods for representing multi-dimension variables into reduced dimension. Our initial observation showed that tx and rx attribute values were highly correlated (due to TCP), but unfortunately our traces had their own different coefficients between the attributes, requiring more analysis to understand and find appropriate attributes. Attribute Weights: Although our work showed weight schemes based on fixed weights, we are currently working to discover weights that could be dynamically applied to return the host scores in a way that is more reliable. Our initial work is to find the common/uncommon attribute values and their patterns, then to assign weights dynamically based on their pattern occurrences so as to give higher weights for the hosts with uncommon attribute patterns. Concluding this paper, we showed our simple schemes for assigning host scores for individual attributes. In particular, our scheme is simple and efficient because we use only seven attributes that are easily obtained. These attributes are valued so that the higher the attribute values, the more remarkable the host is. Attribute scores are aggregated to return a single overall score per host, representing the significance of a particular host. Significant hosts are selected based on the fractions of score/rank and variations. This works reliably and requires little computational effort, making it practical for network operators. Our scheme is highly flexible, since the individual attributes can be add/removed or weighted differently depending on the intention of usage Also, it provide a way of finding hosts that have fluctuations in their activity, i.e., high . Such hosts are hard to detect in a busy network using flow-based analysis techniques. Finally, our scheme is completely anonymous since hosts are scored using one value, thereby having no actual application identifications, leaving operators an option to select significant hosts for various purposes. For future work, we plan to implement our method for realtime monitoring, together with optimized attribute weights to reliably score and rank hosts. Additionally, we would like to study traces other than the university network (e.g., ISP networks).

[6] [7]

[8] [9]

[10]

[11]

[12] [13]

[14]

[15] [16]

ACKNOWLEDGEMENTS The authors are thankful to NLANR PMA [1] for the traces and Perry Lorier from The University of Waikato [15] for providing WITS traces and helpful information regarding them.

[17]

REFERENCES

[18]

[1] "NLANR PMA - Passive Measurement and Analysis," http://pma.nlanr.net/. [2] P. Barford and D. Plonka, "Characteristics of network traffic flow anomalies," in Proceedings of the 1st ACM SIGCOMM Workshop on Internet Measurement San Francisco, California, USA: ACM Press, 2001. [3] L. Bernaille, R. Teixeira, I. Akodkenou, A. Soule, and K. Salamatian, "Traffic classification on the fly," SIGCOMM Comput. Commun. Rev., vol. 36, pp. 23-26, 2006. [4] N. Brownlee and K. C. Claffy, "Understanding Internet traffic streams: dragonflies and tortoises," Communications Magazine, IEEE, vol. 40, pp. 110-117, 2002. [5] K. C. Claffy, H. W. Braun, and G. C. Polyzos, "A parameterizable methodology for Internet traffic flow profiling," Selected

[19]

[20]

988

Areas in Communications, IEEE Journal on, vol. 13, pp. 14811494, 1995. M. Crotti, M. Dusi, F. Gringoli, and L. Salgarelli, "Traffic classification through simple statistical fingerprinting," SIGCOMM Comput. Commun. Rev., vol. 37, pp. 5-16, 2007. J. Erman, M. Arlitt, and A. Mahanti, "Traffic classification using clustering algorithms," in Proceedings of the 2006 SIGCOMM workshop on Mining network data Pisa, Italy: ACM Press, 2006. R. Jain and S. Routhier, "Packet Trains--Measurements and a New Model for Computer Network Traffic," Selected Areas in Communications, IEEE Journal on, vol. 4, pp. 986-995, 1986. T. Karagiannis, K. Papagiannaki, and M. Faloutsos, "BLINC: multilevel traffic classification in the dark," in Proceedings of the 2005 conference on Applications, technologies, architectures, and protocols for computer communications Philadelphia, Pennsylvania, USA: ACM Press, 2005. T. Karagiannis, K. Papagiannaki, N. Taft, and M. Faloutsos, "Profiling the End Host," in Passive and Active Measurement Conference (PAM) Louvain-la-neuve, Belgium, 2007, pp. 186196. A. Lakhina, M. Crovella, and C. Diot, "Characterization of network-wide anomalies in traffic flows," in Proceedings of the 4th ACM SIGCOMM conference on Internet measurement Taormina, Sicily, Italy: ACM Press, 2004. D. Lee and N. Brownlee, "Passive measurement of one-way and two-way flow lifetimes," SIGCOMM Comput. Commun. Rev., vol. 37, pp. 17-28, 2007. A. W. Moore and K. Papagiannaki, "Toward the Accurate Identification of Network Applications," in Passive and Active Measurement Conference (PAM) Boston, MA, USA, 2005, pp. 41-54. A. W. Moore and D. Zuev, "Internet traffic classification using bayesian analysis techniques," in Proceedings of the 2005 ACM SIGMETRICS international conference on Measurement and modeling of computer systems Banff, Alberta, Canada: ACM Press, 2005. R. Nelson, D. Lawson, and P. Lorier, "Analysis of long duration traces," SIGCOMM Comput. Commun. Rev., vol. 35, pp. 45-52, 2005. S. Sen, O. Spatscheck, and D. Wang, "Accurate, scalable innetwork identification of p2p traffic using application signatures," in Proceedings of the 13th international conference on World Wide Web New York, NY, USA: ACM Press, 2004. J. Wallerich, H. Dreger, A. Feldmann, B. Krishnamurthy, and W. Willinger, "A methodology for studying persistency aspects of internet flows," SIGCOMM Comput. Commun. Rev., vol. 35, pp. 23-36, 2005. K. Xu, Z.-L. Zhang, and S. Bhattacharyya, "Profiling internet backbone traffic: behavior models and applications," in Proceedings of the 2005 conference on Applications, technologies, architectures, and protocols for computer communications Philadelphia, Pennsylvania, USA: ACM Press, 2005. S. Zander, T. Nguyen, and G. Armitage, "Automated Traffic Classification and Application Identification using Machine Learning," in Proceedings of the The IEEE Conference on Local Computer Networks 30th Anniversary - Volume 00: IEEE Computer Society, 2005. Y. Zhang, L. Breslau, V. Paxson, and S. Shenker, "On the characteristics and origins of internet flow rates," in Proceedings of the 2002 conference on Applications, technologies, architectures, and protocols for computer communications Pittsburgh, Pennsylvania, USA: ACM Press, 2002.

A Methodology for Finding Significant Network Hosts

ing and determining application types for network traffic flows. ... Index Terms–monitoring, attribute, score, rank, significant host ... with in network monitoring.

753KB Sizes 1 Downloads 234 Views

Recommend Documents

A Methodology for Finding Significant Network Hosts
(busy servers), interaction with many other hosts (p2p behaviors) or initiate many ... Thus, a significant host could include hosts that produce many flows (e.g. ...

Finding Statistically Significant Communities in Networks - Plos
Apr 29, 2011 - vertices have a total degree M. We can separate the above quantities in the ...... between areas of the United Kingdom, and therefore it has a ... The database can be accessed online at the site of the Office for. National ...

Finding a Methodology for Rhetorical Criticism
may not know the best means for locating and evaluating .... Campaigns, movements, and the media all reflect social concerns and, as such, ..... Page 10 ...

Finding Statistically Significant Communities in Networks - Plos
Apr 29, 2011 - for the micro-communities and then for the macro-communities. In order to do so ..... livejournal.com), and was downloaded from the Stanford Large. Network .... wish to compare the trend of the network similarity with that of the.

Finding Statistically Significant Communities in Networks - Csic
Apr 29, 2011 - Therefore networks can be found everywhere: in biology. (e. g., proteins and ... yielding an evolutionary advantage on the long run [26]. However, most ...... communities involved in cancer metastasis. BMC Bioinf 7: 2. 15. Holme P, Hus

Finding Statistically Significant Communities in Networks - PLOS
Apr 29, 2011 - funders had no role in study design, data collection and analysis, ...... Tan PN, Steinbach M, Kumar V (2005) Introduction to Data Mining. New.

Finding Statistically Significant Communities in Networks - PLOS
Apr 29, 2011 - clusters in networks accounting for edge directions, edge weights, overlapping ...... Vertices of the LFR benchmark have a fixed degree (in this case ..... The database can be accessed online at the site of the Office for. National ...

Copy of CMG14 monte-carlo methodology for network capacity ...
Quality of Service (QoS) = a generic term describing the performance of a system ... We have: 1. A network a. Topology, including Possible Points of Failure b.

A novel RBF neural network training methodology to ...
laboratory at the Institute of Soil Science, Academia Sinica,. Najing [23]. 2.1. Data Set. As mentioned above, the toxicity data toVibrio fischerifor the. 39 compounds that constituted our data base were obtained from the literature [22]. The toxicit

2007_8_Participatory Action Research a promising methodology for ...
2007_8_Participatory Action Research a promising methodology for transition planning.pdf. 2007_8_Participatory Action Research a promising methodology for ...

Induction - Uncertainties & Significant Figures
The farmer has to rescue it by attaching a rope and harness, and lifting it using a pulley and his tractor (as shown in the diagram). The tractor has a mass of 1500 ...

significant learning
Author of C eating Significant Learning Experiences (Jossey-Bass, 2003) ... good teachers want their students to learn something important or significant, rather ...

significant habitats
identifying and mapping ecologically significant habitats. Habitats that we ..... The GIS database that accompanies the map includes additional information about ...

A Randomized Algorithm for Finding a Path ... - Semantic Scholar
Dec 24, 1998 - Integrated communication networks (e.g., ATM) o er end-to-end ... suming speci c service disciplines, they cannot be used to nd a path subject ...

A versatile, solvent-free methodology for the functionalisation of ...
(flow rate 10 mL/min) applying a constant ramping rate of 10 K/min in a temperature range between 50 and 850ºC. The grafting ratio Δ, i.e. the weight of.

A Methodology for Switching Activity based IO ...
Optimisation is achieved by splitting the spatial locations of the drivers into smaller groups and solving pad require- ment problem for each of the groups. Ground bounce is the main component based on which the pad count is estimated. Special requir

A new methodology for the synthesis of N-acylbenzotriazoles - Arkivoc
Jul 21, 2017 - Abstract. A facile and economic path for an easy access of diverse N-acylbenzotriazoles from carboxylic acid has been devised using NBS/PPh3 in anhydrous ... different types of N-halosuccinimide with 1.0 equiv. of PPh3 and 2.0 equiv. o

A methodology for the automated creation of fuzzy ...
+30 26510 98803; fax: +30 26510 98889. E-mail address: ...... [5] Zahan S. A fuzzy approach to computer-assisted myocardial ischemia diagnosis. Artif Intell ...

A Design Methodology for Selection and Placement of ...
Most of the multimedia surveillance systems nowadays utilize multiple types of ... indicate that an ad hoc methodology is usually employed for designing such ...

Draf paper A Methodology for Evaluating E-Learning ...
D. M. Cardona is student master in system engineer and computer science of the National .... other hand, audio/video streaming of lectures is usually useful.