Presentation is loading. Please wait.

Presentation is loading. Please wait.

CHINA EDUCATION & RESEARCH NETWORK CENTER Linuxflow: A High Speed Backbone Measurement Facility ZhiChun Li Hui Zhang.

Similar presentations


Presentation on theme: "CHINA EDUCATION & RESEARCH NETWORK CENTER Linuxflow: A High Speed Backbone Measurement Facility ZhiChun Li Hui Zhang."— Presentation transcript:

1 CHINA EDUCATION & RESEARCH NETWORK CENTER Linuxflow: A High Speed Backbone Measurement Facility ZhiChun Li (lizc@serv.edu.cn) lizc@serv.edu.cn Hui Zhang (hzhang@cernet.edu.cn) hzhang@cernet.edu.cn CERNET, Tsinghua Univ, China Passive & Active Measurement workshop 2003

2 2 Outline Introduction to CERNET Introduction to CERNET Motivation of Linuxflow Motivation of Linuxflow Traffic collection method and environment Traffic collection method and environment Detailed approach: Linuxflow design Detailed approach: Linuxflow design Performance evaluation Performance evaluation Applications based on Linuxflow Applications based on Linuxflow Conclusions and Future work Conclusions and Future work

3 3 Passive & Active Measurement workshop 2003 Introduction to CERNET One of the most significant and largest networks in Asia Pacific region One of the most significant and largest networks in Asia Pacific region 1000+ universities and education institutions 1000+ universities and education institutions 1.2 millions hosts 1.2 millions hosts 10 millions users 10 millions users Over 60 OC-48 and OC-3 links Over 60 OC-48 and OC-3 links CIDR rank 35 in the world(88.625 /16 networks) CIDR rank 35 in the world(88.625 /16 networks)

4 4 Passive & Active Measurement workshop 2003 CERNET Topology

5 5 Passive & Active Measurement workshop 2003 Network measurement facilities used in CERNET

6 6 Passive & Active Measurement workshop 2003 new requirements of CERNET stimulate our approach to appear High-speed usage-based accounting and billing for "transatlantic" traffic (OC3 up to Gigabit) High-speed usage-based accounting and billing for "transatlantic" traffic (OC3 up to Gigabit) IP MONitoring Infrastructure for CERNET (40+ agents deployed on backbone) IP MONitoring Infrastructure for CERNET (40+ agents deployed on backbone) CERNET Network Management System CERNET Network Management System User behavior analysis and traffic data mining for network security User behavior analysis and traffic data mining for network security

7 7 Passive & Active Measurement workshop 2003 Motivation of Linuxflow Measure gigabit or even more higher speed links Measure gigabit or even more higher speed links Provide both packet level and flow level fine-grained information Provide both packet level and flow level fine-grained information Base on commodity hardware Base on commodity hardware Self-develop inexpensive software solution Self-develop inexpensive software solution

8 8 Passive & Active Measurement workshop 2003 How Linuxflow work? 3 components: Linuxflow Agent, Linuxflow Collector, Linuxflow Manager. 3 components: Linuxflow Agent, Linuxflow Collector, Linuxflow Manager. Agents run on a Linux box to sniff the traffic Agents run on a Linux box to sniff the traffic –self-designed special standalone network packet capture protocol stack –multi-thread flow aggregation daemon Collectors collect flows from different Agents, interfacing applications Collectors collect flows from different Agents, interfacing applications Managers control and monitor the status of each Agent and Collector Managers control and monitor the status of each Agent and Collector

9 9 Passive & Active Measurement workshop 2003 Methods of sniffing Insert a hub in network link, all ports of the hub can get a copy of data (10/100M half-duplex) Insert a hub in network link, all ports of the hub can get a copy of data (10/100M half-duplex) Port or interface span, by means of which the traffic from one or more interfaces on a network switch can be mirrored to another one(s) Port or interface span, by means of which the traffic from one or more interfaces on a network switch can be mirrored to another one(s) Network tap, such as optical splitter Network tap, such as optical splitter

