%include "default.mgp" %tab bullet icon arc blue 40 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %page %nodefault %bgrad 0 0 32 0 1 cyan magenta %xfont "utopia-bold-r", size 12 %center, fore "black" cflowd and arts++ %size 5 Cisco flow-export collection %xfont courier-bold-r dwm@caida.org %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %page %xfont utopia-bold-r %bgrad 0 0 32 0 0 white cyan %fore black Background %fore black, size 5 &bullet host software for collecting Cisco version 5 flow-export data &bullet aggregates data into tables for continuous collection of\ summary data in time-series &bullet stores raw flow data in rotating log files &bullet provides client/server collection of tabular data in time series %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %page %xfont utopia-bold-r %bgrad 0 0 32 0 0 white cyan %fore black Changes from 1.3b2 to 2.0 %fore black, size 5 &bullet central collector included &bullet uses arts++ package &bullet arts++ adds signficant functionality %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %page %xfont utopia-bold-r %bgrad 0 0 32 0 0 white cyan %fore black %center cflowd %image "ciscoToCflowd.gif" %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %page %xfont utopia-bold-r %bgrad 0 0 32 0 0 white cyan %fore black flow export version 5 %fore black, size 5 &bullet sends UDP packets to a specified host address and port number &bullet each UDP packet contains a number of flow entries %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %page %xfont utopia-bold-r %bgrad 0 0 32 0 0 white cyan %fore black %center flow-export packets %image "flowPacket.gif" %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %page %xfont utopia-bold-r %bgrad 0 0 32 0 0 white cyan %fore black %center flow header %image "flowHeader.gif" %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %page %xfont utopia-bold-r %bgrad 0 0 32 0 0 white cyan %fore black %center flow entry %image "flowEntry.gif" %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %page %xfont utopia-bold-r %bgrad 0 0 32 0 0 white cyan %fore black cflowd aggregation %fore black, size 5 &bullet cflowd primarily designed to aggregate flow data into\ tabular data to be used for capacity planning &bullet AS matrix, net matrix, port matrix and protocol table aggregation\ across all flows %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %page %xfont utopia-bold-r %bgrad 0 0 32 0 0 white cyan %fore black Why so much aggregation? %fore black, size 5 &bullet data reduction &bullet scale of intended use (backbone-wide) &bullet Add a cflowd host, you may add it to central collection of\ tabular data. &bullet unreliable transport from Cisco to cflowd encourages\ deploying multiple cflowd hosts; use them. &bullet disk and bandwidth requirements for raw flow data\ in a backbone network. Only transfer tabular data back to the\ central collector. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %page %xfont utopia-bold-r %bgrad 0 0 32 0 0 white cyan %fore black cfdcollect %fore black, size 5 &bullet collects cflowd data at regular intervals &bullet produces time-series data for each of the tabular data\ types (AS matrix, net matrix, port matrix and protocol table) &bullet stores data in ARTS files %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %page %xfont utopia-bold-r %bgrad 0 0 32 0 0 white cyan %fore black %center centralized collection %image "centralCollection.gif" %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %page %xfont utopia-bold-r %bgrad 0 0 32 0 0 white cyan %fore black arts++ %fore black, size 5 &bullet C++ class library for subset of ARTS data &bullet supports reading/writing of ARTS data via iostreams and\ UNIX file descriptors &bullet supports simple time-domain aggregation for several data types &bullet simple command-line utilities included for viewing ARTS data\ files and time domain aggregation %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %page %xfont utopia-bold-r %bgrad 0 0 32 0 0 white cyan %fore black ARTS data files %fore black, size 5 &bullet efficient data archival (binary, simple size-reducing techniques) &bullet data files are portable; always written in network byte order,\ the arts++ class library is the interface &bullet extensible for additional data types &bullet versioning of data objects for different storage formats (typically\ used for space/CPU tradeoff) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %page %xfont utopia-bold-r %bgrad 0 0 32 0 0 white cyan %fore black ARTS data handled by arts++ %fore black, size 5 &bullet AS matrix (version 0) &bullet net matrix (version 2) &bullet port matrix (version 0) &bullet selected port table (version 0) &bullet port table (version 2) &bullet protocol table (version 2) &bullet forward IP path (version 0) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %page %xfont utopia-bold-r %bgrad 0 0 32 0 0 white cyan %fore black ARTS AS matrix (version 0) %fore black, size 5 &bullet counters for traffic (packets and bytes) from\ source ASes to destination ASes &bullet sparse matrix, having only\ entries for which traffic information is stored %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %page %xfont utopia-bold-r %bgrad 0 0 32 0 0 white cyan %fore black ARTS AS matrix example data %center %fore black %image "asMatrixData.gif" %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %page %xfont utopia-bold-r %bgrad 0 0 32 0 0 white cyan %fore black ARTS net matrix (version 2) %fore black, size 5 &bullet counters for traffic (packets and bytes) from\ source networks to destination networks &bullet networks are identified by network number and netmask length &bullet sparse matrix, having only entries for which traffic\ information is stored %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %page %xfont utopia-bold-r %bgrad 0 0 32 0 0 white cyan %fore black ARTS net matrix example data %center %fore black %image "netMatrixData.gif" %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %page %xfont utopia-bold-r %bgrad 0 0 32 0 0 white cyan %fore black ARTS port matrix (version 2) %fore black, size 5 &bullet counters for (packets and bytes) from source transport layer\ port number to destination port number &bullet matrix is sparse; there are no entries for ports on which no traffic\ was seen %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %page %xfont utopia-bold-r %bgrad 0 0 32 0 0 white cyan %fore black ARTS port matrix example data %center %fore black %image "portMatrix.gif" %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %page %xfont utopia-bold-r %bgrad 0 0 32 0 0 white cyan %fore black ARTS port table (version 2) %fore black, size 5 &bullet counters for input and output traffic (packets\ and bytes) versus transport layer port number &bullet input counters represent traffic destined for the port\ while output counters represent traffic sourced from the port &bullet table is sparse; there are no entries for ports on which no traffic\ was seen %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %page %xfont utopia-bold-r %bgrad 0 0 32 0 0 white cyan %fore black ARTS port table example data %center %fore black %image "portTableData.gif" %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %page %xfont utopia-bold-r %bgrad 0 0 32 0 0 white cyan %fore black ARTS protocol table (version 2) %fore black, size 5 &bullet counters (packets and bytes) versus IP protocol\ (TCP, UDP, ICMP, IGMP, et. al.) &bullet sparse table, there are no entries for protocols\ that were not seen in the measured traffic %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %page %xfont utopia-bold-r %bgrad 0 0 32 0 0 white cyan %fore black ARTS protocol example data %center %fore black %image "protocolTableData.gif" %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %page %xfont utopia-bold-r %bgrad 0 0 32 0 0 white cyan %fore black ARTS IP forward path (version 0) %fore black, size 5 &bullet contains IP addresses of hops in forward path from a\ source to a destination &bullet contains an RTT value for the source to destination &bullet may be extended in the future to hold more information %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %page %xfont utopia-bold-r %bgrad 0 0 32 0 0 white cyan %fore black ARTS forward IP path example data %center %fore black %image "ipPathData.gif" %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %page %xfont utopia-bold-r %bgrad 0 0 32 0 0 white cyan %fore black Time Domain Aggregation %fore black, size 5 Time domain aggregation reduces time granularity in time-series data. Examples: &bullet convert 5-minute data to 1-hour data for a summary bar chart &bullet convert 1-hour data to one large aggregate for a pie chart %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %page %xfont utopia-bold-r %bgrad 0 0 32 0 0 white cyan %fore black Aggregation Utilities %fore black, size 5 &bullet artsasagg - aggregates AS matrix data &bullet artsnetagg - aggregates net matrix data &bullet artsportmagg - aggregates port matrix data &bullet artsprotoagg - aggregates protocol table data %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %page %xfont utopia-bold-r %bgrad 0 0 32 0 0 white cyan %fore black Simple display utilities %fore black, size 5 &bullet artsdump &bullet artsases &bullet artsnets &bullet artsportms &bullet artsports &bullet artsprotos %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %page %xfont utopia-bold-r %bgrad 0 0 32 0 0 white cyan %fore black Future Tools %fore black, size 5 &bullet plotting utilities using XRT/PDS &bullet Web reporting tools (probably java-based) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %page %xfont utopia-bold-r %bgrad 0 0 32 0 0 white cyan %fore black Open Questions %fore black, size 5 &bullet what types of aggregation are useful to network service providers? &bullet what additional tabular data types are needed? &bullet are there desired applications for flow-export outside of capacity\ planning and usage/billing? &bullet what real time features would providers find useful?