Opened 5 years ago

Closed 5 years ago

#1187 closed defect (fixed)

Prevent dup RI stores to floodfills after connect

Reported by: zzz Owned by: zzz
Priority: minor Milestone: 0.9.12
Component: router/transport Version: 0.9.10
Keywords: Cc:
Parent Tickets:

Description

When a router publishes its RI to the netdb it connects directly to the closest floodfill if not already connected. But there is an RI exchange at the transport level right after connect. So the publish is a duplicate. But it's the second one that requests a reply so we can't just remove the second one. We would have to peek into the TX queue to see if the first I2NP message is our RI store. The reply info is required because the ff won't flood without it.

So either we have to strip one of the stores at the transport layer, or else add some sort of force-connect-with-reply-info-if-not-connected strategy.

This isn't a big bandwidth issue, maybe only 1KB/sec excess inbound to a floodfill, but still should be fixed. It's always been like this.

Log: HandleFloodfillDatabaseStoreMessageJob?=INFO as a floodfill

Subtickets

Change History (2)

comment:1 Changed 5 years ago by zzz

  • Status changed from new to accepted

testing

comment:2 Changed 5 years ago by zzz

  • Milestone changed from 0.9.13 to 0.9.12
  • Resolution set to fixed
  • Status changed from accepted to closed

In 0.9.11-13 9c381ebe1c065783b39c10ca4d1092e2e2bab29d

Also fixes the opposite problem, that in NTCP, Bob wouldn't send his RI unless he already had Alice's. Which cancels out the bandwidth savings...

Note: See TracTickets for help on using tickets.