TagStreamerUseCaseScenarios

From RifidiWiki

Revision as of 22:42, 13 February 2008 by Kyle (Talk | contribs)

Jump to: navigation, search

Starting up Tag Streamer alpha 2.0

  1. Follow the instructions to download Rifidi Tag Streamer from source
    1. Download the following packages
  2. Open up the Lauch Configuration wizard by going to run->Open Run Dialog...
    Streamer-setup-osgi.png
  3. Create a new OSGI Framwork launch configuration
    Streamer-setup-plugins.png
    1. Click 'Deselect All'
    2. Click the box next to org.rifidi.streamer
    3. Click 'Add Required Bundles'
    4. Click the boxes next to all the reader bundles (i.e. org.rifidi.emulator.reader.llrp, org.rifidi.emulator.reader.alien, etc)
    5. Click 'Apply'
    6. Click 'Run'
  4. The application should now fail with a FileNotFound Exception. You need to place the four XML files (loadTestSuite.xml, scenario.xml, components.xml, and batch.xml) into this directory

Use Case: Bursts of tags

This use case simulates scenarios when you have short bursts of tags on many readers, such as several dock doors. We define a scenario suite with five scenarios, each having one reader. You can think of this as having five dock doors. Then we define the actual readers in the components.xml. This defines what kind of reader will be used in the scenarios as well as some additional information about the readers, such as their IP address and how many GPIO ports they have. The batchSuite defines the patterns of tags that will be seen by the readers. The first thing that this batch does is wait for a random amount of time so that all batches do not start at the same time. We also define a pattern of 300 tags (number) that are seen in bursts of 100 tags each (burstNumber). The reader is shown the burst for 500 ms (exec Time). Then, 1 second later (burstInterval), the next burst will be shown, and so on until all 300 tags have been processed by the reader. Finally a LoadTestSuite is defined that defines a)The path to the xml files that are used (scenario, components, and batch), and the execution structure. For this particular load test suite, we wait for one second then start up all scenario-batch pairs at the same time

Scenarios

The following scenario describes how the readers are located. In this special case all scenarios consist of only one reader. Because none of these readers have following readers the traveltime is 0.

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<scenarioSuite>
    <scenario id="1">
        <pathItem>
            <readerID>1</readerID>
            <travelTime>0</travelTime>
        </pathItem>
    </scenario>
    <scenario id="2">
        <pathItem>
            <readerID>2</readerID>
            <travelTime>0</travelTime>
        </pathItem>
    </scenario>
     <scenario id="3">
        <pathItem>
            <readerID>3</readerID>
            <travelTime>0</travelTime>
        </pathItem>
    </scenario>
     <scenario id="4">
        <pathItem>
            <readerID>4</readerID>
            <travelTime>0</travelTime>
        </pathItem>
    </scenario>
     <scenario id="5">
        <pathItem>
            <readerID>5</readerID>
            <travelTime>0</travelTime>
        </pathItem>
    </scenario>
</scenarioSuite>

Components