10 10 Passive & Active Measurement workshop 2003 Traffic collection network environment Common environment Common environment

11 11 Passive & Active Measurement workshop 2003 Detailed approach: Linuxflow Agent structure Based on Linux Kernel 2.4.x Based on Linux Kernel 2.4.x 3 modules implement the capture protocol stack 3 modules implement the capture protocol stack Multi-thread flow aggregation daemon Multi-thread flow aggregation daemon

12 12 Passive & Active Measurement workshop 2003 Detailed approach: packet level capture Standalone packet capture protocol stack Standalone packet capture protocol stack –Low capture module redefine the netif_rx kernel symbol and define the tasklet to send the packet (skbuff) to our packet capture stack. redefine the netif_rx kernel symbol and define the tasklet to send the packet (skbuff) to our packet capture stack. –AF_CAPPKT module This module registers AF_CAPPKT protocol family to Linux kernel, and implements the AF_CAPPKT socket This module registers AF_CAPPKT protocol family to Linux kernel, and implements the AF_CAPPKT socket –cap_type module provides us with the ability to implement different filter to get selected fields provides us with the ability to implement different filter to get selected fields

13 13 Passive & Active Measurement workshop 2003 Detailed approach: packet level capture Filters already defined Filters already defined –Selective header fields used for stream level flow aggregation –All IP header and TCP/UDP/ICMP/IGMP header fields –Collect all IP packets API in user space API in user space –Open AF_CAPPKT socket: sock = socket (AF_CAPPKT, CAP_COPY_FLOW, ntohs(ETH_P_IP)) sock = socket (AF_CAPPKT, CAP_COPY_FLOW, ntohs(ETH_P_IP)) –Read data structure through the socket Kernel Time-stamping Kernel Time-stamping –Using kernel function do_gettimeofday() to get microsecond level timestamp (8 bytes )

14 14 Passive & Active Measurement workshop 2003 Detailed approach: packet level capture Factors influencing the packet level capture performance Factors influencing the packet level capture performance –Network Bandwidth vs. NetCard capability –Network Bandwidth vs. PCI Speed All packets will go through PCI bus, PCI133 (133Mhz 64bits) may handle OC48 All packets will go through PCI bus, PCI133 (133Mhz 64bits) may handle OC48 –Packets Per Second vs. NetCard Performance NetCard RX buffer vs. CPU interrupt frequency NetCard RX buffer vs. CPU interrupt frequency –Packets Per Second vs. CPU Performance NetCard driver level tuning to improve performance NetCard driver level tuning to improve performance

15 15 Passive & Active Measurement workshop 2003 Detailed approach: flow level aggregation flow definition flow definition –RTFM flows are arbitrary groupings of packets defined only by the attributes of their endpoints (address attributes) 5-tuple stream level (individual IP sessions) 5-tuple stream level (individual IP sessions) 2-tuple IP-pair level (traffic between two host) 2-tuple IP-pair level (traffic between two host) pair of netblocks(traffic between two IP address blocks) pair of netblocks(traffic between two IP address blocks) –Cisco NetFlow flows are stream level microflow –Linuxflow Agents produce stream level flow too –Linuxflow Collectors aggregate to high level flow

16 16 Passive & Active Measurement workshop 2003 Detailed approach: flow level aggregation Two types of timeout definition: active timeout and inactive timeout Two types of timeout definition: active timeout and inactive timeout Stream level flow termination Stream level flow termination –Flows which have been idle for a specified time (inactive timeout) are expired and removed from the flow table. –Long lived flows are reset and exported from the flow table, when they have been active for a specified time (active timeout). –TCP connections which have reached the end of byte stream (FIN) or which have been reset (RST)

