Use of petri net in protocol specification
Table Of Contents
Chapter ONE
INTRODUCTION
- 1.1Introduction
- 1.2Background of Study
- 1.3Problem Statement
- 1.4Objective of Study
- 1.5Limitation of Study
- 1.6Scope of Study
- 1.7Significance of Study
- 1.8Structure of the Research
- 1.9Definition of Terms
Chapter TWO
LITERATURE REVIEW
- 2.1Overview of Petri Nets
- 2.2History of Petri Nets
- 2.3Types of Petri Nets
- 2.4Applications of Petri Nets
- 2.5Petri Nets in Protocol Specification
- 2.6Advantages of Using Petri Nets
- 2.7Disadvantages of Using Petri Nets
- 2.8Comparison with Other Modeling Techniques
- 2.9Case Studies on Petri Nets
- 2.10Future Trends in Petri Net Research
Chapter THREE
SYSTEM DESIGN AND IMPLEMENTATION
- 3.1Research Design
- 3.2Research Approach
- 3.3Data Collection Methods
- 3.4Sampling Techniques
- 3.5Data Analysis Procedures
- 3.6Ethical Considerations
- 3.7Validity and Reliability
- 3.8Limitations of the Research Methodology
Chapter FOUR
SYSTEM TESTING AND EVALUATION
- 4.1Data Analysis and Interpretation
- 4.2Findings on Protocol Specification with Petri Nets
- 4.3Comparison of Different Protocol Specification Methods
- 4.4Case Studies Analysis
- 4.5Implications of Findings
- 4.6Recommendations for Practice
- 4.7Recommendations for Future Research
- 4.8Theoretical Contributions
Chapter FIVE
SUMMARY, CONCLUSION AND RECOMMENDATIONS
- 5.1Summary of Findings
- 5.2Conclusion
- 5.3Contributions to Knowledge
- 5.4Practical Implications
- 5.5Suggestions for Further Research
Project Abstract
<p> This project work is concerned with application of Petri Net in protocol specification. In this project work, definition of Petri Nets and Protocols are given. The role and importance of formal specification techniques are also discussed. Petri Nets are a graphical tool and could be used for the formal description of the flow of activities in complex systems like protocol. It is gaining popularity in recent years as a tool for the representation of complex logical interactions like synchronization, sequence, concurrency and conflict among physical components or activities in the system. This project work presents a specification of a chosen protocol using Petri Net and implemented the specification using JAVA programming language. Conclusively, Petri net is shown to be 70% better than other formal protocol specification methods. <br></p>
Project Overview
<p>
</p><p><strong>INTRODUCTION</strong></p><ol><li><strong> BACKGROUND<br>OF THE STUDY</strong></li></ol><p>The importance of protocol arises<br>from the fact that protocols form the nervous system of teleprocessing networks<br>and as such are responsible for ensuring that the pieces of the system work as<br>a harmonious whole. The complexity and size of today’s systems and the fact<br>that they are put together from subsystem components manufactured in different<br>locations and even by different companies, virtually demand formal<br>specification and there are many side benefits. And so, as open systems and standard network<br>architectures encompass an ever growing segment of the computing industry, the<br>need for clear and precise protocol specification becomes more important.<br>Traditional methods of informal narrative specifications and ad hoc validation<br>have demonstrated their shortcomings as protocol bugs and incompatible<br>implementations crop up. Problems of ambiguous and incomplete specifications<br>are particularly severe for the ever growing number of protocol standards that<br>must be implemented by a wide community of users with diverse equipment (Rudin,<br>2003). </p><p>There has been recent work on formal<br>protocol specification and verification. In addition to individual researchers,<br>several national and international standards organizations have become active<br>in this area. These include the<br>International Standard Organization (ISO) TC16/1 working group on Formal<br>Definition Technique (FDT), the Consultative Committee for International<br>Telegraphy and Telephony (CCITT) SG VII special report on question 39-System<br>Description Techniques (SDT), and major protocol development projects by the<br>National Bureau of Standards (NBS) and Defense Communication Engineering Center<br>(DCEC) in the US. It is<br>pertinent to note that good protocol specification methods or languages provide<br>precise notations to facilitate implementation of standard and enhance<br>technical quality. As their syntax and semantics are precisely specified, every<br>word and symbol has a well-defined meaning and its use must follow exact rules.<br>This makes standardized specifications unambiguous while improving<br>intuitiveness, increasing consistency and making it possible to detect errors<br>during standardization rather than implementation (ETSI, 2013). Thus to make protocol specification<br>less complex, the use of Petri net as a modeling tool, graphical notation as<br>well as a compact way to specify behaviour (protocol) has been employed. Most<br>modeling languages have graphical notations, and these have good reasons.<br>Models are used as a means to specify concept and ideas, and to communicate<br>them between humans. Nearly everybody would use some kind of graphics to<br>express his or her understanding of a system, even without using any explicit<br>modeling languages. It does not need psychological research to state that<br>graphics employing two dimensions allow for a better understanding of complex<br>structures than one dimensional text. Since specification of systems and<br>communication of models are the main application of Petri net in practice,<br>understandability for human is among the most crucial quality criteria for<br>modeling languages. Petri nets have nice graphical representation using only<br>very few different types of elements, which is good basis for an easy<br>understandability of a model and for the learnability of the language. These<br>two criteria for modeling languages belong to the most important ones<br>recognized in the “Guidelines of Modeling” (Desel and Juhas, 2001). </p><p>Manufacturers who use precise and<br>graphical languages report good results and considerable productivity gains.<br>Their use within standardization increased along with the general increased<br>acceptance of such techniques (ETSI, 2013). The most core issue of Petri nets<br>is that they model behavioral aspects of distributed systems, i.e., systems<br>with components that are locally separated and communicate which each other<br>(Desel and Juhas, 2001). Since its invention by Carl Petri (Murata, 1989),<br>Petri nets have been found useful in modeling systems with distributed states<br>such as concurrency, synchronization, conflict(choice or decision) etc.</p><p><strong>1.2 STATEMENT OF PROBLEM</strong></p><ul><li>Traditional<br>methods of informal narrative specifications and ad hoc validation have<br>demonstrated their shortcomings as protocol bugs and incompatible<br>implementations crop up. Problems of ambiguous and incomplete specifications<br>are particularly severe for the ever growing number of protocol standards that<br>must be implemented by a wide community of users with diverse equipment. Poor<br>Protocol specification languages provide imprecise notations. This reduces<br>implementation of standard and does not enhance technical quality.</li><li>Poor<br>Protocol specification languages makes standardized specifications ambiguous<br>thereby degrading intuitiveness, decreasing consistency and making it<br>impossible to detect errors during standardization rather than implementation.</li></ul><p>Thus the project seek to<br>answer the question</p><ul><li>Are<br>there advantages of using Petri net over other protocol specification methods?</li></ul><p><strong>1.3 OBJECTIVES OF THE<br>STUDY</strong></p><p> The<br>main objective of this study is to use Colored Petri nets in connection<br>establishment protocol specification.</p><p> Specific<br>objectives include:</p><ul><li>To<br>investigate relevant literature on Communication Protocols and Petri nets.</li><li>To<br>investigate formal protocol specifications methods/techniques.</li><li>To<br>use Colored Petri net in modeling connection establishment protocol.</li><li>To<br>develop a piece of software for modeling connection establishment protocol<br>using Java Programming.</li></ul><p><strong>1.4 SCOPE AND LIMITATIONS OF THE<br>STUDY</strong></p><p>This project work generally<br>investigated Petri nets concept with the aim of adopting a type of Petri nets<br>called Coloured Petri net (CPN). CPN was further applied to communication<br>protocol i.e. its specification. Different types of Petri nets exist; such as<br>high level, Timed Petri nets etc but they were not looked at. There are many<br>areas of applications of Petri nets but this work centers only on communication<br>protocol.</p><p><strong>1.5 SIGNIFICANCE OF THE STUDY</strong></p><p>The significance of the<br>study includes the following:</p><ul><li>It<br>exposes the use of Petri Nets to some applications in communication and network<br>protocol specification.</li><li>It<br>demonstrates the feasibility of using Petri Net in Protocol specifications.</li><li>It<br>facilitates implementation of standard and enhances technical quality. This<br>makes standardized specifications unambiguous while improving intuitiveness.</li><li>Standard<br>Organizations can use it as a springboard for specification of systems.</li></ul><p><strong>1.6 DEFINITIONS OF TERMS</strong></p><p><strong>Specification</strong><br>– a detailed description, especially one providing information needed to make,<br>build or produce something.</p><p><strong>Concurrency </strong>–<br>taking place, existing or running parallel at the same time</p><p><strong>Client</strong> – a<br>computer program that request or obtains data from a program from another<br>computer</p><p><strong>Server</strong> – a computer<br>that stores data that are accessed by other computers in a network</p><p><strong>FDM</strong> –<br>Frequency-division multiplexing has the frequency spectrum of a link divided up<br>among the connections established across the link. Specifically the link<br>dedicates a frequency band to each connection for the duration of the<br>connection.</p><p><strong>TDM</strong> – Time-division multiplexing: For a TDM link, time is divided into frames of fixed duration, and each frame is divided into a fixed number of time slots. When the network establishes a connection across a link, the network dedicates one time slot in every frame to this connection.</p>
<br><p></p>