This file describes all the components the streamer should load. In this case we describe 5 LLRP Readers. Wich will be emulated by RifidiEmulator.

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<componentSuite>
	<readerComponents id="1">
		<reader>
			<numAntennas>1</numAntennas>
			<numGPIs>4</numGPIs>
			<numGPOs>4</numGPOs>
			<propertiesMap>
				<entry>
					<key>llrp_inet_address</key>
					<value>127.0.0.1:5084</value>
				</entry>
				<entry>
					<key>inet_address</key>
					<value>127.0.0.1:10101</value>
				</entry>
				<entry>
					<key>servermode</key>
					<value>true</value>
				</entry>
			</propertiesMap>
			<readerClassName>
				org.rifidi.emulator.reader.llrp.module.LLRPReaderModule
			</readerClassName>
			<readerName>LLRPReader1</readerName>
		</reader>
	</readerComponents>
	<readerComponents id="2">
		<reader>
			<numAntennas>1</numAntennas>
			<numGPIs>4</numGPIs>
			<numGPOs>4</numGPOs>
			<propertiesMap>
				<entry>
					<key>llrp_inet_address</key>
					<value>127.0.0.1:5085</value>
				</entry>
				<entry>
					<key>inet_address</key>
					<value>127.0.0.1:10102</value>
				</entry>
				<entry>
					<key>servermode</key>
					<value>true</value>
				</entry>
			</propertiesMap>
			<readerClassName>
				org.rifidi.emulator.reader.llrp.module.LLRPReaderModule
			</readerClassName>
			<readerName>LLRPReader2</readerName>
		</reader>
	</readerComponents>
	<readerComponents id="3">
		<reader>
			<numAntennas>1</numAntennas>
			<numGPIs>4</numGPIs>
			<numGPOs>4</numGPOs>
			<propertiesMap>
				<entry>
					<key>llrp_inet_address</key>
					<value>127.0.0.1:5086</value>
				</entry>
				<entry>
					<key>inet_address</key>
					<value>127.0.0.1:10103</value>
				</entry>
				<entry>
					<key>servermode</key>
					<value>true</value>
				</entry>
			</propertiesMap>
			<readerClassName>
				org.rifidi.emulator.reader.llrp.module.LLRPReaderModule
			</readerClassName>
			<readerName>LLRPReader3</readerName>
		</reader>
	</readerComponents>
	<readerComponents id="4">
		<reader>
			<numAntennas>1</numAntennas>
			<numGPIs>4</numGPIs>
			<numGPOs>4</numGPOs>
			<propertiesMap>
				<entry>
					<key>llrp_inet_address</key>
					<value>127.0.0.1:5087</value>
				</entry>
				<entry>
					<key>inet_address</key>
					<value>127.0.0.1:10104</value>
				</entry>
				<entry>
					<key>servermode</key>
					<value>true</value>
				</entry>
			</propertiesMap>
			<readerClassName>
				org.rifidi.emulator.reader.llrp.module.LLRPReaderModule
			</readerClassName>
			<readerName>LLRPReader4</readerName>
		</reader>
	</readerComponents>
	<readerComponents id="5">
		<reader>
			<numAntennas>1</numAntennas>
			<numGPIs>4</numGPIs>
			<numGPOs>4</numGPOs>
			<propertiesMap>
				<entry>
					<key>llrp_inet_address</key>
					<value>127.0.0.1:5088</value>
				</entry>
				<entry>
					<key>inet_address</key>
					<value>127.0.0.1:10104</value>
				</entry>
				<entry>
					<key>servermode</key>
					<value>true</value>
				</entry>
			</propertiesMap>
			<readerClassName>
				org.rifidi.emulator.reader.llrp.module.LLRPReaderModule
			</readerClassName>
			<readerName>LLRPReader5</readerName>
		</reader>
	</readerComponents>
</componentSuite>

Batch

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<batchSuite>
	<batch id="1">
		<waitAction>
			<maxWaitTime>100</maxWaitTime>
			<minWaitTime>200</minWaitTime>
			<random>true</random>
		</waitAction>
		<tagAction>
			<execDuration>200</execDuration>
			<number>20</number>
			<prefix>eef</prefix>
			<regenerate>true</regenerate>
			<tagGen>GEN2</tagGen>
			<tagType>CustomEPC96</tagType>
		</tagAction>
	</batch>
</batchSuite>

LoadTestSuite

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<loadTestSuite>
    <fileUnit>
        <fileName>components.xml</fileName>
        <fileType>COMPONENT</fileType>
    </fileUnit>
    <fileUnit>
        <fileName>batches.xml</fileName>
        <fileType>BATCH</fileType>
    </fileUnit>
    <fileUnit>
        <fileName>scenario.xml</fileName>
        <fileType>SCENARIO</fileType>
    </fileUnit>
    <testUnit iterations="5000">
        <waitAction>
            <maxWaitTime>1000</maxWaitTime>
            <minWaitTime>0000</minWaitTime>
            <random>false</random>
        </waitAction>
        <batchAction>
            <batchID>1</batchID>
            <scenarioID>1</scenarioID>
        </batchAction>
        <batchAction>
            <batchID>1</batchID>
            <scenarioID>2</scenarioID>
        </batchAction>
        <batchAction>
            <batchID>1</batchID>
            <scenarioID>3</scenarioID>
        </batchAction>
        <batchAction>
            <batchID>1</batchID>
            <scenarioID>4</scenarioID>
        </batchAction>
        <batchAction>
            <batchID>1</batchID>
            <scenarioID>5</scenarioID>
        </batchAction>
    </testUnit>
</loadTestSuite>
Personal tools