860 likes | 1.13k Vues
Lab 1. Design and Deployment of Optical Access Network Device. Chuan- Ching Sue DCNLAB, CSIE NCKU suecc@mail.ncku.edu.tw. Outline. Architecture of EPON OMNeT ++ Deployment of EPON Property of Network Traffic Wireshark and Experimental Procedure Conclusion. Architecture of EPON.
E N D
Lab 1. Design and Deployment of Optical Access Network Device Chuan-Ching Sue DCNLAB, CSIE NCKU suecc@mail.ncku.edu.tw
Outline • Architecture of EPON • OMNeT++ • Deployment of EPON • Property of Network Traffic • Wireshark and Experimental Procedure • Conclusion
Ethernet Passive Optical Networks • EPON is a point-to-multipoint network. • All transmissions in a PON are performed between an optical line terminal (OLT) and optical network units (ONUs).
Downstream Direction • In the downstream direction (from the OLT to ONUs) • A PON is a point-to-multipoint network. • Ethernet packets transmitted by the OLT pass through a 1 × N passive splitter and reach each ONU.
Upstream Direction • In the upstream direction • A PON is a multipoint-to-point network: multiple ONUs transmit all toward the OLT.
Upstream Direction (Cont’d) • In the upstream direction • Due to the directional properties of a passive optical combiner, data packets from any ONU will reach only the OLT, and not other ONUs. • EPON needs to employ some arbitration mechanism to avoid data collisions and fairly share the channel capacity among ONUs.
OLT • The OLT resides in the CO and connects the optical access network to the metropolitan-area network or wide-area network (WAN), also known as the backbone or long-haul network. • The OLT typically has the entire downstream bandwidth available to it at all times.
ONU • The ONU is located either at the end-user location (FTTH and FTTB) or at the curb, resulting in fiber-to-the-curb architecture. • To avoid data collisions, each ONU must transmit in its own transmission window (timeslot). • An ONU should buffer frames received from a subscriber until its timeslot arrives.
Splitter/Combiner • The passive splitter/combiner is more inexpensive than the active curb. • The directional properties of a passive splitter/combiner are such that an ONU transmission cannot be detected by other ONUs.
Multi-Point Control Protocol • To support dynamic capacity allocation, the IEEE 802.3ah task force has developed the multi-point control protocol[1]. • The MPCP is not concerned with a specific DBA algorithm. • It is a supporting mechanism that facilitates implementation of various bandwidth allocation schemes in EPON.
Multi-Point Control Protocol (Cont’d) • This behavior necessitated the following MPCP modes of operation: • Bandwidth assignment mode • To sustain communication between OLT and ONUs, the MPCP should provide periodic granting for each ONU. • Autodiscovery mode • To discover newly activated ONUs, the MPCP should initiate the discovery procedure periodically.
Bandwidth Assignment Mode • The bandwidth assignment mechanism relies on GATE and REPORT in IEEE 802.3ah. Both GATE and REPORT messages are MAC control frames. • GATE message is sent from the OLT to an individual ONU and is used to assign a transmission timeslot to this ONU. A timeslot is identified by a pair of values {startTime, length}.
Bandwidth Assignment Mode (Cont’d) • A REPORT message is a feedback mechanism used by an ONU to convey its local conditions (such as buffer occupancy) to the OLT to help the OLT make intelligent allocation decisions.
OMNeT++ • OMNeT++ is an object-oriented modular discrete event network simulation framework. • Current release: OMNet++ 4.1, June 2010 • OMNeT++ simulations can be run under various user interfaces. • Graphical • highly useful for demonstration and debugging purposes • Command-line user interfaces • best for batch execution.
Supported Platforms • OMNeT++ has been tested and is supported on the following operating systems: • Windows 7, Vista, XP • Mac OS X 10.5 and 10.6 • Linux distributions
Installation • The following installation guide consist of • Install in Windows series (7, Vista, XP) for personal use • Install in a Linux server for multiple user • Users can login server by “Remote Desktop Connection” in Windows and execute simulation concurrently.
Installation in Windows • Download the OMNeT++ source code from http://www.omnetpp.org • Make sure you select the Windows-specific archive, named omnetpp-4.1-src-windows.zip. • Copy the OMNeT++ archive to the directory where you want to install it. • Choose a directory whose full path does not contain any space. • Extract the zip file.
Installation in Windows (Cont’d) • Double click to launch mingwenv.cmd in the omnetpp-4.1 directory. • Then enter the following commands: • ./configure • make • The installation is finished!
Launch The IDE • After installation, you should be able to start the IDE by typing: • omnetpp
Installation in Linux server • To support multiple user for simulation, below softwares are required • Remote desktop • VNC • Xrdp • Simulator • OMNeT++ • We take Linux Centos 6 as an example in installation.
Setup Remote Desktop • Install VNC server • yum install tigervnc-server • Download xrdp-0.5.0-0.13.el6.i686.rpm from • http://rpm.pbone.net/index.php3/stat/4/idpl/15295587/dir/fedora_6/com/xrdp-0.5.0-0.13.el6.i686.rpm.html • Install xrdp • rpm –ivh xrdp-0.5.0-0.13.el6.i686.rpm • Launch the xrdp server • /etc/init.d/xrdp start
Open port 3389 of firewall • Open the port 3389 of the firewall to allow client connect to server by xrdp.
Install OMNeT++: Setup PATH • Create a file named “omnetpp.sh” in /etc/profile.dand add below command into omnetpp.sh
Check PATH • Reboot system and check PATH by • echo $PATH • echo $TCL_LIBRARY
Install OMNeT++: Install Dependency Package • The OMNeT++ require many packages,they can be installed by yum. • Open a terminal and input a command • yum install gcc-c++tcltcl-develtktk-devel libxml2 java-1.6.0-openjdk bison flex perl make zlib-devel
Install OMNeT++: Compile OMNeT++ • Download omnetpp-4.1-src.tgz from [3]. Notice that it can not be confuse by the omnetpp-4.1-src-windows.zip which is for windows platform. • Decompress omnetpp-4.1-src.tgz into /usr/local/src • Go to /usr/local/src/omnetpp-4.1 • Command in X11 (graphical user interface) • ./configure. • make
Install OMNeT++: Launch OMNeT++ • After make is finish, command “omnetpp” to launch OMNeT++
Create User Account • The user account can be created by the GUI or some scripts. Both will be fine. • The xrdp server should be reload after creating every user account. • /etc/init.d/xrdp reload
Login Server by GUI • Launch “Remote Desktop Connection”(遠端桌面連線) and enter the IP address of Linux server. • Use the username and password on the Linux server to login the server.
Create & Setup Workspace • Since the OMNeT++ was installed in the /usr/local/src/omnetpp-4.1 which is a read only space. The workspace folder should be created in the user’s home directory. • Create a personal workspace folder by • mkdir –p ~/omnetpp/samples • Enter “omnetpp” to launch OMNeT++ • Workspace: /home/{username}/omnetpp/samples • Select “Use this as the default and do not ask again”
OMNeT++ Setup Finish • After the workspace setting, the setup for OMNeT++ is finish.
New a OMNeT++ Project • After the installation was finished, we can deploy the EPON system in the OMNeT++ simulator. • Click File -> New -> OMNeT++ Project…
New a OMNeT++ Project (Cont’d) • Enter a project name in the blank. In this slides, we take “EPON” as example. • Press Next > to go to the next configuration.
Initial Contents • Select a template of the new project. Here we choose the “Empty project with ‘src’ and ‘simulations’ folders” one as example. • Press “Finish” and create the new project.
The Created Project • The new project includes • src folder • Simulations folder • Makefiles (Makefile and Makefile.vc )
Function of The Separated Folders • src folder • This folder contain all source code files including C++ header file (*.h), C++ source file (*.cc) and network description file (*.ned). • simulation folder • This folder contain network only.
New Network Description File • Right click the src folder and choose “New -> Network Description File (NED) ” to create a new NED file.
New Network Description File (Cont’d) • Key in the file name and press the “Next” button. In this example, the file name is “device.ned”.
New Network Description File (Cont’d) • Choose “Empty NED file” and click “Finish” to create the device.ned file.
The User Module • The user module should contain • Number of source • Set default number to 64 ONUs • Hurst parameter • Set default value of Hurst parameter is 0.8[3] • Offered load • A gate to ONU
The ONU Module • The ONU module should contain • The buffer size for data packet • The default value is 10 MBytes • A gate from user • A gate to splitter • A gate from splitter
The Splitter Module • The splitter module should contain • An array of gate from user • An array of gate to user • A gate to OLT • A gate from OLT
The OLT Module • The OLT module should contain • A gate to splitter • A gate from splitter
New an “EPON” Network • To link the above modules into an EPON, we need a network to connect those modules. • New a epon.ned file in the simulation folder and input below description.
New an “EPON” Network (Cont’d) • Since the maximum distance between the OLT and the ONU is 20 km, the propagation delay from OLT to ONU is 100 microseconds.