Uploaded image for project: 'bgpcep'
  1. bgpcep
  2. BGPCEP-166

"BGP Error code 6 and subcode 3 not recognized" when speaker is trying to perform "Administrative reset"

    XMLWordPrintable

Details

    • Bug
    • Status: Resolved
    • Resolution: Cannot Reproduce
    • Bugzilla Migration
    • Bugzilla Migration
    • BGP
    • None
    • Operating System: All
      Platform: All

    • 2393

    Description

      When the speaker tries to close the connection gracefully, it sends a NOTIFICATION message with the request "Administrative Reset". It then waits for ODL to confirm the "Administrative Reset" by closing the connection and after that it knows the ODL handled it OK and closes the connection. At least EXABGP is doing this.

      However when BGPCEP receives the "Administrative Reset" message, it crashes with the "BGP Error code 6 and subcode 3 not recognized" error. The session then remains stuck and any other connections attempts from the same host will fail due to "Equal sessions with same direction" error.

      Here is the part of the log relevant to this bug:

      15:03:26.927 UTC [nettyThreadgroupModule$NioEventLoopGroupCloseable-5-5] TRACE o.o.p.b.r.i.BGPByteToMessageDecoder - Received to decode: ffffffffffffffffffffffffffffffff0027030603506565722044652d636f6e66696775726564
      2014-11-14 15:03:26.928 UTC [nettyThreadgroupModule$NioEventLoopGroupCloseable-5-5] TRACE o.o.p.b.p.i.m.BGPNotificationMessageParser - Started parsing of notification message: 0603506565722044652d636f6e66696775726564
      2014-11-14 15:03:26.939 UTC [nettyThreadgroupModule$NioEventLoopGroupCloseable-5-5] WARN i.n.channel.DefaultChannelPipeline - An exceptionCaught() event was fired, and it reached at the tail of the pipeline. It usually means the last handler in the pipeline did not handle the exception.
      io.netty.handler.codec.DecoderException: java.lang.IllegalArgumentException: BGP Error code 6 and subcode 3 not recognized.
      at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:280) [bundlefile:4.0.23.Final]
      at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:149) [bundlefile:4.0.23.Final]
      at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:333) [bundlefile:4.0.23.Final]
      at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:319) [bundlefile:4.0.23.Final]
      at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:163) [bundlefile:4.0.23.Final]
      at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:333) [bundlefile:4.0.23.Final]
      at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:319) [bundlefile:4.0.23.Final]
      at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:787) [bundlefile:4.0.23.Final]
      at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:130) [bundlefile:4.0.23.Final]
      at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:511) [bundlefile:4.0.23.Final]
      at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:468) [bundlefile:4.0.23.Final]
      at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:382) [bundlefile:4.0.23.Final]
      at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:354) [bundlefile:4.0.23.Final]
      at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:116) [bundlefile:4.0.23.Final]
      at io.netty.util.concurrent.DefaultThreadFactory$DefaultRunnableDecorator.run(DefaultThreadFactory.java:137) [bundlefile:4.0.23.Final]
      at java.lang.Thread.run(Unknown Source) [na:1.7.0_67]
      Caused by: java.lang.IllegalArgumentException: BGP Error code 6 and subcode 3 not recognized.
      at org.opendaylight.protocol.bgp.parser.BGPError.forValue(BGPError.java:198) ~[na:na]
      at org.opendaylight.protocol.bgp.parser.impl.message.BGPNotificationMessageParser.parseMessageBody(BGPNotificationMessageParser.java:81) ~[na:na]
      at org.opendaylight.protocol.bgp.parser.impl.message.BGPNotificationMessageParser.parseMessageBody(BGPNotificationMessageParser.java:30) ~[na:na]
      at org.opendaylight.protocol.bgp.parser.spi.pojo.SimpleMessageRegistry.parseBody(SimpleMessageRegistry.java:31) ~[na:na]
      at org.opendaylight.protocol.bgp.parser.spi.AbstractMessageRegistry.parseMessage(AbstractMessageRegistry.java:61) ~[na:na]
      at org.opendaylight.protocol.bgp.rib.impl.BGPByteToMessageDecoder.decode(BGPByteToMessageDecoder.java:41) ~[na:na]
      at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:249) [bundlefile:4.0.23.Final]
      ... 15 common frames omitted

      Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            Unassigned Unassigned
            jbehran@cisco.com Jozef Behran
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: