OMNeT++ is a simulator for modeling communication networks. It uses an object-oriented modular architecture where modules communicate by passing messages. Modules can be simple or compound, with compound modules made up of interconnected simple modules. The network topology is defined using the NED language. When a simulation starts, OMNeT++ loads the NED files defining the network structure and connects simple modules implemented in C++ code. Parameters can be assigned to modules, connections, and channels to configure the simulation.
Overview of RARP, BOOTP, DHCP and PXE protocols for dynamic IP address assignment.
Dynamic IP address assignment to a host (or interface) is a common problem in TCP/IP based networks.
Manual and static assignment of IP addresses does not scale well and becomes a labor intensive task with a growing number of hosts.
An early approach for dynamic IP address assignment was RARP (Reverse ARP) which ran directly on the Ethernet protocol layer.
The many problems of RARP such as the inability to be routed between subnets were solved with BOOTP (Bootstrap Protocol).
BOOTP, however, ended to have its own set of limitations like lack of a lease time for IP addresses.
DHCP (Dynamic Host Configuration Protocol) was therefore defined as an extension to BOOTP.
DHCP is backward compatible with BOOTP thus allowing some degree of interoperability between the 2 protocols.
The state-of-the-art protocol for dynamic IP address assignment is, however, is DHCP.
DHCPv6 is an adaption of DHCP for IPv6 based networks.
Introduction to Public key Cryptosystems with block diagrams
Reference : Cryptography and Network Security Principles and Practice , Sixth Edition , William Stalling
This document provides an overview of SMTP (Simple Mail Transfer Protocol) including its history, general features, how it works, and limitations. SMTP is an Internet standard used to transfer email between Mail Transfer Agents (MTAs). It originated in 1980 and was standardized in 1981. Key points are that SMTP operates over TCP port 25 in a request-response format, uses status codes to indicate success or failure, and relies on MTAs like Sendmail to route and deliver messages between servers. However, it only supports basic 7-bit ASCII encoding and is susceptible to misuse like spamming.
Unicast involves sending data from one computer to another, with one sender and one receiver. Multicast sends data to a group of devices that have joined the multicast group, with one sender but multiple potential receivers. Broadcast sends data from one computer that is then forwarded to all connected devices, with one sender and all devices receiving the broadcast traffic.
Each grain must hold a charge
When their volume becomes too little, they will no longer be stable & will be influenced by ambient thermal energy
With current technology, this will happen around 130 Gb/in2
Overview of RARP, BOOTP, DHCP and PXE protocols for dynamic IP address assignment.
Dynamic IP address assignment to a host (or interface) is a common problem in TCP/IP based networks.
Manual and static assignment of IP addresses does not scale well and becomes a labor intensive task with a growing number of hosts.
An early approach for dynamic IP address assignment was RARP (Reverse ARP) which ran directly on the Ethernet protocol layer.
The many problems of RARP such as the inability to be routed between subnets were solved with BOOTP (Bootstrap Protocol).
BOOTP, however, ended to have its own set of limitations like lack of a lease time for IP addresses.
DHCP (Dynamic Host Configuration Protocol) was therefore defined as an extension to BOOTP.
DHCP is backward compatible with BOOTP thus allowing some degree of interoperability between the 2 protocols.
The state-of-the-art protocol for dynamic IP address assignment is, however, is DHCP.
DHCPv6 is an adaption of DHCP for IPv6 based networks.
Introduction to Public key Cryptosystems with block diagrams
Reference : Cryptography and Network Security Principles and Practice , Sixth Edition , William Stalling
This document provides an overview of SMTP (Simple Mail Transfer Protocol) including its history, general features, how it works, and limitations. SMTP is an Internet standard used to transfer email between Mail Transfer Agents (MTAs). It originated in 1980 and was standardized in 1981. Key points are that SMTP operates over TCP port 25 in a request-response format, uses status codes to indicate success or failure, and relies on MTAs like Sendmail to route and deliver messages between servers. However, it only supports basic 7-bit ASCII encoding and is susceptible to misuse like spamming.
Unicast involves sending data from one computer to another, with one sender and one receiver. Multicast sends data to a group of devices that have joined the multicast group, with one sender but multiple potential receivers. Broadcast sends data from one computer that is then forwarded to all connected devices, with one sender and all devices receiving the broadcast traffic.
Each grain must hold a charge
When their volume becomes too little, they will no longer be stable & will be influenced by ambient thermal energy
With current technology, this will happen around 130 Gb/in2
This document discusses message authentication codes (MACs). It explains that MACs use a shared symmetric key to authenticate messages, ensuring integrity and validating the sender. The document outlines the MAC generation and verification process, and notes that MACs provide authentication but not encryption. It then describes HMAC specifically, which applies a cryptographic hash function to the message and key to generate the MAC. The key steps of the HMAC process are detailed.
This document discusses ARP and RARP protocols. ARP is used to map IP addresses to MAC addresses on local networks. It works by broadcasting ARP requests and unicasting replies. RARP is used in the opposite direction, to map a device's MAC address to its IP address. Examples are given of how an ARP cache works, including entries for pending, resolved, and free states. RARP has been replaced by BOOTP and DHCP for providing additional configuration info like subnet masks.
This document provides an overview of the Simple Mail Transfer Protocol (SMTP). It discusses how SMTP clients and servers work, how messages are sent to SMTP servers using either relaying or DNS, the SMTP communication model involving connection establishment, message transfer, and connection termination. It also describes mail processing involving envelopes and headers, status codes, and special features like mail forwarding, gatewaying, and relaying. Limitations of SMTP are also noted.
SMTP is the standard protocol for sending email over the Internet. It defines the message format and how messages are transferred between mail servers. When a client wants to send a message, it establishes a connection to an SMTP server and issues commands like MAIL, RCPT, and DATA to specify the sender, recipients, and transmit the message content. While simple to implement, basic SMTP has limitations like lacking authentication that allow issues like spam. Extensions to SMTP like ESMTP aim to address such problems.
Conceptos y Protocolos de Enrutamiento (Capitulo 9)Cristiān Villegās
Este documento describe el protocolo de enrutamiento EIGRP. Explica los conceptos básicos de EIGRP como su historia, formato de mensajes, métrica compuesta y el algoritmo DUAL. También cubre la configuración básica de EIGRP incluyendo la identificación del proceso, el comando network, y los comandos para verificar la configuración y estado de EIGRP.
IPsec provides security at the IP layer by enabling encryption and authentication of IP packets. It has two modes: transport mode which secures end-to-end communication between hosts, and tunnel mode which secures traffic between security gateways. The Authentication Header (AH) provides data integrity and authentication, while the Encapsulating Security Payload (ESP) provides confidentiality through encryption. Security associations define the IP addresses and security parameters for unidirectional secure connections. Multiple security associations can be combined for added security through transport adjacency or iterated tunneling.
The application layer allows users to interface with networks through application layer protocols like HTTP, SMTP, POP3, FTP, Telnet, and DHCP. It provides the interface between applications on different ends of a network. Common application layer protocols include DNS for mapping domain names to IP addresses, HTTP for transferring web page data, and SMTP/POP3 for sending and receiving email messages. The client/server and peer-to-peer models describe how requests are made and fulfilled over the application layer.
This document provides an overview of Cisco Packet Tracer, a networking simulation software. It describes Packet Tracer as a comprehensive teaching and learning tool that offers realistic network simulation, visualization, assessment authoring and multi-user collaboration capabilities. The document outlines key features of Packet Tracer including its simulation environment, activity wizard for creating assessments, and multi-user functionality. It also summarizes new features introduced in version 5.3 and the benefits of Packet Tracer for both instructors and students in teaching and learning networking concepts.
SNMP (Simple Network Management Protocol) allows network devices to be monitored and managed. It defines an agent-manager architecture where agents run on devices and respond to requests from managers to retrieve or store management information. SNMP uses a management information base (MIB) and structure of management information (SMI) to define managed objects and their properties. Key SNMP components include versions 1 and 2, protocol data units (PDUs) like get, set, and trap requests, and error codes. SNMP traps allow agents to asynchronously notify managers of events.
This slide explains the design part as well as implementation part of the firewall. And also tells about the need of firewall and firewall capabilities.
This document discusses different methods for authenticating users, including HTTP authentication, PHP authentication, and hard-coded authentication. HTTP authentication uses a 401 response to prompt for username and password, but does not encrypt the credentials. PHP authentication uses the $_SERVER['PHP_AUTH_USER'] and $_SERVER['PHP_AUTH_PW'] variables to store and validate credentials. Hard-coded authentication checks credentials directly in the code, but has drawbacks like all users sharing the same credentials and difficulty changing them. The document also discusses using Apache .htaccess files and the header() and isset() PHP functions to implement authentication.
Network security involves protecting computer networks from unauthorized access, misuse, and hacking. It is important because we rely on computer networks to manage critical systems like banking, utilities, healthcare, and more. Effective network security requires identification of users, authenticating users, and controlling user access through measures like strong passwords, antivirus software, encryption, firewalls, backups, auditing systems, security training, and testing security systems. Some common threats to network security include viruses, Trojan horses, spam, phishing, password attacks, and insecure shared computers.
This document discusses an IP-based architecture for the Internet of Things (IoT) using IPv6 and related standards to enable interoperability. It describes how design patterns from the Internet and World Wide Web, such as layered protocols, uniform addressing, and stateless interaction, can be applied to the IoT through the use of technologies like CoAP, LWM2M, and IPSO Smart Objects. These standards build upon each other to provide an architecture that supports resource discovery, asynchronous notifications, and abstraction of IoT devices and their data through RESTful APIs and semantic data models.
X.509 certificates are used to authenticate users in distributed systems. They contain a user's public key that is signed by a Certification Authority. Certificates are organized in hierarchies where each CA can validate certificates from other CAs. Version 3 certificates include extensions that provide additional information like usage constraints and policies.
This document discusses the Internet Protocol (IP) version 4 and 6. It describes the key tasks of IP including addressing computers and fragmenting packets. IP version 4 uses 32-bit addresses while IP version 6 uses 128-bit addresses and has improvements like larger address space and better security. The document also covers IP address classes, private addressing, subnetting, Classless Inter-Domain Routing (CIDR), and address blocks.
The document discusses the Domain Name System (DNS) which maps domain names to IP addresses. It describes how DNS works hierarchically with a root server at the top level, below which are generic, country-specific and other domain levels. DNS servers store and distribute this mapping information across multiple computers to avoid a single point of failure. Primary DNS servers store and update zone files mapping domain names to IP addresses, while secondary servers transfer this information from primary servers.
OMNeT++ is an open-source discrete event network simulation framework that uses a modular component-based architecture. Models in OMNeT++ are composed of reusable modules, which can be simple modules written in C++ or compound modules that contain other modules. The structure of a model is defined using the NED language. As an example, a communication network model is presented containing node modules that generate and route packets between each other over connections.
This document discusses message authentication codes (MACs). It explains that MACs use a shared symmetric key to authenticate messages, ensuring integrity and validating the sender. The document outlines the MAC generation and verification process, and notes that MACs provide authentication but not encryption. It then describes HMAC specifically, which applies a cryptographic hash function to the message and key to generate the MAC. The key steps of the HMAC process are detailed.
This document discusses ARP and RARP protocols. ARP is used to map IP addresses to MAC addresses on local networks. It works by broadcasting ARP requests and unicasting replies. RARP is used in the opposite direction, to map a device's MAC address to its IP address. Examples are given of how an ARP cache works, including entries for pending, resolved, and free states. RARP has been replaced by BOOTP and DHCP for providing additional configuration info like subnet masks.
This document provides an overview of the Simple Mail Transfer Protocol (SMTP). It discusses how SMTP clients and servers work, how messages are sent to SMTP servers using either relaying or DNS, the SMTP communication model involving connection establishment, message transfer, and connection termination. It also describes mail processing involving envelopes and headers, status codes, and special features like mail forwarding, gatewaying, and relaying. Limitations of SMTP are also noted.
SMTP is the standard protocol for sending email over the Internet. It defines the message format and how messages are transferred between mail servers. When a client wants to send a message, it establishes a connection to an SMTP server and issues commands like MAIL, RCPT, and DATA to specify the sender, recipients, and transmit the message content. While simple to implement, basic SMTP has limitations like lacking authentication that allow issues like spam. Extensions to SMTP like ESMTP aim to address such problems.
Conceptos y Protocolos de Enrutamiento (Capitulo 9)Cristiān Villegās
Este documento describe el protocolo de enrutamiento EIGRP. Explica los conceptos básicos de EIGRP como su historia, formato de mensajes, métrica compuesta y el algoritmo DUAL. También cubre la configuración básica de EIGRP incluyendo la identificación del proceso, el comando network, y los comandos para verificar la configuración y estado de EIGRP.
IPsec provides security at the IP layer by enabling encryption and authentication of IP packets. It has two modes: transport mode which secures end-to-end communication between hosts, and tunnel mode which secures traffic between security gateways. The Authentication Header (AH) provides data integrity and authentication, while the Encapsulating Security Payload (ESP) provides confidentiality through encryption. Security associations define the IP addresses and security parameters for unidirectional secure connections. Multiple security associations can be combined for added security through transport adjacency or iterated tunneling.
The application layer allows users to interface with networks through application layer protocols like HTTP, SMTP, POP3, FTP, Telnet, and DHCP. It provides the interface between applications on different ends of a network. Common application layer protocols include DNS for mapping domain names to IP addresses, HTTP for transferring web page data, and SMTP/POP3 for sending and receiving email messages. The client/server and peer-to-peer models describe how requests are made and fulfilled over the application layer.
This document provides an overview of Cisco Packet Tracer, a networking simulation software. It describes Packet Tracer as a comprehensive teaching and learning tool that offers realistic network simulation, visualization, assessment authoring and multi-user collaboration capabilities. The document outlines key features of Packet Tracer including its simulation environment, activity wizard for creating assessments, and multi-user functionality. It also summarizes new features introduced in version 5.3 and the benefits of Packet Tracer for both instructors and students in teaching and learning networking concepts.
SNMP (Simple Network Management Protocol) allows network devices to be monitored and managed. It defines an agent-manager architecture where agents run on devices and respond to requests from managers to retrieve or store management information. SNMP uses a management information base (MIB) and structure of management information (SMI) to define managed objects and their properties. Key SNMP components include versions 1 and 2, protocol data units (PDUs) like get, set, and trap requests, and error codes. SNMP traps allow agents to asynchronously notify managers of events.
This slide explains the design part as well as implementation part of the firewall. And also tells about the need of firewall and firewall capabilities.
This document discusses different methods for authenticating users, including HTTP authentication, PHP authentication, and hard-coded authentication. HTTP authentication uses a 401 response to prompt for username and password, but does not encrypt the credentials. PHP authentication uses the $_SERVER['PHP_AUTH_USER'] and $_SERVER['PHP_AUTH_PW'] variables to store and validate credentials. Hard-coded authentication checks credentials directly in the code, but has drawbacks like all users sharing the same credentials and difficulty changing them. The document also discusses using Apache .htaccess files and the header() and isset() PHP functions to implement authentication.
Network security involves protecting computer networks from unauthorized access, misuse, and hacking. It is important because we rely on computer networks to manage critical systems like banking, utilities, healthcare, and more. Effective network security requires identification of users, authenticating users, and controlling user access through measures like strong passwords, antivirus software, encryption, firewalls, backups, auditing systems, security training, and testing security systems. Some common threats to network security include viruses, Trojan horses, spam, phishing, password attacks, and insecure shared computers.
This document discusses an IP-based architecture for the Internet of Things (IoT) using IPv6 and related standards to enable interoperability. It describes how design patterns from the Internet and World Wide Web, such as layered protocols, uniform addressing, and stateless interaction, can be applied to the IoT through the use of technologies like CoAP, LWM2M, and IPSO Smart Objects. These standards build upon each other to provide an architecture that supports resource discovery, asynchronous notifications, and abstraction of IoT devices and their data through RESTful APIs and semantic data models.
X.509 certificates are used to authenticate users in distributed systems. They contain a user's public key that is signed by a Certification Authority. Certificates are organized in hierarchies where each CA can validate certificates from other CAs. Version 3 certificates include extensions that provide additional information like usage constraints and policies.
This document discusses the Internet Protocol (IP) version 4 and 6. It describes the key tasks of IP including addressing computers and fragmenting packets. IP version 4 uses 32-bit addresses while IP version 6 uses 128-bit addresses and has improvements like larger address space and better security. The document also covers IP address classes, private addressing, subnetting, Classless Inter-Domain Routing (CIDR), and address blocks.
The document discusses the Domain Name System (DNS) which maps domain names to IP addresses. It describes how DNS works hierarchically with a root server at the top level, below which are generic, country-specific and other domain levels. DNS servers store and distribute this mapping information across multiple computers to avoid a single point of failure. Primary DNS servers store and update zone files mapping domain names to IP addresses, while secondary servers transfer this information from primary servers.
OMNeT++ is an open-source discrete event network simulation framework that uses a modular component-based architecture. Models in OMNeT++ are composed of reusable modules, which can be simple modules written in C++ or compound modules that contain other modules. The structure of a model is defined using the NED language. As an example, a communication network model is presented containing node modules that generate and route packets between each other over connections.
This document discusses simulating an ad-hoc network using OMNeT++ and the INETMANET framework. It describes building an OMNeT++ project with INETMANET imported as a reference. It then details creating a network description file and initialization file to simulate an AODV ad-hoc network with a varying number of nodes. The simulation measures the end-to-end delay for the first 700 packets received by a fixed destination node. Test results show the total delay and average delay per packet increases as the number of nodes increases in the network.
The document discusses simulation using OMNeT++, an object-oriented modular discrete event network simulation framework. It provides an overview of OMNeT++'s core components including modules, gates, channels, and the simulation process. Key aspects covered include writing simulations using the OMNeT++ modeling language NED, defining simple and compound modules, connecting modules with gates and channels, and performing discrete event simulation runs in OMNeT++.
The document discusses modifying a network simulation in OMNeT++ to allow for additional nodes and connections between nodes. It describes updating the Node.cc file to allow nodes to select random destinations when transmitting messages. It also covers encapsulating and decapsulating different header types when sending packets between nodes, and creating a new header type called "MyHeader" to insert between the IP and MAC headers in the simulation.
Tutorial 6 queues & arrays & results recording Mohd Batati
The document describes various container classes in C++ like cQueue, cArray, and histograms that can be used for recording simulation data in OMNeT++. It provides examples of using cOutVector to record time series node energy data, cHistogram to record node lifetime in a histogram, and the eventlog file to view events in a sequence chart. These classes and techniques allow modeling and visualization of simulation results in OMNeT++.
The document discusses modifying C++ code in OMNeT++ simulations to model node behavior and energy consumption over time. It describes adding code to nodes to send periodic packets that consume energy, and have nodes stop transmitting when energy is depleted. It also discusses using the OMNeT++ INI file to configure simulation parameters like transmission interval and initial energy for different experiment configurations.
The document provides instructions for installing Mixnet, which combines the INET and MiXiM frameworks in OMNeT++ to enable simulations using detailed wireless models from MiXiM with upper network layers from INET. It describes downloading OMNeT++, MiXiM, a modified version of INET compatible with MiXiM, and importing and building the projects in OMNeT++ to set up Mixnet for wireless network simulations. Following the provided 19 step process allows importing and configuring the necessary frameworks and projects in OMNeT++ to install Mixnet.
Using Omnet++ in Simulating Ad-Hoc Network Ahmed Nour
The document describes simulations of an AODV network using OMNeT++ and inetmanet. It will generate ad hoc networks with varying numbers of hosts from 100 to 500. Node 0 will send packets to a fixed node. It will measure the end-to-end delay for the first 700 packets received by the fixed host. The network description file defines the network components and parameters. The initialization file sets up the AODV routing protocol and network configuration. Graphs of total delay, average delay per packet, and average delay per scenario will be generated.
This document provides instructions for creating a simple OMNeT++ simulation project. It describes how to start the OMNeT++ IDE, create a workspace, add a simple module with input and output gates, define a network with two instances of the module connected by a link, and run the simulation. The key steps are opening the OMNeT++ IDE, creating a new project and simple module, defining the module's gates, creating a network with two module instances connected by a link, and running the simulation to test it.
The document introduces .NET framework and ASP.NET. It discusses that .NET is a software framework that supports multiple programming languages and data formats. ASP.NET is the next generation of ASP that uses compiled code, making pages faster. ASP.NET supports features like server controls, validation, and data binding. The document also summarizes new features in .NET 4.5 like HTML5, mobile support, and asynchronous programming. It concludes with statistics on ASP.NET job opportunities and salaries globally and in Bangladesh.
This document outlines the curriculum for a 144-hour C#.NET Applied OOP skills enhancement training program subsidized by the Bangladesh Hi-Tech Park Authority. The training will cover C# language fundamentals, object-oriented programming concepts and their implementation in C#, database design, ASP.NET Web Forms and MVC, code quality practices like unit testing, and culminate in a group project using required and optional tools and technologies. Attendees must attend at least 90% of classes to complete the program.
This document provides an overview of object-oriented programming concepts including classes, objects, inheritance, encapsulation, polymorphism and abstraction. It discusses SOLID principles like single responsibility, open/closed, Liskov substitution, interface segregation and dependency inversion. It also covers UML diagrams, architecture styles and data access layers.
The document provides an introduction to object oriented design principles with C#. It discusses the SOLID principles, which are single responsibility principle (SRP), open-closed principle (OCP), Liskov substitution principle (LSP), interface segregation principle (ISP) and dependency inversion principle (DIP). For each principle, it provides a definition, real world example and demonstration of implementation. It also discusses other design principles like program to interface, dependency injection and composition over inheritance. The document is intended to help understand and apply good object oriented design in software projects.
The document outlines topics related to C# programming including fundamentals, data types, expressions, debugging, conditional statements, loops, classes, methods, and other concepts. It provides descriptions and examples for key elements like declaring variables, defining classes and objects, boxing and unboxing value types, namespaces, and more. The document appears to be serving as a course outline or guide for learning C#.
The world of enterprise solution development with asp.net and C#Md. Mahedee Hasan
This document discusses enterprise software development using ASP.NET and C#. It provides an overview of enterprise applications, describing them as complex, scalable, distributed systems that are mission critical. It also outlines considerations for enterprise application design like meeting business goals, performance, and security. Additionally, it presents current trends in enterprise development like microservices and tools like Visual Studio and .NET for building these applications.
This document provides an overview of SQL Server database development concepts including SQL Server objects, tables, data types, relationships, constraints, indexes, views, queries, joins, stored procedures and more. It begins with introductory content on SQL Server and databases and then covers these topics through detailed explanations and examples in a structured outline.
This document provides an introduction to Microsoft Team Foundation Server (TFS) 2013. It discusses the history and clients of TFS, how to use version control in TFS including check-ins and check-outs. It also covers source control features like branching and merging. Additionally, it introduces application lifecycle management (ALM) capabilities in TFS like product backlogs, work items, queries, boards and burn down charts.
Generic repository pattern with ASP.NET MVC and Entity FrameworkMd. Mahedee Hasan
Generic Repository Pattern with ASP.NET MVC and EF provides a concise overview of the generic repository pattern and its implementation with ASP.NET MVC and Entity Framework. The generic repository pattern allows a single repository to handle data access for all models, reducing duplicate code, speeding development and enforcing consistency. The document outlines the steps to implement this pattern, including creating models, a DbContext, generic IRepository and Repository interfaces, modifying controllers to use the generic repository, enabling migrations and more.
OMNeT++ is an open-source, component-based discrete event network simulation framework written in C++. It allows models to be built hierarchically from components (modules) that communicate through message passing. OMNeT++ provides a simulation kernel and class libraries, while models are developed by defining module structures in NED and programming module behavior in C++. It supports simulations of protocols, traffic, and distributed systems and is commonly used for evaluating network and hardware performance.
This document provides an overview and introduction to OMNeT++, an open-source discrete event network simulation framework. It outlines the key components of OMNeT++ including its C++ class library, infrastructure for assembling simulations using modules, and runtime interfaces. The document then describes a TicToc tutorial that guides the reader through building a basic two-node simulation in OMNeT++ to demonstrate common features like creating modules in C++, defining the network structure in NED, configuring simulations using ini files, and analyzing results. The goal of the tutorial is to familiarize new users with typical workflows for modeling, running and evaluating simulations in OMNeT++.
This document summarizes steps to enhance a simple OMNeT++ simulation of two nodes passing a packet back and forth. It describes adding node icons, coloring nodes differently, adding debug output, introducing a counter variable to limit exchanges, and defining module parameters that can be configured. The enhancements make the model output more informative and customizable through configuration files.
2018-11-06: Unfortunately, LinkedIn/Slideshare disabled the update functionality and, thus, I had to upload an updated version of this introduction to OMNeT++ as new presentation. It is available here: https://www.slideshare.net/christian.timmerer/an-introduction-to-omnet-54
The presentation provides an overview of behavioral synthesis and SystemC. It discusses what behavioral synthesis is, the synthesis process which includes data flow optimization, scheduling, clustering, allocation and binding, and control logic generation. It notes some limitations of behavioral synthesis. It then defines SystemC as a C++ library with HDL features that allows modeling concurrent processes using plain C++ syntax. It outlines some key features of SystemC like modules, ports, processes and channels.
A document describes using the radio and simulating TinyOS applications with TOSSIM. It discusses defining message structures, implementing radio communication using interfaces like Packet and AMSend, and simulating applications by specifying topologies, noise models, and debugging channels. An example application counts over a timer and broadcasts the counter using the radio. It can be simulated in TOSSIM by configuring 3 motes - one acts as a sink and receives periodic messages from sensors reporting temperature and humidity data.
COinS allow metadata about articles to be hidden on web pages in a standardized format called OpenURL. Browser plugins can use COinS to find documents or store metadata. Adding COinS to pages allows users more simple and personalized work with resources by linking to library services or saving references.
The document summarizes several course outlines for computer science courses. It provides details on three courses: Digital Logic, Discrete Structure, and Microprocessor. For each course it lists information like the course title, number, credit hours, nature, goals, contents which are divided into units, textbooks, and lab works. It also includes two sample course outlines for Data Structures and Algorithms and another unnamed course. The courses cover topics in digital logic, discrete math, microprocessors, data structures, algorithms and other computer science fundamentals.
The document summarizes several course outlines for computer science courses. It provides details on three courses: Digital Logic, Discrete Structure, and Microprocessor. For each course it lists information like the course title, number, credit hours, nature, goals, contents which are divided into units, textbooks, and lab works. It also includes two sample course outlines for Data Structures and Algorithms and another unnamed course. The courses cover topics in digital logic, discrete math, microprocessors, data structures, algorithms and other computer science fundamentals.
The document discusses the composite message pattern, which organizes communication between components by packaging all data into message objects. This simplifies interaction, minimizes communication overhead, and allows components to be easily added or removed with minimal changes. The pattern supports efficient memory management and reflexibility in networked systems.
This document describes a simulation of WiMAX implementation in NS3 (Network Simulator 3). It includes:
1. An introduction describing the study case of simulating traffic between two nodes and a base station in WiMAX using NS3 by changing modulation schemes.
2. An overview of the basic components and functionality of NS3 including nodes, applications, channels, net devices, and topology helpers.
3. A description of the simulation scenario with one base station and two subscriber stations, where subscriber station-1 sends packets to subscriber station-2, and the results that will be demonstrated including packets, delay, packet flow, and transmission time animations.
It talks about native compilation technology, why it is required, what it is?
Also how we can apply this technology to compile table and procedure to achieve considerable performance gain with very minimal changes.
These are the slides which were used by Kumar Rajeev Rastogi of Huawei for his presentation at pgDay Asia 2016. He presented great idea about Native Compilation to improve CPU efficiency.
This document contains an agenda and summaries of sections from a presentation on messaging architectures and using messaging data with Splunk. The agenda includes an overview of common messaging systems like JMS, AMQP, and Kafka. It also covers customizing message handling and scaling modular inputs. Additionally, it discusses using ZeroMQ to access messages and using underutilized computers with JMS tasks.
This document discusses code metrics and refactoring. It begins with an introduction to metrics and how they can be used to evaluate code quality by measuring attributes like complexity, coupling, and cohesion. Several specific metrics are discussed like CBO, CC, and LCOM. The document then discusses refactoring and how metrics can help identify areas of code that need improvement. Refactoring is presented as an important process to prevent software decay and allow code to be improved over time through iterative testing and modification.
Code Review Checklist: How far is a code review going? "Metrics measure the design of code after it has been written, a Review proofs it and Refactoring improves code."
In this paper a document structure is shown and tips for a code review.
Some checks fits with your existing tools and simply raises a hand when the quality or security of your codebase is impaired.
The Ring programming language version 1.8 book - Part 95 of 202Mahmoud Samir Fayed
The document provides code examples for creating a GUI application with Ring that includes two buttons. It shows how to create a main window and two buttons, set their properties like geometry, text, and click events. It also shows how to call a function from a button click event and create a second window.
* What are Embedded Systems?
* C for Embedded Systems vs. Embedded C.
* Code Compilation process.
* Error types.
* Code Compilation using command line.
This document provides an overview of an MSc in Reliable Embedded Systems and a "TTE Certified" programme. The MSc is delivered through blended learning over 1-2 years at the University of Leicester with intensive training modules delivered by TTE Systems Ltd. in Leicester. Modules cover topics like programming techniques, system design and verification, design patterns, automotive systems, FPGAs, and real-time operating systems. The cost and modules available are also outlined. The "TTE Certified" programme allows individuals to take modules individually for professional development or certification.
Summarizing Software API Usage Examples Using Clustering TechniquesNikos Katirtzis
This document presents CLAMS, an approach for automatically mining API usage examples from client code. It clusters API usage sequences, generates summarized snippets from the top clusters, and selects the most representative snippet from each cluster. The methodology can be easily adapted to new programming languages as it relies on abstract syntax trees and API call sequences rather than detailed semantic analysis. The system is evaluated on datasets from several Java libraries and is shown to produce more concise, readable snippets that better match handwritten examples compared to approaches that output API call sequences or less summarized snippets. The clustering approach that allows similar rather than just identical sequences leads to improved results.
The document provides an agenda for an embedded C programming lecture that includes the following topics: definitions of embedded systems and the differences between C for embedded systems and embedded C, the code compilation process and types of errors, code compilation using the command line, and a quick revision of C language syntax. It concludes with assigning a task for students.
Azure Machine Learning provides tools for creating complete predictive analytics solutions in the cloud. It allows users to build, test, and deploy predictive models by dragging and dropping datasets and analysis modules onto an interactive canvas. Key benefits of Azure Machine Learning include its global datacenter infrastructure, support for multiple languages and currencies, ability to easily scale compute and storage capacity in the cloud, and tools for data integration and building models using advanced algorithms.
Chatbot development with Microsoft Bot Framework and LUISMd. Mahedee Hasan
The document discusses developing chatbots using the Microsoft Bot Framework and LUIS. It provides an overview of what chatbots are, why they are useful, and the basic steps to create a bot project using the Bot Framework and Visual Studio. It also describes how to configure LUIS cognitive services to add natural language capabilities to the bot and allow it to understand user intents. The document then explains how to publish the bot to platforms like Skype, Facebook Messenger, and Azure.
The document discusses developing chatbots using the Microsoft Bot Framework. It provides an overview of chatbots and their uses. It then outlines the steps to create a bot project in Visual Studio, test it using the emulator, register it with the Bot Framework, and publish it to Azure. Finally, it describes how to connect the bot to Skype and Facebook channels.
- The document provides an overview of ASP.NET MVC, including its history, core concepts, and advantages over traditional ASP.NET web forms.
- ASP.NET MVC is an open source web framework that uses the model-view-controller pattern to produce dynamic web pages. It was introduced by Microsoft in 1998 as an alternative to ASP.NET web forms.
- The framework promotes separation of concerns, testability, and extensibility. Controllers handle requests and retrieve data, views are used for rendering, and models represent the application's data.
Windows 10 IoT Core is an operating system for Internet of Things devices. It allows physical objects to communicate over a network without human interaction. The IoT market is expected to be worth $1.7 trillion by 2020, with 25 billion connected devices. Windows 10 IoT Core can be installed on devices like Raspberry Pi, MinnowBoard MAX, and DragonBoard to capture and analyze data to improve business results. The presentation provides steps to install Windows 10 IoT Core, load projects onto IoT devices, and contact information for further questions.
Visual Studio 2017 provides improvements to performance, installation, and cross-platform development. It allows developing applications faster and for multiple platforms like Android, iOS, Linux, and Windows. New features include live unit testing, improved debugging tools, and easier integration with source control systems like Git and TFS. The document discusses Visual Studio editions, installation options, and highlights key features and improvements in Visual Studio 2017.
This document discusses how to increase productivity using Visual Studio 2017. It provides an overview of Visual Studio, describing it as a very powerful integrated development environment that supports many programming languages and quick project creation. It also outlines several features in Visual Studio 2017 that can improve productivity, such as refactoring tools, debugging improvements, and faster startup times.
Visual Studio 2017 provides many new and improved features. It allows developing applications faster and for multiple platforms like Android, iOS, Linux and Windows. It starts up faster, uses less memory, and allows installing specific workloads. Visual Studio 2017 also improves code navigation, debugging, unit testing, and refactoring tools. It supports cross-platform development using Xamarin and makes app deployment on Azure easier.
Generic Repository Pattern with ASP.NET MVC and EF provides a concise overview of the generic repository pattern and its implementation with ASP.NET MVC and Entity Framework. The generic repository pattern allows a single repository to be used for data access across all models by abstracting data logic into a shared repository interface. This reduces redundant code, promotes code reuse, and makes the solution easier to maintain and develop quickly. The document outlines the steps to implement this pattern in an ASP.NET MVC application using EF for data access and data modeling.
The document provides an overview of ASP.NET compilation and configuration. It discusses how ASP.NET code is compiled into assemblies and MSIL. It also covers the benefits of compilation such as performance, security and stability. Additionally, it describes ASP.NET's compilation architecture including features like multiple language support, automatic compilation, and flexible deployment options. Finally, it discusses website configuration in ASP.NET and how it uses a hierarchical system of configuration.
CapTechTalks Webinar Slides June 2024 Donovan Wright.pptxCapitolTechU
Slides from a Capitol Technology University webinar held June 20, 2024. The webinar featured Dr. Donovan Wright, presenting on the Department of Defense Digital Transformation.
Level 3 NCEA - NZ: A Nation In the Making 1872 - 1900 SML.pptHenry Hollis
The History of NZ 1870-1900.
Making of a Nation.
From the NZ Wars to Liberals,
Richard Seddon, George Grey,
Social Laboratory, New Zealand,
Confiscations, Kotahitanga, Kingitanga, Parliament, Suffrage, Repudiation, Economic Change, Agriculture, Gold Mining, Timber, Flax, Sheep, Dairying,
Leveraging Generative AI to Drive Nonprofit InnovationTechSoup
In this webinar, participants learned how to utilize Generative AI to streamline operations and elevate member engagement. Amazon Web Service experts provided a customer specific use cases and dived into low/no-code tools that are quick and easy to deploy through Amazon Web Service (AWS.)
How to Download & Install Module From the Odoo App Store in Odoo 17Celine George
Custom modules offer the flexibility to extend Odoo's capabilities, address unique requirements, and optimize workflows to align seamlessly with your organization's processes. By leveraging custom modules, businesses can unlock greater efficiency, productivity, and innovation, empowering them to stay competitive in today's dynamic market landscape. In this tutorial, we'll guide you step by step on how to easily download and install modules from the Odoo App Store.
A Free 200-Page eBook ~ Brain and Mind Exercise.pptxOH TEIK BIN
(A Free eBook comprising 3 Sets of Presentation of a selection of Puzzles, Brain Teasers and Thinking Problems to exercise both the mind and the Right and Left Brain. To help keep the mind and brain fit and healthy. Good for both the young and old alike.
Answers are given for all the puzzles and problems.)
With Metta,
Bro. Oh Teik Bin 🙏🤓🤔🥰
Elevate Your Nonprofit's Online Presence_ A Guide to Effective SEO Strategies...TechSoup
Whether you're new to SEO or looking to refine your existing strategies, this webinar will provide you with actionable insights and practical tips to elevate your nonprofit's online presence.
This document provides an overview of wound healing, its functions, stages, mechanisms, factors affecting it, and complications.
A wound is a break in the integrity of the skin or tissues, which may be associated with disruption of the structure and function.
Healing is the body’s response to injury in an attempt to restore normal structure and functions.
Healing can occur in two ways: Regeneration and Repair
There are 4 phases of wound healing: hemostasis, inflammation, proliferation, and remodeling. This document also describes the mechanism of wound healing. Factors that affect healing include infection, uncontrolled diabetes, poor nutrition, age, anemia, the presence of foreign bodies, etc.
Complications of wound healing like infection, hyperpigmentation of scar, contractures, and keloid formation.
Philippine Edukasyong Pantahanan at Pangkabuhayan (EPP) CurriculumMJDuyan
(𝐓𝐋𝐄 𝟏𝟎𝟎) (𝐋𝐞𝐬𝐬𝐨𝐧 𝟏)-𝐏𝐫𝐞𝐥𝐢𝐦𝐬
𝐃𝐢𝐬𝐜𝐮𝐬𝐬 𝐭𝐡𝐞 𝐄𝐏𝐏 𝐂𝐮𝐫𝐫𝐢𝐜𝐮𝐥𝐮𝐦 𝐢𝐧 𝐭𝐡𝐞 𝐏𝐡𝐢𝐥𝐢𝐩𝐩𝐢𝐧𝐞𝐬:
- Understand the goals and objectives of the Edukasyong Pantahanan at Pangkabuhayan (EPP) curriculum, recognizing its importance in fostering practical life skills and values among students. Students will also be able to identify the key components and subjects covered, such as agriculture, home economics, industrial arts, and information and communication technology.
𝐄𝐱𝐩𝐥𝐚𝐢𝐧 𝐭𝐡𝐞 𝐍𝐚𝐭𝐮𝐫𝐞 𝐚𝐧𝐝 𝐒𝐜𝐨𝐩𝐞 𝐨𝐟 𝐚𝐧 𝐄𝐧𝐭𝐫𝐞𝐩𝐫𝐞𝐧𝐞𝐮𝐫:
-Define entrepreneurship, distinguishing it from general business activities by emphasizing its focus on innovation, risk-taking, and value creation. Students will describe the characteristics and traits of successful entrepreneurs, including their roles and responsibilities, and discuss the broader economic and social impacts of entrepreneurial activities on both local and global scales.
Philippine Edukasyong Pantahanan at Pangkabuhayan (EPP) Curriculum
Introduction to OMNeT++
1. Introduction to OMNet++
Prepared by
Md. Mahedee Hasan
M.Sc Engg. IICT, BUET
Web: http://mahedee.net
Reviewed by
Amit Karmaker
Md. Abir Hossain
M.Sc Engg. IICT, BUET
Supervised by
Dr. Mohammad Shah Alam
Assistant Professor
IICT, BUET
Contents
What is OMNeT++?.......................................................................................................................................2
Modeling concepts........................................................................................................................................2
Module..........................................................................................................................................................3
Message, gets and links ................................................................................................................................3
Parameters....................................................................................................................................................3
Classes that are part of simulation class library ...........................................................................................4
OMNeT++ Consists of....................................................................................................................................4
How OMNeT++ Works? ................................................................................................................................4
NED Features ................................................................................................................................................5
The Network .................................................................................................................................................5
.ini (Initialization) Files..................................................................................................................................6
.cc (C++) Files.................................................................................................................................................7
Channel .........................................................................................................................................................7
Simple and Compound Module ....................................................................................................................8
2. Simple Module............................................................................................................................................10
Compound Modules ...................................................................................................................................11
Channels......................................................................................................................................................12
Parameter ...................................................................................................................................................12
Gates...........................................................................................................................................................14
Sub Modules ...............................................................................................................................................15
Connections ................................................................................................................................................16
Inheritance..................................................................................................................................................16
Packages......................................................................................................................................................16
Create First Simulation Project using OMNeT++ ........................................................................................17
References ..................................................................................................................................................26
History Card ................................................................................................................................................26
What is OMNeT++?
OMNeT++ is a Simulator
For discrete event network
It is object oriented and modular
Used to simulate
o Modeling of wired and wireless communication networks
o Protocol modeling
o Modeling of queuing networks etc.
Modules are connected using gates to form compound module
o In other system sometimes gates are called port
Modeling concepts
Modules are communicate with message passing
Active modules are called simple modules
Message are sent through output gates and receive through input gates
Input and output gates are linked through connection
Parameters such as propagation delay, data rate and bit error rate, can be assigned to
connections
3. Fig – simple and compound module
Module
In hierarchical module, the top level module is system module
System module contains sub modules
Sub modules contains sub modules themselves
Both simple and compound modules are instance of module type
Message, gets and links
Module communicate by exchanging message
Message can represent frames or packets
Gates are the input and output interface of modules
Two sub modules can be connected by links with gates
Links = connections
Connections support the following parameter
o Data rate, propagation delay, bit error rate, packet error rate
Parameters
Modules parameters can be assigned
o in either the NED files or
o the configuration file omnetpp.ini.
Parameter can take string, numeric or Boolean data values or can contains XML data trees
4. Classes that are part of simulation class library
The following classes are the part of simulation class library
Module, gates, parameter, channel
Message, packet
Container class (e.g. queue and array)
Data collection classes
Statistics and distribution estimated classes
Transition and result accuracy detection classes.
OMNeT++ Consists of
NED language topology description(s)(.ned files)
Message definitions (.msg files)
Simple module sources. They are C++ files, with .h/.cc suffix.
How OMNeT++ Works?
When Program started
o Read all NED files containing model topology
o Then it reads a configuration file(usually called omnetpp.ini)
Output is written in result file
Graph is generated from result file using Matlab, Phython etc
5. NED Features
NED has several features which makes it scale well to large project
Hierarchical
Component-based
Interfaces
Inheritance
Packages
Metadata annotation
The Network
Network consists of
o Nodes
o Gates and
o Connections
Fig: The network
6. network Network
{
submodules:
node1 : Node;
node2 : Node;
node3 : Node;
………………………
connections:
node1.port++<-->{datarate=100Mbps;}<-->node2.port++;
node2.port++<-->{datarate=100Mbps;}<-->node3.port++;
node3.port++<-->{datarate=100Mbps;}<-->node1.port++;
………………………
}
The double arrow means bi-directional connection
The connection points of the modules are called gates
The port++ notation adds a new gate to the port[] gate vector
Nodes are connected with a channel
Specify the network option in to the configuration like below
[General]
network = Network
.ini (Initialization) Files
Defines the network initialization point with/without some parameters
[General]
network = TicToc1
7. .cc (C++) Files
Contains class definition and function for modules.
#include <string.h>
#include <omnetpp.h>
class Txc1 : public cSimpleModule
{
protected:
virtual void initialize();
virtual void handleMessage(cMessage *msg);
};
Define_Module(Txc1);
void Txc1::initialize()
{
// Am I Tic or Toc?
if (strcmp("tic", getName()) == 0)
{
cMessage *msg = new cMessage("tictocMsg");
send(msg, "out");
}
}
void Txc1::handleMessage(cMessage *msg)
{
send(msg, "out");
}
Channel
Predefined Channel type
o IdealChannel
o DelayChannel
delay (double with s, ms, us)
diabled (boolean)
o DatarateChannel
delay (double with s, ms, us)
disabled (boolean)
datarate (double with unit as bps, kbps, Mbps, Gbps)
ber (double bit error rate [0,1])
per (double packet error rate [0,1])
One can create new channel type
8. network net
{
@display("bgb=340,233");
types:
channel customChannel extends ned.DatarateChannel{
datarate=100Mbps;
}
submodules:
computer1: computer {
@display("p=63,55");
}
computer2: computer {
@display("p=260,55");
}
connections:
computer1.out -->customChannel--> computer2.in;
computer2.out -->customChannel--> computer1.in;
}
Simple and Compound Module
Simple module is a basic building block
Denoted by simple keyword
simple App
{
parameters:
int destAddress;
...
@display("i=block/browser");
gates:
input in;
output out;
}
simple Routing
{
...
}
simple Queue
{
...
}
Convention : Module name should be Pascal case
Simple module combines into compound module
10. Fig – The node compound module
When simulation program started its load NED file first.
Then it load corresponding simple module written in C++ such as App, Queue
Simple Module
Simple module is the active component defined by simple keyword
simple Queue
{
parameters:
int capacity;
@display("i=block/queue");
gates:
input in;
output out;
}
Parameters and gates sections are optional here
Parameters keywords is optional too, parameters can be defined without parameters keyword
One can explicitly specify the C++ class with the @class property
simple Queue
{
parameters:
int capacity;
@class(mylib::Queue);
@display("i=block/queue");
gates:
input in;
output out;
}
11. The C++ classes will be mylib::App, mylib::Router and mylib::Queue
@namespace(mylib);
simple App{
...
}
simple Router{
...
}
simple Queue{
...
}
Compound Modules
Groups other modules into a larger unit
A compound modules may have gates and parameters like simple module but not active
A compound modules may have several sections all of them optional
module Host
{
types:
...
parameters:
...
gates:
...
submodules:
...
connections:
...
}
Modules contains in compound module are called sub module – are in sub module section
Compound module may be inherited via sub classing
module WirelessHost extends WirelessHostBase
{
submodules:
webAgent:WebAgent;
connections:
webAgent.tcpOut-->tcp.appIn++;
webAgent.tcpIn<--tcp.appOut++;
}
module DesktopHost extends WirelessHost
{
gates:
inout ethg;
submodules:
12. eth:EthernetNic;
connections:
ip.nicOut++-->eth.ipIn;
ip.nicIn++<--eth.ipOut;
eth.phy<-->ethg;
}
Channels
Channels are connections between nodes
Predefined channel types are: ned.IdealChannel, ned.DelayChannel and ned.DatarateChannel
Can use import ned.*
channel Ethernet100 extends ned.DatarateChannel
{
datarate = 100Mbps;
delay = 100us;
ber = 1e-10;
}
Or
channel DatarateChannel2 extends ned.DatarateChannel
{
double distance @unit(m); // @unit is a property
delay = this.distance/200000km * 1s;
}
Parameter
Parameters are variables that belong to a module.
Parameters can be used in building the topology (number of nodes, etc)
To supply input to C++ code that implements simple modules and channels
For the numeric types, a unit of measurement can also be specified (@unit property), to
increase type safety.
Parameters can get their values from NED files or from the configuration(Omnetpp.ini)
13. simple App
{
parameters:
string protocol; //protocoltouse:"UDP"/"IP"/"ICMP"/...
int destAddress; //destinationaddress
volatile double sendInterval@unit(s)= default(exponential(1s));
//timebetweengeneratingpackets
volatile int packetLength@unit(byte)= default(100B);
//lengthofonepacket
volatile int timeToLive= default(32);
//maximumnumberofnetworkhopstosurvive
gates:
input in;
output out;
}
Assigning a Value
Another example
* matches any index
.. matches ranges
If number of individual hosts instead of a sub module vector, network definition can be like this:
15. Example 2:
Example 3:
Gates around the edges of the grid are expected to remain unconnected, hence the @loose
annotation used.
Sub Modules
Modules that a compound module is composed of are called its sub modules.
A sub module has a name, and it is an instance of a compound or simple module type.
Example:
16. Connections
Connections are defined in connections section in compound module
Inheritance
In NED, a type may only extend an element of the same component type
A simple module may only extend a simple module, compound module may only extend a
compound module, and so on.
Single inheritance is supported for modules and channels
Multiple inheritance is supported for module interfaces and channel interfaces
Inheritance may:
o Add new properties, parameters, gates, inner types, sub modules, connections, as long
as names do not conflict with inherited names
o Modify inherited properties, and properties of inherited parameters and gates
Packages
Group together similar modules
Reduces name conflicts
Before use the class, must reference the package
17. Create First Simulation Project using OMNeT++
Step 1: Create a OMNeT++ Project
Go to File -> New -> OMNeT++ Project
Step 2: Type project Name
Type project Name (ex. FirstSim) in Project Name text box
18. Step 3: Add Initial Contents
Here I add Empty project
Step 4: Choose C++ Project Type
Here we choose OMNeT++ simulation
19. Step 5: Select Configuration
Step 6: Create NED File
File -> New -> Network Description file (NED)
20. Step 7: Select Project for the NED file
Step 8: Choose initial content for NED file
21. Step 9: Click finish
Step 10: Modify and add the code below to source of ned file
//
// TODO documentation
//
simple computer
{
gates:
input in;
output out;
}
//
// TODO documentation
//
network net
{
@display("bgb=340,233");
submodules:
computer1: computer {
@display("p=63,55");
}
computer2: computer {
@display("p=260,55");
}
connections:
computer1.out --> computer2.in;
computer2.out --> computer1.in;
}
Step 11: Modify the source of Package.ned
//package firstsim;
//
//@license(LGPL);
@license(omnetpp);
22. Step 12: Create Initialization File (ini)
Step 13: Choose project for ini file
23. Step 14: Choose initial content for ini file
Step 15: Choose ned file for ini file
24. Step 16: Click finish
Step 17: Create a C++ source file
File->New->Source File
Step 18: Type name of the C++ File (example: computer.cc)
25. Step 19: Modify the computer.cc
/*
* computer.cc
*
* Created on: Aug 25, 2015
* Author: mahedee
*/
#include<string.h>
#include<omnetpp.h>
/*computer is a simple module. A simple module is nothing more than a C++ class which
has to be
sub classed from cSimpleModule,with one or more virtual member functions redefined to
define its behavior.*/
class computer : public cSimpleModule
{
protected:
virtual void initialize();
virtual void handleMessage(cMessage *msg);
};
/* The class has to be registered with OMNeT++ via the Define_Module() macro.The
Define_Module() line
should always be put into .cc or .cpp file and not header file (.h), because the
compiler generates code from it. */
Define_Module(computer);
void computer :: initialize()
{
if(strcmp("computer1",getName())==0)
{
cMessage *msg = new cMessage("checkMsg");
send(msg,"out");
}
}
void computer::handleMessage(cMessage *msg)
{
send(msg,"out");
}
Now build the project, if it succeed then run the project. Mission complete..
26. References
1. OMNeT++ User Manual – Version 4.4
2. OMNeT++ User Guide – Version 4.4
3. OMNeT++ Video Tutorial
4. Stack Overflow
5. A Quick Overview of OMNeT++ IDE
History Card
Version Description Update Date Published Date
1 Draft Preparation 14 Aug 2015
2