© 2008
JOSEPH CWIKLA
ALL RIGHTS RESERVED
SPECIFYING, IMPLEMENTING AND VERIFYING LAYERED NETWORK
PROTOCOLS
A Thesis
Presented to
The Graduate Faculty of The University of Akron
In Partial Fulfillment
of the Requirements for the Degree
Master of Science
Joseph Cwikla
August, 2008
ii
SPECIFYING, IMPLEMENTING AND VERIFYING LAYERED NETWORK
PROTOCOLS
Joseph Cwikla
Thesis
Approved: Accepted:
______________________________ ______________________________
Advisor Dean of the College
Dr. Kathy J. Liszka Dr. Ronald F. Levant
______________________________ ______________________________
Faculty Reader Dean of the Graduate School
Dr. Timothy W. O’Neil Dr. George R. Newkome
______________________________ ______________________________
Faculty Reader Date
Dr. Yingcai Xiao
______________________________
Department Chair
Dr. Wolfgang Pelz
iii
ABSTRACT
As computing power increases, software is developed to make use of the
increased capacity. A transition is currently in progress as the growth of higher level
scripting languages enables a larger number of programmers to develop programs in
larger and more diverse domains. The world of software program development is
becoming readily accessible to a larger audience.
Concurrently, digital communication has revolutionized the way that people
interact. Protocols are established to enable new types of communication. Successful
protocols are built in layers; each layer makes use of the one below it and providing
services to the layer directly above it. As new uses are discovered for digital
communications, new protocols will need to be developed to support them.
Simulations are useful when communication protocols are developed. The
simulation can be specified, implemented and its runtime behavior verified against the
specification.
This thesis proposes and demonstrates that there exists a set of software
development tools that are readily accessible and end to end to address the problem of
specifying, implementing and verifying layered communication protocol simulations.
iv
TABLE OF CONTENTS
CHAPTER Page
I. INTRODUCTION................................................................................................1
II. TOOLS .................................................................................................................5
2.1 Specification Tools ..................................................................................6
2.2 Implementation Tools ............................................................................21
2.3 Verification Tools ..................................................................................25
2.4 Example .................................................................................................29
III. MODEL..............................................................................................................36
3.1 The Wireless Medium Layer .................................................................37
3.2 The Physical Medium Dependency Layer.............................................38
3.3 The Wireless Channel Layer..................................................................38
3.4 The Physical Layer Convergence Procedure .........................................39
IV. SPECIFICATION...............................................................................................41
4.1 Wireless Medium Specification.............................................................41
4.2 Physical Medium Dependency Specification ........................................45
4.3 Wireless Channel Specification .............................................................47
4.4 Physical Layer Convergence Procedure Specification ..........................48
V. IMPLEMENTATION ........................................................................................51
5.1 Wireless Medium Implementation..........................................................52
v
5.2 Physical Medium Dependency Implementation ....................................61
5.3 Wireless Channel Implementation.........................................................69
5.4 Physical Layer Convergence Procedure Implementation......................74
VI. DISCUSSION.....................................................................................................84
BIBLIOGRAPHY........................................................................................................87
APPENDICES .............................................................................................................89
APPENDIX A WIRELESS MEDIUM VERIFICATION CODE .........................90
APPENDIX B PHYSICAL MEDIUM DEPENDENCY
VERIFICATION CODE................................................................99
APPENDIX C WIRELESS CHANNEL VERIFICATION CODE.....................106
APPENDIX D PHYSICAL LAYER CONVERGENCE PROCEDURE
VERIFICATION CODE...............................................