17 17 Passive & Active Measurement workshop 2003 Detailed approach: flow level aggregation Long lived flow fragmentation Long lived flow fragmentation –Long lived flows are reset and exported from the flow table, when they have been active for a specified time (active timeout) –Consecutive packets of a long lived flow which has been exported will make up a flow with a cont flag, this can notify collector “I am not a new one” –In flow statistic analysis, the flow with cont flag will not count in new flow but accumulate to old long lived flow

18 18 Passive & Active Measurement workshop 2003 Detailed approach: flow level aggregation Multi-thread flow aggregation pipeline Multi-thread flow aggregation pipeline –Reading thread: reading packet data from kernel to user space, buffering data –Processing thread: aggregating packet data to flow record, using packet classification algorithm, such as hash –Sending thread: assembling flow record into LEFP UDP packet and sending it to Linuxflow Collector for further analysis.

19 19 Passive & Active Measurement workshop 2003 Detailed approach: flow level aggregation Packet classification Packet classification –The current implementation uses hash function Requires a large amount of fast memory Requires a large amount of fast memory Collisions can be solved using a second hash function or a lookup tries Collisions can be solved using a second hash function or a lookup tries –Recursive Flow Classification (RFC) is being studied, may test in next version of Linuxflow Agent

20 20 Passive & Active Measurement workshop 2003 Detailed approach: LinuxFlow Export Protocol Flow export protocol Flow export protocol –LinuxFlow Export Protocol (LEFP) is defined to send the flow records from Linuxflow Agent to Linuxflow Collector. –LEFP uses UDP protocol capable of sending flows to multiple collectors simultaneously via broadcast/multicast –LEFP UDP packet format is shown as follows

21 21 Passive & Active Measurement workshop 2003 Detailed approach: Linuxflow Collector Collect flows from different Linuxflow Agents simultaneously Collect flows from different Linuxflow Agents simultaneously Coexist with other flow analysis program in same machine, through IPC providing flow data sharing Coexist with other flow analysis program in same machine, through IPC providing flow data sharing –AF_unix socket –Share memory

22 22 Passive & Active Measurement workshop 2003 Detailed approach: Linuxflow Manager Refer to RTFM Flow Measurement Architecture Refer to RTFM Flow Measurement Architecture Define SNMP based Linuxflow control and status MIB Define SNMP based Linuxflow control and status MIB Use Linuxflow manger through SNMP to control multiple agents and collectors Use Linuxflow manger through SNMP to control multiple agents and collectors

23 23 Passive & Active Measurement workshop 2003 Detailed approach: Linuxflow Architecture Linuxflow Collector Linuxflow Manager Linuxflow Agent Applications Applications Applications

24 24 Passive & Active Measurement workshop 2003 performance and accuracy test Experimental environment Experimental environment –Test Link: CERNET-CHINANET (China Telecom) Gigabit link interconnecting the biggest research network and biggest commercial network in China. –Test Linuxflow Agent Server: ProcessorPIII XEON 700Mhz *4 Memory16GB DRAM Accessory64-bit/64MHz Disk35GB SCSI disk * 2 Network CardIntel 1000BaseSX * 2

25 25 Passive & Active Measurement workshop 2003 performance and accuracy test experimental results experimental results

26 26 Passive & Active Measurement workshop 2003 In commodity hardware we can get what? New Linuxflow Agent box capability New Linuxflow Agent box capability Hardware Price $3000 Network1.0Gbps Processor P4 XEON 2.0Ghz *2 Memory64bits/333Mhz Accessory64bits/133Mhz Handle Bandwidth One box handle Gigabit Network both direction 2.0Gbps Handle PPS 500Kpps

27 27 Passive & Active Measurement workshop 2003 Applications based on Linuxflow IP MONitoring Infrastructure IP MONitoring Infrastructure Accounting and Charging System Accounting and Charging System Anomalies Detection System Anomalies Detection System Anomalies Characterization and Traffic Data Mining Anomalies Characterization and Traffic Data Mining

