I've got a new Cisco ISR 4431 Router running IOS XE 03.13.02.S and IOS 15.4(3)S2.
WAN connection is a Metro Ethernet circuit delivered over copper and ISP has requested that we force the port to 1Gbps Full-Duplex. Our internal network is all using default auto-negotiate gig port settings.
WAN Port config snippet:
interface GigabitEthernet0/0/0
description WAN Metro Ethernet Circuit
! ...
speed 1000
duplex full
no negotiation auto
INSIDE Port config snippet:
interface GigabitEthernet0/0/1
description INSIDE Router Port
! ...
negotiation auto
Strange thing is that with the force 1G Full WAN port, the interface appears to have flow-control (802.3x pause frames) enabled and I can't figure out a command to disable flow-control on the port. On my INSIDE (negotiation auto) port, flow-control is disabled which is what I've seen as the default ethernet port setting in other Cisco routers. See the following port status samples for details:
WAN Port status:
RTR# show int gig0/0/0 GigabitEthernet0/0/0 is up, line protocol is up Hardware is ISR4431-X-4x1GE, address is [...] [...] MTU 1500 bytes, BW 1000000 Kbit/sec, DLY 10 usec, reliability 255/255, txload 1/255, rxload 3/255 Encapsulation ARPA, loopback not set Keepalive not supported Full Duplex, 1000Mbps, link type is force-up, media type is RJ45 output flow-control is on, input flow-control is on ARP type: ARPA, ARP Timeout 00:05:00 [...]
LAN Port status:
RTR#show int gig0/0/1 GigabitEthernet0/0/1 is up, line protocol is up Hardware is ISR4431-X-4x1GE, address is [...] [...] MTU 1500 bytes, BW 1000000 Kbit/sec, DLY 10 usec, reliability 255/255, txload 2/255, rxload 1/255 Encapsulation ARPA, loopback not set Keepalive not supported Full Duplex, 1000Mbps, link type is auto, media type is RJ45 output flow-control is off, input flow-control is off ARP type: ARPA, ARP Timeout 00:05:00
Note that "flow-control is off" for the auto-negotiate LAN port, but "flow-control is on" for the force-gig-full WAN port. Neither port has a command applied directly related to 802.3x ethernet flow control. In my attempts to google for a solution, I saw suggestions for a "flowcontrol" and "negotiation forced" IOS interface commands. Neither of these commands was available on the CLI of my 4431 router. Maybe they were for different Cisco hardware, interface type, or software release?
If you have any suggestions for how to disable this please share here. I can always leave it on, but if the ISP has it disabled on their end then I should match by disabling 802.3x pause frames on mine.
Best Answer
I will start by saying that you should not be disabling auto-negotiation with Gigabit connections. This is what the standard has to say (from 802.3-2012 Section Three, which you can reference here):
This means you should never use
speed 1000
on Gigabit links. You could insteadspeed auto 1000
, but your expressed need has a better solution.The real problem is the following command on interface Gigabit0/0/0:
Remove the
speed 1000
, theduplex full
, and theno negotiation auto
commands from the interface and instead usenegotiation forced
so your interface looks like so:From Cisco documentation, the
forced
keyword has the following effect (and I believe also adheres to the standard's recommendation):This should meet your requirement of 1000/full with no flow control.
In re-reading your question, I realized you noted you did not seem to have the force command available.
In your case, I will still recommend removing the
no negotiation auto
command and have your interface look like so: