MIMIC MQTT Simulator is a scalable, customizable, programmable,
predictable, dynamic simulation platform designed to enable rapid development
/ testing / deployment / tuning / training / demonstration of large-scale
Internet of Things applications.
MIMIC creates a real-world, real-time test lab with thousands of IoT
sensors, gateways and devices. It allows suppliers of MQTT sensors,
devices, gateways, brokers and applications to design, develop and test
their Brokers, Load balancers and clients using secured connections,
in a virtual and scalable network environment.
MQTT is a "light weight" messaging protocol over TCP/IP
for the Internet of Things. It is designed for connections with remote
locations where a "small code footprint" is required and/or network
bandwidth is limited. The Publish-Subscribe messaging pattern requires
a message broker.
The broker is responsible for distributing messages to interested subscriber
clients based on the topic of a message. With MIMIC MQTT Simulator
you can send a variety of custom messages to any MQTT broker that
standard version 3.1.1 and the new MQTT 5.0
MIMIC MQTT Simulator is specifically designed to mitigate risks
associated with deployment of large IoT applications by rapid prototyping
of multiple alternatives, and load and feature testing of many scenarios.
By using MIMIC, IoT Application vendors can assure their customers that
their applications will be able to handle the scales of connections,
topics and varieties of messages to work properly when deployed across
heterogeneous environments. They can also create a variety of benchmarks
to show the scalability for sensors, volume of messages and topics.
MIMIC MQTT Simulator applies to these areas of publish/subscribe patterns:
- Simulate thousands of Publishers and Subscribers:
- Each with their own IP address, Port, Client ID and Authentication
- Each Publisher can publish to multiple, unique topics
- Each Subscriber can subscribe to multiple, unique topics, including Wildcard topics
- Each Publisher can be a Subscriber also.
- Connect to Brokers, MQTT gateways, Load balancers and clients using secured connections using TLS.
- Authenticate each simulated sensor with OAuth 2.0 server or JSON Web Tokens (JWT)
- Include Authenticated (with User Name/Password) messages for every connections.
- Send messages with various QoS levels.
- Send messages with various message length, different frequencies or malicious information to test the security.
- MQTT 5 Simulator supports new MQTT 5 features through customizable CONNECT properties, PUBLISH properties
- Configure Connect and Re-Connect as needed.
- Simulate faulty sensor network to verify robustness of subscriber application
- Monitor the end-to-end delay (latency) for messages going from Publishers to Subscribers through the Broker.
- Support layered protocols such as
The most common uses of MQTT Simulator are:
- Development and Testing: MQTT application developers can implement
their products quickly and test reliably - specifically, the load testing of
scalability against thousands of sensors.
- Evaluation: By creating various heterogeneous environment of sensors and devices, it is easy to evaluate the suitability of applications with anticipated failure and growth scenarios, or qualify purchases before deployment.
- Trade Shows: Marketing can setup powerful "live" demonstrations at trade shows.
- Sales Demos: Sales can tailor presentations to the individual customer's environment.
- Training Environments: Realistic training scenarios can explore all possible cases. Training environment can be portable rather than based on the classroom.
Losant with Vehical Fleet Simulation
Google IoT Core with MIMIC
MQTT Simulator: MIMIC can simulate 100,000 MQTT 3.1, MQTT 3.1.1 or MQTT 5.0 based sensors and devices. Each one can be started or stopped individually or in a group. Each one has it's own IP address, Port and version. Once started, the device starts sending and responding to the MQTT requests to/from any broker or application from anywhere in the network.
MQTTLAB.IOTSIM.IO: Internet accessible MQTT lab implemented with MIMIC.
MIMICShell: MQTT functionality can be controlled by MIMIC Command line interface.
to programmatically control the simulations.
MQTT subscriber client to explore MQTT topics in your IoT Platform
Supported Platforms: Windows®, Linux and Amazon Cloud. (details)
If you are interested in creating your test lab with devices and topology, MIMIC Simulator Suite allows you to create SNMPv1, SNMPv2c, SNMPv3, NetFlow, sFlow, IPMI, Cisco IOS, Juniper JUNOS, Telnet/SSH based devices. You can simulate as many as 100,000 devices in a lab. It includes MIMIC Recorder to record your production network and duplicate it in your test lab.