CHAPTER ONE
INTRODUCTION
The importance of protocol arises from the fact that protocols form the nervous system of teleprocessing networks and as such are responsible for ensuring that the pieces of the system work as a harmonious whole. The complexity and size of today’s systems and the fact that they are put together from subsystem components manufactured in different locations and even by different companies, virtually demand formal specification and there are many side benefits. And so, as open systems and standard network architectures encompass an ever growing segment of the computing industry, the need for clear and precise protocol specification becomes more important. Traditional methods of informal narrative specifications and ad hoc validation have demonstrated their shortcomings as protocol bugs and incompatible implementations crop up. Problems of ambiguous and incomplete specifications are particularly severe for the ever growing number of protocol standards that must be implemented by a wide community of users with diverse equipment (Rudin, 2003).
There has been recent work on formal protocol specification and verification. In addition to individual researchers, several national and international standards organizations have become active in this area. These include the International Standard Organization (ISO) TC16/1 working group on Formal Definition Technique (FDT), the Consultative Committee for International Telegraphy and Telephony (CCITT) SG VII special report on question 39-System Description Techniques (SDT), and major protocol development projects by the National Bureau of Standards (NBS) and Defense Communication Engineering Center (DCEC) in the US. It is pertinent to note that good protocol specification methods or languages provide precise notations to facilitate implementation of standard and enhance technical quality. As their syntax and semantics are precisely specified, every word and symbol has a well-defined meaning and its use must follow exact rules. This makes standardized specifications unambiguous while improving intuitiveness, increasing consistency and making it possible to detect errors during standardization rather than implementation (ETSI, 2013). Thus to make protocol specification less complex, the use of Petri net as a modeling tool, graphical notation as well as a compact way to specify behaviour (protocol) has been employed. Most modeling languages have graphical notations, and these have good reasons. Models are used as a means to specify concept and ideas, and to communicate them between humans. Nearly everybody would use some kind of graphics to express his or her understanding of a system, even without using any explicit modeling languages. It does not need psychological research to state that graphics employing two dimensions allow for a better understanding of complex structures than one dimensional text. Since specification of systems and communication of models are the main application of Petri net in practice, understandability for human is among the most crucial quality criteria for modeling languages. Petri nets have nice graphical representation using only very few different types of elements, which is good basis for an easy understandability of a model and for the learnability of the language. These two criteria for modeling languages belong to the most important ones recognized in the “Guidelines of Modeling” (Desel and Juhas, 2001).