SlideShare ist ein Scribd-Unternehmen logo
1 von 23
Downloaden Sie, um offline zu lesen
Introduction NS-3 Tutorial C4 Conclusion
DCCN Tutorial C4: Implementation of 4G
cellular communication within the SmartGrid
ecosystem
Pavel Masek, Jiri Hosek
Brno University of Technology,
Faculty of Electrical Engineering and Communication,
Department of Telecommunication.
masekpavel@feec.vutbr.cz, hosek@feec.vutbr.cz
November 24, 2016
Introduction NS-3 Tutorial C4 Conclusion
WISLAB Research Group – http://www.wislab.cz
WISLAB - Wireless System Laboratory of Brno
Coordinated by Dr. Hosek
Experienced researchers and MSc. / Ph.D.
students
Working with the up-to-date equipment
Nowadays, focused mainly on the IoT domain
Communication in 4G / 5G mobile networks
Intel US, Huawei, AT&T, TUT, IITIS, PFUR, SUAI
SmartHome Gateway
Telekom Austria Group
Wearables
Augmented reality, smart glasses
MTC Communication in NS-3
Member of well-known alliances AllSeen Alliance or HGi
Contributor to 3GPP standards and recommendations
Introduction NS-3 Tutorial C4 Conclusion
DCCN Tutorials: Agenda
Tutorial #1 [Wed 23.11.16] - Communication between
devices within LAN/WLAN networks
Tutorial #2 [Thu 24.11.16] - Implementation of 4G
cellular communication within the SmartGrid
ecosystem
Tutorial #3 [Fri 24.11.16] - Implementation of QoS
mechanisms for Device-to-Device (D2D) communication
between mobile devices
Main goal
From basic network topology to advanced communication
mechanisms used in today’s IoT/M2M scenarios – utilizing
Network Simulator 3 (NS-3) tool for timely use-cases
Introduction NS-3 Tutorial C4 Conclusion
Network Simulator 3 (NS-3) – https://www.nsnam.org
NS-3 is written in C++, with bindings available for
Python
Simulation programs are C++ executables or Python
programs
NS-3 is a GNU GPLv2 licensed project
Mainly supported fro Linux/Unix, MacOS, and FreeBSD
Currently, port to Visual Studio is available
No backwards compatibility with NS-2
In comparison with other network simulators, oriented to
command-line and Unix (no IDE provided in
standard NS-3 framework)
Introduction NS-3 Tutorial C4 Conclusion
NS-3 Simulation Basics
Simulation time advances in discrete jumps from event
to event
C++ functions schedule events to occur at specific
simulation times
Several supporting libraries, not system-installed, can be in
parallel to NS-3 (netAnim, pybindgen, etc.)
A simulation scheduler orders the event execution
Simulation::Run() gets it all started
Simulation stops at specific time or when events end
Introduction NS-3 Tutorial C4 Conclusion
Motivation – Why to Use NS-3?
You want to study network performance or protocol
operation in a controllable or scalable environment
You are comfortable writing C++ or Python code, and
combining NS-3 with other code
You like the idea of working on an active open source
project
NS-3 has the models you are looking for, or you can
provide / integrate what is missing
Well-known projects
LENA (LTE-EPC Network Simulator)
DCE (Direct Code Execution)
Introduction NS-3 Tutorial C4 Conclusion
Created Virtual Machine for Development
Created as a VMware virtual machine (possible to run
via VMware Workstation/Player or VirtualBox)
Based on Ubuntu 14.04 LTS 32bit (Long Term Support)
Possible to make ”Snapshoots”
Already pre-configured
Eclipse environment bounded with NS-3 (no need to
develop straightforward from the command line; possible to
use advanced debugger)
Visualization tools: NetAnim, FlowMonitor, Python
visualizer
Tracing: Wireshark, trace files in NS-3, routing tables, etc.
As the utilized version, NS-3.23 was chosen – verified
functionality, stable, already contains new syntax
Introduction NS-3 Tutorial C4 Conclusion
Created Virtual Machine for Development
Created as a VMware virtual machine (possible to run
via VMware Workstation/Player or VirtualBox)
Based on Ubuntu 14.04 LTS 32bit (Long Term Support)
Possible to make ”Snapshoots”
Already pre-configured
Eclipse environment bounded with NS-3 (no need to
develop straightforward from the command line; possible to
use advanced debugger)
Visualization tools: NetAnim, FlowMonitor, Python
visualizer
Tracing: Wireshark, trace files in NS-3, routing tables, etc.
As the utilized version, NS-3.23 was chosen – verified
functionality, stable, already contains new syntax
Introduction NS-3 Tutorial C4 Conclusion
Network Scenario
MME
SGW/PGW
eNodeB
Remote
host
UEs
Sensors
EPC
model
LTE
model
Devices using the IEEE 802.11g/ah
Devices using the Wireless M-Bus
MTCG
LTE Channel
1.0.0.0/247.0.0.0/24
WN(1)
* **
MTCG
Wi-Fi 10.3.0.0/24
WN(0) WN(9)
*
x
WiFi devices
SGW/
PGW
remoteHost
Internet
Introduction NS-3 Tutorial C4 Conclusion
LENA
An open source LTE/EPC Network Simulator:
DL & UL Schedulers
Radio Resource Management Algorithms
Inter-cell interference coordination solutions
Load Balancing and Mobility Management
Heterogeneous Network (HetNets)
solutions
End-to-end QoE provisioning
Multi-RAT network solutions
Cognitive LTE systems
Introduction NS-3 Tutorial C4 Conclusion
Tasks
1 Check structure of given code, understand to topology
helpers, containers, nodes, etc.
2 Run the prepared simulation scenario
3 View *.xml output files via netAnim, explore tracing
*.pcap files using Wireshark
4 Try to change provided code (rebuild the scenario) and
check the output files (e.g., change positions of created
nodes, update data flows, etc.)
Introduction NS-3 Tutorial C4 Conclusion
T1: LTE + EPC Implementation
LTE-A implementation of both the User Equipment (UE)
and the enhanced NodeB (eNB) devices
RRC entities for both the UE and the eNB
Ptr <LteHelper > lteHelper = CreateObject <LteHelper > ();
// ------------------------------
Ptr <PointToPointEpcHelper > epcHelper = CreateObject <
PointToPointEpcHelper > ();
lteHelper ->SetEpcHelper (epcHelper);
// ------------------------------
ConfigStore inputConfig;
inputConfig. ConfigureDefaults ();
// ------------------------------
Ptr <Node > pgw = epcHelper ->GetPgwNode ();
AnimationInterface :: SetConstantPosition (pgw , 20, 10);
Introduction NS-3 Tutorial C4 Conclusion
T1: Remote Host Declaration 1/2
End node within the communication structure (database
server, data analysis, etc.)
Data from PGW to RemoteHost sent via the public
network (Internet)
NodeContainer remoteHostContainer ;
remoteHostContainer .Create (1);
// ------------------------------
Ptr <Node > remoteHost = remoteHostContainer .Get (0);
AnimationInterface :: SetConstantPosition (remoteHost ,
20, 20);
// ------------------------------
InternetStackHelper internet;
internet.Install ( remoteHostContainer );
Introduction NS-3 Tutorial C4 Conclusion
T1: Remote Host Declaration 2/2
PointToPointHelper p2ph;
p2ph. SetDeviceAttribute ("DataRate", DataRateValue (
DataRate ("100Gb/s")));
p2ph. SetDeviceAttribute ("Mtu", UintegerValue (1500));
p2ph. SetChannelAttribute ("Delay", TimeValue (Seconds
(0.010)));
NetDeviceContainer internetDevices = p2ph.Install (pgw
, remoteHost);
Ipv4AddressHelper ipv4h;
ipv4h.SetBase ("1.0.0.0", "255.0.0.0");
Ipv4InterfaceContainer internetIpIfaces = ipv4h.Assign
( internetDevices );
// interface 0 is localhost , 1 is the p2p device
Ipv4Address remoteHostAddr = internetIpIfaces .
GetAddress (1);
Introduction NS-3 Tutorial C4 Conclusion
T1: On/Off Application 1/2
Traffic generator follows an On/Off pattern. The duration
of each of these states is determined with the onTime and
the offTime random variables.
During the ”Off” state, no traffic is generated. During the
”On” state, CBR traffic is generated. This CBR traffic
is characterized by the specified ”data rate” and ”packet
size”.
OnOffHelper WIFIClientSta1 ("ns3:: UdpSocketFactory ",
Address( InetSocketAddress (remoteHostAddr , 8)));
WIFIClientSta1.SetAttribute ("OnTime",StringValue("ns3
:: ConstantRandomVariable [Constant =1]"));
WIFIClientSta1.SetAttribute ("OffTime",StringValue("
ns3:: ConstantRandomVariable [Constant =0]"));
WIFIClientSta1.SetAttribute ("PacketSize", StringValue
("500"));
WIFIClientSta1.SetAttribute ("DataRate", StringValue (
"0.03 Mb/s"));
Introduction NS-3 Tutorial C4 Conclusion
T1: On/Off Application 2/2
Possible to use TCP or UDP Transport layer protocols
ApplicationContainer sourceAppSta1;
sourceAppSta1 = WIFIClientSta1 .Install (wifiStaNodes.
Get (1));
sourceAppSta1.Start (Seconds (0.5));
sourceAppSta1.Stop (Seconds (simTime));
PacketSinkHelper sinkSta1 ("ns3:: UdpSocketFactory ",
InetSocketAddress (Ipv4Address :: GetAny (), 8));
ApplicationContainer sinkAppSta1 = sinkSta1.Install(
remoteHost);
sinkAppSta1.Start (Seconds (0.5));
sinkAppSta1.Stop (Seconds (simTime));
Introduction NS-3 Tutorial C4 Conclusion
T3: NetAnim Visualization 1/3
Open file: ltenetanim.xml
Introduction NS-3 Tutorial C4 Conclusion
T3: NetAnim Visualization 1/3
Introduction NS-3 Tutorial C4 Conclusion
T3: NetAnim Visualization 3/3
Introduction NS-3 Tutorial C4 Conclusion
T3: FlowMonitor Console Output
Uses probes, installed in network nodes, to track the
packets exchanged by the nodes, and it will measure a
number of parameters
Packets are divided according to the flow they belong to,
where each flow is defined according to the probe’s
characteristics
Flow ID: 5 Src Addr 10.3.0.5 Dst Addr 1.0.0.2
Tx Packets = 33
Tx Bytes = 17424
Rx Packets = 33
Rx Bytes = 18744
Throughput: 33.729 Kb/s
Delay Sum = 1766 ms
Delay = 53ms
Jitter = +34780416.0 ns
Lost Packets = 0
Introduction NS-3 Tutorial C4 Conclusion
T3: Tracing file wifi+lte nodes-3-2.pcap
Open the wifi+lte nodes-3-2.pcap file using Wireshark
Check transmitted data and used destination port (SIP)
Introduction NS-3 Tutorial C4 Conclusion
Final Conclusion
LTE+EPC model with the MTCG node implemented
Utilized topology for today’s aggregation scenarios within
SmartGrid infrastructure
FlowMonitor module used to measure the network
performance
Each flow is defined according to the probe’s characteristics
NetAnim – offline animator based on the Qt toolkit (uses
XML trace file collected during simulation)
Next time: Tutorial C6
Implementation of QoS mechanisms for Device-to-Device (D2D)
communication between mobile devices
Introduction NS-3 Tutorial C4 Conclusion
Thank you for your attention.
Pavel Masek, Jiri Hosek
masekpavel@feec.vutbr.cz, hosek@feec.vutbr.cz
Brno University of Technology,
Faculty of Electrical Engineering and Communication,
Department of Telecommunication.

Weitere ähnliche Inhalte

Was ist angesagt?

Direct Code Execution - LinuxCon Japan 2014
Direct Code Execution - LinuxCon Japan 2014Direct Code Execution - LinuxCon Japan 2014
Direct Code Execution - LinuxCon Japan 2014
Hajime Tazaki
 

Was ist angesagt? (20)

Introduction to ns3
Introduction to ns3Introduction to ns3
Introduction to ns3
 
Direct Code Execution - LinuxCon Japan 2014
Direct Code Execution - LinuxCon Japan 2014Direct Code Execution - LinuxCon Japan 2014
Direct Code Execution - LinuxCon Japan 2014
 
mTCP使ってみた
mTCP使ってみたmTCP使ってみた
mTCP使ってみた
 
Playing BBR with a userspace network stack
Playing BBR with a userspace network stackPlaying BBR with a userspace network stack
Playing BBR with a userspace network stack
 
Network Stack in Userspace (NUSE)
Network Stack in Userspace (NUSE)Network Stack in Userspace (NUSE)
Network Stack in Userspace (NUSE)
 
LibOS as a regression test framework for Linux networking #netdev1.1
LibOS as a regression test framework for Linux networking #netdev1.1LibOS as a regression test framework for Linux networking #netdev1.1
LibOS as a regression test framework for Linux networking #netdev1.1
 
VLANs in the Linux Kernel
VLANs in the Linux KernelVLANs in the Linux Kernel
VLANs in the Linux Kernel
 
PASTE: Network Stacks Must Integrate with NVMM Abstractions
PASTE: Network Stacks Must Integrate with NVMM AbstractionsPASTE: Network Stacks Must Integrate with NVMM Abstractions
PASTE: Network Stacks Must Integrate with NVMM Abstractions
 
Creating a firewall in UBUNTU
Creating a firewall in UBUNTUCreating a firewall in UBUNTU
Creating a firewall in UBUNTU
 
Tsn linux elce17
Tsn linux elce17Tsn linux elce17
Tsn linux elce17
 
Linux Kernel Library - Reusing Monolithic Kernel
Linux Kernel Library - Reusing Monolithic KernelLinux Kernel Library - Reusing Monolithic Kernel
Linux Kernel Library - Reusing Monolithic Kernel
 
Linux rumpkernel - ABC2018 (AsiaBSDCon 2018)
Linux rumpkernel - ABC2018 (AsiaBSDCon 2018)Linux rumpkernel - ABC2018 (AsiaBSDCon 2018)
Linux rumpkernel - ABC2018 (AsiaBSDCon 2018)
 
Time Sensitive Networking in the Linux Kernel
Time Sensitive Networking in the Linux KernelTime Sensitive Networking in the Linux Kernel
Time Sensitive Networking in the Linux Kernel
 
Network stack personality in Android phone - netdev 2.2
Network stack personality in Android phone - netdev 2.2Network stack personality in Android phone - netdev 2.2
Network stack personality in Android phone - netdev 2.2
 
Hs java open_party
Hs java open_partyHs java open_party
Hs java open_party
 
NUSE (Network Stack in Userspace) at #osio
NUSE (Network Stack in Userspace) at #osioNUSE (Network Stack in Userspace) at #osio
NUSE (Network Stack in Userspace) at #osio
 
Library Operating System for Linux #netdev01
Library Operating System for Linux #netdev01Library Operating System for Linux #netdev01
Library Operating System for Linux #netdev01
 
GTC Japan 2016 Chainer feature introduction
GTC Japan 2016 Chainer feature introductionGTC Japan 2016 Chainer feature introduction
GTC Japan 2016 Chainer feature introduction
 
ENHANCING PERFORMANCE OF AN HPC CLUSTER BY ADOPTING NONDEDICATED NODES
ENHANCING PERFORMANCE OF AN HPC CLUSTER BY ADOPTING NONDEDICATED NODES ENHANCING PERFORMANCE OF AN HPC CLUSTER BY ADOPTING NONDEDICATED NODES
ENHANCING PERFORMANCE OF AN HPC CLUSTER BY ADOPTING NONDEDICATED NODES
 
protothread and its usage in contiki OS
protothread and its usage in contiki OSprotothread and its usage in contiki OS
protothread and its usage in contiki OS
 

Ähnlich wie DCCN 2016 - Tutorial 2 - 4G for SmartGrid ecosystem

Laporan Praktikum Keamanan Siber - Tugas 4 -Kelas C - Kelompok 3.pdf
Laporan Praktikum Keamanan Siber - Tugas 4 -Kelas C - Kelompok 3.pdfLaporan Praktikum Keamanan Siber - Tugas 4 -Kelas C - Kelompok 3.pdf
Laporan Praktikum Keamanan Siber - Tugas 4 -Kelas C - Kelompok 3.pdf
IGedeArieYogantaraSu
 
Final Report(Routing_Misbehavior)
Final Report(Routing_Misbehavior)Final Report(Routing_Misbehavior)
Final Report(Routing_Misbehavior)
Ambreen Zafar
 
[OpenStack 하반기 스터디] Interoperability with ML2: LinuxBridge, OVS and SDN
[OpenStack 하반기 스터디] Interoperability with ML2: LinuxBridge, OVS and SDN[OpenStack 하반기 스터디] Interoperability with ML2: LinuxBridge, OVS and SDN
[OpenStack 하반기 스터디] Interoperability with ML2: LinuxBridge, OVS and SDN
OpenStack Korea Community
 
20151222_Interoperability with ML2: LinuxBridge, OVS and SDN
20151222_Interoperability with ML2: LinuxBridge, OVS and SDN20151222_Interoperability with ML2: LinuxBridge, OVS and SDN
20151222_Interoperability with ML2: LinuxBridge, OVS and SDN
Sungman Jang
 
26.1.7 lab snort and firewall rules
26.1.7 lab   snort and firewall rules26.1.7 lab   snort and firewall rules
26.1.7 lab snort and firewall rules
Freddy Buenaño
 

Ähnlich wie DCCN 2016 - Tutorial 2 - 4G for SmartGrid ecosystem (20)

June 28 Presentation
June 28 PresentationJune 28 Presentation
June 28 Presentation
 
IWAN Lab Guide
IWAN Lab GuideIWAN Lab Guide
IWAN Lab Guide
 
Cotopaxi - IoT testing toolkit (Black Hat Asia 2019 Arsenal)
Cotopaxi - IoT testing toolkit (Black Hat Asia 2019 Arsenal)Cotopaxi - IoT testing toolkit (Black Hat Asia 2019 Arsenal)
Cotopaxi - IoT testing toolkit (Black Hat Asia 2019 Arsenal)
 
Paper9250 implementation of an i pv6 stack for ns-3
Paper9250 implementation of an i pv6 stack for ns-3Paper9250 implementation of an i pv6 stack for ns-3
Paper9250 implementation of an i pv6 stack for ns-3
 
Dc project 1
Dc project 1Dc project 1
Dc project 1
 
WiMAX implementation in ns3
WiMAX implementation in ns3WiMAX implementation in ns3
WiMAX implementation in ns3
 
opnet lab report
opnet lab reportopnet lab report
opnet lab report
 
Install FD.IO VPP On Intel(r) Architecture & Test with Trex*
Install FD.IO VPP On Intel(r) Architecture & Test with Trex*Install FD.IO VPP On Intel(r) Architecture & Test with Trex*
Install FD.IO VPP On Intel(r) Architecture & Test with Trex*
 
Laporan Praktikum Keamanan Siber - Tugas 4 -Kelas C - Kelompok 3.pdf
Laporan Praktikum Keamanan Siber - Tugas 4 -Kelas C - Kelompok 3.pdfLaporan Praktikum Keamanan Siber - Tugas 4 -Kelas C - Kelompok 3.pdf
Laporan Praktikum Keamanan Siber - Tugas 4 -Kelas C - Kelompok 3.pdf
 
Network-Connected Development with ZeroMQ
Network-Connected Development with ZeroMQNetwork-Connected Development with ZeroMQ
Network-Connected Development with ZeroMQ
 
Floodlight with Firewall and Network Virtualization
Floodlight with Firewall and Network VirtualizationFloodlight with Firewall and Network Virtualization
Floodlight with Firewall and Network Virtualization
 
Set review 1
Set review 1Set review 1
Set review 1
 
Final Report(Routing_Misbehavior)
Final Report(Routing_Misbehavior)Final Report(Routing_Misbehavior)
Final Report(Routing_Misbehavior)
 
Openstack Networking Internals - first part
Openstack Networking Internals - first partOpenstack Networking Internals - first part
Openstack Networking Internals - first part
 
[OpenStack 하반기 스터디] Interoperability with ML2: LinuxBridge, OVS and SDN
[OpenStack 하반기 스터디] Interoperability with ML2: LinuxBridge, OVS and SDN[OpenStack 하반기 스터디] Interoperability with ML2: LinuxBridge, OVS and SDN
[OpenStack 하반기 스터디] Interoperability with ML2: LinuxBridge, OVS and SDN
 
20151222_Interoperability with ML2: LinuxBridge, OVS and SDN
20151222_Interoperability with ML2: LinuxBridge, OVS and SDN20151222_Interoperability with ML2: LinuxBridge, OVS and SDN
20151222_Interoperability with ML2: LinuxBridge, OVS and SDN
 
Pushing Packets - How do the ML2 Mechanism Drivers Stack Up
Pushing Packets - How do the ML2 Mechanism Drivers Stack UpPushing Packets - How do the ML2 Mechanism Drivers Stack Up
Pushing Packets - How do the ML2 Mechanism Drivers Stack Up
 
UDP Report
UDP ReportUDP Report
UDP Report
 
V P N
V P NV P N
V P N
 
26.1.7 lab snort and firewall rules
26.1.7 lab   snort and firewall rules26.1.7 lab   snort and firewall rules
26.1.7 lab snort and firewall rules
 

Kürzlich hochgeladen

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Kürzlich hochgeladen (20)

Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
 

DCCN 2016 - Tutorial 2 - 4G for SmartGrid ecosystem

  • 1. Introduction NS-3 Tutorial C4 Conclusion DCCN Tutorial C4: Implementation of 4G cellular communication within the SmartGrid ecosystem Pavel Masek, Jiri Hosek Brno University of Technology, Faculty of Electrical Engineering and Communication, Department of Telecommunication. masekpavel@feec.vutbr.cz, hosek@feec.vutbr.cz November 24, 2016
  • 2. Introduction NS-3 Tutorial C4 Conclusion WISLAB Research Group – http://www.wislab.cz WISLAB - Wireless System Laboratory of Brno Coordinated by Dr. Hosek Experienced researchers and MSc. / Ph.D. students Working with the up-to-date equipment Nowadays, focused mainly on the IoT domain Communication in 4G / 5G mobile networks Intel US, Huawei, AT&T, TUT, IITIS, PFUR, SUAI SmartHome Gateway Telekom Austria Group Wearables Augmented reality, smart glasses MTC Communication in NS-3 Member of well-known alliances AllSeen Alliance or HGi Contributor to 3GPP standards and recommendations
  • 3. Introduction NS-3 Tutorial C4 Conclusion DCCN Tutorials: Agenda Tutorial #1 [Wed 23.11.16] - Communication between devices within LAN/WLAN networks Tutorial #2 [Thu 24.11.16] - Implementation of 4G cellular communication within the SmartGrid ecosystem Tutorial #3 [Fri 24.11.16] - Implementation of QoS mechanisms for Device-to-Device (D2D) communication between mobile devices Main goal From basic network topology to advanced communication mechanisms used in today’s IoT/M2M scenarios – utilizing Network Simulator 3 (NS-3) tool for timely use-cases
  • 4. Introduction NS-3 Tutorial C4 Conclusion Network Simulator 3 (NS-3) – https://www.nsnam.org NS-3 is written in C++, with bindings available for Python Simulation programs are C++ executables or Python programs NS-3 is a GNU GPLv2 licensed project Mainly supported fro Linux/Unix, MacOS, and FreeBSD Currently, port to Visual Studio is available No backwards compatibility with NS-2 In comparison with other network simulators, oriented to command-line and Unix (no IDE provided in standard NS-3 framework)
  • 5. Introduction NS-3 Tutorial C4 Conclusion NS-3 Simulation Basics Simulation time advances in discrete jumps from event to event C++ functions schedule events to occur at specific simulation times Several supporting libraries, not system-installed, can be in parallel to NS-3 (netAnim, pybindgen, etc.) A simulation scheduler orders the event execution Simulation::Run() gets it all started Simulation stops at specific time or when events end
  • 6. Introduction NS-3 Tutorial C4 Conclusion Motivation – Why to Use NS-3? You want to study network performance or protocol operation in a controllable or scalable environment You are comfortable writing C++ or Python code, and combining NS-3 with other code You like the idea of working on an active open source project NS-3 has the models you are looking for, or you can provide / integrate what is missing Well-known projects LENA (LTE-EPC Network Simulator) DCE (Direct Code Execution)
  • 7. Introduction NS-3 Tutorial C4 Conclusion Created Virtual Machine for Development Created as a VMware virtual machine (possible to run via VMware Workstation/Player or VirtualBox) Based on Ubuntu 14.04 LTS 32bit (Long Term Support) Possible to make ”Snapshoots” Already pre-configured Eclipse environment bounded with NS-3 (no need to develop straightforward from the command line; possible to use advanced debugger) Visualization tools: NetAnim, FlowMonitor, Python visualizer Tracing: Wireshark, trace files in NS-3, routing tables, etc. As the utilized version, NS-3.23 was chosen – verified functionality, stable, already contains new syntax
  • 8. Introduction NS-3 Tutorial C4 Conclusion Created Virtual Machine for Development Created as a VMware virtual machine (possible to run via VMware Workstation/Player or VirtualBox) Based on Ubuntu 14.04 LTS 32bit (Long Term Support) Possible to make ”Snapshoots” Already pre-configured Eclipse environment bounded with NS-3 (no need to develop straightforward from the command line; possible to use advanced debugger) Visualization tools: NetAnim, FlowMonitor, Python visualizer Tracing: Wireshark, trace files in NS-3, routing tables, etc. As the utilized version, NS-3.23 was chosen – verified functionality, stable, already contains new syntax
  • 9. Introduction NS-3 Tutorial C4 Conclusion Network Scenario MME SGW/PGW eNodeB Remote host UEs Sensors EPC model LTE model Devices using the IEEE 802.11g/ah Devices using the Wireless M-Bus MTCG LTE Channel 1.0.0.0/247.0.0.0/24 WN(1) * ** MTCG Wi-Fi 10.3.0.0/24 WN(0) WN(9) * x WiFi devices SGW/ PGW remoteHost Internet
  • 10. Introduction NS-3 Tutorial C4 Conclusion LENA An open source LTE/EPC Network Simulator: DL & UL Schedulers Radio Resource Management Algorithms Inter-cell interference coordination solutions Load Balancing and Mobility Management Heterogeneous Network (HetNets) solutions End-to-end QoE provisioning Multi-RAT network solutions Cognitive LTE systems
  • 11. Introduction NS-3 Tutorial C4 Conclusion Tasks 1 Check structure of given code, understand to topology helpers, containers, nodes, etc. 2 Run the prepared simulation scenario 3 View *.xml output files via netAnim, explore tracing *.pcap files using Wireshark 4 Try to change provided code (rebuild the scenario) and check the output files (e.g., change positions of created nodes, update data flows, etc.)
  • 12. Introduction NS-3 Tutorial C4 Conclusion T1: LTE + EPC Implementation LTE-A implementation of both the User Equipment (UE) and the enhanced NodeB (eNB) devices RRC entities for both the UE and the eNB Ptr <LteHelper > lteHelper = CreateObject <LteHelper > (); // ------------------------------ Ptr <PointToPointEpcHelper > epcHelper = CreateObject < PointToPointEpcHelper > (); lteHelper ->SetEpcHelper (epcHelper); // ------------------------------ ConfigStore inputConfig; inputConfig. ConfigureDefaults (); // ------------------------------ Ptr <Node > pgw = epcHelper ->GetPgwNode (); AnimationInterface :: SetConstantPosition (pgw , 20, 10);
  • 13. Introduction NS-3 Tutorial C4 Conclusion T1: Remote Host Declaration 1/2 End node within the communication structure (database server, data analysis, etc.) Data from PGW to RemoteHost sent via the public network (Internet) NodeContainer remoteHostContainer ; remoteHostContainer .Create (1); // ------------------------------ Ptr <Node > remoteHost = remoteHostContainer .Get (0); AnimationInterface :: SetConstantPosition (remoteHost , 20, 20); // ------------------------------ InternetStackHelper internet; internet.Install ( remoteHostContainer );
  • 14. Introduction NS-3 Tutorial C4 Conclusion T1: Remote Host Declaration 2/2 PointToPointHelper p2ph; p2ph. SetDeviceAttribute ("DataRate", DataRateValue ( DataRate ("100Gb/s"))); p2ph. SetDeviceAttribute ("Mtu", UintegerValue (1500)); p2ph. SetChannelAttribute ("Delay", TimeValue (Seconds (0.010))); NetDeviceContainer internetDevices = p2ph.Install (pgw , remoteHost); Ipv4AddressHelper ipv4h; ipv4h.SetBase ("1.0.0.0", "255.0.0.0"); Ipv4InterfaceContainer internetIpIfaces = ipv4h.Assign ( internetDevices ); // interface 0 is localhost , 1 is the p2p device Ipv4Address remoteHostAddr = internetIpIfaces . GetAddress (1);
  • 15. Introduction NS-3 Tutorial C4 Conclusion T1: On/Off Application 1/2 Traffic generator follows an On/Off pattern. The duration of each of these states is determined with the onTime and the offTime random variables. During the ”Off” state, no traffic is generated. During the ”On” state, CBR traffic is generated. This CBR traffic is characterized by the specified ”data rate” and ”packet size”. OnOffHelper WIFIClientSta1 ("ns3:: UdpSocketFactory ", Address( InetSocketAddress (remoteHostAddr , 8))); WIFIClientSta1.SetAttribute ("OnTime",StringValue("ns3 :: ConstantRandomVariable [Constant =1]")); WIFIClientSta1.SetAttribute ("OffTime",StringValue(" ns3:: ConstantRandomVariable [Constant =0]")); WIFIClientSta1.SetAttribute ("PacketSize", StringValue ("500")); WIFIClientSta1.SetAttribute ("DataRate", StringValue ( "0.03 Mb/s"));
  • 16. Introduction NS-3 Tutorial C4 Conclusion T1: On/Off Application 2/2 Possible to use TCP or UDP Transport layer protocols ApplicationContainer sourceAppSta1; sourceAppSta1 = WIFIClientSta1 .Install (wifiStaNodes. Get (1)); sourceAppSta1.Start (Seconds (0.5)); sourceAppSta1.Stop (Seconds (simTime)); PacketSinkHelper sinkSta1 ("ns3:: UdpSocketFactory ", InetSocketAddress (Ipv4Address :: GetAny (), 8)); ApplicationContainer sinkAppSta1 = sinkSta1.Install( remoteHost); sinkAppSta1.Start (Seconds (0.5)); sinkAppSta1.Stop (Seconds (simTime));
  • 17. Introduction NS-3 Tutorial C4 Conclusion T3: NetAnim Visualization 1/3 Open file: ltenetanim.xml
  • 18. Introduction NS-3 Tutorial C4 Conclusion T3: NetAnim Visualization 1/3
  • 19. Introduction NS-3 Tutorial C4 Conclusion T3: NetAnim Visualization 3/3
  • 20. Introduction NS-3 Tutorial C4 Conclusion T3: FlowMonitor Console Output Uses probes, installed in network nodes, to track the packets exchanged by the nodes, and it will measure a number of parameters Packets are divided according to the flow they belong to, where each flow is defined according to the probe’s characteristics Flow ID: 5 Src Addr 10.3.0.5 Dst Addr 1.0.0.2 Tx Packets = 33 Tx Bytes = 17424 Rx Packets = 33 Rx Bytes = 18744 Throughput: 33.729 Kb/s Delay Sum = 1766 ms Delay = 53ms Jitter = +34780416.0 ns Lost Packets = 0
  • 21. Introduction NS-3 Tutorial C4 Conclusion T3: Tracing file wifi+lte nodes-3-2.pcap Open the wifi+lte nodes-3-2.pcap file using Wireshark Check transmitted data and used destination port (SIP)
  • 22. Introduction NS-3 Tutorial C4 Conclusion Final Conclusion LTE+EPC model with the MTCG node implemented Utilized topology for today’s aggregation scenarios within SmartGrid infrastructure FlowMonitor module used to measure the network performance Each flow is defined according to the probe’s characteristics NetAnim – offline animator based on the Qt toolkit (uses XML trace file collected during simulation) Next time: Tutorial C6 Implementation of QoS mechanisms for Device-to-Device (D2D) communication between mobile devices
  • 23. Introduction NS-3 Tutorial C4 Conclusion Thank you for your attention. Pavel Masek, Jiri Hosek masekpavel@feec.vutbr.cz, hosek@feec.vutbr.cz Brno University of Technology, Faculty of Electrical Engineering and Communication, Department of Telecommunication.