FRRouting / frr

The FRRouting Protocol Suite
https://frrouting.org/
Other
3.31k stars 1.25k forks source link

Feature Request: Sort/order output of 'show' commands where relevant #7505

Open taspelund opened 3 years ago

taspelund commented 3 years ago

Currently, when running something like show run or show ip bgp vrf all ..., vtysh doesn't return sorted information. This can cause annoyances when reviewing the output, because a user would intuitively expect it to be consistently ordered based on clause number, instance name, etc.

With bgp instances for default vrf, vrf1, vrf2 and vrf3, show ip bgp vrf all sum displays the output in the order (default, vrf2, vrf3, vrf1), rather than the intuitive (default, vrf1, vrf2, vrf3) order:

TORC11# show ip bgp vrf all sum

Instance default:

IPv4 Unicast Summary:
BGP router identifier 27.0.0.11, local AS number 5546 vrf-id 0
BGP table version 18
RIB entries 19, using 3648 bytes of memory
Peers 3, using 64 KiB of memory

Neighbor                V         AS   MsgRcvd   MsgSent   TblVer  InQ OutQ  Up/Down State/PfxRcd   PfxSnt
TORC12(peerlink-3.4094) 4       5546     25206     25206        0    0    0 20:59:29            9        9
MSP1(uplink-1)          4       4435     25351     25233        0    0    0 20:59:33           10        3
MSP2(uplink-2)          4       4435     25352     25270        0    0    0 20:59:34           10        3

Total number of neighbors 3

Instance vrf2:

IPv4 Unicast Summary:
BGP router identifier 45.0.6.4, local AS number 14002 vrf-id 35
BGP table version 8
RIB entries 15, using 2880 bytes of memory
Peers 1, using 21 KiB of memory

Neighbor                V         AS   MsgRcvd   MsgSent   TblVer  InQ OutQ  Up/Down State/PfxRcd   PfxSnt
TORC12(peerlink-3.4002) 4      24002       242       243        0    0    0 00:11:34            8        8

Total number of neighbors 1

Instance vrf3:

IPv4 Unicast Summary:
BGP router identifier 45.0.8.4, local AS number 14003 vrf-id 42
BGP table version 4
RIB entries 7, using 1344 bytes of memory
Peers 1, using 21 KiB of memory

Neighbor                V         AS   MsgRcvd   MsgSent   TblVer  InQ OutQ  Up/Down State/PfxRcd   PfxSnt
TORC12(peerlink-3.4003) 4      24003       233       234        0    0    0 00:11:21            4        4

Total number of neighbors 1

Instance vrf1:

IPv4 Unicast Summary:
BGP router identifier 45.0.2.4, local AS number 14001 vrf-id 28
BGP table version 8
RIB entries 15, using 2880 bytes of memory
Peers 1, using 21 KiB of memory

Neighbor                V         AS   MsgRcvd   MsgSent   TblVer  InQ OutQ  Up/Down State/PfxRcd   PfxSnt
TORC12(peerlink-3.4001) 4      24001       249       250        0    0    0 00:11:57            8        8

Total number of neighbors 1
TORC11# 

With something as simple as show run, we can see that prefix-list entries and route-map clauses are not ordered by sequence number:

!
ip prefix-list stuff seq 10 permit 10.0.0.0/16
ip prefix-list stuff seq 15 permit 10.1.0.0/16
ip prefix-list stuff seq 5 permit 10.2.0.0/16
ip prefix-list stuff seq 20 permit 10.3.0.0/16
!

This makes it challenging + annoying to review a configuration when a lengthy route-map or prefix-list is present, but isn't displayed in the order in which they'd be processed.

idryzhov commented 3 years ago

prefix-list sorting was implemented in 73695730f55a2