View | Details | Raw Unified | Return to bug 2107
Collapse All | Expand All

(-)a/src/lte/helper/point-to-point-epc-helper.cc (-1 / +34 lines)
 Lines 24-29    Link Here 
24
#include <ns3/log.h>
24
#include <ns3/log.h>
25
#include <ns3/inet-socket-address.h>
25
#include <ns3/inet-socket-address.h>
26
#include <ns3/mac48-address.h>
26
#include <ns3/mac48-address.h>
27
#include <ns3/string.h>
28
#include <ns3/boolean.h>
27
#include <ns3/eps-bearer.h>
29
#include <ns3/eps-bearer.h>
28
#include <ns3/ipv4-address.h>
30
#include <ns3/ipv4-address.h>
29
#include <ns3/internet-stack-helper.h>
31
#include <ns3/internet-stack-helper.h>
 Lines 144-149   PointToPointEpcHelper::GetTypeId (void) Link Here 
144
                   UintegerValue (3000),
146
                   UintegerValue (3000),
145
                   MakeUintegerAccessor (&PointToPointEpcHelper::m_x2LinkMtu),
147
                   MakeUintegerAccessor (&PointToPointEpcHelper::m_x2LinkMtu),
146
                   MakeUintegerChecker<uint16_t> ())
148
                   MakeUintegerChecker<uint16_t> ())
149
    .AddAttribute ("S1uLinkPcapPrefix",
150
                   "Prefix for Pcap generated by S1-U link",
151
                   StringValue ("s1-u"),
152
                   MakeStringAccessor (&PointToPointEpcHelper::m_s1uLinkPcapPrefix),
153
                   MakeStringChecker ())
154
    .AddAttribute ("X2LinkPcapPrefix",
155
                   "Prefix for Pcap generated by X2 link",
156
                   StringValue ("x2"),
157
                   MakeStringAccessor (&PointToPointEpcHelper::m_x2LinkPcapPrefix),
158
                   MakeStringChecker ())
159
    .AddAttribute ("X2LinkEnablePcap",
160
                   "Enable Pcap for X2 link",
161
                   BooleanValue (false),
162
                   MakeBooleanAccessor (&PointToPointEpcHelper::m_enablePcapOverX2),
163
                   MakeBooleanChecker ())
164
    .AddAttribute ("S1uLinkEnablePcap",
165
                   "Enable Pcap for X2 link",
166
                   BooleanValue (false),
167
                   MakeBooleanAccessor (&PointToPointEpcHelper::m_enablePcapOverS1U),
168
                   MakeBooleanChecker ())
147
  ;
169
  ;
148
  return tid;
170
  return tid;
149
}
171
}
 Lines 179-189   PointToPointEpcHelper::AddEnb (Ptr<Node> enb, Ptr<NetDevice> lteEnbNetDevice, ui Link Here 
179
  PointToPointHelper p2ph;
201
  PointToPointHelper p2ph;
180
  p2ph.SetDeviceAttribute ("DataRate", DataRateValue (m_s1uLinkDataRate));
202
  p2ph.SetDeviceAttribute ("DataRate", DataRateValue (m_s1uLinkDataRate));
181
  p2ph.SetDeviceAttribute ("Mtu", UintegerValue (m_s1uLinkMtu));
203
  p2ph.SetDeviceAttribute ("Mtu", UintegerValue (m_s1uLinkMtu));
182
  p2ph.SetChannelAttribute ("Delay", TimeValue (m_s1uLinkDelay));  
204
  p2ph.SetChannelAttribute ("Delay", TimeValue (m_s1uLinkDelay));
183
  NetDeviceContainer enbSgwDevices = p2ph.Install (enb, m_sgwPgw);
205
  NetDeviceContainer enbSgwDevices = p2ph.Install (enb, m_sgwPgw);
184
  NS_LOG_LOGIC ("number of Ipv4 ifaces of the eNB after installing p2p dev: " << enb->GetObject<Ipv4> ()->GetNInterfaces ());  
206
  NS_LOG_LOGIC ("number of Ipv4 ifaces of the eNB after installing p2p dev: " << enb->GetObject<Ipv4> ()->GetNInterfaces ());  
185
  Ptr<NetDevice> enbDev = enbSgwDevices.Get (0);
207
  Ptr<NetDevice> enbDev = enbSgwDevices.Get (0);
186
  Ptr<NetDevice> sgwDev = enbSgwDevices.Get (1);
208
  Ptr<NetDevice> sgwDev = enbSgwDevices.Get (1);
209
210
  if (m_enablePcapOverS1U)
211
    {
212
      p2ph.EnablePcapAll(m_s1uLinkPcapPrefix);
213
    }
214
187
  m_s1uIpv4AddressHelper.NewNetwork ();
215
  m_s1uIpv4AddressHelper.NewNetwork ();
188
  Ipv4InterfaceContainer enbSgwIpIfaces = m_s1uIpv4AddressHelper.Assign (enbSgwDevices);
216
  Ipv4InterfaceContainer enbSgwIpIfaces = m_s1uIpv4AddressHelper.Assign (enbSgwDevices);
189
  NS_LOG_LOGIC ("number of Ipv4 ifaces of the eNB after assigning Ipv4 addr to S1 dev: " << enb->GetObject<Ipv4> ()->GetNInterfaces ());
217
  NS_LOG_LOGIC ("number of Ipv4 ifaces of the eNB after assigning Ipv4 addr to S1 dev: " << enb->GetObject<Ipv4> ()->GetNInterfaces ());
 Lines 255-260   PointToPointEpcHelper::AddX2Interface (Ptr<Node> enb1, Ptr<Node> enb2) Link Here 
255
  Ptr<NetDevice> enb1Dev = enbDevices.Get (0);
283
  Ptr<NetDevice> enb1Dev = enbDevices.Get (0);
256
  Ptr<NetDevice> enb2Dev = enbDevices.Get (1);
284
  Ptr<NetDevice> enb2Dev = enbDevices.Get (1);
257
285
286
  if (m_enablePcapOverX2)
287
    {
288
      p2ph.EnablePcapAll(m_x2LinkPcapPrefix);
289
    }
290
258
  m_x2Ipv4AddressHelper.NewNetwork ();
291
  m_x2Ipv4AddressHelper.NewNetwork ();
259
  Ipv4InterfaceContainer enbIpIfaces = m_x2Ipv4AddressHelper.Assign (enbDevices);
292
  Ipv4InterfaceContainer enbIpIfaces = m_x2Ipv4AddressHelper.Assign (enbDevices);
260
  NS_LOG_LOGIC ("number of Ipv4 ifaces of the eNB #1 after assigning Ipv4 addr to X2 dev: " << enb1->GetObject<Ipv4> ()->GetNInterfaces ());
293
  NS_LOG_LOGIC ("number of Ipv4 ifaces of the eNB #1 after assigning Ipv4 addr to X2 dev: " << enb1->GetObject<Ipv4> ()->GetNInterfaces ());
(-)a/src/lte/helper/point-to-point-epc-helper.h (+6 lines)
 Lines 166-171   private: Link Here 
166
   */
166
   */
167
  uint16_t m_x2LinkMtu;
167
  uint16_t m_x2LinkMtu;
168
168
169
  bool        m_enablePcapOverX2;
170
  std::string m_x2LinkPcapPrefix;
171
172
  bool        m_enablePcapOverS1U;
173
  std::string m_s1uLinkPcapPrefix;
174
169
};
175
};
170
176
171
177

Return to bug 2107