README.NS
上传用户:rrhhcc
上传日期:2015-12-11
资源大小:54129k
文件大小:3k
源码类别:

通讯编程

开发平台:

Visual C++

  1. ###########################################################
  2. # README         : Diffusion port into ns-2
  3. # author         : Padma Haldar
  4. #
  5. #
  6. ###########################################################
  7. We have completed the first-cut of porting diffusion testbed code into ns.
  8. Being the first-cut, we shall continue to work on
  9. extending/debugging/improving the port.
  10. You can get the diffusion code from the latest snapshot from http://www.isi.edu/nsnam/ns/ns-build.html
  11. Please note that since we plan to work on the port,
  12. you'll need to download the latest snapshot to see the most recent updates.
  13. There is a version of diffusion already in ns which was implemented
  14. several years back and had become relatively old and outdated. The newer
  15. version, ported from SCADDS group testbed has several features not present
  16. in the older version. We outline the highlights of this port below:
  17. * Directed Diffusion has been implemented by SCADDS group at USC/ISI.
  18. Briefly it consists of 
  19. (a) an application layer that generates interest (for sinks) and data (for
  20. sources)
  21. (b) a core Diffusion layer that serves as an input/output interface for
  22. all diffusion communications
  23. (c) filters that are used to manipulate data/messages that may have
  24. several applications (in-network aggregration, logging , debugging etc)
  25. (d) an elaborate data naming or attribute system.
  26. * Application layer APIs are defined for subscribing (unsubscribing) to
  27. certain types of data, publishing (unpublish) certain set of data and
  28. for sending and receiving data into/from the network.
  29. * Diffusion interests and data are represented by
  30. attribute-value-operation tuplet. The operation field is used to match
  31. attributes by means of certain operation rules.
  32. * The older version of diffusion already in ns has a very simple attribute
  33. representation (single integer); and filters were not implemented.
  34. * The port is under ~ns/diffusion3 dir and tcl methods for setting up
  35. core-diffusion and diffusion-application agents in a node can be found
  36. under ~ns/tcl/lib/{ns-lib,ns-diffusion}.tcl
  37. * tcl/ex/diffusion3/(simple-diffusion.tcl, diffusion-100.tcl,
  38. diffusion-500.tcl) are
  39. example scripts. The first scenario consists of a simple 3 node topology using ping application,
  40. whereas the second and third scripts use a 100 and 500 node topology
  41. respectively, using the the same ping app.
  42. tcl/test/test-suite-diffusion3.tcl is a test-suite for validating the
  43. port.
  44. * Basic ns tracing can be turned on as shown in the examples.
  45. * For the first-cut, we have a ping application defined as 
  46. (Application/DiffApp/Ping{Source/Sink}). We plan to have other diffusion applications in place in the fiture.
  47. Also note that we still don't have tcl APIs for setting up applications,
  48. attributes etc. we continue to work on them.
  49. *  Note that ns does not currently have a MAC layer that is energy-aware
  50. (for example, a TDMA MAC).  We expect to integrate an energy-aware MAC
  51. developed by Wei Ye shortly, but in the meantime diffusion users
  52. may wish to adjust the 802.11 MAC energy parameters to approximate a
  53. sensor-net specific MAC.
  54. * This version of the port is based on diffusion3.2.0
  55. Any comments, bug-reports and other feedbacks are welcome as usual.