Description

We are running MX2008s with MS-MPCs for stateful firewall service. We are bundling MS- interfaces to the AMS interface, the number of MS- interfaces is variable depending on the implementation.



Same device, same AMS interface, some sub ints are displaying a bandwidth setting of 800mbps and others are not:



```

hostname> show interfaces ams0.2711

Logical interface ams0.2711 (Index 362) (SNMP ifIndex 1439)

Flags: Up Point-To-Point SNMP-Traps 0x4000 Encapsulation: Adaptive-Services

Bandwidth: 800mbps

Input packets : 508399775

Output packets: 164765629

Protocol inet, MTU: 9192

Max nh cache: 0, New hold nh limit: 0, Curr nh cnt: 0, Curr new hold cnt: 0, NH drop cnt: 0

Flags: Sendbcast-pkt-to-re

Protocol inet6, MTU: 9192

Max nh cache: 0, New hold nh limit: 0, Curr nh cnt: 0, Curr new hold cnt: 0, NH drop cnt: 0

Addresses, Flags: Is-Preferred



{master}

hostname> show interfaces ams0.2713

Logical interface ams0.2713 (Index 784) (SNMP ifIndex 1505)

Flags: Up Point-To-Point SNMP-Traps 0x4000 Encapsulation: Adaptive-Services

Input packets : 4633

Output packets: 4672

Protocol inet, MTU: 9192

Max nh cache: 0, New hold nh limit: 0, Curr nh cnt: 0, Curr new hold cnt: 0, NH drop cnt: 0

Flags: Sendbcast-pkt-to-re, Is-Primary

Protocol inet6, MTU: 9192

Max nh cache: 0, New hold nh limit: 0, Curr nh cnt: 0, Curr new hold cnt: 0, NH drop cnt: 0

Addresses, Flags: Is-Preferred




Configuration wise these are identical:



```

hostname> show configuration interfaces ams0.2711 | display inheritance


family inet;

family inet6;

service-domain inside;

load-balancing-options {

hash-keys {

ingress-key destination-ip;

}

}



{master}

hostname> show configuration interfaces ams0.2713 | display inheritance


family inet;

family inet6;

service-domain inside;

load-balancing-options {

hash-keys {

ingress-key destination-ip;

}

}

```



Looks at other devices, it appears a workaround was put in place:



```

/* Fixed in 19.4R3 and 20.1R2 */

BANDWIDTH-FIX {

interfaces {

ams0 {

unit <*> {

bandwidth 280g;

}

}

ams1 {

unit <*> {

bandwidth 40g;

}

}

}

}

```



We are currently running Junos: 21.2R3-S3.5 on all these devices. The implication above was that this bandwidth calculus of 40G per MS- interface was not being performed correctly. Here it seems it's being performed correctly sometimes but not always.



We can work around the problem, but if this is a bug that has reemerged I wanted to report it so Juniper can take action. I couldn't find the original bug and the person responsible for the above implementation is no longer employed here.

Symptoms

Some of the AMS interface logical units will display an incorrect value Bandwidth: 800mbps



As a workaround, one can configure a bandwidth value for the AMS units, for monitoring tool accuracy purposes. Like the one the customer mentioned:



BANDWIDTH-FIX {

interfaces {

ams0 {

unit <*> {

bandwidth 280g;

}

}

ams1 {

unit <*> {

bandwidth 40g;

}

}

}



Those values are entirely informational and don't have any impact on the actual bandwidth of the interfaces.



When using this alternative, the MAMS interfaces will start displaying inaccurate bandwidth values as well:



hostname> show configuration interfaces ams0.1


bandwidth 600g;

family inet;

family inet6;

service-domain inside;

load-balancing-options {

  hash-keys {

    ingress-key source-ip;

  }

}



hostname> show interfaces mams-1/1/0.1

Logical interface mams-1/1/0.1 (Index 398) (SNMP ifIndex 586)

Flags: Up Point-To-Point SNMP-Traps 0x4000 Encapsulation: Adaptive-Services

Bandwidth: 600Gbps

Input packets : 38901

Output packets: 39108

Protocol ams, AS bundle: ams0.1



hostname> show configuration interfaces ams0.271

family inet;

family inet6;

service-domain inside;

load-balancing-options {

  hash-keys {

    ingress-key destination-ip;

  }

}



I can see in the SNMP values for this interface for example:



Logical interface mams-1/0/0.1 (Index 383) (SNMP ifIndex 578) (Generation 192)

 Bandwidth: 600Gbps

  

SNMP index 578



It shows these 2 values in the SNMP walks:



ifSpeed.578  = 4294967295 ------> An estimate of the interface's current bandwidth in bits per second. For interfaces which do not vary in bandwidth or for those where no accurate estimation can be made, this object should contain the nominal bandwidth. If the bandwidth of the interface is greater than the maximum value reportable by this object then this object should report its maximum value (4,294,967,295) and ifHighSpeed must be used to report the interface's speed.



ifHighSpeed.578 = 600000 --------> An estimate of the interface's current bandwidth in units of 1,000,000 bits per second. This is the inaccurate value. 



So both SNMP values are inaccurate for the mams units.



The physical mams interfaces do show the 40Gbps speed:



Physical interface: mams-1/0/0, Enabled, Physical link is Up

 Speed: 40000mbps



Physical interface: mams-1/1/0, Enabled, Physical link is Up

 Speed: 40000mbps



Physical interface: mams-1/2/0, Enabled, Physical link is Up

 Speed: 40000mbps



Physical interface: mams-1/3/0, Enabled, Physical link is Up

 Speed: 40000mbps



Physical interface: mams-2/0/0, Enabled, Physical link is Up

 Speed: 40000mbps



Physical interface: mams-2/1/0, Enabled, Physical link is Up

 Speed: 40000mbps



Physical interface: mams-2/2/0, Enabled, Physical link is Up

 Speed: 40000mbps



 

Solution

Currently, there is no way to add any configuration on the individual mams units to have an accurate informational bandwidth value. You would get a "mams interfaces are not user configurable" commit check error.

 

Modification History

2024-05-24 : Article Created