Académique Documents
Professionnel Documents
Culture Documents
June, 2003
1
Outline AT&T Labs
Motivation
Illustrative applications
Gigascope features
Gigascope technical details
Conclusion
7/7/03 2
Motivation AT&T Labs
7/7/03 3
Existing Solutions AT&T Labs
Motivation
Illustrative applications
Gigascope features
Gigascope technical details
Conclusion
7/7/03 5
Case 1: End-to-end TCP Performance Monitoring
AT&T Labs
Business Challenge:
Customer wanted to monitor the TCP performance of all
active clients to identify performance problems
Current Approach:
Netflow and SNMP data do not address end-to-end
performance
Issues:
To perform this task accurately, the TCP session state of all
current TCP connections has to be tracked to identify active
TCP connections
7/7/03 6
Case 1: Solution AT&T Labs
7/7/03 7
Case 2: Hidden Traffic Detection AT&T Labs
Business Challenge:
Customer suspected a large volume of peer-to-peer traffic
within its network and wanted to more accurately determine
the volume of this traffic
Current Approach:
Typically Netflow is used to determine P2P traffic volumes
using the TCP port number found in the netflow data
Issues:
P2P traffic might not use the known P2P port numbers
7/7/03 8
Case 2: Solution AT&T Labs
7/7/03 9
Case 3: Custom Monitoring AT&T Labs
Business Challenge:
Customer wanted to monitor performance of a critical
custom application, in particular:
Client application layer metrics (latency, loss)
Clients starting and ending the application
Current approach:
Netflow and SNMP data do not address end-to-end
performance
Issues:
Commercially available tools do not support analysis of this
application protocol
7/7/03 10
Case 3: Solution AT&T Labs
7/7/03 11
Outline AT&T Labs
Motivation
Illustrative applications
Gigascope features
Gigascope technical details
Conclusion
7/7/03 12
Gigascope Features and Functions AT&T Labs
7/7/03 13
Gigascope Typical Data Collection Method AT&T Labs
Motivation
Illustrative applications
Gigascope features
Gigascope technical details
Conclusion
7/7/03 15
Main Components of Gigascope AT&T Labs
query FTA
queries clearinghouse
compiler module
device interface
Query compiler: translate GSQL queries into multiple FTA modules (C or C++)
FTA module: filters, transforms, and aggregates network data
Application:
allocates and configures a set of FTAs
collects output of FTAs and does something with it
Most common application is the printapp which writes the query output to disk
Clearinghouse: manages and tracks all FTAs, manages all IPC, tracks available
network input devices
Device and firmware interface: manages hardware and/or libpcap
7/7/03 16
Run Time Architecture AT&T Labs
application
perl application c/c++ application
processes
clearinghouse
HFTA
HFTA HFTA
processes
7/7/03 17
Query Language AT&T Labs
7/7/03 18
GSQL Input AT&T Labs
7/7/03 19
Filtering and Aggregation AT&T Labs
7/7/03 20
Combining Tuple Streams AT&T Labs
Problem
Data is collected on multiple
network interface cards;
for example: to monitor one
OC48 full duplex line two
OC48 interfaces are required.
Merge P1.time, P2.time Some queries are most easily
formulated on a single data
From PacketSum1 P1, stream.
PacketSum2 P2 Solution
GSQL supports stream merges
Stream merges
Combine two streams with
identical fields
Maintain the temporal
properties of the merge field
(e.g. time is still increasing in
the joined stream)
7/7/03 21
Selectively Combining Tuple Streams AT&T Labs
Problem
How to selectively combine
diverse tuple streams
select S.timestamp, S.sourceIP, Solution
S.destIP, S.source_port, S.dest_port, Joins provide an efficient way of
(A.timestamp - S.timestamp) as rtt selectively combining multiple
diverse tuple streams
INNER_JOIN from tcp_syn S, tcp_syn_ack A
GSQL joins
where S.sourceIP = A.destIP Preserve the temporal
and S.destIP = A.sourceIP properties of temporal fields
which are used in equalities
and S.source_port = A.dest_port
Current restriction: one
and S.dest_port = A.source_port temporal field of each input
and S.tb = A.tb stream has to be used in an
equality relationship with a
temporal field of the other
stream
7/7/03 22
Integrating Complex Algorithms AT&T Labs
OPERATOR_VIEW tcp_perf {
OPERTOR(file tcp_perf);
FIELDS {
UINT time (increasing); Problem
UINT srcIP; How to reuse prior and ongoing
UINT destIP;
UINT srcPort;
work in efficient networking
UINT destPort algorithms
UINT loss_rate_estimate;
} Solution
SUBQUERIES { GSQL views
tcpq (UINT time (increasing)
UINT srcIP, GSQL views
UINT destIP,
UINT srcPort, Allow user to handcode FTAs
UINT destPort,
UINT seqNum,
Provide syntax and semantic of
UINT ackNum the input/output datastreams of
); handcoded FTA to GSQL
}
SELECTION_PUSHDOWN { Optimize automatically
time -> tcpq.time; surrounding FTAs
srcIP -> tcpq.srcIP;
destIP -> tcpq.destIP; Example uses:
srcPort -> tcpq.srcPort;
destPort -> tcpq.destPort;
IP/TCP reassembly
} TCP performance
}
7/7/03 23
Cheaply Integrating Complex AlgorithmsAT&T Labs
Output Output
Tuple Tuple
Stream Stream
BASIC
VIEW
QUERY
MERGE JOIN
7/7/03 25
Example Deployment AT&T Labs
INTERNET
GETH
GETH GETH SPAN
GIGASCOPE
PORT
Customer
Equipment
7/7/03 26
Performance of Example Deployment AT&T Labs
Gigascope is configured to
track:
Number and IP address of all
user
Detailed performance statistics
of 5% of all user including:
Client latency
Client loss
Server latency
Server loss
All ICMP unreachable
messages
In this setup Gigascope
monitors at peak times:
90000 users
> 1 million packets per second
> 1.4 Gbit/sec
Gigascope has been
operational since 11/2002
7/7/03 27
Data Reduction Rates AT&T Labs
7/7/03 28
Conclusions AT&T Labs
7/7/03 29