Add a new breakout sub-interface type #5519

Closed
opened 2025-12-29 19:28:56 +01:00 by adam · 5 comments
Owner

Originally created by @sleepinggenius2 on GitHub (Oct 15, 2021).

NetBox version

v3.0.7

Feature type

Data model extension

Proposed functionality

The proposal is to add a new class of interface to represent multi-position or breakout connectors. This new sub-interface type would be required to have a parent interface as well as a parent position. The parent must be a physical interface. Once associated, the parent interface may only have children of this type and positions must be unique. This interface type would be virtual, in that it cannot have a cable attached, but it should still be able to be added to a LAG, unlike current virtual interfaces.

Ideally, the Connection column in the interfaces table should follow the same trace as the parent interface, but continue to any breakout sub-interface on the far end with the same position.

Use case

I have seen an increase in the use of optics with MPO connectors to break out 40G interfaces to 4x10G interfaces instead, in order to achieve higher port densities. Issue #5798 was previously opened related to this, but it doesn't look like they had a very fleshed out proposal.

One struggle I ran into recently when trying to implement this given existing functionality was that I has to make an interface virtual in order to assign a parent to it, but I had to make it non-virtual to associate it with a LAG interface. I therefore had to choose which was more important to document and ultimately decided that it was the LAG membership and a human could look at the interface name and hopefully infer the hierarchy, though doing so programmatically would be more difficult.

Database changes

Add a parent_position field to the current Interface model. This should be a short (maybe 16 character) string, preferably with natural ordering, to support both numeric and textual positions.

External dependencies

None

Originally created by @sleepinggenius2 on GitHub (Oct 15, 2021). ### NetBox version v3.0.7 ### Feature type Data model extension ### Proposed functionality The proposal is to add a new class of interface to represent multi-position or breakout connectors. This new sub-interface type would be required to have a parent interface as well as a parent position. The parent must be a physical interface. Once associated, the parent interface may only have children of this type and positions must be unique. This interface type would be virtual, in that it cannot have a cable attached, but it should still be able to be added to a LAG, unlike current virtual interfaces. Ideally, the Connection column in the interfaces table should follow the same trace as the parent interface, but continue to any breakout sub-interface on the far end with the same position. ### Use case I have seen an increase in the use of optics with MPO connectors to break out 40G interfaces to 4x10G interfaces instead, in order to achieve higher port densities. Issue #5798 was previously opened related to this, but it doesn't look like they had a very fleshed out proposal. One struggle I ran into recently when trying to implement this given existing functionality was that I has to make an interface virtual in order to assign a parent to it, but I had to make it non-virtual to associate it with a LAG interface. I therefore had to choose which was more important to document and ultimately decided that it was the LAG membership and a human could look at the interface name and hopefully infer the hierarchy, though doing so programmatically would be more difficult. ### Database changes Add a *parent_position* field to the current *Interface* model. This should be a short (maybe 16 character) string, preferably with natural ordering, to support both numeric and textual positions. ### External dependencies None
adam added the type: featurepending closure labels 2025-12-29 19:28:56 +01:00
adam closed this issue 2025-12-29 19:28:56 +01:00
Author
Owner

@DanSheps commented on GitHub (Oct 29, 2021):

Just to add onto this, I think if we tackle this, it might be wise to tackle duplex fiber connections into a SFP at the same time

@DanSheps commented on GitHub (Oct 29, 2021): Just to add onto this, I think if we tackle this, it might be wise to tackle duplex fiber connections into a SFP at the same time
Author
Owner

@github-actions[bot] commented on GitHub (Dec 29, 2021):

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. NetBox is governed by a small group of core maintainers which means not all opened issues may receive direct feedback. Please see our contributing guide.

@github-actions[bot] commented on GitHub (Dec 29, 2021): This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. NetBox is governed by a small group of core maintainers which means not all opened issues may receive direct feedback. Please see our [contributing guide](https://github.com/netbox-community/netbox/blob/develop/CONTRIBUTING.md).
Author
Owner

@emjemj commented on GitHub (Jan 18, 2022):

We also have this issue with PLR4 (QSFP+ 4x10GE) links.

@emjemj commented on GitHub (Jan 18, 2022): We also have this issue with PLR4 (QSFP+ 4x10GE) links.
Author
Owner

@jeremystretch commented on GitHub (Feb 18, 2022):

Closing for inactivity

@jeremystretch commented on GitHub (Feb 18, 2022): Closing for inactivity
Author
Owner

@salvador-andes commented on GitHub (Apr 20, 2022):

We also have this issue with PLR4 (QSFP+ 4x10GE) links and DAC breakout cables

@salvador-andes commented on GitHub (Apr 20, 2022): We also have this issue with PLR4 (QSFP+ 4x10GE) links and DAC breakout cables
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/netbox#5519