-
Notifications
You must be signed in to change notification settings - Fork 12
Description
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:
- bytes 0-3 bytes are flags and queue pair number which user cannot control
- bytes 4-19 GID which is composed as follows (can be found in IBTA Infiniband Specification):
- 8 bytes subnet prefix - set by the infiniband subnet manager (initial value is 0xfe80000000000000)
- 8 bytes GUID - the element which is user configurable
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.