1 Tips on developing a network simulator and writing a paper Wireless and Broadband Networks Laboratory Department of CSIE National Taipei University of.

Slides:



Advertisements
Similar presentations
Configuration Management
Advertisements

Managing Your Literature Search Using Zotero. Outline  Overview of Zotero  Set up Online Sync  Save citations  Use Zotero with Microsoft Word  Review.
Seminar On “ OMNET++ Network Simulator” Presented By: Saurav K Bengani Guided By: Guided By: Dr. Andrew yang Dr. Andrew yang.
Programming Types of Testing.
Guide to Oracle10G1 Introduction To Forms Builder Chapter 5.
Project 4 U-Pick – A Project of Your Own Design Proposal Due: April 14 th (earlier ok) Project Due: April 25 th.
Automating Tasks With Macros
CA 121 Intro to Programming Tariq Aziz and Kevin Jones GUI Programming in Visual Studio.NET Chapter 1 Tariq Aziz and Kevin Jones.
Chapter 12: ADO.NET and ASP.NET Programming with Microsoft Visual Basic.NET, Second Edition.
A Guide to Oracle9i1 Introduction To Forms Builder Chapter 5.
XP 1 Working with JavaScript Creating a Programmable Web Page for North Pole Novelties Tutorial 10.
CS211 Data Structures Sami Rollins Fall 2004.
Compunet Corporation Programming with Visual Basic.NET GUI Week # 11 Tariq Ibn Aziz.
Color Aware Switch algorithm implementation The Computer Communication Lab (236340) Spring 2008.
Mendeley What is it? How is it different from other “Bibliographic databases” like End Note and Reference.
Your Interactive Guide to the Digital World Discovering Computers 2012.
Digital Image Processing Lecture3: Introduction to MATLAB.
Lecturer: Ghadah Aldehim
Citation Management: Using Zotero Brought to you by: Research Commons [Dana C., Mehdi P., Sarah E.] September 26, 2012.
Python Mini-Course University of Oklahoma Department of Psychology Day 1 – Lesson 2 Fundamentals of Programming Languages 4/5/09 Python Mini-Course: Day.
A First Program Using C#
Linux Operations and Administration
WaveMaker Visual AJAX Studio 4.0 Training Troubleshooting.
Programming with Microsoft Visual Basic 2012 Chapter 12: Web Applications.
Introduction to MCMC and BUGS. Computational problems More parameters -> even more parameter combinations Exact computation and grid approximation become.
Development Strategies for Web Applications Jonathan Babbage National Superconducting Cyclotron Laboratory.
Using a Template to Create a Resume and Sharing a Finished Document
McGraw-Hill Technology Education © 2004 by the McGraw-Hill Companies, Inc. All rights reserved. Office Access 2003 Lab 3 Analyzing Data and Creating Reports.
Python – Part 1 Python Programming Language 1. What is Python? High-level language Interpreted – easy to test and use interactively Object-oriented Open-source.
Software Project Planning Defining the Project Writing the Software Specification Planning the Development Stages Testing the Software.
Data Management Console Synonym Editor
Oracle Data Integrator Procedures, Advanced Workflows.
Database Design and Management CPTG /23/2015Chapter 12 of 38 Functions of a Database Store data Store data School: student records, class schedules,
Network Simulator-2 Sandeep singla 1998A2A7540. NS-2 A discrete event simulator Focused on modeling network protocols –Wired, wireless –TCP,UDP,unicast,multicast.
1 SEEM3460 Tutorial Compiling and Debugging C programs.
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University IWPSE 2003 Program.
Zotero A new tool for AWHONN August What is Zotero? Zotero:  Is a free, easy-to-use citation manager  Helps collect, cite, and share research.
LogTree: A Framework for Generating System Events from Raw Textual Logs Liang Tang and Tao Li School of Computing and Information Sciences Florida International.
INTRODUCTION JavaScript can make websites more interactive, interesting, and user-friendly.
The Development Process Compilation. Compilation - Dr. Craig A. Struble 2 Programming Process Problem Solving Phase We will spend significant time on.
Project Planning Defining the project Software specification Development stages Software testing.
JavaScript Introduction and Background. 2 Web languages Three formal languages HTML JavaScript CSS Three different tasks Document description Client-side.
Chapter 4 Crystal Report Presenter: PEN PHIROM (MscIT) Phone:
Application architectures Advisor : Dr. Moneer Al_Mekhlafi By : Ahmed AbdAllah Al_Homaidi.
ALLOY: A Formal Methods Tool Glenn Gordon Indiana University of Pennsylvania COSC 481- Formal Methods Dr. W. Oblitey 26 April 2005.
L071 Introduction to C Topics Compilation Using the gcc Compiler The Anatomy of a C Program Reading Sections
Glencoe Introduction to Web Design Chapter 4 XHTML Basics 1 Review Do you remember the vocabulary terms from this chapter? Use the following slides to.
Web Application Development Process
JavaScript, Sixth Edition
Advanced Computer Systems
Development Environment
Finite State Machines Dr K R Bond 2009
Chapter 2: System Structures
Introduction to ZBOSS Embedded Systems Software Training Center
Software Documentation
Chrome Developer Tools
Managing Your Literature Search Using Zotero
CIS16 Application Development Programming with Visual Basic
Karthik Sadasivam Banuprasad Samudrala
Introduction to computers
Mendeley Overview VISHAL GUPTA Customer Consultant South Asia
Programming Fundamentals (750113) Ch1. Problem Solving
Download from Zotero Home Page
Cite Your Sources Easier and Faster with
Programming Fundamentals (750113) Ch1. Problem Solving
How to write a good APA reference
Programming with Microsoft Visual Basic 2008 Fourth Edition
Mendeley Overview VISHAL GUPTA Customer Consultant South Asia
Chloe Riley | Research Commons Librarian |
Presentation transcript:

