For much of its lifetime, AFS has been a basically closed system, using proprietary protocols developed and maintained first at Carnegie Mellon University, then at Transarc Corporation, which eventually became IBM Transarc Labs. Because there was only one implementation and development of others was not particularly encouraged, there has always been limited documentation about the details of the protocols.
There are now multiple independent open-source implementations of the AFS protocols (OpenAFS), Linux kernel afs, and Arla) which are intended to interoperate with each other and with the commercial implementations maintained by IBM and AuriStor. Because of this, there is a need for a set of centrally-maintained lists of the various protocol constants which can be contributed to by the maintainers of any of the existing implementations or any new ones that may come along. This page is an attempt to fill that need.
The majority of "Assigned Numbers" used in the AFS protocol are the procedure numbers in the various RPC services, and the error codes returned by those procedures. There are also a few other important constants, such as the Rx service numbers themselves and various constants used within the Rx protocol.
This site also attempts to track systype names (@sys values) and the pioctl numbers used in traditional UNIX cache manager implementations. While these are not technically protocol constants, it is still desirable to use the same values across sites and implementations, and especially to avoid collisions.