|
ABSTRACT
We consider the problem of monitoring an interactive device, such as an implementation of a network protocol, in order to check whether its execution is consistent with its specification. At rst glance, it appears that a monitor could simply follow the input-output trace of the device and check it against the specification. However, if the monitor is able to observe inputs and outputs only from a vantage point external to the device---as is typically the case---the problem becomes surprisingly difficult. This is because events may be bu ered, and even lost, between the monitor and the device, in which case, even for a correctly running device, the trace observed at the monitor could be inconsistent with the specification.In this paper, we formulate the problem of external monitoring as a language recognition problem. Given a specification that accepts a certain language of input-output sequences, we de ne another language that corresponds to input-output sequences observable externally. We also give an algorithm to check membership of a string in the derived language. It turns out that without any assumptions on the specification, this algorithm may take unbounded time and space. To address this problem, we de ne a series of properties of device specifications or protocols that can be exploited to construct e cient language recognizers at the monitor. We characterize these properties and provide complexity bounds for monitoring in each case.To illustrate our methodology, we describe properties of the Internet Transmission Control Protocol (TCP), and identify features of the protocol that make it challenging to monitor e ciently.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
|
 |
2
|
Karthikeyan Bhargavan , Carl A. Gunter , Moonjoo Kim , Insup Lee , Davor Obradovic , Oleg Sokolsky , Mahesh Viswanathan, Verisim: Formal analysis of network simulations, Proceedings of the 2000 ACM SIGSOFT international symposium on Software testing and analysis, p.2-13, August 21-24, 2000, Portland, Oregon, United States
|
| |
3
|
Karthikeyan Bhargavan, Carl A. Gunter, and Davor Obradovic. A taxonomy of logical network analysis techniques. Technical Report MS-CIS-00-14, University of Pennsylvania, 2000.
|
 |
4
|
|
| |
5
|
|
 |
6
|
Lalita Jategaonkar Jagadeesan , Adam Porter , Carlos Puchol , J. Christopher Ramming , Lawrence G. Votta, Specification-based testing of reactive software: tools and experiments: experience report, Proceedings of the 19th international conference on Software engineering, p.525-535, May 17-23, 1997, Boston, Massachusetts, United States
[doi> 10.1145/253228.253435]
|
| |
7
|
|
| |
8
|
I. Lee, S. Kannan, M. Kim, O. Sokolsky, and M.Viswanathan. Runtime assurance based on formal specifications. In Proceedings International Conference on Parallel and Distributed Processing Techniques and Applications, 1999.
|
| |
9
|
Nancy A. Lynch and Mark R. Tuttle. An introduction to input/output automata. CWI Quaterly, 2(3):219- 246, 1989.
|
| |
10
|
T.O. O'Malley, D.J. Richardson, and L.K. Dillon. Efficient specification-based test oracles. In Second California Software Symposium (CSS'96), April 1996.
|
 |
11
|
|
| |
12
|
|
| |
13
|
|
| |
14
|
Marcus J. Ranum , Kent Landfield , Michael T. Stolarchuk , Mark Sienkiewicz , Andrew Lambeth , Eric Wall, Implementing a Generalized Tool for Network Monitoring, Proceedings of the 11th Conference on Systems Administration, p.1-8, October 26-31, 1997
|
| |
15
|
|
CITED BY 5
|
|
|
|
|
Steve Bishop , Matthew Fairbairn , Michael Norrish , Peter Sewell , Michael Smith , Keith Wansbrough, Engineering with logic: HOL specification and symbolic-evaluation testing for TCP implementations, ACM SIGPLAN Notices, v.41 n.1, p.55-66, January 2006
|
|
|
|
|
|
Steve Bishop , Matthew Fairbairn , Michael Norrish , Peter Sewell , Michael Smith , Keith Wansbrough, Rigorous specification and conformance testing techniques for network protocols, as applied to TCP, UDP, and sockets, ACM SIGCOMM Computer Communication Review, v.35 n.4, October 2005
|
|
|
|
|