Вы находитесь на странице: 1из 10

Wireless Networks for 4G/5G

Getting started with ns-3

Instructors: Sumit Roy and Tom Henderson


TA: Collin Brady
UW EE P 569/EE 595 B
Summary

> Prospective students of EE 595 B are strongly encouraged to review


the following material on the ns-3 network simulator prior to the first
class on Thursday January 10.
– 1) this slide deck
– 2) the ns-3 tutorial, available online in two formats:
– HTML: https://www.nsnam.org/docs/tutorial/html/index.html
– PDF: https://www.nsnam.org/docs/tutorial/ns-3-tutorial.pdf
> ns-3 will be used as the tool for class projects, and about half of the
homework assignments, so please ensure that you have some
comfort level with the type of programming described in the ns-3
tutorial
> We will cover more details about ns-3 in the first lecture, but will not
review all of the enclosed material
2
What is ns-3?

> Software to build models of computer networks, to conduct


performance evaluation studies such as the following
120 m

5 UEs/STAs per cell 4 co-channel cells Downlink on


per operator (40 total) per operator (eNB shared channel;
randomly dropped or Wi-Fi AP) LAA has separate
licensed uplink

50 m

Step 1: Both operators A and B are Wi-Fi


co-channel on separate SSID Non-mobile indoor
Idealized
Step 2: (depicted) Replace operator A network with LTE LAA scenario
backhaul to
traffic sources

Research question: What happens to indoor Wi-Fi performance if one


were to co-locate an LTE system on the same or adjacent channel?
3
What is ns-3? (cont.)

> ns-3 is a leading open source, packet-level network simulator oriented towards
network research, featuring a high-performance core enabling parallelization
across a cluster (for large scenarios), ability to run real code, and interaction with
testbeds

Runs on a
single machine
or partitioned
across a cluster

4
What is ns-3? (cont.)

> Packet-level network simulation: The main unit of modeling is the packet and
entities that exchange packets.
abstraction
More
abstraction
Less
abstraction
More

5
What you will need for EE 595

> You will need to be able to build and run ns-3 programs on a personal
computer (Linux, Mac, Windows) or a (Linux) workstation available in
the ECE lab infrastructure

> The computer that you use should be a development or gaming-class


machine for best results (otherwise, your compilation times could be
lengthy)
– Approximately 5-10 GB of free space is recommended

6
What you will need for EE 595 (cont.)

> If your machine is Linux-based, the install process will be the most
straightforward
> If you have a Mac, you will need to install Xcode software
development toolchain (from the App store), but otherwise, should
be straightforward
> If you run Windows 10, there are a few options:
1. Install the ‘Windows subsystem for Linux’ for Windows 10; this provides an
Ubuntu-based Linux subsystem adequate for ECE 595
2. Install a Linux virtual machine using Hyper-V, VMware, or VirtualBox
3. The Cygwin project (https://www.cygwin.com) should also work, although we
haven’t tested in for a while

7
What you should do next

1. Once you decide upon which machine to try to use, read through the
ns-3 tutorial, including trying to work the examples yourself if you
have a machine available

– In the tutorial, where it provides options to obtain and install ns-3, please
follow the instructions for Git, as we will be using Git in EE 595

– Contact both Tom Henderson (tomhend@uw.edu) and Collin Brady


(collinb@uw.edu) if you get stuck with any step in the tutorial, or need advice
on a machine to use, even before the first class
> This includes any installation questions

8
What you should do next (cont.)

2. In EE 595, we will use a custom repository available at


https://gitlab.com/tomhenderson/ns-3-ee-595.git instead of the
main ns-3 development repository
The following commands should work for you, to run the first tutorial
program:
$ mkdir workspace
$ cd workspace
$ git clone https://gitlab.com/tomhenderson/ns-3-
ee-595.git
$ cd ns-3-ee-595-b
$ git checkout -b course origin/course
$ ./waf configure --enable-examples --enable-
tests
$ ./waf build
$ ./waf --run first
9
Summary

> The ns-3 tutorial may take a couple of hours to work through
> In EE 595, we will use a modified repository that has additional
wireless models compared to the mainline ns-3
> Again, contact one of us to seek help if needed; we will start on
Thursday assuming that everyone has given this a try

10

Вам также может понравиться