(*^
::[ frontEndVersion = "Macintosh Mathematica Notebook Front End Version 2.1";
macintoshStandardFontEncoding;
keywords = "Initialization, AccessPoint, Scheduling, Mobile, Execute";
paletteColors = 128; showRuler; currentKernel;
fontset = title, inactive, noPageBreakBelow, nohscroll, preserveAspect, groupLikeTitle, center, M7, bold, L2, e8, 14, "Times"; ;
fontset = subtitle, inactive, noPageBreakBelow, nohscroll, preserveAspect, groupLikeTitle, center, M7, bold, L2, e6, 12, "Courier"; ;
fontset = subsubtitle, inactive, noPageBreakBelow, nohscroll, preserveAspect, groupLikeTitle, center, M7, italic, L2, e6, 14, "Times"; ;
fontset = section, inactive, noPageBreakBelow, nohscroll, preserveAspect, groupLikeSection, grayBox, M22, bold, L2, a20, 12, "Courier"; ;
fontset = subsection, inactive, noPageBreakBelow, nohscroll, preserveAspect, groupLikeSection, blackBox, M19, bold, L2, a15, 14, "Times"; ;
fontset = subsubsection, inactive, noPageBreakBelow, nohscroll, preserveAspect, groupLikeSection, whiteBox, M18, bold, L2, a12, 12, "Times"; ;
fontset = text, inactive, nohscroll, noKeepOnOnePage, preserveAspect, M7, L2, 12, "Courier"; ;
fontset = smalltext, inactive, nohscroll, noKeepOnOnePage, preserveAspect, M7, L2, 10, "Times"; ;
fontset = input, noPageBreakInGroup, nowordwrap, preserveAspect, groupLikeInput, M42, N23, bold, L-5, 12, "Courier"; ;
fontset = output, output, inactive, noPageBreakInGroup, nowordwrap, preserveAspect, groupLikeOutput, M42, N23, L-5, 12, "Courier"; ;
fontset = message, inactive, noPageBreakInGroup, nowordwrap, preserveAspect, groupLikeOutput, M42, N23, R65535, L-5, 12, "Courier"; ;
fontset = print, inactive, noPageBreakInGroup, nowordwrap, preserveAspect, groupLikeOutput, M42, N23, L-5, 12, "Courier"; ;
fontset = info, inactive, noPageBreakInGroup, nowordwrap, preserveAspect, groupLikeOutput, M42, N23, B65535, L-5, 12, "Courier"; ;
fontset = postscript, PostScript, formatAsPostScript, output, inactive, noPageBreakInGroup, nowordwrap, preserveAspect, groupLikeGraphics, M7, l34, w282, h287, L2, 12, "Courier"; ;
fontset = name, inactive, nohscroll, noKeepOnOnePage, preserveAspect, M7, italic, L2, 10, "Geneva"; ;
fontset = header, inactive, noKeepOnOnePage, preserveAspect, M7, L2, 18, "Times"; ;
fontset = leftheader, inactive, L2, 18, "Times"; ;
fontset = footer, inactive, noKeepOnOnePage, preserveAspect, center, M7, L2, 12, "Times"; ;
fontset = leftfooter, inactive, L2, 12, "Times"; ;
fontset = help, inactive, nohscroll, noKeepOnOnePage, preserveAspect, M7, L2, 10, "Times"; ;
fontset = clipboard, inactive, nohscroll, noKeepOnOnePage, preserveAspect, M7, L2, 12, "Times"; ;
fontset = completions, inactive, nohscroll, noKeepOnOnePage, preserveAspect, M7, L2, 12, "Times"; ;
fontset = special1, inactive, nohscroll, noKeepOnOnePage, preserveAspect, M7, L2, 12, "Times"; ;
fontset = special2, inactive, nohscroll, noKeepOnOnePage, preserveAspect, M7, L2, 12, "Times"; ;
fontset = special3, inactive, nohscroll, noKeepOnOnePage, preserveAspect, M7, L2, 12, "Times"; ;
fontset = special4, inactive, nohscroll, noKeepOnOnePage, preserveAspect, M7, L2, 12, "Times"; ;
fontset = special5, inactive, nohscroll, noKeepOnOnePage, preserveAspect, M7, L2, 12, "Times"; ;
]
:[font = title; inactive; dontNoPageBreakBelow; noKeepOnOnePage; preserveAspect; ]
Application of
Mathematica Based Simulation Template to
Demand Assigned MAC Described in IEEE P802.11-92/39
("The IBM MAC Proposal")
;[s]
4:0,1;1,0;15,1;27,0;135,-1;
2:2,18,13,Times,1,14,0,0,0;2,18,13,Times,3,14,0,0,0;
:[font = subtitle; inactive; dontNoPageBreakBelow; noKeepOnOnePage; preserveAspect; ]
Submitted By:
Larry Van Der Jagt
Knowledge Implementations, Inc.
32 Conklin Road
Warwick, NY 10990
Voice: 914-986-3492 FAX: 914-986-6441 EMail: KIILVDJ@attmail.com
Main Issues Addressed:
29.1 How Does IEEE 802.11 Do Simulation
9.1 MAC throughput & throughput probability
:[font = section; inactive; dontNoPageBreakBelow; noKeepOnOnePage; preserveAspect; startGroup; ]
Commercial Introduction
:[font = text; inactive; preserveAspect; endGroup; ]
This notebook contains code that has been developed by Knowledge Implementations, Inc.(KII) to support the IEEE 802.11 effort. The primary business of KII is providing contract engineering services. We have experience in many aspects of networking as well as significant experience in the area of process control. We have been involved with engineering work in the wireless networking field since 1987.
In order to help defer the cost of our involvement in generating this code we are requesting that individuals and organizations that obtain this code and use it pay a shareware fee of $200.00 to KII. As an incentive to do this we have encoded the source for the package Radio1.m that contains the main analysis routines that this notebook requires to execute. KII will provide unencoded source for this package to anyone that pays the shareware fee.
Copyright © 1992 Knowledge Implementations, Inc. (KII)
KII MAKES NO REPRESENTATIONS, EXPRESSED OR IMPLIED, WITH RESPECT TO ELECTRONIC MATERIALS, INCLUDING WITHOUT LIMITATIONS ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE, ALL OF WHICH IS EXPRESSLY DISCLAIMED. KII DOES NOT WARRANT THAT THE FUNCTIONS CONTAINED IN THIS ELECTRONIC MATERIAL WILL MEET YOUR REQUIREMENTS OR THAT THE OPERATION OF THE PROGRAM WILL BE UNINTERRUPTED OR ERROR FREE.
In addition to the foregoing, you should recognize that all software systems and their documentation contain errors and omissions. KII shall not be responsible under any circumstances for providing information on or corrections to errors and omissions discovered at any time in this Electronic Material, whether or not it is aware of the errors or omissions. KII does not recommend the use of this Electronic Material for applications in which errors or omissions could threaten life, injury or significant loss.
IN NO EVENT SHALL KII BE LIABLE FOR ANY LOST PROFITS, LOST BENEFITS, OR ANY CONSEQUENTIAL, INDIRECT, INCIDENTAL, SPECIAL OR PUNITIVE DAMAGES, WHETHER IN CONTRACT OR IN TORT, EVEN IF KII HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
This Electronic Material is copyrighted by KII.
In return for payment of the shareware fee KII agrees to grant the user a non-exclusive license to use this Electronic Material for personal use only. The user may not use this Electronic Material, directly or indirectly, alone or as part of a larger system, in whole or in part, by transferring it, reselling it or licensing it to others for compensation except for the actual cost of making the physical copy and/or transfer. Any copy transferred by the user to others must be complete and unaltered.
:[font = section; inactive; dontNoPageBreakBelow; noKeepOnOnePage; preserveAspect; startGroup; ]
Overview
:[font = text; inactive; preserveAspect; endGroup; ]
In IEEE P802.11-92/123 a detailed computational framework was established for the execution of performance simulations of Media Access Control State machines operated over Physical Layer Entities. This framework allowed the experimenter to locate stations geographically and to assign attributes to those stations. Some of the attributes that were defined were the station Location, TxPower, State and MessageProbability. A random sample from a statistical model was used to simulate the path loss between stations. The path loss matrix that results from this sampling was used to determine the signal level at each station resulting from transmissions from other stations. Each station maintained a StationTxQueue and a StationRxQueue that tracked messages that it desired to send and that it received. The filling and emptying of these queues was performed by traffic generating functions and by a state machine model of MAC operation. In document 92/123 the state machine model used was a very simple ALOHA type model. This document extends the work of 92/123 by implementing state machines for a demand assigned MAC similar to that described in Documents IEEE P802.11/92-39 and IEEE P802.11/91-74 submitted by K.S. Natarajan et al.. At this time the feature described in 92/39 that allows for direct communication between mobiles during the C period has not been implemented. Also, at this time the assumption is made that the station is registered with an access point at all times. The addition of registration and direct C period communications would be possible in future work. This document also makes some improvements to the basic framework of document 92/123 that make it easier to use for a wide variety of situations and state machines.
The state machines illustrated in this document continue the process of demonstrating the usefulness of this framework in testing MAC/PHY choices and evaluating performance. In their current state they implement many of the functions described in the previous submittal, they do not implement many of the functions, such as sychronization that will be necessary for the final MAC/PHY design. It should be clear, however, from the functions that are performed that further enhancements would allow these other functions to be implemented and tested. As is the case of any set of state machines that are in the process of being designed, we fully expect that these machines are not perfect and that testing and optimization will reveal bugs both structural and accidental. One area in which some detail not included in the original submittals that has been added is in the area of the scheduling algorithm and in the choice of when within the C period a station will elect to attempt to gain a bandwidth reservation. Also, as it stands the amount of overhead associated with the various headers is probably larger than it needs to be and some modifications might be done in this area. As was the case with 92/123 we have not made any attempts at improving the code for speed. Our opinion here is that once the scheme that needs to be thoroughly evaluated is implemented that optimization for speed will be in order. In other words, this represents a snapshot of work in progress rather than completed analysis.
;[s]
13:0,0;375,1;383,0;385,1;392,0;394,1;399,0;404,1;422,0;704,1;718,0;725,1;739,0;3281,-1;
2:7,14,10,Courier,0,12,0,0,0;6,14,10,Courier,1,12,0,0,0;
:[font = section; inactive; dontNoPageBreakBelow; noKeepOnOnePage; preserveAspect; startGroup; ]
Initialization
:[font = text; inactive; preserveAspect; ]
The process of executing a simulation begins with the loading of the support functions that are contained in the package RadioLAN`Radio1. Each of these functions will be described in the sections of the notebook that follow. The next cell loads the support packages. This package also uses the standard Mathematica packages Statistics`ContinuousDistributions and Statistics`DiscreteDistributions. These standard packages also need the standard packages "Statistics`NormalDistribution`", "Statistics`DescriptiveStatistics`", "Statistics`Common`DistributionsCommon`", and "Statistics`InverseStatisticalFunctions`". The loading of all of these packages is handled automaticaly by the package RadioSupport1. The next cell loads the support packages.
;[s]
5:0,0;121,1;137,0;305,2;316,0;752,-1;
3:3,14,10,Courier,0,12,0,0,0;1,14,10,Courier,1,12,0,0,0;1,14,10,Courier,2,12,0,0,0;
:[font = input; initialization; dontNoPageBreakInGroup; noKeepOnOnePage; preserveAspect; ]
*)
<