WeOS
5.29.0

# MRP HowTo

## About

This document presents an example use-case where a basic MRP ring is configured.

- MRP Configuration Guide

## Introduction

The Media Redundancy Protocol (MRP) is useful when redundancy is wanted on Layer 2 networks. What this entails is setting up a topology of switches in a ring, where MRP is used to ensure that the devices in the ring are reachable.

This is done by making sure that no broadcast storm will occur while the ring is fully connected, by blocking one of the ring ports on the Manager (MRM). Further, if there is a break in the ring the blocking ring port on the MRM needs to be opened to ensure the reachability of all the devices in the ring.

             .-------.                                   .-------.
             |       | eth1                         eth1 |       |
             |  MRM  +-----------------------------------+ MRC-1 |
             |       |                                   |       |
             '---+---'                                   '---+---'
            eth2 | vlan1                                eth2 | vlan1
                 | IP: 10.0.0.1                              | IP: 10.0.0.2
                 | Untagged: eth1,eth2                       | Untagged: eth1,eth2
                 |                                           |
                 |                                           |
                 |                                           |
                 |                                           |
                 | vlan1                                     | vlan1
                 | IP: 10.0.0.4                              | IP: 10.0.0.3
            eth2 | Untagged: eth1,eth2                  eth2 | Untagged: eth1,eth2
             .---+---.                                   .---+---.
             |       | eth1                         eth1 |       |
             | MRC-3 +-----------------------------------+ MRC-2 |
             |       |                                   |       |
             '-------'                                   '-------'

Figure 1: A simple ring configured with MRP as redundancy.

All the devices MRM, MRC-1, MRC-2 and MRC-3 have their eth1 and eth2 ports configured as their MRP ring ports.

## Configuring the MRP Ring

When configuring a MRP ring only one of the devices can serve as the Media Redundancy Manager (MRM) and the rest of the devices will serve as Media Redundancy Clients (MRC).

Tip

When configuring the ring its good to ensure that there is no closed loop while the ring is being set up. This could be done by bringing down the ports or unplugging the cable so that there is no loop. Otherwise, it is likely that a broadcast storm could occur.

### MRM Configuration

    mrm:/#> configure
    mrm:/config/#> ring mrp 1
    mrm:/config/ring/mrp-1/#> mode manager
    mrm:/config/ring/mrp-1/#> profile 200
    mrm:/config/ring/mrp-1/#> ports eth1, eth2
    mrm:/config/ring/mrp-1/#> leave
    mrm:/#>

### MRCs Configuration

    mrc-x:/#> configure
    mrc-x:/config/#> ring mrp 1
    mrc-x:/config/ring/mrp-1/#> profile 200
    mrc-x:/config/ring/mrp-1/#> ports eth1, eth2
    mrc-x:/config/ring/mrp-1/#> leave
    mrc-x:/#>

### Status

When MRP have been configured on all the devices we can check the status of the MRP ring.

    mrm:/#> show mrp 1
    Ring ID              : 1
    Enabled              : Yes running as PID 2233
    Mode                 : MRM
    Status               : Closed (CHK_RC)
    Profile              : 200
    Port 1               : eth1 BLOCKED (UP)
    Port 2               : eth2 FORWARDING (UP)
    VLAN ID              : 0
    React on link change : Enabled
    Transitions          : 1
    Last topology change : 0 Days 0 Hours 0 Mins 10 Secs
    MRM Src Addr         : 74:69:6e:67:20:6d

### Test Connections

In order to verify if all the devices in the node are reachable we can ping the addresses of the vlans that the MRP ring ports are assigned to:

    mrm:/#> ping 10.0.0.2
    Press Ctrl-C to abort PING 10.0.0.2 (10.0.0.2): 56 data bytes
    64 bytes from 10.0.0.2: seq=0 ttl=64 time=1.903 ms
    [...]

    mrm:/#> ping 10.0.0.3
    Press Ctrl-C to abort PING 10.0.0.3 (10.0.0.3): 56 data bytes
    64 bytes from 10.0.0.3: seq=0 ttl=64 time=1.843 ms
    [...]

    mrm:/#> ping 10.0.0.4
    Press Ctrl-C to abort PING 10.0.0.4 (10.0.0.4): 56 data bytes
    64 bytes from 10.0.0.4: seq=0 ttl=64 time=1.701 ms
    [...]

The same could be repeated after breaking a link or bringing down a port so that the ring must reconverge. All the devices should still be accessible on the same addresses.

« Previous Next »