Open Research is currently re-indexing its items due to scheduled maintenance on Saturday 14th March 2026. As such not all items in the collection may be searchable at this time.

Rigorous specification and conformance testing techniques for network protocols, as applied to TCP, UDP, and sockets

Loading...
Thumbnail Image

Date

Authors

Bishop, Steve
Fairbairn, Matthew
Norrish, Michael
Sewell, Peter
Smith, Michael
Wansbrough, Keith

Journal Title

Journal ISSN

Volume Title

Publisher

Association for Computing Machinery Inc (ACM)

Abstract

Network protocols are hard to implement correctly. Despite the existence of RFCs and other standards, implementations often have subtle differences and bugs. One reason for this is that the specifications are typically informal, and hence inevitably contain ambiguities. Conformance testing against such specifications is challenging.In this paper we present a practical technique for rigorous protocol specification that supports specification-based testing. We have applied it to TCP, UDP, and the Sockets API, developing a detailed 'post-hoc' specification that accurately reflects the behaviour of several existing implementations (FreeBSD 4.6, Linux 2.4.20-8, and Windows XP SP1). The development process uncovered a number of differences between and infelicities in these implementations.Our experience shows for the first time that rigorous specification is feasible for protocols as complex as TCP. We argue that the technique is also applicable 'pre-hoc', in the design phase of new protocols. We discuss how such a design-for-test approach should influence protocol development, leading to protocol specifications that are both unambiguous and clear, and to high-quality implementations that can be tested directly against those specifications.

Description

Citation

Source

SIGCOMM Computer Communications Review

Book Title

Entity type

Access Statement

License Rights

Restricted until

2037-12-31