28 28 Passive & Active Measurement workshop 2003 CERNET IP MONitoring Infrastructure Base on Linuxflow to construct monitoring agents Base on Linuxflow to construct monitoring agents Deploy monitoring agents across geographically wide area Deploy monitoring agents across geographically wide area Measure network traffic Measure network traffic Monitor network anomaly and misuse Monitor network anomaly and misuse

29 29 Passive & Active Measurement workshop 2003 Monitoring Agent’s Capabilities Support data rate up to 1Gbits/sec Support data rate up to 1Gbits/sec Collect real-time IP packets from multiple carrier peering GigE links and regional access GigE links Collect real-time IP packets from multiple carrier peering GigE links and regional access GigE links Classify ten thousands of IP packets into flows with timestamp with accurate enough fidelity Classify ten thousands of IP packets into flows with timestamp with accurate enough fidelity Provide real-time measurements which characterize the status of link being monitored Provide real-time measurements which characterize the status of link being monitored

30 30 Passive & Active Measurement workshop 2003 Monitoring Agent’s Capabilities Filter the anomaly signs according to a set of pre-defined signature in terms of multi- dimensions of network flow traffic Filter the anomaly signs according to a set of pre-defined signature in terms of multi- dimensions of network flow traffic Transfer the sampling IP packet data and flow data into data repository wherein previously unseen signatures are found off-line via data mining Transfer the sampling IP packet data and flow data into data repository wherein previously unseen signatures are found off-line via data mining Provide identified records of traffic anomaly, network attacks, malicious mobile network worms Provide identified records of traffic anomaly, network attacks, malicious mobile network worms

31 31 Passive & Active Measurement workshop 2003 Flexible Usage-based Accounting, Charging and Billing System for CERNET Based on Linuxflow to collect IP packets Based on Linuxflow to collect IP packets Meter usage of network resources Meter usage of network resources Charge customers by IP-accounting Charge customers by IP-accounting NETWORK Data Collection Driver Data Filter Data Aggregator Data Record Policy schedule System Configuration Customer Info Auth entic ation Data Query Data Log Analysis Presentation WEB System log

32 32 Passive & Active Measurement workshop 2003 CERNET Anomalies Detection System CERNET CHINANET Or Other Adjacent AS PCA analysis Linuxflow Anomalies Detection Long Term Observation Anomalies DB Anomalies Characterization Events Distribution WEB MON Optical splitter TICKET system INTERNET Another Anomalies Detection Agent

33 33 Passive & Active Measurement workshop 2003 Anomalies Characterization and Traffic Data Mining Traffic Data IPBLK1 IPBLK2 IPBLK3 Data Mining Anomaly

34 34 Passive & Active Measurement workshop 2003 Graphical presentation on CERNET sharp increase in link utilization when MS-SQL Slammer worm broke out at 13:30 p.m. (CST) on Jan. 25, 2003 sharp increase in link utilization when MS-SQL Slammer worm broke out at 13:30 p.m. (CST) on Jan. 25, 2003

35 35 Passive & Active Measurement workshop 2003 Conclusions and future work Linuxflow has been designed and implemented Linuxflow has been designed and implemented Linuxflow’s capability of handling gigabit network backbone not only proven by special tests, but also by the fact that it has been used on CERNET backbone successfully Linuxflow’s capability of handling gigabit network backbone not only proven by special tests, but also by the fact that it has been used on CERNET backbone successfully Cluster/grid computing techniques will be used to make it more scalable and powerful to handle OC48/192 traffic Cluster/grid computing techniques will be used to make it more scalable and powerful to handle OC48/192 traffic Further research will be focused on applications based on Linuxflow Further research will be focused on applications based on Linuxflow

36 36 Passive & Active Measurement workshop 2003 Thanks!


Download ppt "CHINA EDUCATION & RESEARCH NETWORK CENTER Linuxflow: A High Speed Backbone Measurement Facility ZhiChun Li Hui Zhang."

Similar presentations


Ads by Google