Max level shown:
12026-01-14T01:33:35.662ZINFOslog-rs (bgp): spawning session for r2 module = router unit = session_runner
22026-01-14T01:33:35.669ZINFOslog-rs (bgp): dispatcher started listen_address = 127.0.0.1:10179 module = neighbor unit = dispatcher
32026-01-14T01:33:35.669ZDEBGslog-rs (bgp): listener bind: 127.0.0.1:10179 listen_address = 127.0.0.1:10179 module = neighbor unit = dispatcher
42026-01-14T01:33:35.670ZINFOslog-rs (bgp): starting peer state machine fsm_state = idle module = neighbor neighbor = 127.0.0.2 neighbor_name = r2 params = SessionInfo { passive_tcp_establishment: true, remote_asn: None, remote_id: None, bind_addr: Some(127.0.0.1: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
52026-01-14T01:33:35.670ZINFOslog-rs (bgp): fsm transition idle -> active fsm_state = idle module = neighbor neighbor = 127.0.0.2 neighbor_name = r2 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
62026-01-14T01:33:35.678ZDEBGslog-rs (bgp): received fsm event manual start event = manual start fsm_state = active module = neighbor neighbor = 127.0.0.2 neighbor_name = r2 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
72026-01-14T01:33:35.681ZWARNslog-rs (bgp): unexpected admin fsm event manual start, ignoring event = manual start fsm_state = active module = neighbor neighbor = 127.0.0.2 neighbor_name = r2 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
82026-01-14T01:33:35.692ZDEBGslog-rs (bgp): accepted inbound connection from: 127.0.0.2:59615 listen_address = 127.0.0.1:10179 module = neighbor peer = 127.0.0.2:59615 unit = dispatcher
92026-01-14T01:33:35.693ZDEBGslog-rs (bgp): received fsm event tcp connection acked event = tcp connection acked fsm_state = active module = neighbor neighbor = 127.0.0.2 neighbor_name = r2 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
102026-01-14T01:33:35.693ZINFOslog-rs (bgp): accepted inbound connection from 127.0.0.2:59615 connection = (127.0.0.1:10179, 127.0.0.2:59615) connection_clock = ConnectionClock { conn_id: 5d00ffa1, 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 = 5d00ffa1 direction = inbound fsm_state = active module = neighbor neighbor = 127.0.0.2 neighbor_name = r2 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
112026-01-14T01:33:35.694ZTRACslog-rs (bgp): sending open msg connection = TcpStream { addr: 127.0.0.1:10179, peer: 127.0.0.2:59615, fd: 13 } 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 unit = connection_tcp
122026-01-14T01:33:35.694ZTRACslog-rs (bgp): sending open msg with header connection = TcpStream { addr: 127.0.0.1:10179, peer: 127.0.0.2:59615, fd: 13 } message = open message_contents = [ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, 0, 33, 1, 4, 5b, a0, 0, 6, 0, 0, 0, 1, 16, 2, 14, 1, 4, 0, 1, 0, 1, 2, 0, 41, 4, fa, 56, ea, 1, 45, 4, 0, 1, 1, 1] module = neighbor unit = connection_tcp
132026-01-14T01:33:35.695ZINFOslog-rs (bgp): spawning recv loop for 127.0.0.2:59615 connection_id = 5d00ffa1 connection_local = 127.0.0.1:10179 connection_peer = 127.0.0.2:59615 direction = inbound module = neighbor unit = connection_tcp
142026-01-14T01:33:35.695ZINFOslog-rs (bgp): fsm transition active -> open sent fsm_state = active module = neighbor neighbor = 127.0.0.2 neighbor_name = r2 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
152026-01-14T01:33:35.695ZTRACslog-rs (bgp): recv open msg from 127.0.0.2:59615 (conn_id: 5d00ffa1) connection = TcpStream { addr: 127.0.0.1:10179, peer: 127.0.0.2:59615, fd: 14 } connection_id = 5d00ffa1 connection_peer = 127.0.0.2:59615 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_tcp
162026-01-14T01:33:35.696ZTRACslog-rs (bgp): recv keepalive msg from 127.0.0.2:59615 (conn_id: 5d00ffa1) connection = TcpStream { addr: 127.0.0.1:10179, peer: 127.0.0.2:59615, fd: 14 } connection_id = 5d00ffa1 connection_peer = 127.0.0.2:59615 direction = inbound message = keepalive message_contents = Keepalive module = neighbor unit = connection_tcp
172026-01-14T01:33:35.696ZDEBGslog-rs (bgp): received fsm event connection = (127.0.0.1:10179, 127.0.0.2:59615) connection_clock = ConnectionClock { conn_id: 5d00ffa1, 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 = 5d00ffa1 direction = inbound event = message fsm_state = open sent module = neighbor neighbor = 127.0.0.2 neighbor_name = r2 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
182026-01-14T01:33:35.697ZTRACslog-rs (bgp): sending keepalive connection = (127.0.0.1:10179, 127.0.0.2:59615) connection_clock = ConnectionClock { conn_id: 5d00ffa1, 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 = 5d00ffa1 direction = inbound fsm_state = open sent message = keepalive module = neighbor neighbor = 127.0.0.2 neighbor_name = r2 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
192026-01-14T01:33:35.698ZTRACslog-rs (bgp): sending keepalive msg connection = TcpStream { addr: 127.0.0.1:10179, peer: 127.0.0.2:59615, fd: 13 } direction = inbound message = keepalive message_contents = Keepalive module = neighbor unit = connection_tcp
202026-01-14T01:33:35.698ZTRACslog-rs (bgp): sending keepalive msg with header connection = TcpStream { addr: 127.0.0.1:10179, peer: 127.0.0.2:59615, fd: 13 } message = keepalive message_contents = [ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, 0, 13, 4] module = neighbor unit = connection_tcp
212026-01-14T01:33:35.698ZINFOslog-rs (bgp): fsm transition open sent -> open confirm fsm_state = open sent module = neighbor neighbor = 127.0.0.2 neighbor_name = r2 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
222026-01-14T01:33:35.699ZDEBGslog-rs (bgp): received fsm event connection = (127.0.0.1:10179, 127.0.0.2:59615) connection_clock = ConnectionClock { conn_id: 5d00ffa1, 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 = 5d00ffa1 direction = inbound event = message fsm_state = open confirm module = neighbor neighbor = 127.0.0.2 neighbor_name = r2 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
232026-01-14T01:33:35.700ZINFOslog-rs (bgp): fsm transition open confirm -> session setup fsm_state = open confirm module = neighbor neighbor = 127.0.0.2 neighbor_name = r2 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
242026-01-14T01:33:35.700ZTRACslog-rs (bgp): sending keepalive connection = (127.0.0.1:10179, 127.0.0.2:59615) connection_clock = ConnectionClock { conn_id: 5d00ffa1, 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 = 5d00ffa1 direction = inbound fsm_state = session setup message = keepalive module = neighbor neighbor = 127.0.0.2 neighbor_name = r2 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
252026-01-14T01:33:35.701ZTRACslog-rs (bgp): sending keepalive msg connection = TcpStream { addr: 127.0.0.1:10179, peer: 127.0.0.2:59615, fd: 13 } direction = inbound message = keepalive message_contents = Keepalive module = neighbor unit = connection_tcp
262026-01-14T01:33:35.701ZTRACslog-rs (bgp): sending keepalive msg with header connection = TcpStream { addr: 127.0.0.1:10179, peer: 127.0.0.2:59615, fd: 13 } message = keepalive message_contents = [ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, 0, 13, 4] module = neighbor unit = connection_tcp
272026-01-14T01:33:35.702ZINFOslog-rs (bgp): fsm transition session setup -> established fsm_state = session setup module = neighbor neighbor = 127.0.0.2 neighbor_name = r2 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
282026-01-14T01:33:35.702ZTRACslog-rs (bgp): recv keepalive msg from 127.0.0.2:59615 (conn_id: 5d00ffa1) connection = TcpStream { addr: 127.0.0.1:10179, peer: 127.0.0.2:59615, fd: 14 } connection_id = 5d00ffa1 connection_peer = 127.0.0.2:59615 direction = inbound message = keepalive message_contents = Keepalive module = neighbor unit = connection_tcp
292026-01-14T01:33:35.703ZDEBGslog-rs (bgp): received fsm event connection = (127.0.0.1:10179, 127.0.0.2:59615) connection_clock = ConnectionClock { conn_id: 5d00ffa1, 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 = 5d00ffa1 direction = inbound event = message fsm_state = established module = neighbor neighbor = 127.0.0.2 neighbor_name = r2 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
302026-01-14T01:33:35.703ZTRACslog-rs (bgp): keepalive received (conn_id: 5d00ffa1) connection = (127.0.0.1:10179, 127.0.0.2:59615) connection_clock = ConnectionClock { conn_id: 5d00ffa1, 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 = 5d00ffa1 direction = inbound fsm_state = established message = keepalive module = neighbor neighbor = 127.0.0.2 neighbor_name = r2 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
312026-01-14T01:33:36.797ZINFOslog-rs (bgp): recv_msg error (peer: 127.0.0.2:59615, conn_id: 5d00ffa1): peer closed connection connection = TcpStream { addr: 127.0.0.1:10179, peer: 127.0.0.2:59615, fd: 14 } connection_id = 5d00ffa1 connection_peer = 127.0.0.2:59615 direction = inbound error = peer closed connection module = neighbor unit = connection_tcp
322026-01-14T01:33:36.797ZINFOslog-rs (bgp): recv loop closed (peer: 127.0.0.2:59615, conn_id: 5d00ffa1) connection = TcpStream { addr: 127.0.0.1:10179, peer: 127.0.0.2:59615, fd: 14 } connection_id = 5d00ffa1 connection_peer = 127.0.0.2:59615 direction = inbound module = neighbor unit = connection_tcp
332026-01-14T01:33:38.694ZDEBGslog-rs (bgp): received fsm event connection = (127.0.0.1:10179, 127.0.0.2:59615) connection_clock = ConnectionClock { conn_id: 5d00ffa1, 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 = 5d00ffa1 direction = inbound event = keepalive timer expires fsm_state = established module = neighbor neighbor = 127.0.0.2 neighbor_name = r2 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
342026-01-14T01:33:38.694ZTRACslog-rs (bgp): sending keepalive connection = (127.0.0.1:10179, 127.0.0.2:59615) connection_clock = ConnectionClock { conn_id: 5d00ffa1, 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 = 5d00ffa1 direction = inbound fsm_state = established message = keepalive module = neighbor neighbor = 127.0.0.2 neighbor_name = r2 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
352026-01-14T01:33:38.694ZTRACslog-rs (bgp): sending keepalive msg connection = TcpStream { addr: 127.0.0.1:10179, peer: 127.0.0.2:59615, fd: 13 } direction = inbound message = keepalive message_contents = Keepalive module = neighbor unit = connection_tcp
362026-01-14T01:33:38.695ZTRACslog-rs (bgp): sending keepalive msg with header connection = TcpStream { addr: 127.0.0.1:10179, peer: 127.0.0.2:59615, fd: 13 } message = keepalive message_contents = [ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, 0, 13, 4] module = neighbor unit = connection_tcp
372026-01-14T01:33:41.695ZDEBGslog-rs (bgp): received fsm event connection = (127.0.0.1:10179, 127.0.0.2:59615) connection_clock = ConnectionClock { conn_id: 5d00ffa1, 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 = 5d00ffa1 direction = inbound event = keepalive timer expires fsm_state = established module = neighbor neighbor = 127.0.0.2 neighbor_name = r2 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
382026-01-14T01:33:41.696ZTRACslog-rs (bgp): sending keepalive connection = (127.0.0.1:10179, 127.0.0.2:59615) connection_clock = ConnectionClock { conn_id: 5d00ffa1, 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 = 5d00ffa1 direction = inbound fsm_state = established message = keepalive module = neighbor neighbor = 127.0.0.2 neighbor_name = r2 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
392026-01-14T01:33:41.696ZTRACslog-rs (bgp): sending keepalive msg connection = TcpStream { addr: 0.0.0.0:0, fd: 13 } direction = inbound message = keepalive message_contents = Keepalive module = neighbor unit = connection_tcp
402026-01-14T01:33:41.696ZTRACslog-rs (bgp): sending keepalive msg with header connection = TcpStream { addr: 0.0.0.0:0, fd: 13 } message = keepalive message_contents = [ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, 0, 13, 4] module = neighbor unit = connection_tcp
412026-01-14T01:33:41.697ZERROslog-rs (bgp): failed to send keepalive: io: Broken pipe (os error 32) connection = (127.0.0.1:10179, 127.0.0.2:59615) connection_clock = ConnectionClock { conn_id: 5d00ffa1, 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 = 5d00ffa1 direction = inbound error = io: Broken pipe (os error 32) fsm_state = established module = neighbor neighbor = 127.0.0.2 neighbor_name = r2 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
422026-01-14T01:33:41.697ZDEBGslog-rs (bgp): received fsm event connection = (127.0.0.1:10179, 127.0.0.2:59615) connection_clock = ConnectionClock { conn_id: 5d00ffa1, 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 = 5d00ffa1 direction = inbound event = hold timer expires fsm_state = established module = neighbor neighbor = 127.0.0.2 neighbor_name = r2 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
432026-01-14T01:33:41.697ZWARNslog-rs (bgp): hold timer expired, fsm transition to idle connection = (127.0.0.1:10179, 127.0.0.2:59615) connection_clock = ConnectionClock { conn_id: 5d00ffa1, 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 = 5d00ffa1 direction = inbound fsm_state = established module = neighbor neighbor = 127.0.0.2 neighbor_name = r2 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
442026-01-14T01:33:41.698ZINFOslog-rs (bgp): sending notification: 4 (HoldTimerExpired) / 0 connection = (127.0.0.1:10179, 127.0.0.2:59615) connection_clock = ConnectionClock { conn_id: 5d00ffa1, 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 = 5d00ffa1 direction = inbound fsm_state = established message = notification message_contents = Notification [ error_code: 4 (HoldTimerExpired), error_subcode: 0, data: [] ] module = neighbor neighbor = 127.0.0.2 neighbor_name = r2 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
452026-01-14T01:33:41.698ZTRACslog-rs (bgp): sending notification msg connection = TcpStream { addr: 0.0.0.0:0, fd: 13 } direction = inbound message = notification message_contents = Notification [ error_code: 4 (HoldTimerExpired), error_subcode: 0, data: [] ] module = neighbor unit = connection_tcp
462026-01-14T01:33:41.698ZTRACslog-rs (bgp): sending notification msg with header connection = TcpStream { addr: 0.0.0.0:0, fd: 13 } message = notification message_contents = [ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, 0, 15, 3, 4, 0] module = neighbor unit = connection_tcp
472026-01-14T01:33:41.698ZERROslog-rs (bgp): failed to send notification: io: Broken pipe (os error 32) connection = (127.0.0.1:10179, 127.0.0.2:59615) connection_clock = ConnectionClock { conn_id: 5d00ffa1, 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 = 5d00ffa1 direction = inbound error = io: Broken pipe (os error 32) fsm_state = established module = neighbor neighbor = 127.0.0.2 neighbor_name = r2 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
482026-01-14T01:33:41.699ZTRACslog-rs (bgp): dropping connection (127.0.0.1:10179, 127.0.0.2:59615) (conn_id 5d00ffa1) connection = (127.0.0.1:10179, 127.0.0.2:59615) connection_id = 5d00ffa1 connection_local = 127.0.0.1:10179 connection_peer = 127.0.0.2:59615 direction = inbound dropped = false module = neighbor unit = connection_tcp
492026-01-14T01:33:41.795ZINFOslog-rs (bgp): fsm transition established -> idle fsm_state = established module = neighbor neighbor = 127.0.0.2 neighbor_name = r2 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
502026-01-14T01:33:41.796ZINFOslog-rs (bgp): fsm transition idle -> active fsm_state = idle module = neighbor neighbor = 127.0.0.2 neighbor_name = r2 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
512026-01-14T01:33:42.683ZDEBGslog-rs (bgp): accepted inbound connection from: 127.0.0.2:42557 listen_address = 127.0.0.1:10179 module = neighbor peer = 127.0.0.2:42557 unit = dispatcher
522026-01-14T01:33:42.683ZDEBGslog-rs (bgp): received fsm event tcp connection acked event = tcp connection acked fsm_state = active module = neighbor neighbor = 127.0.0.2 neighbor_name = r2 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
532026-01-14T01:33:42.684ZINFOslog-rs (bgp): accepted inbound connection from 127.0.0.2:42557 connection = (127.0.0.1:10179, 127.0.0.2:42557) connection_clock = ConnectionClock { conn_id: 37eb7941, 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 = 37eb7941 direction = inbound fsm_state = active module = neighbor neighbor = 127.0.0.2 neighbor_name = r2 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
542026-01-14T01:33:42.685ZTRACslog-rs (bgp): sending open msg connection = TcpStream { addr: 127.0.0.1:10179, peer: 127.0.0.2:42557, fd: 13 } 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 unit = connection_tcp
552026-01-14T01:33:42.685ZTRACslog-rs (bgp): sending open msg with header connection = TcpStream { addr: 127.0.0.1:10179, peer: 127.0.0.2:42557, fd: 13 } message = open message_contents = [ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, 0, 33, 1, 4, 5b, a0, 0, 6, 0, 0, 0, 1, 16, 2, 14, 1, 4, 0, 1, 0, 1, 2, 0, 41, 4, fa, 56, ea, 1, 45, 4, 0, 1, 1, 1] module = neighbor unit = connection_tcp
562026-01-14T01:33:42.685ZINFOslog-rs (bgp): spawning recv loop for 127.0.0.2:42557 connection_id = 37eb7941 connection_local = 127.0.0.1:10179 connection_peer = 127.0.0.2:42557 direction = inbound module = neighbor unit = connection_tcp
572026-01-14T01:33:42.686ZINFOslog-rs (bgp): fsm transition active -> open sent fsm_state = active module = neighbor neighbor = 127.0.0.2 neighbor_name = r2 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
582026-01-14T01:33:42.686ZTRACslog-rs (bgp): recv open msg from 127.0.0.2:42557 (conn_id: 37eb7941) connection = TcpStream { addr: 127.0.0.1:10179, peer: 127.0.0.2:42557, fd: 14 } connection_id = 37eb7941 connection_peer = 127.0.0.2:42557 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_tcp
592026-01-14T01:33:42.686ZDEBGslog-rs (bgp): received fsm event connection = (127.0.0.1:10179, 127.0.0.2:42557) connection_clock = ConnectionClock { conn_id: 37eb7941, 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 = 37eb7941 direction = inbound event = message fsm_state = open sent module = neighbor neighbor = 127.0.0.2 neighbor_name = r2 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
602026-01-14T01:33:42.687ZTRACslog-rs (bgp): recv keepalive msg from 127.0.0.2:42557 (conn_id: 37eb7941) connection = TcpStream { addr: 127.0.0.1:10179, peer: 127.0.0.2:42557, fd: 14 } connection_id = 37eb7941 connection_peer = 127.0.0.2:42557 direction = inbound message = keepalive message_contents = Keepalive module = neighbor unit = connection_tcp
612026-01-14T01:33:42.687ZTRACslog-rs (bgp): sending keepalive connection = (127.0.0.1:10179, 127.0.0.2:42557) connection_clock = ConnectionClock { conn_id: 37eb7941, 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 = 37eb7941 direction = inbound fsm_state = open sent message = keepalive module = neighbor neighbor = 127.0.0.2 neighbor_name = r2 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
622026-01-14T01:33:42.687ZTRACslog-rs (bgp): sending keepalive msg connection = TcpStream { addr: 127.0.0.1:10179, peer: 127.0.0.2:42557, fd: 13 } direction = inbound message = keepalive message_contents = Keepalive module = neighbor unit = connection_tcp
632026-01-14T01:33:42.688ZTRACslog-rs (bgp): sending keepalive msg with header connection = TcpStream { addr: 127.0.0.1:10179, peer: 127.0.0.2:42557, fd: 13 } message = keepalive message_contents = [ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, 0, 13, 4] module = neighbor unit = connection_tcp
642026-01-14T01:33:42.688ZINFOslog-rs (bgp): fsm transition open sent -> open confirm fsm_state = open sent module = neighbor neighbor = 127.0.0.2 neighbor_name = r2 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
652026-01-14T01:33:42.688ZDEBGslog-rs (bgp): received fsm event connection = (127.0.0.1:10179, 127.0.0.2:42557) connection_clock = ConnectionClock { conn_id: 37eb7941, 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 = 37eb7941 direction = inbound event = message fsm_state = open confirm module = neighbor neighbor = 127.0.0.2 neighbor_name = r2 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
662026-01-14T01:33:42.689ZINFOslog-rs (bgp): fsm transition open confirm -> session setup fsm_state = open confirm module = neighbor neighbor = 127.0.0.2 neighbor_name = r2 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
672026-01-14T01:33:42.689ZTRACslog-rs (bgp): sending keepalive connection = (127.0.0.1:10179, 127.0.0.2:42557) connection_clock = ConnectionClock { conn_id: 37eb7941, 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 = 37eb7941 direction = inbound fsm_state = session setup message = keepalive module = neighbor neighbor = 127.0.0.2 neighbor_name = r2 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
682026-01-14T01:33:42.690ZTRACslog-rs (bgp): sending keepalive msg connection = TcpStream { addr: 127.0.0.1:10179, peer: 127.0.0.2:42557, fd: 13 } direction = inbound message = keepalive message_contents = Keepalive module = neighbor unit = connection_tcp
692026-01-14T01:33:42.690ZTRACslog-rs (bgp): sending keepalive msg with header connection = TcpStream { addr: 127.0.0.1:10179, peer: 127.0.0.2:42557, fd: 13 } message = keepalive message_contents = [ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, 0, 13, 4] module = neighbor unit = connection_tcp
702026-01-14T01:33:42.690ZINFOslog-rs (bgp): fsm transition session setup -> established fsm_state = session setup module = neighbor neighbor = 127.0.0.2 neighbor_name = r2 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
712026-01-14T01:33:42.691ZTRACslog-rs (bgp): recv keepalive msg from 127.0.0.2:42557 (conn_id: 37eb7941) connection = TcpStream { addr: 127.0.0.1:10179, peer: 127.0.0.2:42557, fd: 14 } connection_id = 37eb7941 connection_peer = 127.0.0.2:42557 direction = inbound message = keepalive message_contents = Keepalive module = neighbor unit = connection_tcp
722026-01-14T01:33:42.691ZDEBGslog-rs (bgp): received fsm event connection = (127.0.0.1:10179, 127.0.0.2:42557) connection_clock = ConnectionClock { conn_id: 37eb7941, 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 = 37eb7941 direction = inbound event = message fsm_state = established module = neighbor neighbor = 127.0.0.2 neighbor_name = r2 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
732026-01-14T01:33:42.692ZTRACslog-rs (bgp): keepalive received (conn_id: 37eb7941) connection = (127.0.0.1:10179, 127.0.0.2:42557) connection_clock = ConnectionClock { conn_id: 37eb7941, 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 = 37eb7941 direction = inbound fsm_state = established message = keepalive module = neighbor neighbor = 127.0.0.2 neighbor_name = r2 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
742026-01-14T01:33:43.680ZINFOslog-rs (bgp): router (asn: 4200000001, id: 1) received shutdown request, stopping sessions module = router unit = session_runner
752026-01-14T01:33:43.681ZINFOslog-rs (bgp): session runner (peer 127.0.0.2) received shutdown request, setting shutdown flag fsm_state = established module = neighbor neighbor = 127.0.0.2 neighbor_name = r2 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
762026-01-14T01:33:43.681ZINFOslog-rs (bgp): dispatcher received shutdown request, setting shutdown flag listen_address = 127.0.0.1:10179 module = neighbor unit = dispatcher