Due to a ransomware attack, the wiki was reverted to a July 2022 version. . We apologize for the lack of a more recent valid backup.
Child pages
  • ONF Registry

The ONF Registry is a database of vendor proprietary unique identifiers used for extending the OpenFlow protocol. Members can define their own extension of the OpenFlow protocol, however this require them to use some unique identifier. The specification defines two types of member IDs, Experimenter IDs and OXM classes

Experimenter IDs

The experimenter field is a 32-bit value that uniquely identifies the experimenter. If the most significant byte is zero, the next three bytes are the experimenter's IEEE OUI. If the most significant byte is not zero, it is a value allocated by the Open Networking Foundation. If experimenter does not have (or wish to use) their OUI, they should contact the Open Networking Foundation to obtain a unique experimenter ID.

IEEE OUI Experimenter IDs

Those are the OUI of some of the ONF members used as experimenter IDs

  • 0x00:23:20 - Nicira Networks
  • 0x5c:16:c7 - Big Switch Networks
  • 0xB0:D2:F5 - Vello Systems
  • 0x00:24:81 - HP
  • 0x00:04:EA - HP-Labs
  • 0x74:87:71 - Infoblox Inc
  • 0xA4:23:05 - Open Networking Laboratory
  • 0x00:04:9F  -  Freescale
  • 0x00:15:4D - Netronome
  • 0x00:10:18 - Broadcom
  • 0x00:E0:04 - PMC-Sierra

ONF-Managed Experimenter IDs

Those are the Experimenter IDs which are not OUI.  This space is managed by the ONF.

  • 0x4F:4E:46:00 - ONF Extensions
  • 0xff:00:00:01 - Budapest University of Technology and Economics
  • 0xff:00:00:02 - NoviFlow
  • 0xff:00:00:03 - L3+ Extensions (Vendor Neutral)
  • oxff:00:00:04 - L4-L7 Extensions
  • 0xff:00:00:05 - Wireless and Mobility Extensions
  • 0xff:00:00:06 - Forwarding Abstractions Extensions
  • 0xff:00:00:07 - Open Transport Extensions
  • 0xff:00:00:08 - Network Benchmarking Lab, National Chiao Tung University
  • 0xff:00:00:09 - Mobile Packet Core Extensions
  • 0xff:00:00:0A - MPLS-TP OpenFlow Extensions for SPTN
  • 0x0f:00:00:0A - Ara Institute of Canterbury Christchurch
  • 0xff:00:00:0B - VOLTHA extensions for MPLS

OXM Classes

The match types are structured using OXM match classes. The OpenFlow specification distinguish two types of OXM match classes, ONF member classes and ONF reserved classes, diferentiated by their high order bit. Classes with the high order bit set to 1 are ONF reserved classes, they are used for the OpenFlow specifiation itself. Classes with the high order bit set to zero are ONF member classes, they are allocated by the ONF on an as needed basis, they uniquely identify an ONF member and can be used arbitrarily by that member. Support for ONF member classes is optional.

Those are the currently defined OXM classes

  • 0x0000 - NXM compatibility - Nicira Networks
  • 0x0001 - NXM compatibility - Nicira Networks
  • 0x0003 - Big Switch Networks
  • 0x0004 - HP
  • 0x0005 - Freescale
  • 0x0006 - Netronome
  • 0x0007 - Open Networking Lab (ON.Lab)
  • 0x0008 - Infoblox
  • 0x0009 - Broadcom
  • 0x000A - PMC-Sierra

  • 0x8000 - Basic class for OpenFlow
  • 0x8001 - Packet registers (pipeline fields)
  • 0x8002 - Multiple VLAN Extension
  • 0x8003 - GPRS Tunneling Protocol (GTP)
  • 0x8004 - Network Service Header (NSH)
  • 0x8005 - TLV value field mapping (for NSH and other uses, experimental for now)

  • 0xFFFF - Experimenter class


"onf" has been added to the Formal URN Namespace registry:  https://www.iana.org/assignments/urn-namespaces

The ONF process for managing this URN can be found here: https://wiki.opennetworking.org/download/attachments/325386251/ONF%20URN%20Management.pdf

To request branches, please email  marketing@opennetworking.org

  • No labels