Title: The Austin protocol compiler
Description: -The Austin Protocol Compiler presents a protocol specification language called the Timed Abstract Protocol (TAP) notation. This book will finally close the communication gap between the protocol verifiers and the protocol implementers. The TAP notation uses two types of semantics: an abstract semantics that appeals to the protocol verifiers and a concrete semantics which appeals to the protocol implementers. The Austin Protocol Compiler illustrates that the two types of semantics of TAP are equivalent. Thus, the correctness of TAP specification of some protocol, that is established based on the abstract semantics of TAP, is maintained when this specification is implemented based on concrete semantics of TAP. The equivalence between the abstract and concrete semantics of TAP suggests the following three-step method for developing a correct implementation of a protocol in this book: 1. Specify the protocol using the TAP notation. 2. Verify the correctness of the specification based on the abstract semantics of TAP 3. Implement the specification based on the concrete semantics of TAP For step 3, this book introduces the Austin Protocol Compiler (APC) that takes as input, a TAP specification of some protocol, and produces as output C-code that implements this protocol based on the concrete semantics of TAP. The Austin Protocol Compiler is designed for a professional audience composed of protocol designers, verifiers, reviewers and implementers. This volume is also suitable for graduate-level students in computer science and electrical engineering.
Subjects: Communications software, Compilers (Computer programs), Computer network protocols, Computer programs, Computer science, Data transmission systems, Computer network architectures, Computer Communication Networks, Data structures (Computer science), Information systems, Information Systems and Communication Service, Information Systems Applications (incl.Internet), Cryptology and Information Theory Data Structures, Input/Output and Data Communications, Computer Systems Organization and Communication Networks