RFC 5415 CAPWAP Protocol Specification March 2009
called out in the transition descriptions below. For every state
defined, only certain messages are permitted to be sent and received.
The CAPWAP Control message definitions specify the state(s) in which
each message is valid.
Since the WTP only communicates with a single AC, it only has a
single instance of the CAPWAP state machine. The state machine works
differently on the AC since it communicates with many WTPs. The AC
uses the concept of three threads. Note that the term thread used
here does not necessarily imply that implementers must use threads,
but it is one possible way of implementing the AC’s state machine.
Listener Thread: The AC’s Listener thread handles inbound DTLS
session establishment requests, through the DTLSListen command.
Upon creation, the Listener thread starts in the DTLS Setup state.
Once a DTLS session has been validated, which occurs when the
state machine enters the "Authorize" state, the Listener thread
creates a WTP session-specific Service thread and state context.
The state machine transitions in Figure 4 are represented by
numerals. It is necessary for the AC to protect itself against
various attacks that exist with non-authenticated frames. See
Section 12 for more information.
Discovery Thread: The AC’s Discovery thread is responsible for
receiving, and responding to, Discovery Request messages. The
state machine transitions in Figure 4 are represented by numerals.
Note that the Discovery thread does not maintain any per-WTP-
specific context information, and a single state context exists.
It is necessary for the AC to protect itself against various
attacks that exist with non-authenticated frames. See Section 12
for more information.
Service Thread: The AC’s Service thread handles the per-WTP states,
and one such thread exists per-WTP connection. This thread is
created by the Listener thread when the Authorize state is
reached. When created, the Service thread inherits a copy of the
state machine context from the Listener thread. When
communication with the WTP is complete, the Service thread is
terminated and all associated resources are released. The state
machine transitions in Figure 4 are represented by alphabetic and
punctuation characters.
2.3.1. CAPWAP Protocol State Transitions
This section describes the various state transitions, and the events
that cause them. This section does not discuss interactions between
DTLS- and CAPWAP-specific states. Those interactions, and DTLS-
specific states and transitions, are discussed in Section 2.3.2.
Calhoun, et al. Standards Track [Page 17]