The document provides debug steps for troubleshooting a Link Aggregation Control Protocol (LACP) issue on an aggregated Ethernet interface (AE). The key steps include: 1) enabling LACP logs; 2) checking if the child links of the AE interface have flapped; 3) examining LACP statistics to check if protocol data units (PDUs) are being exchanged properly; and 4) checking syslog files for timeouts on child links which could indicate a failure of PDU exchange.
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0 ratings0% found this document useful (0 votes)
109 views8 pages
Debug Steps For LACP
The document provides debug steps for troubleshooting a Link Aggregation Control Protocol (LACP) issue on an aggregated Ethernet interface (AE). The key steps include: 1) enabling LACP logs; 2) checking if the child links of the AE interface have flapped; 3) examining LACP statistics to check if protocol data units (PDUs) are being exchanged properly; and 4) checking syslog files for timeouts on child links which could indicate a failure of PDU exchange.
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 8
Debug
Steps
for
LACP
*
First
and
foremost,
enable
LACP
logs
as
follows
:
set
protocols
lacp
traceoptions
file
lacp.log
size
1g
set
protocols
lacp
traceoptions
flag
all
In
case
of
a
AE
flap,
please
check
the
following
:-‐
*
Check
if
the
child
links
of
the
flapped
AE
interfaces
have
flapped
Eg
:
regress@shishir>
show
interfaces
ge-‐2/0/2
|
grep
flap
Last
flapped
:
2015-‐08-‐11
20:35:18
PDT
(00:49:30
ago)
regress@shishir>
show
interfaces
ge-‐2/0/3
|
grep
flap
Last
flapped
:
2015-‐08-‐11
20:35:19
PDT
(00:49:34
ago)
*
Check
the
LACP
stats
to
see
if
the
PDUs
are
exchanged
between
the
actor
and
the
peer
*
Check
for
the
syslog
file
to
see
if
there
was
a
timeout
on
one
of
the
child
links
%
cat
messages
|
grep
LACP
Aug
19
02:04:25
r0_re0
kernel:
KERN_LACP_INTF_STATE_CHANGE:
lacp_update_state_userspace:
cifd
ge-‐0/0/1
-‐
ATTACHED
state
-‐
acting
as
standby
link
Aug
19
02:04:25
r0_re0
kernel:
KERN_LACP_INTF_STATE_CHANGE:
lacp_update_state_userspace:
cifd
ge-‐0/0/2
-‐
ATTACHED
state
-‐
acting
as
standby
link
Aug
19
02:04:25
r0_re0
kernel:
KERN_LACP_INTF_STATE_CHANGE:
lacp_update_state_userspace:
cifd
ge-‐0/0/1
-‐
CD
state
-‐
ready
to
carry
traffic
Aug
19
02:04:25
r0_re0
kernel:
KERN_LACP_INTF_STATE_CHANGE:
lacp_update_state_userspace:
cifd
ge-‐0/0/2
-‐
CD
state
-‐
ready
to
carry
traffic
Aug
19
02:05:29
r0_re0
lacpd[5050]:
LACPD_TIMEOUT:
ge-‐0/0/2:
lacp
current
while
timer
expired
current
Receive
State:
CURRENT
Aug
19
02:05:29
r0_re0
kernel:
KERN_LACP_INTF_STATE_CHANGE:
lacp_update_state_userspace:
cifd
ge-‐0/0/2
-‐
ATTACHED
state
-‐
acting
as
standby
link
Aug
19
02:05:29
r0_re0
lacpd[5050]:
LACPD_TIMEOUT:
ge-‐0/0/1:
lacp
current
while
timer
expired
current
Receive
State:
CURRENT
Aug
19
02:05:29
r0_re0
lacpd[5050]:
LACP_INTF_DOWN:
ae0:
Interface
marked
down
due
to
lacp
timeout
on
member
ge-‐0/0/1
Aug
19
02:05:29
r0_re0
kernel:
KERN_LACP_INTF_STATE_CHANGE:
lacp_update_state_userspace:
cifd
ge-‐0/0/1
-‐
ATTACHED
state
-‐
acting
as
standby
link
Aug
19
02:05:32
r0_re0
kernel:
KERN_LACP_INTF_STATE_CHANGE:
lacp_update_state_userspace:
cifd
ge-‐0/0/2
-‐
DETACHED
state
-‐
will
not
carry
traffic
Aug
19
02:05:32
r0_re0
kernel:
KERN_LACP_INTF_STATE_CHANGE:
lacp_update_state_userspace:
cifd
ge-‐0/0/1
-‐
DETACHED
state
-‐
will
not
carry
traffic
In
case
there
is
a
timeout,
it
means
PDUs
are
not
being
received
on
the
concerned
interface.
The
following
output
with
Mux
state
Detached
and
Receive
state
Defaulted
can
be
seen
in
this
case.
regress@r0_re0#
run
show
lacp
interfaces
Aggregated
interface:
ae0
LACP
state:
Role
Exp
Def
Dist
Col
Syn
Aggr
Timeout
Activity
ge-‐0/0/1
Actor
No
Yes
No
No
No
Yes
Fast
Active
ge-‐0/0/1
Partner
No
Yes
No
No
No
Yes
Fast
Passive
ge-‐0/0/2
Actor
No
Yes
No
No
No
Yes
Fast
Active
ge-‐0/0/2
Partner
No
Yes
No
No
No
Yes
Fast
Passive
LACP
protocol:
Receive
State
Transmit
State
Mux
State
ge-‐0/0/1
Defaulted
Fast
periodic
Detached
ge-‐0/0/2
Defaulted
Fast
periodic
Detached
*
Check
if
the
transmit
entries
for
the
LACP
PDUs
are
present
in
PPMAN.
The
output
for
2
child
links
is
shown
below
%vty
fpc<fpc_slot>
VMX0(r0_re0
vty)#
show
ppm
transmits
Protocol
Tx
Interval
PPM
handle
Inline
Quick
Xmit
(msec)
LACP
1000
3
No
No
LACP
1000
4
No
No
Total
transmit
entries:
2
Correspondingly,
an
adjacency
entry
for
each
child
link
on
which
the
PDU
is
received
must
be
present
in
the
PPMAN
VMX0(r0_re0
vty)#
show
ppm
adjacencies
PPM
distributed
adjacencies
Protocol
Holdtime
(msec)
PPM
handle
Inline
LACP
3000
7
No
LACP
3000
8
No
The
same
above
commands
can
be
used
in
RE
to
check
for
PPMD
adjacencies.
In
case
the
no-‐delegate-‐processing
is
used,
the
above
entries
will
not
be
seen
in
PPMAN,
but
only
in
PPMD.
*
Next,
we
check
whether
the
PDUs
are
sent
and
received
as
expected
at
the
PPMAN
level
when
the
problematic
trigger
is
executed,
if
one
exists.
Login
to
the
vty
terminal
on
the
fpc
housing
the
child
links
Before
enabling
the
logging
for
the
PDUs,
make
sure
you
have
the
control
ifl
number
of
the
child
link
which
is
of
interest.
The
control
ifl
will
be
<child_ifd>.37627
for
tagged
interfaces,
and
<child_ifd>.0
for
untagged
interfaces.
The
IFL
index
can
be
seen
in
the
vty
terminal
with
the
following
command
Look
for
the
IFL
with
unit
32767.
LACP
PDUs
are
exchanged
on
this
unit
for
tagged
interfaces.
For
untagged
interfaces,
PDUs
are
exchanged
on
unit
0.
Then
to
see
the
sending
and
receiving
of
the
PDUs,
enable
the
following
debug
command:
debug
ppm
protocol
lacp
level
2
VMX0(r0_re0
vty)#
[Wed
Aug
19
02:17:58
2015
LOG:
Debug]
ppmd_lacp_proto_receive:
absorbed
LACP
pkt
from
IFL
333
[Wed
Aug
19
02:17:58
2015
LOG:
Debug]
ppmd_lacp_proto_receive:
absorbed
LACP
pkt
from
IFL
334
[Wed
Aug
19
02:17:58
2015
LOG:
Debug]
ppmd_lacp_send:
Sending
packet
on
LACP
PPM
interface
for
IFL
333
[Wed
Aug
19
02:17:58
2015
LOG:
Debug]
ppmd_lacp_send:
Sending
packet
on
LACP
PPM
interface
for
IFL
334
[Wed
Aug
19
02:17:59
2015
LOG:
Debug]
ppmd_lacp_proto_receive:
absorbed
LACP
pkt
from
IFL
333
[Wed
Aug
19
02:17:59
2015
LOG:
Debug]
ppmd_lacp_proto_receive:
absorbed
LACP
pkt
from
IFL
334
[Wed
Aug
19
02:17:59
2015
LOG:
Debug]
ppmd_lacp_send:
Sending
packet
on
LACP
PPM
interface
for
IFL
333
[Wed
Aug
19
02:17:59
2015
LOG:
Debug]
ppmd_lacp_send:
Sending
packet
on
LACP
PPM
interface
for
IFL
334
[Wed
Aug
19
02:18:00
2015
LOG:
Debug]
ppmd_lacp_proto_receive:
absorbed
LACP
pkt
from
IFL
333
[Wed
Aug
19
02:18:00
2015
LOG:
Debug]
ppmd_lacp_proto_receive:
absorbed
LACP
pkt
from
IFL
334
[Wed
Aug
19
02:18:00
2015
LOG:
Debug]
ppmd_lacp_send:
Sending
packet
on
LACP
PPM
interface
for
IFL
333
[Wed
Aug
19
02:18:00
2015
LOG:
Debug]
ppmd_lacp_send:
Sending
packet
on
LACP
PPM
interface
for
IFL
334
[Wed
Aug
19
02:18:01
2015
LOG:
Debug]
ppmd_lacp_proto_receive:
absorbed
LACP
pkt
from
IFL
333
[Wed
Aug
19
02:18:01
2015
LOG:
Debug]
ppmd_lacp_proto_receive:
absorbed
LACP
pkt
from
IFL
334
[Wed
Aug
19
02:18:01
2015
LOG:
Debug]
ppmd_lacp_send:
Sending
packet
on
LACP
PPM
interface
for
IFL
333
[Wed
Aug
19
02:18:01
2015
LOG:
Debug]
ppmd_lacp_send:
Sending
packet
on
LACP
PPM
interface
for
IFL
334
[Wed
Aug
19
02:18:02
2015
LOG:
Debug]
ppmd_lacp_proto_receive:
absorbed
LACP
pkt
from
IFL
333
[Wed
Aug
19
02:18:02
2015
LOG:
Debug]
ppmd_lacp_proto_receive:
absorbed
LACP
pkt
from
IFL
334
[Wed
Aug
19
02:18:02
2015
LOG:
Debug]
ppmd_lacp_send:
Sending
packet
on
LACP
PPM
interface
for
IFL
333
[Wed
Aug
19
02:18:02
2015
LOG:
Debug]
ppmd_lacp_send:
Sending
packet
on
LACP
PPM
interface
for
IFL
334
[Wed
Aug
19
02:18:03
2015
LOG:
Debug]
ppmd_lacp_proto_receive:
absorbed
LACP
pkt
from
IFL
333
[Wed
Aug
19
02:18:03
2015
LOG:
Debug]
ppmd_lacp_proto_receive:
absorbed
LACP
pkt
from
IFL
334
[Wed
Aug
19
02:18:03
2015
LOG:
Debug]
ppmd_lacp_send:
Sending
packet
on
LACP
PPM
interface
for
IFL
333
[Wed
Aug
19
02:18:03
2015
LOG:
Debug]
ppmd_lacp_send:
Sending
packet
on
LACP
PPM
interface
for
IFL
334
[Wed
Aug
19
02:18:04
2015
LOG:
Debug]
ppmd_lacp_proto_receive:
absorbed
LACP
pkt
from
IFL
333
[Wed
Aug
19
02:18:04
2015
LOG:
Debug]
ppmd_lacp_proto_receive:
absorbed
LACP
pkt
from
IFL
334
[Wed
Aug
19
02:18:04
2015
LOG:
Debug]
ppmd_lacp_send:
Sending
packet
on
LACP
PPM
interface
for
IFL
333
[Wed
Aug
19
02:18:04
2015
LOG:
Debug]
ppmd_lacp_send:
Sending
packet
on
LACP
PPM
interface
for
IFL
334
[Wed
Aug
19
02:18:05
2015
LOG:
Debug]
ppmd_lacp_proto_receive:
absorbed
LACP
pkt
from
IFL
333
[Wed
Aug
19
02:18:05
2015
LOG:
Debug]
ppmd_lacp_proto_receive:
absorbed
LACP
pkt
from
IFL
334
Notice
how
the
LACP
PDUs
are
being
sent
and
received
on
both
the
control
IFLs
at
the
set
interval
of
1sec
for
lacp
FAST
(for
LACP
slow
it
will
be
30s)
We
can
also
verify
that
the
correct
lacp
variables
are
being
sent
in
the
PDU
by
seeing
the
PDU
contents.
To
see
this,
change
the
level
to
3.
VMX0(r0_re0
vty)#
debug
ppm
protocol
lacp
level
3
Old
debug
level
=
0
New
debug
level
=
3
VMX0(r0_re0
vty)#
[Wed
Aug
19
02:23:34
2015
LOG:
Debug]
Received
LACP
pdu
-‐
IFL
idx
333
[Wed
Aug
19
02:23:34
2015
LOG:
Debug]
dst
mac
01:80:c2:00:00:02
[Wed
Aug
19
02:23:34
2015
LOG:
Debug]
src
mac
00:05:86:48:50:c0
ether
type
0x
988
[Wed
Aug
19
02:23:34
2015
LOG:
Debug]
lacp
subtype
0x1
lacp
version
number
0x1
[Wed
Aug
19
02:23:34
2015
LOG:
Debug]
first
tlv
type
0x1
actor
info
len
0x14
[Wed
Aug
19
02:23:34
2015
LOG:
Debug]
actor
sys
priority
0x7f00
actor
sys
00:05:86:48:50:c0
[Wed
Aug
19
02:23:34
2015
LOG:
Debug]
actor
key
0x100
actor
port
priority
0x7f00
actor
port
0x100
actor
state
0x3f
[Wed
Aug
19
02:23:34
2015
LOG:
Debug]
lacp_reserved1[0]
0x0
[Wed
Aug
19
02:23:34
2015
LOG:
Debug]
second
tlv
type
0x2
partner
info
len
0x14
[Wed
Aug
19
02:23:34
2015
LOG:
Debug]
partner
sys
priority
0x7f00
partner
sys
00:05:86:58:6f:c0
[Wed
Aug
19
02:23:34
2015
LOG:
Debug]
partner
key
0x100
partner
port
priority
0x7f00
partner
port
0x100
partner
state
0x3f
[Wed
Aug
19
02:23:34
2015
LOG:
Debug]
lacp_reserved2[0]
0x0
[Wed
Aug
19
02:23:34
2015
LOG:
Debug]
third
tlv
type
0x3
collector
info
len
0x10
collector
max
del
0x0
[Wed
Aug
19
02:23:34
2015
LOG:
Debug]
fourth
tlv
type
0x0
terminator
len
0
[Wed
Aug
19
02:23:34
2015
LOG:
Debug]
ppmd_lacp_proto_receive:
absorbed
LACP
pkt
from
IFL
333
[Wed
Aug
19
02:23:34
2015
LOG:
Debug]
Received
LACP
pdu
-‐
IFL
idx
334
[Wed
Aug
19
02:23:34
2015
LOG:
Debug]
dst
mac
01:80:c2:00:00:02
[Wed
Aug
19
02:23:34
2015
LOG:
Debug]
src
mac
00:05:86:48:50:c0
ether
type
0x
988
[Wed
Aug
19
02:23:34
2015
LOG:
Debug]
lacp
subtype
0x1
lacp
version
number
0x1
[Wed
Aug
19
02:23:34
2015
LOG:
Debug]
first
tlv
type
0x1
actor
info
len
0x14
[Wed
Aug
19
02:23:34
2015
LOG:
Debug]
actor
sys
priority
0x7f00
actor
sys
00:05:86:48:50:c0
[Wed
Aug
19
02:23:34
2015
LOG:
Debug]
actor
key
0x100
actor
port
priority
0x7f00
actor
port
0x200
actor
state
0x3f
[Wed
Aug
19
02:23:34
2015
LOG:
Debug]
lacp_reserved1[0]
0x0
[Wed
Aug
19
02:23:34
2015
LOG:
Debug]
second
tlv
type
0x2
partner
info
len
0x14
[Wed
Aug
19
02:23:34
2015
LOG:
Debug]
partner
sys
priority
0x7f00
partner
sys
00:05:86:58:6f:c0
[Wed
Aug
19
02:23:34
2015
LOG:
Debug]
partner
key
0x100
partner
port
priority
0x7f00
partner
port
0x200
partner
state
0x3f
[Wed
Aug
19
02:23:34
2015
LOG:
Debug]
lacp_reserved2[0]
0x0
[Wed
Aug
19
02:23:34
2015
LOG:
Debug]
third
tlv
type
0x3
collector
info
len
0x10
collector
max
del
0x0
[Wed
Aug
19
02:23:34
2015
LOG:
Debug]
fourth
tlv
type
0x0
terminator
len
0
[Wed
Aug
19
02:23:34
2015
LOG:
Debug]
ppmd_lacp_proto_receive:
absorbed
LACP
pkt
from
IFL
334
We
need
to
execute
this
command
on
both
the
ends
(actor
and
partner)
There
could
be
two
possibilities
here
1. Actor
is
sending
the
PDUs
for
the
given
IFL,
but
the
partner
is
not
receiving
it
In
the
above
case,
you
will
see
a
PDU
being
sent
from
the
PPMAN
in
the
Actor,
while
the
same
PDU
is
not
received
at
the
PPMAN
in
the
peer
router.
This
means
that
there
could
be
an
issue
with
either
the
Rx
of
PDUs
in
the
peer
router,
or
it
could
be
a
problem
with
Tx
to
the
wire
in
the
actor.
Please
involve
the
PFE
team
explaining
that
there
is
a
loss
of
PDUs
on
the
given
interfaces.
This
is
not
an
issue
with
LACP.
2. Actor
is
failing
to
send
the
PDUs
In
this
case,
you
will
clearly
see
that
‘Sending
LACP
PDU’
is
missing
for
the
given
control
ifl
index.
Please
involve
the
LACP
team
for
further
debugging
with
this
information.
NOTE
:
In
order
to
stop
the
above
logging
of
LACP
PDUs
please
set
the
level
back
to
0
VMX0(r0_re0
vty)#
debug
ppm
protocol
lacp
level
0
Old
debug
level
=
3
New
debug
level
=
0
*
In
case
AE
flaps
on
GRES,
please
set
the
ppm-‐redistribution
timer
to
120s.
set
routing-‐options
ppm
redistribution-‐timer
120
Note
:
This
is
a
hidden
knob.
If
the
AE
does
not
flap
after
enabling
this
knob,
please
add
this
command
to
your
configuration.
• If
an
issue
is
seen
with
LACP
and
BFD
configured,
then
please
check
if
the
issue
is
seen
even
in
case
of
static
LAG
(LAG
without
LACP
config.)
and
BFD.
Accordingly,
assign
the
PR
to
BFD
team.