0
0
Computer-networksConceptBeginner · 3 min read

Bus Topology: Definition, How It Works, and When to Use

A bus topology is a network setup where all devices connect to a single central cable called the bus. Data travels in both directions along this cable, and each device listens for messages addressed to it.
⚙️

How It Works

Imagine a single road where all cars (devices) drive back and forth. In a bus topology, this road is a single cable called the bus. Every device connects to this cable, like houses along the road.

When one device sends data, it travels along the bus in both directions. All devices see the data, but only the device with the matching address accepts and processes it. If the data is not for a device, it ignores it.

This setup is simple and uses less cable than other layouts, but if the main cable breaks, the whole network stops working.

💻

Example

This example simulates a bus topology where devices send messages on a shared line. Each device checks if the message is for it.

python
class BusTopology:
    def __init__(self):
        self.devices = {}

    def connect_device(self, address, device):
        self.devices[address] = device

    def send(self, sender_address, receiver_address, message):
        print(f"Device {sender_address} sends message to {receiver_address}: '{message}'")
        for address, device in self.devices.items():
            if address == receiver_address:
                device.receive(message)

class Device:
    def __init__(self, address):
        self.address = address

    def receive(self, message):
        print(f"Device {self.address} received message: '{message}'")

# Setup bus topology
bus = BusTopology()

# Create devices
device1 = Device('A')
device2 = Device('B')
device3 = Device('C')

# Connect devices to bus
bus.connect_device('A', device1)
bus.connect_device('B', device2)
bus.connect_device('C', device3)

# Device A sends message to Device B
bus.send('A', 'B', 'Hello B!')

# Device C sends message to Device A
bus.send('C', 'A', 'Hi A!')
Output
Device A sends message to B: 'Hello B!' Device B received message: 'Hello B!' Device C sends message to A: 'Hi A!' Device A received message: 'Hi A!'
🎯

When to Use

Bus topology is best for small networks where simplicity and low cost are important. It is easy to set up because it uses a single cable to connect all devices.

It works well in temporary or small office setups where few devices need to communicate. However, it is not ideal for large or critical networks because if the main cable fails, the entire network stops working.

Examples include small labs, testing environments, or simple home networks where devices are close together.

Key Points

  • All devices share a single communication line called the bus.
  • Data travels in both directions along the bus.
  • Each device listens for messages addressed to it.
  • Simple and cost-effective for small networks.
  • Failure of the main cable disrupts the entire network.

Key Takeaways

Bus topology connects all devices to one shared cable called the bus.
Data sent by one device travels along the bus and is received by all devices.
It is simple and inexpensive but vulnerable to cable failure.
Best suited for small or temporary networks with few devices.
If the main bus cable breaks, the whole network stops working.