README
上传用户:joranyuan
上传日期:2022-06-23
资源大小:3306k
文件大小:5k
源码类别:

网络

开发平台:

Others

  1. This is a basic application testing the execution of DRAND,
  2. a distributed TDMA scheduling algorithm. More information about
  3. DRAND can be found in the tech. report:
  4. http://www.csc.ncsu.edu/faculty/rhee/export/zmac/software/drand/drand.htm
  5. The application is fairly simple, it will run DRAND and will use 
  6. SODbg to print out various debugging information. To enable various
  7. debug messages, use the Makefile. As an example:
  8. PFLAGS= -DDEBUG -DHELLO_DEBUG
  9. will enable debug for the neighbor discovery phase of DRAND.
  10. PFLAGS= -DDEBUG -DES_DEBUG
  11. should enable the final output, priting out slot/frame/energy
  12. details of DRAND
  13. The following output is enabled by -DDEBUG and -DES_DEBUG.
  14. OUTPUT
  15. ------
  16. 1) HELLO phase
  17. *******************************************************
  18. TwoHopNodeID(HELLO) : 37  255  255
  19. TwoHopNodeID(HELLO) : 2  255  255
  20. TwoHopNodeID(HELLO) : 9  255  255
  21. TwoHopNodeID(HELLO) : 21  255  255
  22. TwoHopNodeID(HELLO) : 38  255  255
  23. TwoHopNodeID(HELLO) : 10  255  255
  24. TwoHopNodeID(HELLO) : 36  255  255
  25. TwoHopNodeID(HELLO) : 5  255  255
  26. TwoHopNodeID(HELLO) : 31  255  255
  27. TwoHopNodeID(HELLO) : 40  255  255
  28. TwoHopNodeID(HELLO) : 15  255  255
  29. TwoHopNodeID(HELLO) : 41  255  255
  30. TwoHopNodeID(HELLO) : 43  255  255
  31. TwoHopNodeID(HELLO) : 42  255  255
  32. TwoHopNodeID(HELLO) : 17  255  255
  33. TwoHopNodeID(HELLO) : 18  255  255
  34. TwoHopNodeID(HELLO) : 14  255  255
  35. OneHopNodeID(HELLO) : 28  255  255
  36. OneHopNodeID(HELLO) : 39  255  255
  37. OneHopNodeID(HELLO) : 1  255  255
  38. OneHopNodeID(HELLO) : 3  255  255
  39. OneHopNodeID(HELLO) : 24  255  255
  40. OneHopNodeID(HELLO) : 32  255  255
  41. MyInfo : 27  255  255
  42. *******************************************************
  43. The very first output you should see is the neighbor discovery
  44. details, after HELLO_PERIOD ms.
  45. - Each row gives you information about one neighbor
  46. - The first column tells you whether it is one/two hop neighbor
  47. - second column is node id of the neighbor
  48. - third column is the slot number
  49. - fourth column is the local frame size (see Z-MAC paper for details)
  50.        
  51. At neighbor discovery phase, slot/frame details are not yet known, so
  52. the default is 255.
  53. 2) DRAND TDMA slot phase
  54. After the DRAND phase is over, nodes know their slot numbers.
  55. *******************************************************
  56. ENERGY HELLO sID 27 energy 6 
  57. MESSAGE sID 27 mCt 77 rReq 3 rGra 60 mTime 103 sTime 9561
  58. MESSAGE sID 27 reqCt 5 graCt 66 rejCt 1 relCt 1 twoCt 4
  59. MESSAGE sID 27 Round 27 slotNum 8 mRound 2 sRound 40572
  60. *******************************************************
  61. TwoHopNodeID(DRAND) : 37  255  255
  62. TwoHopNodeID(DRAND) : 2  2  255
  63. TwoHopNodeID(DRAND) : 9  0  255
  64. TwoHopNodeID(DRAND) : 21  255  255
  65. TwoHopNodeID(DRAND) : 38  255  255
  66. TwoHopNodeID(DRAND) : 10  4  255
  67. TwoHopNodeID(DRAND) : 36  255  255
  68. TwoHopNodeID(DRAND) : 5  3  255
  69. TwoHopNodeID(DRAND) : 31  2  255
  70. TwoHopNodeID(DRAND) : 40  7  255
  71. TwoHopNodeID(DRAND) : 15  1  255
  72. TwoHopNodeID(DRAND) : 41  5  255
  73. TwoHopNodeID(DRAND) : 43  4  255
  74. TwoHopNodeID(DRAND) : 42  255  255
  75. TwoHopNodeID(DRAND) : 17  6  255
  76. TwoHopNodeID(DRAND) : 18  255  255
  77. TwoHopNodeID(DRAND) : 14  255  255
  78. OneHopNodeID(DRAND) : 28  7  255
  79. OneHopNodeID(DRAND) : 39  3  255
  80. OneHopNodeID(DRAND) : 1  6  255
  81. OneHopNodeID(DRAND) : 3  1  255
  82. OneHopNodeID(DRAND) : 24  5  255
  83. OneHopNodeID(DRAND) : 32  255  255
  84. *******************************************************
  85. top 4 lines give some information about time/energy consumption.
  86.   e.g. mCt = total number of messages
  87.        slotNum = TDMA slot number assigned
  88.        mTime,sTime = total time for completion, in mticks/sticks respectively.
  89. Note that some one/two hop slot numbers are still not known, hence the next phase
  90. (REPORT phase) is exected for this purpose.
  91. 3) REPORT phase
  92. Local Frame Size = 16 for maxSlot = 14
  93. This tells you that the local frame size is 16, and the maximum TDMA slot size
  94. within two hops is 14.
  95. 4) FRAME phase
  96. In thise phase, the local frame size is disseminated within two hops. The final
  97. output should be:
  98. *******************************************************
  99. TwoHopNodeID(FRAME) : 37  14  16
  100. TwoHopNodeID(FRAME) : 2  2  16
  101. TwoHopNodeID(FRAME) : 9  0  16
  102. TwoHopNodeID(FRAME) : 21  9  16
  103. TwoHopNodeID(FRAME) : 38  13  16
  104. TwoHopNodeID(FRAME) : 10  4  16
  105. TwoHopNodeID(FRAME) : 36  10  16
  106. TwoHopNodeID(FRAME) : 5  3  16
  107. TwoHopNodeID(FRAME) : 31  2  16
  108. TwoHopNodeID(FRAME) : 40  7  16
  109. TwoHopNodeID(FRAME) : 15  1  16
  110. TwoHopNodeID(FRAME) : 41  5  16
  111. TwoHopNodeID(FRAME) : 43  4  16
  112. TwoHopNodeID(FRAME) : 42  11  16
  113. TwoHopNodeID(FRAME) : 17  6  16
  114. TwoHopNodeID(FRAME) : 18  13  16
  115. TwoHopNodeID(FRAME) : 14  9  16
  116. OneHopNodeID(FRAME) : 28  7  16
  117. OneHopNodeID(FRAME) : 39  3  16
  118. OneHopNodeID(FRAME) : 1  6  16
  119. OneHopNodeID(FRAME) : 3  1  16
  120. OneHopNodeID(FRAME) : 24  5  16
  121. OneHopNodeID(FRAME) : 32  12  16
  122. MyInfo : 27  8  16
  123. *******************************************************
  124. Note that now, there is no entry '255', so all information about slot/frame of
  125. nodes within one/two hops is known.
  126. At this stage, DRAND evokes the event Drand.gotFrame(), at which Z-MAC can
  127. begin data transmission.