#25332 closed enhancement (fixed)

Change the exit_addresses field to not exclude current OR addresses anymore

Reported by: karsten Owned by: metrics-team
Priority: Medium Milestone: Onionoo 1.13.0
Component: Metrics/Onionoo Version:
Severity: Normal Keywords:
Cc: metrics-team Actual Points:
Parent ID: Points:
Reviewer: iwakeh Sponsor:

Description

There has been some confusion what addresses the "exit_addresses" field in details documents contains.

The specification says: "Array of IPv4 or IPv6 addresses that the relay used to exit to the Internet in the past 24 hours. IPv6 hex characters are all lower-case. Only those addresses are listed that are different from onion-routing addresses. Omitted if array is empty."

However, this specification is at least imprecise with regard to previous OR addresses that the relay has used for exiting in the past 24 hours. Those addresses will not be excluded, because they're not currently used as OR address.

This specification is also impractical, because it does not distinguish between a relay A that exits via its OR address and also another exit address and another relay B that never exits via its OR address and always via another exit address.

Let's stop deduplicating addresses and include all exit addresses found in the past 24 hours, regardless of whether they were used as OR addresses or not. In most cases this will increase redundancy, but in some cases it will add actual information.

The new specification will say something like this: "Array of IPv4 or IPv6 addresses that the relay used to exit to the Internet in the past 24 hours. IPv6 hex characters are all lower-case. Only those addresses are listed that are different from onion-routing addresses. Omitted if array is empty. Changed on $date to include all exit addresses, regardless of whether they are used as onion-routing addresses or not."

Requires a major protocol bump to 6.0.

Child Tickets

Change History (15)

comment:1 Changed 21 months ago by karsten

Milestone: Onionoo 1.11.0

We should make a decision before putting out the next release, in order to announce this major protocol change 1 month in advance. Temporarily assigning to the next milestone.

comment:2 Changed 21 months ago by iwakeh

Who should comment on this for us to know, if the protocol change should be prepared, i.e., set the next-major-version field?

comment:3 Changed 21 months ago by iwakeh

I think this change is an improvement.

comment:4 in reply to:  3 Changed 21 months ago by karsten

Replying to iwakeh:

I think this change is an improvement.

I think so, too. I'd say if nobody speaks up before we put out 1.11.0 in the next day or three, we conclude that it's a good thing and set the next-major-version field accordingly.

comment:5 Changed 21 months ago by karsten

Or, we can simply announce a new major version for in a month from now, and just in case we find out in that month that that's a bad idea, we can just not put out that new major version. The idea of this announcement is to give people a heads-up. If nothing changes, they should be fine anyway.

comment:6 Changed 21 months ago by iwakeh

Milestone: Onionoo 1.11.0Onionoo-2.0.0

changing milestone, as 1.11.0 is out.

comment:7 Changed 21 months ago by karsten

Milestone: Onionoo-2.0.0Onionoo 1.12.0

Heh, same/similar thought. I just created a milestone for 1.12.0, because we might not put out 2.0.0 just for this change. Reassigning.

comment:8 Changed 21 months ago by iwakeh

Thanks! Just noticed when closing the old one.

comment:9 Changed 21 months ago by iwakeh

Reviewer: iwakeh

comment:10 Changed 20 months ago by karsten

Status: newneeds_review

Please review commit 24b7f38 in my task-25332 branch.

(Note to self: don't merge yet, but wait at least until April 14. Also update to protocol version 6.0 as part of merging.)

comment:11 Changed 20 months ago by iwakeh

Status: needs_reviewmerge_ready

Looks fine, all checks and tests pass.

comment:12 Changed 20 months ago by karsten

Sounds good. Thanks for checking! Waiting until mid-April before merging.

comment:13 Changed 20 months ago by iwakeh

Milestone: Onionoo 1.12.0Onionoo 2.0.0

comment:14 Changed 20 months ago by iwakeh

Milestone: Onionoo 2.0.0Onionoo 1.13.0

comment:15 Changed 20 months ago by karsten

Resolution: fixed
Status: merge_readyclosed

Merged! Closing. Thanks!

Note: See TracTickets for help on using tickets.