Max level shown:
12025-12-17T01:51:41.094ZINFOslog-rs (bgp): spawning session for r1 module = router unit = session_runner
22025-12-17T01:51:41.096ZINFOslog-rs (bgp): dispatcher started listen_address = 10.0.0.2:10179 module = neighbor unit = dispatcher
32025-12-17T01:51:41.096ZDEBGslog-rs (bgp): listener bind: 10.0.0.2:10179 listen_address = 10.0.0.2:10179 module = neighbor unit = dispatcher
42025-12-17T01:51:41.097ZINFOslog-rs (bgp): starting peer state machine fsm_state = idle module = neighbor neighbor = 10.0.0.1 neighbor_name = r1 params = SessionInfo { passive_tcp_establishment: false, remote_asn: None, remote_id: None, bind_addr: Some(10.0.0.2:10179), min_ttl: None, md5_auth_key: None, multi_exit_discriminator: None, communities: {}, local_pref: None, enforce_first_as: false, allow_import: NoFiltering, allow_export: NoFiltering, vlan_id: None, connect_retry_time: 1s, keepalive_time: 3s, hold_time: 6s, idle_hold_time: 0ns, delay_open_time: 0ns, resolution: 100ms, connect_retry_jitter: None, idle_hold_jitter: Some((0.75, 1.0)), deterministic_collision_resolution: false } session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
52025-12-17T01:51:41.098ZDEBGslog-rs (bgp): starting connect attempt fsm_state = idle module = neighbor neighbor = 10.0.0.1 neighbor_name = r1 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: true, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
62025-12-17T01:51:41.099ZDEBGslog-rs (bgp): connecting to 10.0.0.1:10179 direction = outbound module = neighbor timeout = 333 unit = connection_channel
72025-12-17T01:51:41.099ZDEBGslog-rs (bgp): spawned new connector thread fsm_state = idle module = neighbor neighbor = 10.0.0.1 neighbor_name = r1 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: true, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
82025-12-17T01:51:41.100ZINFOslog-rs (bgp): fsm transition idle -> connect fsm_state = idle module = neighbor neighbor = 10.0.0.1 neighbor_name = r1 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: true, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
92025-12-17T01:51:41.101ZDEBGslog-rs (bgp): received fsm event manual start event = manual start fsm_state = connect module = neighbor neighbor = 10.0.0.1 neighbor_name = r1 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: true, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
102025-12-17T01:51:41.101ZWARNslog-rs (bgp): unexpected admin fsm event manual start, ignoring event = manual start fsm_state = connect module = neighbor neighbor = 10.0.0.1 neighbor_name = r1 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: true, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
112025-12-17T01:51:41.107ZDEBGslog-rs (bgp): connect error: ChannelConnect direction = outbound error = Channel connect error module = neighbor timeout = 333 unit = connection_channel
122025-12-17T01:51:42.095ZDEBGslog-rs (bgp): accepted inbound connection from: 10.0.0.1:10179 listen_address = 10.0.0.2:10179 module = neighbor peer = 10.0.0.1:10179 unit = dispatcher
132025-12-17T01:51:42.096ZDEBGslog-rs (bgp): received fsm event tcp connection acked event = tcp connection acked fsm_state = connect module = neighbor neighbor = 10.0.0.1 neighbor_name = r1 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: true, remaining: 0.100s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
142025-12-17T01:51:42.096ZINFOslog-rs (bgp): accepted inbound connection from 10.0.0.1:10179 connection = (10.0.0.2:10179, 10.0.0.1:10179) connection_clock = ConnectionClock { conn_id: 70c6b9e8, resolution: 0.100s, keepalive: Timer { interval: 3.000s, enabled: false, remaining: 3.000s }, hold: Timer { interval: 6.000s, enabled: false, remaining: 6.000s }, delay_open: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } connection_id = 70c6b9e8 direction = inbound fsm_state = connect module = neighbor neighbor = 10.0.0.1 neighbor_name = r1 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: true, remaining: 0.100s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
152025-12-17T01:51:42.097ZTRACslog-rs (bgp): send open message via channel to 10.0.0.1:10179 (conn_id: 70c6b9e8, channel_id: 2) channel_id = 2 connection_id = 70c6b9e8 connection_local = 10.0.0.2:10179 connection_peer = 10.0.0.1:10179 direction = inbound message = open message_contents = Open [ version: 4, asn: 23456, hold_time: 6, id: 2, parameters: [ Capabilities [ MP-Extensions 1/1, Route Refresh, Four Octet ASN 4200000002, AddPath [ AddPathElement { afi: 1, safi: 1, send_receive: 1 }, ], ]] ] module = neighbor unit = connection_channel
162025-12-17T01:51:42.097ZINFOslog-rs (bgp): fsm transition connect -> open sent fsm_state = connect module = neighbor neighbor = 10.0.0.1 neighbor_name = r1 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
172025-12-17T01:51:42.098ZDEBGslog-rs (bgp): recv open msg from 10.0.0.1:10179 (conn_id: 70c6b9e8, channel_id: 2) channel_id = 2 direction = inbound message = open message_contents = Open [ version: 4, asn: 23456, hold_time: 6, id: 1, parameters: [ Capabilities [ MP-Extensions 1/1, Route Refresh, Four Octet ASN 4200000001, AddPath [ AddPathElement { afi: 1, safi: 1, send_receive: 1 }, ], ]] ] module = neighbor peer = 10.0.0.1:10179 unit = connection_channel
182025-12-17T01:51:42.098ZDEBGslog-rs (bgp): received fsm event connection = (10.0.0.2:10179, 10.0.0.1:10179) connection_clock = ConnectionClock { conn_id: 70c6b9e8, resolution: 0.100s, keepalive: Timer { interval: 3.000s, enabled: false, remaining: 3.000s }, hold: Timer { interval: 6.000s, enabled: true, remaining: 6.000s }, delay_open: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } connection_id = 70c6b9e8 direction = inbound event = message fsm_state = open sent module = neighbor neighbor = 10.0.0.1 neighbor_name = r1 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
192025-12-17T01:51:42.099ZTRACslog-rs (bgp): sending keepalive connection = (10.0.0.2:10179, 10.0.0.1:10179) connection_clock = ConnectionClock { conn_id: 70c6b9e8, resolution: 0.100s, keepalive: Timer { interval: 3.000s, enabled: true, remaining: 3.000s }, hold: Timer { interval: 6.000s, enabled: true, remaining: 6.000s }, delay_open: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } connection_id = 70c6b9e8 direction = inbound fsm_state = open sent message = keepalive module = neighbor neighbor = 10.0.0.1 neighbor_name = r1 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
202025-12-17T01:51:42.099ZTRACslog-rs (bgp): send keepalive message via channel to 10.0.0.1:10179 (conn_id: 70c6b9e8, channel_id: 2) channel_id = 2 connection_id = 70c6b9e8 connection_local = 10.0.0.2:10179 connection_peer = 10.0.0.1:10179 direction = inbound message = keepalive message_contents = Keepalive module = neighbor unit = connection_channel
212025-12-17T01:51:42.100ZINFOslog-rs (bgp): fsm transition open sent -> open confirm fsm_state = open sent module = neighbor neighbor = 10.0.0.1 neighbor_name = r1 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
222025-12-17T01:51:42.100ZDEBGslog-rs (bgp): recv keepalive msg from 10.0.0.1:10179 (conn_id: 70c6b9e8, channel_id: 2) channel_id = 2 direction = inbound message = keepalive message_contents = Keepalive module = neighbor peer = 10.0.0.1:10179 unit = connection_channel
232025-12-17T01:51:42.100ZDEBGslog-rs (bgp): received fsm event connection = (10.0.0.2:10179, 10.0.0.1:10179) connection_clock = ConnectionClock { conn_id: 70c6b9e8, resolution: 0.100s, keepalive: Timer { interval: 3.000s, enabled: true, remaining: 3.000s }, hold: Timer { interval: 6.000s, enabled: true, remaining: 6.000s }, delay_open: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } connection_id = 70c6b9e8 direction = inbound event = message fsm_state = open confirm module = neighbor neighbor = 10.0.0.1 neighbor_name = r1 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
242025-12-17T01:51:42.101ZINFOslog-rs (bgp): fsm transition open confirm -> session setup fsm_state = open confirm module = neighbor neighbor = 10.0.0.1 neighbor_name = r1 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
252025-12-17T01:51:42.101ZTRACslog-rs (bgp): sending keepalive connection = (10.0.0.2:10179, 10.0.0.1:10179) connection_clock = ConnectionClock { conn_id: 70c6b9e8, resolution: 0.100s, keepalive: Timer { interval: 3.000s, enabled: true, remaining: 3.000s }, hold: Timer { interval: 6.000s, enabled: true, remaining: 6.000s }, delay_open: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } connection_id = 70c6b9e8 direction = inbound fsm_state = session setup message = keepalive module = neighbor neighbor = 10.0.0.1 neighbor_name = r1 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
262025-12-17T01:51:42.101ZTRACslog-rs (bgp): send keepalive message via channel to 10.0.0.1:10179 (conn_id: 70c6b9e8, channel_id: 2) channel_id = 2 connection_id = 70c6b9e8 connection_local = 10.0.0.2:10179 connection_peer = 10.0.0.1:10179 direction = inbound message = keepalive message_contents = Keepalive module = neighbor unit = connection_channel
272025-12-17T01:51:42.102ZINFOslog-rs (bgp): fsm transition session setup -> established fsm_state = session setup module = neighbor neighbor = 10.0.0.1 neighbor_name = r1 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
282025-12-17T01:51:42.102ZDEBGslog-rs (bgp): recv keepalive msg from 10.0.0.1:10179 (conn_id: 70c6b9e8, channel_id: 2) channel_id = 2 direction = inbound message = keepalive message_contents = Keepalive module = neighbor peer = 10.0.0.1:10179 unit = connection_channel
292025-12-17T01:51:42.102ZDEBGslog-rs (bgp): received fsm event connection = (10.0.0.2:10179, 10.0.0.1:10179) connection_clock = ConnectionClock { conn_id: 70c6b9e8, resolution: 0.100s, keepalive: Timer { interval: 3.000s, enabled: true, remaining: 3.000s }, hold: Timer { interval: 6.000s, enabled: true, remaining: 6.000s }, delay_open: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } connection_id = 70c6b9e8 direction = inbound event = message fsm_state = established module = neighbor neighbor = 10.0.0.1 neighbor_name = r1 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
302025-12-17T01:51:42.103ZTRACslog-rs (bgp): keepalive received (conn_id: 70c6b9e8) connection = (10.0.0.2:10179, 10.0.0.1:10179) connection_clock = ConnectionClock { conn_id: 70c6b9e8, resolution: 0.100s, keepalive: Timer { interval: 3.000s, enabled: true, remaining: 3.000s }, hold: Timer { interval: 6.000s, enabled: true, remaining: 6.000s }, delay_open: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } connection_id = 70c6b9e8 direction = inbound fsm_state = established message = keepalive module = neighbor neighbor = 10.0.0.1 neighbor_name = r1 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
312025-12-17T01:51:42.103ZDEBGslog-rs (bgp): recv update msg from 10.0.0.1:10179 (conn_id: 70c6b9e8, channel_id: 2) channel_id = 2 direction = inbound message = update message_contents = Update[ path_attributes: origin: igp, as4-path: [4200000001], next-hop: 10.0.0.1) withdrawn(empty) nlri(1.2.3.0/24) ] module = neighbor peer = 10.0.0.1:10179 unit = connection_channel
322025-12-17T01:51:42.104ZDEBGslog-rs (bgp): received fsm event connection = (10.0.0.2:10179, 10.0.0.1:10179) connection_clock = ConnectionClock { conn_id: 70c6b9e8, resolution: 0.100s, keepalive: Timer { interval: 3.000s, enabled: true, remaining: 3.000s }, hold: Timer { interval: 6.000s, enabled: true, remaining: 6.000s }, delay_open: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } connection_id = 70c6b9e8 direction = inbound event = message fsm_state = established module = neighbor neighbor = 10.0.0.1 neighbor_name = r1 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
332025-12-17T01:51:42.104ZINFOslog-rs (bgp): received update (conn_id: 70c6b9e8) connection = (10.0.0.2:10179, 10.0.0.1:10179) connection_clock = ConnectionClock { conn_id: 70c6b9e8, resolution: 0.100s, keepalive: Timer { interval: 3.000s, enabled: true, remaining: 3.000s }, hold: Timer { interval: 6.000s, enabled: true, remaining: 6.000s }, delay_open: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } connection_id = 70c6b9e8 direction = inbound fsm_state = established message = update message_contents = Update[ path_attributes: origin: igp, as4-path: [4200000001], next-hop: 10.0.0.1) withdrawn(empty) nlri(1.2.3.0/24) ] module = neighbor neighbor = 10.0.0.1 neighbor_name = r1 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
342025-12-17T01:51:42.200ZDEBGslog-rs (bgp): peer 10.0.0.1:10179 disconnected (conn_id: 70c6b9e8, channel_id: 2), terminating recv loop channel_id = 2 connection_id = 70c6b9e8 direction = inbound module = neighbor peer = 10.0.0.1:10179 unit = connection_channel
352025-12-17T01:51:45.098ZDEBGslog-rs (bgp): received fsm event connection = (10.0.0.2:10179, 10.0.0.1:10179) connection_clock = ConnectionClock { conn_id: 70c6b9e8, resolution: 0.100s, keepalive: Timer { interval: 3.000s, enabled: true, remaining: 3.000s }, hold: Timer { interval: 6.000s, enabled: true, remaining: 3.000s }, delay_open: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } connection_id = 70c6b9e8 direction = inbound event = keepalive timer expires fsm_state = established module = neighbor neighbor = 10.0.0.1 neighbor_name = r1 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
362025-12-17T01:51:45.098ZTRACslog-rs (bgp): sending keepalive connection = (10.0.0.2:10179, 10.0.0.1:10179) connection_clock = ConnectionClock { conn_id: 70c6b9e8, resolution: 0.100s, keepalive: Timer { interval: 3.000s, enabled: true, remaining: 3.000s }, hold: Timer { interval: 6.000s, enabled: true, remaining: 3.000s }, delay_open: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } connection_id = 70c6b9e8 direction = inbound fsm_state = established message = keepalive module = neighbor neighbor = 10.0.0.1 neighbor_name = r1 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
372025-12-17T01:51:45.099ZTRACslog-rs (bgp): send keepalive message via channel to 10.0.0.1:10179 (conn_id: 70c6b9e8, channel_id: 2) channel_id = 2 connection_id = 70c6b9e8 connection_local = 10.0.0.2:10179 connection_peer = 10.0.0.1:10179 direction = inbound message = keepalive message_contents = Keepalive module = neighbor unit = connection_channel
382025-12-17T01:51:45.099ZERROslog-rs (bgp): error sending message via channel to 10.0.0.1:10179 (conn_id: 70c6b9e8, channel_id: 2): channel send: sending on a closed channel channel_id = 2 connection_id = 70c6b9e8 connection_local = 10.0.0.2:10179 connection_peer = 10.0.0.1:10179 direction = inbound error = channel send: sending on a closed channel module = neighbor network_state = {(10.0.0.1:10179, Sender { .. })(10.0.0.2:10179, Sender { .. })} unit = connection_channel
392025-12-17T01:51:45.099ZERROslog-rs (bgp): failed to send keepalive: channel send: sending on a closed channel connection = (10.0.0.2:10179, 10.0.0.1:10179) connection_clock = ConnectionClock { conn_id: 70c6b9e8, resolution: 0.100s, keepalive: Timer { interval: 3.000s, enabled: true, remaining: 3.000s }, hold: Timer { interval: 6.000s, enabled: true, remaining: 3.000s }, delay_open: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } connection_id = 70c6b9e8 direction = inbound error = channel send: sending on a closed channel fsm_state = established module = neighbor neighbor = 10.0.0.1 neighbor_name = r1 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
402025-12-17T01:51:48.099ZDEBGslog-rs (bgp): received fsm event connection = (10.0.0.2:10179, 10.0.0.1:10179) connection_clock = ConnectionClock { conn_id: 70c6b9e8, resolution: 0.100s, keepalive: Timer { interval: 3.000s, enabled: true, remaining: 3.000s }, hold: Timer { interval: 6.000s, enabled: true, remaining: 6.000s }, delay_open: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } connection_id = 70c6b9e8 direction = inbound event = keepalive timer expires fsm_state = established module = neighbor neighbor = 10.0.0.1 neighbor_name = r1 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
412025-12-17T01:51:48.099ZTRACslog-rs (bgp): sending keepalive connection = (10.0.0.2:10179, 10.0.0.1:10179) connection_clock = ConnectionClock { conn_id: 70c6b9e8, resolution: 0.100s, keepalive: Timer { interval: 3.000s, enabled: true, remaining: 3.000s }, hold: Timer { interval: 6.000s, enabled: true, remaining: 6.000s }, delay_open: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } connection_id = 70c6b9e8 direction = inbound fsm_state = established message = keepalive module = neighbor neighbor = 10.0.0.1 neighbor_name = r1 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
422025-12-17T01:51:48.100ZTRACslog-rs (bgp): send keepalive message via channel to 10.0.0.1:10179 (conn_id: 70c6b9e8, channel_id: 2) channel_id = 2 connection_id = 70c6b9e8 connection_local = 10.0.0.2:10179 connection_peer = 10.0.0.1:10179 direction = inbound message = keepalive message_contents = Keepalive module = neighbor unit = connection_channel
432025-12-17T01:51:48.100ZERROslog-rs (bgp): error sending message via channel to 10.0.0.1:10179 (conn_id: 70c6b9e8, channel_id: 2): channel send: sending on a closed channel channel_id = 2 connection_id = 70c6b9e8 connection_local = 10.0.0.2:10179 connection_peer = 10.0.0.1:10179 direction = inbound error = channel send: sending on a closed channel module = neighbor network_state = {(10.0.0.1:10179, Sender { .. })(10.0.0.2:10179, Sender { .. })} unit = connection_channel
442025-12-17T01:51:48.100ZERROslog-rs (bgp): failed to send keepalive: channel send: sending on a closed channel connection = (10.0.0.2:10179, 10.0.0.1:10179) connection_clock = ConnectionClock { conn_id: 70c6b9e8, resolution: 0.100s, keepalive: Timer { interval: 3.000s, enabled: true, remaining: 3.000s }, hold: Timer { interval: 6.000s, enabled: true, remaining: 6.000s }, delay_open: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } connection_id = 70c6b9e8 direction = inbound error = channel send: sending on a closed channel fsm_state = established module = neighbor neighbor = 10.0.0.1 neighbor_name = r1 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
452025-12-17T01:51:48.101ZDEBGslog-rs (bgp): received fsm event connection = (10.0.0.2:10179, 10.0.0.1:10179) connection_clock = ConnectionClock { conn_id: 70c6b9e8, resolution: 0.100s, keepalive: Timer { interval: 3.000s, enabled: true, remaining: 3.000s }, hold: Timer { interval: 6.000s, enabled: true, remaining: 6.000s }, delay_open: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } connection_id = 70c6b9e8 direction = inbound event = hold timer expires fsm_state = established module = neighbor neighbor = 10.0.0.1 neighbor_name = r1 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
462025-12-17T01:51:48.101ZWARNslog-rs (bgp): hold timer expired, fsm transition to idle connection = (10.0.0.2:10179, 10.0.0.1:10179) connection_clock = ConnectionClock { conn_id: 70c6b9e8, resolution: 0.100s, keepalive: Timer { interval: 3.000s, enabled: true, remaining: 3.000s }, hold: Timer { interval: 6.000s, enabled: true, remaining: 6.000s }, delay_open: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } connection_id = 70c6b9e8 direction = inbound fsm_state = established module = neighbor neighbor = 10.0.0.1 neighbor_name = r1 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
472025-12-17T01:51:48.101ZINFOslog-rs (bgp): sending notification: 4 (HoldTimerExpired) / 0 connection = (10.0.0.2:10179, 10.0.0.1:10179) connection_clock = ConnectionClock { conn_id: 70c6b9e8, resolution: 0.100s, keepalive: Timer { interval: 3.000s, enabled: true, remaining: 3.000s }, hold: Timer { interval: 6.000s, enabled: true, remaining: 6.000s }, delay_open: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } connection_id = 70c6b9e8 direction = inbound fsm_state = established message = notification message_contents = Notification [ error_code: 4 (HoldTimerExpired), error_subcode: 0, data: [] ] module = neighbor neighbor = 10.0.0.1 neighbor_name = r1 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
482025-12-17T01:51:48.102ZTRACslog-rs (bgp): send notification message via channel to 10.0.0.1:10179 (conn_id: 70c6b9e8, channel_id: 2) channel_id = 2 connection_id = 70c6b9e8 connection_local = 10.0.0.2:10179 connection_peer = 10.0.0.1:10179 direction = inbound message = notification message_contents = Notification [ error_code: 4 (HoldTimerExpired), error_subcode: 0, data: [] ] module = neighbor unit = connection_channel
492025-12-17T01:51:48.102ZERROslog-rs (bgp): error sending message via channel to 10.0.0.1:10179 (conn_id: 70c6b9e8, channel_id: 2): channel send: sending on a closed channel channel_id = 2 connection_id = 70c6b9e8 connection_local = 10.0.0.2:10179 connection_peer = 10.0.0.1:10179 direction = inbound error = channel send: sending on a closed channel module = neighbor network_state = {(10.0.0.1:10179, Sender { .. })(10.0.0.2:10179, Sender { .. })} unit = connection_channel
502025-12-17T01:51:48.102ZERROslog-rs (bgp): failed to send notification: channel send: sending on a closed channel connection = (10.0.0.2:10179, 10.0.0.1:10179) connection_clock = ConnectionClock { conn_id: 70c6b9e8, resolution: 0.100s, keepalive: Timer { interval: 3.000s, enabled: true, remaining: 3.000s }, hold: Timer { interval: 6.000s, enabled: true, remaining: 6.000s }, delay_open: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } connection_id = 70c6b9e8 direction = inbound error = channel send: sending on a closed channel fsm_state = established module = neighbor neighbor = 10.0.0.1 neighbor_name = r1 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
512025-12-17T01:51:48.103ZDEBGslog-rs (bgp): dropping bgp connection for peer 10.0.0.1:10179 (conn_id: 70c6b9e8, channel_id: 2) channel_id = 2 connection_id = 70c6b9e8 connection_local = 10.0.0.2:10179 connection_peer = 10.0.0.1:10179 direction = inbound module = neighbor network_state = {(10.0.0.1:10179, Sender { .. })(10.0.0.2:10179, Sender { .. })} unit = connection_channel
522025-12-17T01:51:48.199ZINFOslog-rs (bgp): fsm transition established -> idle fsm_state = established module = neighbor neighbor = 10.0.0.1 neighbor_name = r1 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
532025-12-17T01:51:48.199ZDEBGslog-rs (bgp): starting connect attempt fsm_state = idle module = neighbor neighbor = 10.0.0.1 neighbor_name = r1 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: true, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
542025-12-17T01:51:48.200ZDEBGslog-rs (bgp): connector thread completed successfully context = checking previous fsm_state = idle module = neighbor neighbor = 10.0.0.1 neighbor_name = r1 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: true, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
552025-12-17T01:51:48.200ZDEBGslog-rs (bgp): connecting to 10.0.0.1:10179 direction = outbound module = neighbor timeout = 333 unit = connection_channel
562025-12-17T01:51:48.200ZDEBGslog-rs (bgp): spawned new connector thread fsm_state = idle module = neighbor neighbor = 10.0.0.1 neighbor_name = r1 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: true, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
572025-12-17T01:51:48.200ZINFOslog-rs (bgp): fsm transition idle -> connect fsm_state = idle module = neighbor neighbor = 10.0.0.1 neighbor_name = r1 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: true, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
582025-12-17T01:51:48.201ZDEBGslog-rs (bgp): connect error: ChannelSend("sending on a closed channel") direction = outbound error = channel send: sending on a closed channel module = neighbor timeout = 333 unit = connection_channel
592025-12-17T01:51:48.206ZINFOslog-rs (bgp): router (asn: 4200000002, id: 2) received shutdown request, stopping sessions module = router unit = session_runner
60 {"msg":"session runner (peer 10.0.0.1) received shutdown request, setting shutdown flag","v":0,"name":"