协议
EEE 802.1X-2004协议:基于端口的网络接入控制协议(port based network access control protocol)。在LAN口对所接入的用户设备进行认证和控制,如果通过认证则端口打开,可以访问局域网中的资源。
状态机设计原理
EAOPOL和EAP之间的关联
以sta侧为例,802.1X(EAPOL)是EAP SUPP的LL层。
其中两层之间交互的变量“eapResp”等释义可参考链接: link章节“SM与LL交互使用到的变量列表”
EAPOL定义5种状态机
peer和Authenticator定义的所有状态机统称:PACP(Port Access Control Protocol)State Machine
sta 使用的5种状态机
1.Port Timers SM:Port超时控制状态机。
2.The Key Receiver SM:处理EAPOL-Key帧相关流程。
3.Supplicant PAE(Port Access Entitiy) SM:维护Port状态。
4.Supplicant BE (Backend) SM:给Authenticator发送EAPOL回复消息。
5.The Supplicant Key Transmit SM:该状态机非必选项,所以WPAS未实现它。
1.Port Timers SM
功能:每一秒触发一次从ONE_SECOND状态进入TICK状态。
EA执行dec函数递减**while等多个变量的值。
状态迁移
变量
2.The Key Receiver SM
功能:EAPOL Key帧处理
状态迁移
变量
函数
processKey函数处理EAPOL Key消息
3.PAE(Port Access Entitiy)SM
功能:维护Port状态
状态迁移
变量
函数
txStart():发送EAPOL-Start消息给Authenticator。
txLogoff():发送EAPOL-Logoff消息给Authenticator。
4.BE (Backend) SM
功能:给Authenticator发送EAPOL回复消息
状态迁移
变量
默认初始值为30
函数
abortSupp:停止认证工作,释放相关的资源。
getSuppResp:获取EAP Response信息,然后用txSuppResp函数发送出去。但WPAS中,该函数没有包括任何有实质意义的内容。
txSuppResp:发送EAPOL-Packet包给Authenticator。
全局变量(Global Varaibles)
5种状态机共同使用的变量