Protocol Analysis and Synthesis by Structured Partitions
Abstract Protocols can be viewed as predefined sequences of message exchanges between machines for performing network control functions and for providing network services. One way of modeling protocols is by using communicating finite state machines. The interaction between finite state machines can be very involved, even for machines with few states. To counteract the complexity for protocol analysis and synthesis, we propose a partitioning method based on protocol subgraphs. We found that if there are ‘cross interactions’ involving the entire protocol graph, then the protocol is not decomposable by our technique and must be analyzed or synthesized as a whole. However, if there are subunits of message exchanges within the protocol graph that are self-contained, in other words, if there are no ‘cross interactions’ between protocol subgraphs, then the protocol is decomposable. For protocols that are decomposable, we show that it is only necessary to examine a subspace of the entire reachability space to understand the behavior of the protocol and to guarantee its progress properties. This allows us to analyze and synthesize protocols based on these subgraphs.