1 Tips on developing a network simulator and writing a paper Wireless and Broadband Networks Laboratory Department of CSIE National Taipei University of Technology Speaker: Chia-Wei Tuan 10/20/2009

2 Outline Network Simulation Network Simulation The structure of filesThe structure of files Running simulatorRunning simulator Writing a paper Writing a paper ZoteroZotero Numbering References in MS WordNumbering References in MS Word

3 Writing a Network Simulation by yourself The well-known network simulators such as NS2, OMNET are powerful. The well-known network simulators such as NS2, OMNET are powerful. But… But… Sometimes, they may not fit your problem.Sometimes, they may not fit your problem. It hard to trace and modify the source code.It hard to trace and modify the source code.

4 The structure of files Config: The parameters in simulation. Config: The parameters in simulation. Event: Event abstract class. Event: Event abstract class. Algorithm: Algorithm abstract class. Algorithm: Algorithm abstract class. Traffic: Traffic abstract class. Traffic: Traffic abstract class. Statistics: It consists of performance criterion. Statistics: It consists of performance criterion. Main: Representations of the performance result. Main: Representations of the performance result.

5 Config The Config file consists of the parameter in the network. The Config file consists of the parameter in the network. Ex: Ex: Whenever other file needs the parameters in config.h, we just use include statement. Whenever other file needs the parameters in config.h, we just use include statement. Advantage: You can control the simulator in one file instead of multi-files. Advantage: You can control the simulator in one file instead of multi-files.

6 Event In simulation, the operation of a system can be represented as a chronological sequence of events. In simulation, the operation of a system can be represented as a chronological sequence of events. An event is described by the time at which it occurs and a type, indicating the code that will be used to simulate that event. An event is described by the time at which it occurs and a type, indicating the code that will be used to simulate that event.

7 Events and EventCollection

8 Event class

9 Concrete class of Event

10 Implementation of concrete Event

11 EventCollection EventCollection is a singleton pattern. EventCollection is a singleton pattern.

12 Algorithm Use strategy pattern to implement Algorithm in various conditions. Use strategy pattern to implement Algorithm in various conditions.

13 Traffic We may also evaluate the network performance with various traffic. We may also evaluate the network performance with various traffic.

