RRCP is protocol for making some specific low-cost dumb ethernet switches act like more expensive managed switches with no or little hardware modifications.
Most managed swiches from hardware point of view consists of configurable switch controller and and microcontoroller, that from one side faces to user with web- or command-line- interface, while second faces to switch controller. Paradox is that while microcontroller and all of it's flash/RAM/etc. makes about a half of the whole switch value, all the hard work is done by switch controller. RRCP is a protocol, enabling any non-specialized processor (PC or embedded linux router for example) to control one or more switch controller over Ethernet link, thus eliminating need in microcontroller built in switch.
However, there is a drawback. Unlike normal managed switches, ordinary web browser or telnet/ssh client will not work to control RRCP-enabled switch. First, controlling PC/router must be within Layer 2 (Ethernet) link from controlled switch. Second - that PC/router must run special software.
OpenRRCP is an effort to create such software as open-source cross-platform toolset.
As a protocol, RRCP uses raw Ethernet frames with 0x8899 ethertype. Packets are requests and responses. Reqests are used to directly read or write switch controller registers. Responces carries read register number and register contents. Writes does not generate any kind of acknowledge. Details are described here
Set of features, that can be enabled via RRCP protocol depends largely on chip type and is discussed on RRCP features page