LargeNet-doc.ned 4.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. //
  2. // Copyright (C) 2003 CTIE, Monash University
  3. //
  4. // This program is free software; you can redistribute it and/or
  5. // modify it under the terms of the GNU General Public License
  6. // as published by the Free Software Foundation; either version 2
  7. // of the License, or (at your option) any later version.
  8. //
  9. // This program is distributed in the hope that it will be useful,
  10. // but WITHOUT ANY WARRANTY; without even the implied warranty of
  11. // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  12. // GNU General Public License for more details.
  13. //
  14. // You should have received a copy of the GNU General Public License
  15. // along with this program; if not, write to the Free Software
  16. // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
  17. //
  18. //
  19. // @page largenet.html, LargeNet model description
  20. //
  21. // The ~LargeNet model demonstrates how one can put together models of large
  22. // LANs with little effort.
  23. //
  24. // ~LargeNet models a large Ethernet campus backbone. As configured in the
  25. // default omnetpp.ini, it contains altogether about 8000 computers
  26. // and 900 switches and hubs. This results in about 165MB process size
  27. // on my (32-bit) linux box when I run the simulation.
  28. // The model mixes all kinds of Ethernet technology: Gigabit Ethernet,
  29. // 100Mb full-duplex, 100Mb half-duplex, 10Mb UTP, 10Mb bus ("thin Ethernet"),
  30. // switched hubs, repeating hubs.
  31. //
  32. // The topology is in LargeNet.ned, and it looks like this: there's chain
  33. // of n=15 large "backbone" switches (switchBB[]) as well as four more
  34. // large switches (switchA, switchB, switchC, switchD) connected to
  35. // somewhere the middle of the backbone (switchBB[4]). These 15+4 switches
  36. // make up the backbone; the n=15 number is configurable in omnetpp.ini.
  37. //
  38. // Then there're several smaller LANs hanging off each backbone switch.
  39. // There're three types of LANs: small, medium and large (represented by
  40. // compound module types ~SmallLAN, ~MediumLAN, ~LargeLAN). A small LAN
  41. // consists of a few computers on a hub (100Mb half-duplex); a medium
  42. // LAN consists of a smaller switch with a hub on one of its port
  43. // (and computers on both); the large one also has a switch and a hub,
  44. // plus an Ethernet bus hanging of one port of the hub (there's still hubs
  45. // around with one BNC connector besides the UTP ones).
  46. // By default there're 5..15 LANs of each type hanging off each backbone
  47. // switch. (These numbers are also omnetpp.ini parameters like the length
  48. // of the backbone.)
  49. //
  50. // The application model which generates load on the simulated LAN is
  51. // simple yet powerful. It can be used as a rough model for any
  52. // request-response based protocol such as SMB/CIFS (the Windows file
  53. // sharing protocol), HTTP, or a database client-server protocol.
  54. //
  55. // Every computer runs a client application (~EtherAppCli) which connects
  56. // to one of the servers. There's one server attached to switches A, B,
  57. // C and D each: serverA, serverB, serverC and serverD -- server selection
  58. // is configured in omnetpp.ini). The servers run ~EtherAppSrv.
  59. // Clients periodically send a request to the server, and the request
  60. // packet contains how many bytes the client wants the server to send back
  61. // (this can mean one or more Ethernet frames, depending on the byte count).
  62. // Currently the request and reply lengths are configured in omnetpp.ini
  63. // as intuniform(50,1400) and truncnormal(5000,5000).
  64. //
  65. // The volume of the traffic can most easily be controlled with the
  66. // time period between sending requests; this is currently
  67. // set in omnetpp.ini to exponential(0.50) (that is, average 2
  68. // requests per second). This already causes frames to be dropped
  69. // in some of the backbone switches, so the network is a bit
  70. // overloaded with the current settings.
  71. //
  72. // The model generates extensive statistics. All MACs (and most other
  73. // modules too) write statistics into omnetpp.sca at the end
  74. // of the simulation: number of frames sent, received, dropped, etc.
  75. // These are only basic statistics, however it still makes the
  76. // scalar file to be several ten megabytes in size. You can use
  77. // the analysis tools provided with OMNeT++ to visualized the data
  78. // in this file. (If the file size is too big, writing statistics
  79. // can be disabled, by putting **.scalar-recording=false in the ini file.)
  80. // The model can also record output vectors, but this is currently
  81. // disabled in omnetpp.ini because the generated file can easily reach
  82. // gigabyte sizes.
  83. //
  84. package inet.examples.ethernet.lans;