src/click/examples/nsclick-raw-wlan.cc
author Lalith Suresh <suresh.lalith@gmail.com>
Mon, 23 May 2011 10:54:41 -0400
changeset 7258 d8d347dcf5c3
parent 7105 b8c76878fbdf
child 7410 21169501d589
permissions -rw-r--r--
Adds Simulator::Destroy () to nsclick-simple-lan.cc and nsclick-raw-wlan.cc
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
6826
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
     1
/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
     2
/*
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
     3
 * This program is free software; you can redistribute it and/or modify
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
     4
 * it under the terms of the GNU General Public License version 2 as
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
     5
 * published by the Free Software Foundation;
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
     6
 *
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
     7
 * This program is distributed in the hope that it will be useful,
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
     8
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
     9
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    10
 * GNU General Public License for more details.
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    11
 *
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    12
 * You should have received a copy of the GNU General Public License
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    13
 * along with this program; if not, write to the Free Software
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    14
 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    15
 *
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    16
 * Authors: Lalith Suresh <suresh.lalith@gmail.com>
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    17
 */
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    18
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    19
// Scenario: node A (using Click) sends packets to node B (not using
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    20
// Click)
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    21
//
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    22
//  (Click)             (non-Click)
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    23
//    A )))     WLAN      ((( B
6959
8e5aa0f947af Runs 'check-style.py --level=3 -i' on src/click/*
Lalith Suresh <suresh.lalith@gmail.com>
parents: 6869
diff changeset
    24
// (172.16.1.1)         (172.16.1.2)
6826
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    25
//    (eth0)
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    26
//
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    27
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    28
#include "ns3/core-module.h"
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    29
#include "ns3/network-module.h"
6869
691d93df56ae Fixes Click examples breakage
Lalith Suresh <suresh.lalith@gmail.com>
parents: 6865
diff changeset
    30
#include "ns3/internet-module.h"
691d93df56ae Fixes Click examples breakage
Lalith Suresh <suresh.lalith@gmail.com>
parents: 6865
diff changeset
    31
#include "ns3/applications-module.h"
691d93df56ae Fixes Click examples breakage
Lalith Suresh <suresh.lalith@gmail.com>
parents: 6865
diff changeset
    32
#include "ns3/wifi-module.h"
6826
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    33
#include "ns3/click-internet-stack-helper.h"
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    34
#include "ns3/log.h"
6842
98b4cbac259f Fixes Click build which was affected by recent modular refactoring work
Lalith Suresh <suresh.lalith@gmail.com>
parents: 6826
diff changeset
    35
#include "ns3/mobility-helper.h"
6826
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    36
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    37
using namespace ns3;
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    38
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    39
void ReceivePacket (Ptr<Socket> socket)
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    40
{
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    41
  NS_LOG_UNCOND ("Received one packet!");
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    42
}
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    43
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    44
int main (int argc, char *argv[])
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    45
{
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    46
#ifdef NS3_CLICK
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    47
  double rss = -80;
6959
8e5aa0f947af Runs 'check-style.py --level=3 -i' on src/click/*
Lalith Suresh <suresh.lalith@gmail.com>
parents: 6869
diff changeset
    48
  Time interPacketInterval = Seconds (1.0);
6826
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    49
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    50
  // Setup nodes
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    51
  NodeContainer wifiNodes;
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    52
  wifiNodes.Create (2);
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    53
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    54
  // Get Wifi devices installed on both nodes.
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    55
  // Adapted from examples/wireless/wifi-simple-adhoc.cc
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    56
  std::string phyMode ("DsssRate1Mbps");
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    57
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    58
  // disable fragmentation for frames below 2200 bytes
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    59
  Config::SetDefault ("ns3::WifiRemoteStationManager::FragmentationThreshold", StringValue ("2200"));
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    60
  // turn off RTS/CTS for frames below 2200 bytes
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    61
  Config::SetDefault ("ns3::WifiRemoteStationManager::RtsCtsThreshold", StringValue ("2200"));
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    62
  // Fix non-unicast data rate to be the same as that of unicast
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    63
  Config::SetDefault ("ns3::WifiRemoteStationManager::NonUnicastMode",
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    64
                      StringValue (phyMode));
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    65
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    66
  WifiHelper wifi;
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    67
  wifi.SetStandard (WIFI_PHY_STANDARD_80211b);
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    68
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    69
  YansWifiPhyHelper wifiPhy =  YansWifiPhyHelper::Default ();
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    70
  // This is one parameter that matters when using FixedRssLossModel
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    71
  // set it to zero; otherwise, gain will be added
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    72
  wifiPhy.Set ("RxGain", DoubleValue (0) );
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    73
  // ns-3 supports RadioTap and Prism tracing extensions for 802.11b
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    74
  wifiPhy.SetPcapDataLinkType (YansWifiPhyHelper::DLT_IEEE802_11_RADIO);
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    75
7105
b8c76878fbdf Click module coding style cleanup
Lalith Suresh <suresh.lalith@gmail.com>
parents: 6959
diff changeset
    76
  YansWifiChannelHelper wifiChannel;
6826
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    77
  wifiChannel.SetPropagationDelay ("ns3::ConstantSpeedPropagationDelayModel");
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    78
  // The below FixedRssLossModel will cause the rss to be fixed regardless
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    79
  // of the distance between the two stations, and the transmit power
6959
8e5aa0f947af Runs 'check-style.py --level=3 -i' on src/click/*
Lalith Suresh <suresh.lalith@gmail.com>
parents: 6869
diff changeset
    80
  wifiChannel.AddPropagationLoss ("ns3::FixedRssLossModel","Rss",DoubleValue (rss));
6826
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    81
  wifiPhy.SetChannel (wifiChannel.Create ());
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    82
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    83
  // Add a non-QoS upper mac, and disable rate control
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    84
  NqosWifiMacHelper wifiMac = NqosWifiMacHelper::Default ();
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    85
  wifi.SetRemoteStationManager ("ns3::ConstantRateWifiManager",
6959
8e5aa0f947af Runs 'check-style.py --level=3 -i' on src/click/*
Lalith Suresh <suresh.lalith@gmail.com>
parents: 6869
diff changeset
    86
                                "DataMode",StringValue (phyMode),
8e5aa0f947af Runs 'check-style.py --level=3 -i' on src/click/*
Lalith Suresh <suresh.lalith@gmail.com>
parents: 6869
diff changeset
    87
                                "ControlMode",StringValue (phyMode));
6826
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    88
  // Set it to adhoc mode
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    89
  wifiMac.SetType ("ns3::AdhocWifiMac");
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    90
  NetDeviceContainer wifiDevices = wifi.Install (wifiPhy, wifiMac, wifiNodes);
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    91
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    92
  // Setup mobility models
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    93
  MobilityHelper mobility;
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    94
  Ptr<ListPositionAllocator> positionAlloc = CreateObject<ListPositionAllocator> ();
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    95
  positionAlloc->Add (Vector (0.0, 0.0, 0.0));
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    96
  positionAlloc->Add (Vector (5.0, 0.0, 0.0));
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    97
  mobility.SetPositionAllocator (positionAlloc);
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
    98
  mobility.SetMobilityModel ("ns3::ConstantPositionMobilityModel");
6959
8e5aa0f947af Runs 'check-style.py --level=3 -i' on src/click/*
Lalith Suresh <suresh.lalith@gmail.com>
parents: 6869
diff changeset
    99
  mobility.Install (wifiNodes);
6826
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
   100
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
   101
  // Install normal internet stack on node B
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
   102
  InternetStackHelper internet;
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
   103
  internet.Install (wifiNodes.Get (1));
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
   104
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
   105
  // Install Click on node A
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
   106
  ClickInternetStackHelper clickinternet;
6869
691d93df56ae Fixes Click examples breakage
Lalith Suresh <suresh.lalith@gmail.com>
parents: 6865
diff changeset
   107
  clickinternet.SetClickFile (wifiNodes.Get (0), "src/click/examples/nsclick-wifi-single-interface.click");
6959
8e5aa0f947af Runs 'check-style.py --level=3 -i' on src/click/*
Lalith Suresh <suresh.lalith@gmail.com>
parents: 6869
diff changeset
   108
  clickinternet.SetRoutingTableElement (wifiNodes.Get (0), "rt");
6826
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
   109
  clickinternet.Install (wifiNodes.Get (0));
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
   110
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
   111
  // Configure IP addresses
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
   112
  Ipv4AddressHelper ipv4;
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
   113
  ipv4.SetBase ("172.16.1.0", "255.255.255.0");
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
   114
  ipv4.Assign (wifiDevices);
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
   115
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
   116
  // Setup traffic application and sockets
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
   117
  Address LocalAddress (InetSocketAddress (Ipv4Address::GetAny (), 50000));
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
   118
  PacketSinkHelper packetSinkHelper ("ns3::TcpSocketFactory", LocalAddress);
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
   119
  ApplicationContainer recvapp = packetSinkHelper.Install (wifiNodes.Get (1));
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
   120
  recvapp.Start (Seconds (5.0));
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
   121
  recvapp.Stop (Seconds (10.0));
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
   122
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
   123
  OnOffHelper onOffHelper ("ns3::TcpSocketFactory", Address ());
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
   124
  onOffHelper.SetAttribute ("OnTime", RandomVariableValue (ConstantVariable (1)));
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
   125
  onOffHelper.SetAttribute ("OffTime", RandomVariableValue (ConstantVariable (0)));
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
   126
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
   127
  ApplicationContainer appcont;
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
   128
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
   129
  AddressValue remoteAddress (InetSocketAddress (Ipv4Address ("172.16.1.2"), 50000));
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
   130
  onOffHelper.SetAttribute ("Remote", remoteAddress);
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
   131
  appcont.Add (onOffHelper.Install (wifiNodes.Get (0)));
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
   132
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
   133
  appcont.Start (Seconds (5.0));
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
   134
  appcont.Stop (Seconds (10.0));
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
   135
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
   136
  // For tracing
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
   137
  wifiPhy.EnablePcap ("nsclick-raw-wlan", wifiDevices);
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
   138
6959
8e5aa0f947af Runs 'check-style.py --level=3 -i' on src/click/*
Lalith Suresh <suresh.lalith@gmail.com>
parents: 6869
diff changeset
   139
  Simulator::Stop (Seconds (20.0));
8e5aa0f947af Runs 'check-style.py --level=3 -i' on src/click/*
Lalith Suresh <suresh.lalith@gmail.com>
parents: 6869
diff changeset
   140
  Simulator::Run ();
7258
d8d347dcf5c3 Adds Simulator::Destroy () to nsclick-simple-lan.cc and nsclick-raw-wlan.cc
Lalith Suresh <suresh.lalith@gmail.com>
parents: 7105
diff changeset
   141
d8d347dcf5c3 Adds Simulator::Destroy () to nsclick-simple-lan.cc and nsclick-raw-wlan.cc
Lalith Suresh <suresh.lalith@gmail.com>
parents: 7105
diff changeset
   142
  Simulator::Destroy ();
6826
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
   143
  return 0;
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
   144
#else
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
   145
  NS_FATAL_ERROR ("Can't use ns-3-click without NSCLICK compiled in");
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
   146
#endif
943a8b1adb26 NS-3 Click Integration merge
Lalith Suresh <suresh.lalith@gmail.com>
parents:
diff changeset
   147
}