Opened 7 years ago

Closed 7 years ago

#6711 closed enhancement (implemented)

Replace full exit policy with exit policy summary on relay details page

Reported by: karsten Owned by: hellais
Priority: Medium Milestone:
Component: Metrics/Relay Search Version:
Severity: Keywords:
Cc: gsathya Actual Points:
Parent ID: Points:
Reviewer: Sponsor:

Description

Can we replace full exit policies with the much shorter exit policy summaries on Atlas' details page? For example, chaoscomputerclub18's exit policy is 168 lines long and hardly useful for human beings. The summary would be just a few lines long:

accept 22, 43, 53, 79-81, 88, 443, 465, 563, 587, 706, 873, 993, 995, 1194, 1533, 2947, 3386, 3690, 4321, 5031, 5222-5223, 8008, 8080, 8443, 9418, 9420-9422, 11371

The data is already available in Onionoo's details documents in field "exit_policy_summary". So, implementing this change is trivial.

Another reason for the switch is that we'd reduce the size of details documents by 20%.

Is there a good reason to keep full exit policies?

Child Tickets

Change History (11)

comment:1 Changed 7 years ago by karsten

Status: newneeds_information

Hmm, no feedback so far. I quickly implemented and deployed this change. For comparison, here's the version with the exit policy summary, whereas the full exit policy, in raw format, is here. If people don't like it and come up with good reasons why the full exit policy was more useful, we can revert that change.

comment:2 Changed 7 years ago by arma

Well, the full exit policies are the ones that the exit relay actually follows. So we are losing resolution, in the case where addresses (not just ports) are specified.

That said, the 0.2.3 clients can't see addresses in exit policies anymore either.

Whichever you want, I guess.

comment:3 in reply to:  2 Changed 7 years ago by karsten

Replying to arma:

Well, the full exit policies are the ones that the exit relay actually follows. So we are losing resolution, in the case where addresses (not just ports) are specified.

True.

I think the question is more if we're fine giving up some of the resolution if it gives us a better overall picture. I'd imagine that people have a hard time "parsing" the full exit policy of nodes like chaoscomputerclub18, whereas the exit policy summary may answer their question better which connections the node allows in general. (And if they want an exact answer, maybe they should use ExoneraTor, not Atlas.)

That said, the 0.2.3 clients can't see addresses in exit policies anymore either.

Right.

Whichever you want, I guess.

No, you're the user here, not I. If you think the full exit policy is more useful than the summary, maybe we should keep it?

comment:4 Changed 7 years ago by rransom

Perhaps a count of the number of address/netblock exit policy lines omitted (possibly with a link to a full list) would be better.

comment:5 in reply to:  4 ; Changed 7 years ago by karsten

Status: needs_informationnew

Replying to rransom:

Perhaps a count of the number of address/netblock exit policy lines omitted (possibly with a link to a full list) would be better.

Alright, that means we need to keep full exit policy lines in Onionoo's data format.

I just added the full exit policy back to Atlas' details page, right after the exit policy summary. I tried to add a scroll bar to both exit policy frames, but didn't find anything obvious. Anyone here with more web skills?

comment:6 in reply to:  5 Changed 7 years ago by rransom

Replying to karsten:

I just added the full exit policy back to Atlas' details page, right after the exit policy summary. I tried to add a scroll bar to both exit policy frames, but didn't find anything obvious. Anyone here with more web skills?

Can you set the iframe element's height? (There may be a height attribute; there is certainly a CSS, uh, thingie for height.)

If that isn't sufficient, use something like Firebug to look through the available CSS properties(?).

comment:7 Changed 7 years ago by karsten

Cc: gsathya added

I have no idea. In theory, this should be simple, but not for me: http://twitter.github.com/bootstrap/base-css.html#code

Sathya, do you happen to know how to "add the .pre-scrollable class" in order to set max heights and add scroll bars to the two <pre> elements containing the exit policy summary and full exit policy?

comment:8 in reply to:  7 Changed 7 years ago by gsathya

Status: newneeds_review

Replying to karsten:

I have no idea. In theory, this should be simple, but not for me: http://twitter.github.com/bootstrap/base-css.html#code

Sathya, do you happen to know how to "add the .pre-scrollable class" in order to set max heights and add scroll bars to the two <pre> elements containing the exit policy summary and full exit policy?

For some reason, atlas's bootstrap.css doesn't have the ".pre-scrollable" css attributes defined. I've added them in my bug_6671 branch. This works perfectly fine in firefox, but the scrollbars aren't visible in Chrome. It's possibly a bug with bootstrap.

comment:9 Changed 7 years ago by karsten

Status: needs_reviewneeds_information

Looks great! Merged and deployed. Thanks!

Any idea why Atlas didn't have that CSS attribute? Is that because it uses an older bootstrap version? Would upgrading to a newer bootstrap version also solve the Chrome problem?

comment:10 in reply to:  9 Changed 7 years ago by gsathya

Replying to karsten:

Any idea why Atlas didn't have that CSS attribute?

I have no idea. hellais might know, maybe he took out the unnecessary ones to reduce size?

Is that because it uses an older bootstrap version? Would upgrading to a newer bootstrap version also solve the Chrome problem?

Nope, the new ones also use the same .pre-scrollable css definition.

comment:11 Changed 7 years ago by karsten

Resolution: implemented
Status: needs_informationclosed

Okay, looks like there's nothing more to do here. Closing. Thanks!

Note: See TracTickets for help on using tickets.