Table Of Contents
Table Of Contents

Step 5a. Mismatched Parameters between two OSPF neighbor

Goals

[explanation]

Configuration

R4 and R5 will not establish full adjacency because of mismatch OSPF network type.

This step uses the following network:

../../../_images/step51.png
network InterfaceNetworkType
{
    @display("bgb=2331.1575,1232.7675");

    types:
        channel PppLink100M extends DatarateChannel
        {
            delay = 5us;
            datarate = 100Mbps;
        }

    submodules:
        configurator: Ipv4NetworkConfigurator {
            @display("p=867.888,89.376");
        }
        visualizer: IntegratedCanvasVisualizer {
            @display("p=1131.312,89.376");
        }
        scenarioManager: ScenarioManager {
            @display("p=1420.608,89.376");
        }
        host0: StandardHost {
            @display("p=96.31875,198.475");
        }
        host1: StandardHost {
            @display("p=96.401245,359.31375");
        }
        host2: StandardHost {
            @display("p=96.31875,539.96875");
        }
        R1: Router {
            @display("p=545.0625,356.9625");
        }
        R2: Router {
            @display("p=1001.952,359.85602");
        }
        R3: Router {
            @display("p=1453.536,357.504");
        }
        host3: StandardHost {
            @display("p=2095.632,199.92");
        }
        host4: StandardHost {
            @display("p=2095.632,359.85602");
        }
        host5: StandardHost {
            @display("p=2095.632,519.792");
        }
        switch1: EtherSwitch {
            @display("p=320.625,356.9625");
        }
        switch2: EtherSwitch {
            @display("p=1843.968,355.152");
        }
        host6: StandardHost {
            @display("p=96.401245,727.39124");
        }
        host7: StandardHost {
            @display("p=96.401245,885.13873");
        }
        host8: StandardHost {
            @display("p=96.401245,1095.4688");
        }
        R4: Router {
            @display("p=543.3525,885.13873");
        }
        R5: Router {
            @display("p=1001.952,886.704");
        }
        R6: Router {
            @display("p=1451.8612,885.13873");
        }
        host9: StandardHost {
            @display("p=2094.5361,712.785");
        }
        host10: StandardHost {
            @display("p=2094.5361,902.66626");
        }
        host11: StandardHost {
            @display("p=2094.5361,1095.4688");
        }
        switch3: EtherSwitch {
            @display("p=1843.3087,882.21747");
        }
        switch4: EtherSwitch {
            @display("p=318.41623,882.21747");
        }
    connections:
        host1.ethg++ <--> Eth100M <--> switch1.ethg++;
        host0.ethg++ <--> Eth100M <--> switch1.ethg++;
        host2.ethg++ <--> Eth100M <--> switch1.ethg++;
        switch1.ethg++ <--> Eth100M <--> R1.ethg++;

        switch2.ethg++ <--> Eth100M <--> host3.ethg++;
        switch2.ethg++ <--> Eth100M <--> host4.ethg++;
        switch2.ethg++ <--> Eth100M <--> host5.ethg++;

        R3.ethg++ <--> Eth100M <--> switch2.ethg++;
        host9.ethg++ <--> Eth100M <--> switch3.ethg++;
        host10.ethg++ <--> Eth100M <--> switch3.ethg++;
        host11.ethg++ <--> Eth100M <--> switch3.ethg++;
        switch3.ethg++ <--> Eth100M <--> R6.ethg++;

        switch4.ethg++ <--> Eth100M <--> host6.ethg++;
        switch4.ethg++ <--> Eth100M <--> host7.ethg++;
        switch4.ethg++ <--> Eth100M <--> host8.ethg++;

        R4.ethg++ <--> Eth100M <--> switch4.ethg++;
        R1.pppg++ <--> PppLink100M <--> R2.pppg++;
        R2.pppg++ <--> PppLink100M <--> R3.pppg++;
        R6.ethg++ <--> Eth100M <--> R5.ethg++;
        R5.ethg++ <--> Eth100M <--> R4.ethg++;
}

The configuration in omnetpp.ini is the following:

[Config Step5a]
description = "Mismatched Parameters between two OSPF neighbor"
network = InterfaceNetworkType

# R1 and R2 will not establish full adjacency because of mismatch Hello interval
# R4 and R5 will not establish full adjacency because of mismatch OSPF network type

*.configurator.configureIsolatedNetworksSeparatly = true

*.R*.ospf.ospfConfig = xmldoc("ASConfig_mismatch.xml")

The OSPF configuration:

<?xml version="1.0"?>
<OSPFASConfig xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="OSPF.xsd">
  
  <Router name="R1" RFC1583Compatible="true">
    <PointToPointInterface ifName="ppp0" interfaceOutputCost='0' helloInterval="10" />
    <BroadcastInterface ifName="eth0" interfaceOutputCost='0' />
  </Router>
  
  <Router name="R2" RFC1583Compatible="true">
    <PointToPointInterface ifName="ppp0" interfaceOutputCost='0' helloInterval="15" />
    <PointToPointInterface ifName="ppp1" interfaceOutputCost='0' />
  </Router>
  
  <Router name="R4" RFC1583Compatible="true">
    <BroadcastInterface ifName="eth0" interfaceOutputCost='0' />
    <BroadcastInterface ifName="eth1" interfaceOutputCost='0' />
  </Router>
  
  <Router name="R5" RFC1583Compatible="true">
    <BroadcastInterface ifName="eth0" interfaceOutputCost='0' />
    <PointToPointInterface ifName="eth1" interfaceOutputCost='0' />
  </Router>
  
  <Router name="**" RFC1583Compatible="true">
     <BroadcastInterface ifName='eth[*]' areaID='0.0.0.0' interfaceOutputCost='0' />
     <PointToPointInterface ifName='ppp[*]' areaID='0.0.0.0' interfaceOutputCost='0' />
  </Router>

</OSPFASConfig>

Discussion

Use this page in the GitHub issue tracker for commenting on this tutorial.