k8snetworkplumbingwg / multi-net-spec Goto Github PK
View Code? Open in Web Editor NEWMulti-network CRD specification
Multi-network CRD specification
Currently NetworkAttachmentDefinition has only "net-attach-def" as a short-name. This doesn't really make life easier, as we use this CRD kind quite a lotin CLI ("oc get network-attachment-definition", etc.).
Can you please add "nad" as a short-name?
Thanks.
Quoting the Spec for network CRD:
4.1.2.1.4 "mac"
This optional key with value type string requires the plugin handling this network attachment to assign the given MAC address to the pod. This key’s value must contain a valid 6-byte Ethernet MAC address or a valid 20-byte IP-over-InfiniBand Hardware address (as described in RFC4391 section 9.1.1). If the value is invalid, the Network Attachment Selection Annotation shall be invalid and ignored by the implementation.
According to section 9.1.1 of IPoIB (IP over Infiniband) RFC an infiniband hardware address consists of 20 octets in the following format:
As the only element which is user configurable is the 8 byte GUID (Infiniband's version of MAC address) we should reword this section essentially removing the bits related to IP-Over-Infiniband.
It should be noted that it is still possible (and expected) for an IP over Infiniband CNI to return the full 20 octet hardware address under mac
field which will be visible in network-status annotation, hence that part of the network CRD spec should not need changing.
I have created an issue in containernetworking/cni proposing to allow the configuration of the GUID part of the IPoIB hardware address. if and when it gets approved, support for it in multi-net-spec will be dealt with in this issue.
Apparent inconsistency between spec and code:
k8snetworkplumbingwg/network-attachment-definition-client#17
Since the code is out there, perhaps a change to spec would be less disruptive? Duplicating issue here because of this comment.
InfiniBand is using GUID as hardware address instead of mac, supporting GUID in the k8s.v1.cni.cncf.io/networks
structure can play major role at the applications that use InfiniBand.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.