Bird
Raised Fist0
IOT Protocolsdevops~20 mins

Client-server vs publish-subscribe models in IOT Protocols - Practice Questions

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
IoT Communication Mastery
Get all challenges correct to earn this badge!
Test your skills under time pressure!
🧠 Conceptual
intermediate
2:00remaining
Understanding communication flow in client-server model

In a client-server model, which statement best describes how communication happens?

AClients publish messages to a broker, which then forwards to servers.
BServers broadcast messages to all clients without waiting for requests.
CClients send requests directly to servers, and servers respond only to those requests.
DClients and servers communicate through a shared message queue without direct requests.
Attempts:
2 left
💡 Hint

Think about who initiates communication and who responds in client-server.

🧠 Conceptual
intermediate
2:00remaining
Role of broker in publish-subscribe model

What is the main role of the broker in a publish-subscribe messaging model?

AIt stores and forwards messages from publishers to subscribers based on topics.
BIt directly connects each publisher to every subscriber without intermediaries.
CIt acts as a server that responds to client requests for data.
DIt encrypts messages to secure communication between clients.
Attempts:
2 left
💡 Hint

Consider how messages reach subscribers in publish-subscribe.

💻 Command Output
advanced
2:00remaining
Output of MQTT client subscribing to a topic

Given an MQTT client subscribing to topic 'home/temperature', what output will it show when a message '22°C' is published to that topic?

IOT Protocols
mqtt_subscribe('home/temperature')
# Message published: '22°C'
AReceived message on 'home/temperature': 22°C
BError: Topic 'home/temperature' not found
CNo messages received
DReceived message on 'home/humidity': 22°C
Attempts:
2 left
💡 Hint

Think about what happens when you subscribe to a topic and a message is published to it.

❓ Troubleshoot
advanced
2:00remaining
Troubleshooting message delivery failure in publish-subscribe

An MQTT subscriber is not receiving messages from the broker. Which of the following is the most likely cause?

APublisher is sending messages to a different protocol.
BBroker is down but subscriber still receives messages.
CSubscriber is sending requests directly to the broker.
DSubscriber did not subscribe to the correct topic.
Attempts:
2 left
💡 Hint

Check the topic subscription carefully.

✅ Best Practice
expert
3:00remaining
Choosing between client-server and publish-subscribe for IoT devices

For a large network of IoT sensors sending data to multiple monitoring systems, which communication model is best and why?

APublish-subscribe, because it requires sensors to manage connections to each monitoring system.
BPublish-subscribe, because it decouples senders and receivers and scales well with many clients.
CClient-server, because it allows sensors to broadcast data to all monitoring systems simultaneously.
DClient-server, because it ensures direct communication and reduces message overhead.
Attempts:
2 left
💡 Hint

Consider scalability and decoupling in large IoT networks.

Practice

(1/5)
1. Which statement best describes the client-server model in IoT communication?
easy
A. One device requests data, and another device responds directly.
B. Devices post messages to a shared space for others to read.
C. All devices communicate simultaneously without a central point.
D. Devices broadcast messages without expecting responses.

Solution

  1. Step 1: Understand client-server communication

    In client-server, one device (client) sends a request and another (server) replies directly.
  2. Step 2: Compare with other models

    Publish-subscribe uses a shared space, not direct requests and replies.
  3. Final Answer:

    One device requests data, and another device responds directly. -> Option A
  4. Quick Check:

    Client-server = direct request-response [OK]
Hint: Client-server is like a direct phone call [OK]
Common Mistakes:
  • Confusing publish-subscribe with client-server
  • Thinking client-server allows many-to-many messaging
  • Assuming client-server has no direct responses
2. Which of the following is the correct syntax to describe a publish-subscribe model?
easy
A. Devices connect directly without intermediaries.
B. Client sends a request and waits for a response.
C. Devices publish messages to a broker; subscribers receive messages.
D. Server broadcasts messages without clients.

Solution

  1. Step 1: Identify publish-subscribe key elements

    Publish-subscribe uses a broker where devices publish messages and subscribers receive them.
  2. Step 2: Eliminate incorrect options

    Client-server uses direct request-response between devices, direct connections have no intermediaries, and server-only broadcasts lack subscriber reception.
  3. Final Answer:

    Devices publish messages to a broker; subscribers receive messages. -> Option C
  4. Quick Check:

    Publish-subscribe = publish to broker, subscribe to messages [OK]
Hint: Publish-subscribe uses a broker for message distribution [OK]
Common Mistakes:
  • Mixing client-server request-response with publish-subscribe
  • Ignoring the broker role in publish-subscribe
  • Assuming direct device-to-device messaging in publish-subscribe
3. Given the following scenario: A sensor publishes temperature data to a broker, and multiple devices subscribe to this data. What model is being used?
medium
A. Publish-subscribe
B. Peer-to-peer
C. Client-server
D. Broadcast

Solution

  1. Step 1: Analyze the scenario

    The sensor publishes data to a broker, and multiple devices subscribe to receive it.
  2. Step 2: Match scenario to model

    This matches the publish-subscribe model where publishers send messages to a broker and subscribers receive them.
  3. Final Answer:

    Publish-subscribe -> Option A
  4. Quick Check:

    Publishing to broker with multiple subscribers = publish-subscribe [OK]
Hint: Multiple subscribers reading from a broker means publish-subscribe [OK]
Common Mistakes:
  • Choosing client-server for many-to-many communication
  • Confusing broadcast with publish-subscribe
  • Ignoring the broker role
4. A developer wrote this description: "In client-server, devices publish messages to a broker and subscribers receive them." What is wrong with this statement?
medium
A. Client-server does not involve direct requests.
B. Client-server allows many devices to publish simultaneously.
C. Client-server is the same as publish-subscribe.
D. Client-server does not use a broker for message distribution.

Solution

  1. Step 1: Identify the error in the statement

    The statement describes publish-subscribe behavior but calls it client-server.
  2. Step 2: Clarify client-server model

    Client-server uses direct requests and responses without a broker.
  3. Final Answer:

    Client-server does not use a broker for message distribution. -> Option D
  4. Quick Check:

    Broker use = publish-subscribe, not client-server [OK]
Hint: Client-server = direct requests, no broker involved [OK]
Common Mistakes:
  • Mixing up client-server and publish-subscribe roles
  • Assuming client-server uses brokers
  • Thinking client-server is many-to-many
5. You need to design an IoT system where many sensors send data to multiple monitoring devices, and the system must handle devices joining or leaving dynamically. Which model fits best and why?
hard
A. Client-server, because it supports direct requests and responses.
B. Publish-subscribe, because it allows many-to-many communication via a broker.
C. Peer-to-peer, because devices communicate directly without intermediaries.
D. Broadcast, because messages are sent to all devices without filtering.

Solution

  1. Step 1: Analyze system requirements

    The system needs many sensors sending data to many monitors, with dynamic device changes.
  2. Step 2: Match requirements to models

    Publish-subscribe supports many-to-many messaging and dynamic subscribers via a broker.
  3. Step 3: Eliminate other options

    Client-server is one-to-one, peer-to-peer lacks central management, broadcast sends to all without filtering.
  4. Final Answer:

    Publish-subscribe, because it allows many-to-many communication via a broker. -> Option B
  5. Quick Check:

    Dynamic many-to-many = publish-subscribe [OK]
Hint: Many-to-many with dynamic devices? Choose publish-subscribe [OK]
Common Mistakes:
  • Choosing client-server for many-to-many needs
  • Ignoring dynamic device management
  • Confusing broadcast with publish-subscribe
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard