netbox-community / netbox

The premier source of truth powering network automation. Open source under Apache 2. Try NetBox Cloud free: https://netboxlabs.com/free-netbox-cloud/
http://netboxlabs.com/oss/netbox/
Apache License 2.0
15.81k stars 2.54k forks source link

Add PPS (COAX) port type #16999

Closed ryanmerolle closed 1 month ago

ryanmerolle commented 1 month ago

NetBox version

v4.0.7

Feature type

Change to existing functionality

Proposed functionality

Update netbox/dcim/choices.py to include a new Coaxial type called PPS.

Use case

Wikipedia references this page about it http://pos.mgb-tech.com/insightpps/.

Arista and others have devices with PPS interfaces like the 7130 series https://www.arista.com/assets/data/pdf/Datasheets/7135LB-Datasheet.pdf

Database changes

No response

External dependencies

No response

arthanson commented 1 month ago

@ryanmerolle it looks like you have this in your codebase already, so assigning to you.

jeremystretch commented 1 month ago

My understanding is that PPS is a type of clocking signal, not a network interface. Is that incorrect?

ryanmerolle commented 1 month ago

That’s fair, but the only coax connector in netbox was docsis. It’s definitely not that connector type.

Cisco, Arista, and several of the time sync appliance makers all have a coax connector they label as pps. I’m happy to call it coax or any other name.

jeremystretch commented 1 month ago

It's not a network interface at all, so adding it as one would not make sense.

bluikko commented 1 month ago

Isn't this duplicate of #16334 which has more detail about the physical interface?

ryanmerolle commented 1 month ago

Yep but I have a PR ready. I do not see a PR linked for that issue.

bluikko commented 1 month ago

Interesting, very interesting.

Edit: "PPS" is not any kind of standard interface, by the way. See the previously linked issue for actual standardized connector names.

ryanmerolle commented 1 month ago

@bluikko can you explicitly state what port names need to be added in the linked issue so I can update the or? Ie add the follow port names:

bluikko commented 1 month ago

@bluikko can you explicitly state what port names need to be added in the linked issue so I can update the or? Ie add the follow port names:

Sure, here's some data on the physical interfaces:

I do not know if it is better to add these using the acronym or the full name. I assume it's a judgement call based on how interfaces are listed currently in NetBox.

Datasheet example of both from a well-known connector vendor: https://web.archive.org/web/20100331083020/http://www.amphenolrf.com/products/CatalogPages/SMA.pdf

The earlier issue called them "SMA connector types" but I believe that is a bit wrong (nitpicking), the two interfaces are not types of "SMA" but types of "SM" (subminiature).

There is also "SMC" but I do not know how prevalent that is; wiki also lists several other SM versions. I could not find mainstream network devices using SMC while SMA/SMB are common AFAIK.
From what I can tell the PPS interfaces on Juniper, Cisco at least are either SMA or SMB.

pobk commented 1 month ago

The "mostly standard but some manufacturers want to be SPESHUL" standard is SMA for things like GNSS receivers et al. Timing interfaces are a bit of a quirky thing. 1PPS has implementations in RJ-11, RJ-45, SMA, and I've seen older kit using standard N-type or F-type connectors too. It seems to be a coaxial thing...

I believe the ITU or IEEE might have said something on it, at some point, but I'm attempting to stay away from that rabbithole of woe and information overload at the moment.

Also, as I've said elsewhere, just because it's not running IP, doesn't mean it's not a network... PTP and other networks exist.

Specifically, in this case, I think I can personally agree that this should not be an "interface" in the context of netbox but instead a front-port.

SMA is the understood definition of the connector type. If you throw that in an email to me, I will immediately comprehend what level of pain I'm going to suffer that day.

Actually, having spent the morning thinking about this. A front-port implies a passive connection to a rear-port. This is not the case. This should be an interface. It is the external connectvity (interface) to a targetted function within the device. It is no different from an ethernet port, SFP+ cage or a console port. Each of these are external connectivity for a targetted function within the device.

jeremystretch commented 1 month ago

I'm going to close this for two reasons: