-
Notifications
You must be signed in to change notification settings - Fork 6
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
peer_type enum #3
Comments
(Moving my comment here from the pull request) Enum makes sense to me. I like public/private, for the same reason (we might set up pni at an ix, RS). I would say RS and PNI-at-IX cases both fall into the peer-to-"entity" case, as opposed to the peer-to-peer case (public BGP sessions, etc). By "entity", I mean internet exchange and the like; any entity that doesn't have its own ASN. I would consider the APIs under this spec as "peer-to-peer" API, so we could leave out those other cases. Let's leave RS out for now, at least. Maybe that could be a third field in the enum (route-server), just in case we support in future? |
I now realize that I wasn't 100% clear in my message and your responses are making me think of a few other things :) RE: Route Servers, I created #4 so we can track that somewhere separate to this. I think this might actually be more of a "session metadata" type question? RE: My mentioning the URI and naming the peer type - I think I was more pointing out that if we want to name the enum I made, on the server side there will probably be a deterministic mapping between a session config that has a URI, and the "peer_type" that we had defined. That makes me wonder if "peer_type" isn't right, because eventually we wind up in a scenario where we have something like |
Oh right, I had confused myself with the peer_type naming but wasn't fast enough to respond before it got merged. After re-reading I agree completely and think it makes things a lot more clear. I am still struggling with how ambiguous public and private are (what does that even mean, still), in the case of PDB the choices are That doesn't cover doing a private vlan over an IX port yet. but I think leaves room for that as a separate choice for v2. |
I see where you're coming from. On my side of the house we generally use public/private to refer to our peering, but I admittedly don't know how universal this is outside of the CDN industry? Wikipedia seems to classify peering links that way, though: https://en.wikipedia.org/wiki/Peering#Physical_interconnections_for_peering IX seems pretty ubiquitous (except for old people and certain companies I can think of that have hardcoded NAP everywhere), but I've really only ever seen "facility" used in a peeringdb context and in my mind, even though I know it means colo in pdb-land, it feels ambiguous. I guess my vote would be public/private or ix/pni (if this is a democracy, here 😂) |
I'm trying to zoom in on location too much, to start with it's going to be Definitely not a democracy if we want it to actually make sense. ;) Just in case it is tho, +1 to public/private. |
Originally posted by @compuzip in #2 (comment)
s/hard/endless fun/
:DAll good points, creating an issue to discuss, although maybe it's better in the shared doc?
This should just be an enum, I don't see a benefit to having it be a URI. The canonical source of truth for the enum is defined in this spec.
I think a PNI by definition isn't over an ixp, even if it's a private vlan. I think we're good no matter what we decide on as long as the docs for each explain clearly the difference.
RS would just be another AS I think? Do we want a boolean for if it's a route server? On the config side I guess it would need to have next-hop-self set.
The text was updated successfully, but these errors were encountered: