1. Introduction
1. Introduction
点对点协议(PPP)[RFC1661] 提供了可扩展的链路控制协议(LCP),用于协商链路层选项,包括认证协议。通过 LCP 选项协商,可以在认证阶段之前确定要使用的认证协议(例如:密码认证协议(PAP)[RFC1661] 或挑战握手认证协议(CHAP)[RFC1994])。
PPP 认证协议(例如 CHAP)适合在只有一个认证机制可用的情况下使用。这种机制在拨号 ISP 部署中得到广泛应用,其中仅使用了一种机制(CHAP),但也可能存在多个机制可用的情况,例如无线网络,其中 EAP 提供了更大的灵活性。
然而,在某些部署中,认证阶段之前无法得知可用的认证机制。一种可能是认证需要由后端安全服务器(例如 RADIUS [RFC2865])执行,而网络访问服务器(NAS)本身并不实现任何特定机制。另一种可能是,在认证阶段之前无法确定使用何种认证方法,从而使认证者能够先请求更多信息,然后再确定适合的认证机制。
可扩展认证协议(EAP)[RFC2284] 支持链路层(例如 PPP [RFC1661]、IEEE 802 有线网络 [IEEE-802.1X] 和 IEEE 802.11 无线局域网 [IEEE-802.11])之上的认证,并且可以通过后端认证服务器进行"透传"操作。
1.1. 设计目标
设计 EAP 的目标包括以下方面:
[1] 通用性。认证机制应独立于所使用的链路层,并且可以跨多种链路层使用。
[2] 可扩展性。应可以定义新的认证机制,而不必修改现有链路层实现。
[3] 灵活性。在认证阶段开始之前,无需预先确定所使用的认证机制。这使认证者能够在确定要使用的认证机制之前请求身份信息。
[4] 适应性。支持多种链路层之上的操作,包括 PPP、IEEE 802 有线和 IEEE 802.11 无线局域网。
1.2. 术语
本文档使用以下术语:
认证者(Authenticator) 在认证交换中控制端口(如 IEEE 802.1X [IEEE-802.1X] 中所定义)或通道(如 PPP [RFC1661] 中所定义)的端点的实体。认证者通过强制实施认证来尝试验证对端(peer)的身份。
后端认证服务器(Backend Authentication Server) 与认证者通信的实体,代表认证者执行或支持认证计算。当认证者为"透传"认证者时,后端认证服务器实际上执行认证方法,而认证者只是转发认证交换。
对端(Peer) 在认证交换中,被认证者强制进行认证的实体。
EAP 方法(EAP Method) 一种实现 EAP 认证算法的认证机制。在 EAP 中,认证方法是按类型协商的,详见第 5 节。
EAP 对端层(EAP Peer Layer) EAP 协议的一部分,在 EAP 对端(peer)上实现,负责将与 EAP 方法相关的 EAP 包发送到 EAP 方法层,并将 EAP 方法响应发送回 EAP 层。
EAP 认证者层(EAP Authenticator Layer) EAP 协议的一部分,在 EAP 认证者上实现,负责将与 EAP 方法相关的 EAP 包发送到 EAP 方法层,并将 EAP 方法响应发送回 EAP 层。
EAP 方法层(EAP Method Layer) 实现认证算法并经由 EAP 对端和认证者层收发 EAP 消息的层。
EAP 层(EAP Layer) EAP 协议的一部分,负责收发 EAP 包、实现重复检测和重传,以及将 EAP 消息投递给 EAP 对端和认证者层。
下层(Lower Layer) 负责在对端和认证者之间传输和接收 EAP 帧的层。EAP 已在多种下层上运行,包括 PPP、IEEE 802 有线局域网、IEEE 802.11 无线局域网、UDP(L2TP [RFC2661] 和 IKEv2 [IKEv2])和 TCP [PIC]。
透传认证者(Pass-Through Authenticator) 将来自对端的 EAP 包转发给后端认证服务器,并将来自后端认证服务器的 EAP 包转发给对端的认证者。
1.3. 适用性
EAP 适用于在链路层(例如 PPP 或 IEEE 802)上提供认证,也可在更高层协议(如 UDP、TCP 或 RADIUS)中隧道传输 EAP 时用于提供网络层或应用层认证。
EAP 的设计目标是为链路层网络访问认证提供一个通用框架。它不适合用于通用认证框架,例如用于应用层认证的 SASL [SASL],在这些场景中可能需要支持额外的功能(如协商、安全层等)。
EAP 也不适合用于在链路建立之前提供认证,因为它依赖于下层提供的排序保证,并且通常需要与对端的先前关联(例如 PPP 链路或 IEEE 802 端口)来确定身份。
由于 EAP 是一个"锁步"(lock step)协议,因此在处理分片和重组时效率较低。因此,如果下层支持分片和重组(例如 EAP 通过 IP 传输时),通常更希望分片和重组发生在下层而不是 EAP 中。