14 Statistics The implementation codes such as transmitting packets, dropping packets may distribute over several objects. The implementation codes such as transmitting packets, dropping packets may distribute over several objects. Thus, we need a global accessible Statistics class to keeps track of these information. Thus, we need a global accessible Statistics class to keeps track of these information. That is, we implement Statistics class as a singleton pattern. That is, we implement Statistics class as a singleton pattern.

15 main function The main function calculates the performance results based on the information in Statistics. The main function calculates the performance results based on the information in Statistics. Ex: We may want to observe the relationship between throughput and fairness index. Ex: We may want to observe the relationship between throughput and fairness index. When writing the result to a file, we use a tab instead of a blank to separate each column. When writing the result to a file, we use a tab instead of a blank to separate each column.

16 Running simulator

17 Debug message In developing stage, we may see as the output message as detailed as possible. Ex: All states of all nodes in the networks. In developing stage, we may see as the output message as detailed as possible. Ex: All states of all nodes in the networks. However, we do not need these information when evaluating the system performance. However, we do not need these information when evaluating the system performance. Thus, in config.h file, we write Thus, in config.h file, we write For any debug message, write message in this way: For any debug message, write message in this way:

18 Batch running Batch running: run the simulator with various conditions (traffic, algorithm, size of network, etc). Batch running: run the simulator with various conditions (traffic, algorithm, size of network, etc). Before this stage, you should check if there are any errors in your code. Before this stage, you should check if there are any errors in your code. Speed up your simulator by compiling codes in release mode. Speed up your simulator by compiling codes in release mode.

19 Batch running Ex: There are two algorithms and three traffic pattern. Ex: There are two algorithms and three traffic pattern. Six simulations. Six simulations. ( config.h is copied to each directory ) Batch file: “SDF batch.bat” Batch file: “SDF batch.bat”

20 Batch file Open two consoles by [1]. Open two consoles by [1].

21 Batch file

22 Produce figures

23 Writing a paper

24 Zotero[2] is a free, easy-to-use Firefox extension to help you collect, manage, and cite your research sources. It lives right where you do your work — in the web browser itself. Zotero[2] is a free, easy-to-use Firefox extension to help you collect, manage, and cite your research sources. It lives right where you do your work — in the web browser itself.

25 Zotero – add papers in website You can use this tool at IEEExplorer and ACM website. You can use this tool at IEEExplorer and ACM website.

26 Zotero – add papers from DOI Add papers by Digital Object Identifier (DOI). Add papers by Digital Object Identifier (DOI). DOI usually appears at the bottom of first page. DOI usually appears at the bottom of first page. Ex: Ex:

27 Zotero – add papers from PDF Drag and drop the pdf file to Zotero. Drag and drop the pdf file to Zotero. Retrieve metadata for PDF. Retrieve metadata for PDF. After that, the metadata is retrieved. After that, the metadata is retrieved.

28 A bug in Zotero Language problem: Language problem: Type “about:config” in firefox. Type “about:config” in firefox. Filter: extensions.zotero.export.bibliographyLocale Filter: extensions.zotero.export.bibliographyLocale Value: en-US Value: en-US

29 Cite a paper For More style: check

30 Numbering References (1) When writing a paper, we may not start from the introduction section. When writing a paper, we may not start from the introduction section. Ex: Ex:

31 Numbering References (2) Numbering References in reference section: Numbering References in reference section: Cite in text: Cite in text:

32 Numbering References (3) More citation in Introduction section: More citation in Introduction section: F9 F9  

33 Figure, Table, Section We can apply the same method to number figures, tables, and sections. We can apply the same method to number figures, tables, and sections.

34 References [1] Install/2/WXP/EN-US/CmdHerePowertoySetup.exe [1] Install/2/WXP/EN-US/CmdHerePowertoySetup.exehttp://download.microsoft.com/download/whistler/ Install/2/WXP/EN-US/CmdHerePowertoySetup.exehttp://download.microsoft.com/download/whistler/ Install/2/WXP/EN-US/CmdHerePowertoySetup.exe [2] [2]

35 Thank you very much. Q&A