File: README

package info (click to toggle)
tinyos 2.1.2%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: buster, jessie, jessie-kfreebsd, stretch
  • size: 47,476 kB
  • ctags: 36,607
  • sloc: ansic: 63,646; cpp: 14,974; java: 10,358; python: 5,215; makefile: 1,724; sh: 902; asm: 597; xml: 392; perl: 74; awk: 46
file content (63 lines) | stat: -rw-r--r-- 2,460 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
TestSimComm, 5/22/07 

This application tests the TOSSIM radio model by setting up a simple
hidden terminal case. It checks whether packets collide correctly and
whether SNR thresholds work correctly..

The relevant output channel is "TestComm".

There are three test cases:

test-equal.py: Tests whether two nodes that are hidden terminals
cause collisions. The two nodes have equal signal strengths, so a
collision should corrupt both packets. If one packet is lost due to
a collision, the other should be too. Note that packets can be 
lost in the absence of collisions due to external interference.

test-unequal.py: Tests whether two nodes that are hidden terminals
cause collisions. The two nodes have signal strengths that differ
by 10dB, and node 1 is stronger. This means that node 2 should hear
node 1's packets if they start first, but not second. If a packet
from node 1 is lost, the packet from node 3 should be as well. However,
a loss from node 3 does not imply a loss from node 1, as it is
stronger.

test-asym.py: Tests whether asymmetric links can have high delivery
rates but low acknowledgement rates. Checks that acknowledgements
follow SNR curves properly. In this test, both 1 and 3 have high
quality links (-60 dBm) to node 2, but the reverse links (2 to 1 and
2 to 3) are much worse (-80 dBm). You should see packet deliveries
like test-equal.py but few acknowledgements.

The ./run script runs all the three tests and counts the number of
ACKed and non-ACKed send packets. The output will look something
like this:

test-equal.log
           ACK           NOACK   total
         1 21197         19666   40863
         3 21320         19543   40863
test-asym.log
           ACK           NOACK   total
         1 4930          35923   40853
         3 4983          35870   40853
test-unequal.log
           ACK           NOACK   total
         1 27619         12966   40585
         3 21040         19545   40585

ACK is the number of acknowledged packets from that node to node 2;
NOACK is the number of unacknowledged packets. Total is the sum.
The output should show three things:

  1) In test-equal, both node 1 and node 3 have very
  similar delivery ratios, losing about half of their packets.

  2) In test-asym, the number of ACKs is much less than in
  test-equal because the reverse links are poor.

  3) In test-unequal, node 1 has more acknowledged packets
  than node 3, because it has a higher SNR link.

Philip Levis