Instant Download

Download your project material immediately after online payment.

Project File Details


100% Money Back Guarantee

File Type: MS Word (DOC) & PDF

File Size: 521 KB

Number of Pages:  76



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.




Title page i
Certification page ii
Approval page iii
Dedication page iv
Acknowledgement page v
Abstract vi
Table of Contents vii
List of figures viii
List of tables ix
1.1 Background of the study 1
1.2 Statement of Problem 3
1.3 Objectives of the Study 3
1.4 Scope and Limitation of the Study 4
1.5 Significance of the Study 4
1.6 Definition of Terms 4
2.1 Protocol Definition 6
2.2 Formal Protocol Specification 7
2.3 Meaning of Specifications and Verification 7
2.3.1 Specifications 7
2.3.2 Verifications 9
2.3.3 Components of a Specification 10
2.4 Overview of Protocol Specification Techniques/Methods 11
2.4.1 Finite State Automata 11
2.4.2 Abstract Machine 13
2.4.3 Formal Languages 14
2.4.4 Sequencing expression 16
2.4.5 Abstract Data type 17
2.4.6 Buffer Histories 17
2.5 Petri Net Defined 18
2.5.1 Types of Petri Nets 20
2.5.2 Properties of Petri Nets 23
2.5.3 Use of Petri Nets 24
3.1 Analysis of the Existing Protocol Specification Methods 26
3.1.1 Problems Inherent In the Existing Methods 26
3.2 Analysis of the Proposed Protocol Specification Method 28
3.2.1 Analysis of Connection Establishment Protocol 29
3.2.2 Mapping of Connection Establishment Protocol onto Petri Net 32
3.2.3 Use Case Diagram of the System 35
3.3 System Design 36
3.3.1 Class Diagram of the System 36
3.3.2 Sequence Diagram of the System 38
4.1 Choice of Programming Language 44
4.2 Sender and receiver Protocol Architecture 44
4.3 Screen Shots of Demos 46
4.4 System Specifications 48
4.5 User Guide 49
4.6 Performance Evaluation 49
5.1 Summary 53
5.2 Conclusion 53
5.3 Recommendation 53
Source Code




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).
Manufacturers who use precise and graphical languages report good results
and considerable productivity gains. Their use within standardization increased
along with the general increased acceptance of such techniques (ETSI, 2013). The
most core issue of Petri nets is that they model behavioral aspects of distributed
systems, i.e., systems with components that are locally separated and communicate
which each other (Desel and Juhas, 2001). Since its invention by Carl Petri
(Murata, 1989), Petri nets have been found useful in modeling systems with
distributed states such as concurrency, synchronization, conflict(choice or
decision) etc.
• 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. Poor Protocol specification
languages provide imprecise notations. This reduces implementation of
standard and does not enhance technical quality.
• Poor Protocol specification languages makes standardized specifications
ambiguous thereby degrading intuitiveness, decreasing consistency and
making it impossible to detect errors during standardization rather than
Thus the project seek to answer the question
• Are there advantages of using Petri net over other protocol specification
The main objective of this study is to use Colored Petri nets in connection
establishment protocol specification.
Specific objectives include:
• To investigate relevant literature on Communication Protocols and Petri nets.
• To investigate formal protocol specifications methods/techniques.
• To use Colored Petri net in modeling connection establishment protocol.
• To develop a piece of software for modeling connection establishment
protocol using Java Programming.
This project work generally investigated Petri nets concept with the aim of
adopting a type of Petri nets called Coloured Petri net (CPN). CPN was further
applied to communication protocol i.e. its specification. Different types of Petri
nets exist; such as high level, Timed Petri nets etc but they were not looked at.
There are many areas of applications of Petri nets but this work centers only on
communication protocol.
The significance of the study includes the following:
• It exposes the use of Petri Nets to some applications in communication and
network protocol specification.
• It demonstrates the feasibility of using Petri Net in Protocol specifications.
• It facilitates implementation of standard and enhances technical quality. This
makes standardized specifications unambiguous while improving
• Standard Organizations can use it as a springboard for specification of
Specification – a detailed description, especially one providing information needed
to make, build or produce something.
Concurrency – taking place, existing or running parallel at the same time
Client – a computer program that request or obtains data from a program from
another computer
Server – a computer that stores data that are accessed by other computers in a
FDM – Frequency-division multiplexing has the frequency spectrum of a link
divided up among the connections established across the link. Specifically the link
dedicates a frequency band to each connection for the duration of the connection.
TDM – 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.



DISCLAIMER: All project works, files and documents posted on this website, are the property/copyright of their respective owners. They are for research reference/guidance purposes only and the works are crowd-sourced. Please don’t submit someone’s work as your own to avoid plagiarism and its consequences. Most of the project works are provided by the schools' libraries to help in guiding students on their research. Use it as a guidance purpose only and not copy the work word for word (verbatim). If you see your work posted here, and you want it to be removed/credited, please call us on +2348157165603 or send us a mail together with the web address link to the work, to We will reply to and honor every request. Please notice it may take up to 24 or 48 hours to process your request.