用于动态确定网络设备在链路认证协议交换中的角色的系统和方法

文档序号:7948024阅读:325来源:国知局
专利名称:用于动态确定网络设备在链路认证协议交换中的角色的系统和方法
技术领域
本发明涉及联网,更具体而言涉及网络内链路的认证。
背景技术
链路认证协议被用于向网络设备提供对网络的经认证的访问。具体而言,链路认证协议被用于认证耦合到特定链路的每个端口。如果链路认证协议交换失败,则连接到被该交换所认证的链路的端口就可能被禁止经由该链路进行通信。
IEEE 802.1X定义了用于认证以太网链路的协议。在IEEE 802.1X模型中,两个网络设备经由被认证的链路进行通信。当链路被建立起来时,两个网络设备之一充当认证者(authenticator)设备,而两个网络设备中的另一个充当请求者(supplicant)设备。认证者设备和请求者设备的行为由IEEE 802.1X定义。具体而言,认证者设备与认证服务器通信,以将链路认证给请求者设备。在认证者设备和认证服务器未共处一地的情况下,认证者设备需要具有与认证服务器的第3层连通性,以便能够完成IEEE802.1X协议交换。
当主机设备(例如个人计算机)连接到网络时,主机设备将充当请求者设备。主机设备的角色的性质是清楚的(即主机设备不能充当认证者,这是因为主机设备正在请求被许可进入网络,并且只有在主机设备被认证和授权之后才能具有与认证服务器的第3层连通性)。类似地,主机设备被连接到的网络的边缘处的网络设备必然将充当认证者设备(这是因为网络边缘处的网络设备将提供许可控制,并且已经具有到认证服务器的第3层连通性)。从而,在许多情形下,网络设备在802.1X交换中的角色(认证者或请求者)是明确的。
但是,在某些情形下,每个设备的角色并不是立即就显而易见的。例如,IEEE 802.1X协议交换可被用在构成网络的网络节点之间。在这种情形下,给定的协议交换中涉及的任一个或两个设备可能具有与认证服务器的第3层连通性,并且可能向其他设备提供许可控制;但是,具有与服务器的连通性的设备可能不一定是在协议交换中被指定为认证者的设备。从而,在一些情况下,给定网络设备获得与认证服务器的连通性的能力可能取决于该网络设备成功完成与另一网络设备的802.1X协议交换。同时,如果该网络设备已被指定为802.1X协议交换的认证者,则该网络设备完成与另一设备的802.1X协议交换的能力将会取决于该网络设备与认证服务器具有连通性。如果网络设备被指定为协议交换的认证者,但该网络设备实际不具有与认证服务器的连通性,则可能出现僵持情形。
网络可被设置为对所有链路上的所有网络设备普遍施行经认证的访问。理想情况下,当这种网络被建立起来时,成功认证(以及随之而来的与认证服务器的连通性)将开始于离认证服务器最近(即与认证服务器之间由最少量的链路分隔开)的设备,并且向外传播。到离认证服务器最近的请求者设备的链路将被认证,以允许请求者设备随后充当认证者设备。新的认证者设备于是就能够认证其他离认证服务器较远(就链路而言)的设备。
可针对网络中的每条链路手工配置每个设备的角色(认证者或请求者)。但是,管理角色的手工配置是较为困难的。此外,诸如链路翻动(link flap)和网络分区之类的状况可能很容易就改变设备与服务器的相对“距离”(就链路而言),从而可能导致已被手工指定为认证者的设备不再具有到认证服务器的连通性,即使耦合到该设备的一条或多条链路先前已被认证也会如此。如果尚未被许可进入网络的设备(例如由于设备尚未完成成功的链路认证协议交换)尝试成为认证者设备,而已经具有与认证服务器的连通性的设备被强制充当请求者,则可能出现僵持情形。因此,需要用于链路认证协议交换中的动态角色确定机制。

发明内容
公开了用于动态确定网络设备在链路认证协议交换中的角色的方法和系统的各种实施例。在一个实施例中,这种方法包括监视若干个(例如两个)链路认证协议交换。第一网络设备在这些链路认证协议交换中的第一链路认证协议交换中充当认证者,并且在这些链路认证协议交换中的第二链路认证协议交换中充当请求者。这些链路认证协议交换中的一个在完成之前被终止。终止链路认证协议交换包括终止第一网络设备对该链路认证协议交换的参与。链路认证协议交换可以是IEEE 802.1X协议交换。
被监视的这些链路认证协议交换可基本同时被发起。在发起这些链路认证协议交换之前,可能并不确定第一网络设备应当是认证者还是请求者。
该方法可包括检测第一网络设备是否具有与认证服务器的连通性。例如,如果检测到第一网络设备对来自第二网络设备的非ID请求的接收,则可确定第二网络设备而不是第一网络设备具有与认证服务器的连通性。作为响应,其中第一网络设备充当认证者的第一链路认证协议交换可被终止。如果相反检测到第一网络设备对来自认证服务器的消息的接收,则可确定第一网络设备而不是第二网络设备具有与认证服务器的连通性。作为响应,其中第一网络设备充当请求者的第二链路认证协议交换可被终止。
如果检测到第一网络设备和第二网络设备都具有与认证服务器的连通性,则可执行平局决胜功能(tiebreaker function)。平局决胜功能选择链路认证协议交换之一以便终止。
在一个实施例中,一种网络设备包括针对链路认证协议的认证者模块,针对该链路认证协议的请求者模块,以及被耦合到认证者模块和请求者模块的角色确定模块。角色确定模块可被配置为监视认证者模块和请求者模块,并且其操作要被终止的模块所参与的链路认证交换完成之前,终止认证者模块或请求者模块的操作。一种系统可包括一个或多个这种网络设备。
以上只是一个概要,从而必然包含简化、概括和对细节的省略;因此,本领域的技术人员将会意识到,此概要只是说明性的,而绝不想要是限制性的。这里公开的操作可按多种方式实现,并且可以在不脱离本发明及其更宽范围的情况下作出这种变化和修改。本发明的其他方面仅由权利要求限定,并且将在下面给出的非限制性详细描述中显现出来。


通过参考以下描述和附图,可以获取对本发明的更全面理解,附图中类似的标号指示类似的特征。
图1A是根据本发明一个实施例包括正在进行链路认证协议交换的两个网络设备的网络的框图。
图1B是根据本发明另一实施例包括正在进行链路认证协议交换的两个网络设备的另一网络的框图。
图2示出利用IEEE 802.1X作为链路认证协议交换而进行的链路认证协议交换。
图3是示出根据本发明一个实施例每个网络设备内的链路认证协议功能的框图。
图4是根据本发明一个实施例由角色确定模块执行的方法的流程图。
图5是示出根据本发明一个实施例作为平局决胜方式执行的方法的示例的流程图。
虽然本发明易被进行各种修改并且易具有替换形式,但是在附图和详细描述中提供了本发明的特定实施例作为示例。应当理解,附图和详细描述并不想要将本发明限制到所公开的特定形式。相反,本发明将覆盖落在由所附权利要求书所限定的本发明的精神和范围之内的所有修改、等同和替换。
具体实施例方式
网络设备可动态地确定网络设备在利用对等网络设备进行的链路认证协议交换中的角色。最初,网络设备参与两个链路认证协议交换,在一个交换中充当认证者,而在另一个交换中充当请求者。响应于监视两个链路认证协议交换,网络设备选择链路认证协议交换之一并在完成之前终止该链路认证协议交换。未被选择的链路认证协议交换继续进行到完成。
图1A是网络的框图。网络的一部分已经被认证。网络的这部分被示为经认证的网络10。经认证的网络10内的链路已根据链路认证协议被认证。当耦合到一条链路的每个端点的两个接口(例如端口)经由链路认证协议交换被认证后,该链路被认为是已被认证的。
如图所示,网络包括三个网络设备12(1)-12(3)。网络设备12(3)位于经认证的网络10内(即,在本示例中,耦合到网络设备12(2)的所有链路都已被认证)。网络设备12(1)和12(2)通过相应的链路14(1)和14(2)耦合到经认证的网络。网络设备12(1)和12(2)通过链路16耦合。注意,其他实施例可包括不同于本示例中所示数目的网络设备。
网络设备12(1)-12(3)各自可以是包括路由器、网桥、网关、交换机等在内的各种类型的网络设备中的一种。在本示例中,网络设备12(3)是由网络设备12(1)-12(3)使用的链路认证协议(例如可扩展认证协议(EAP),如IEEE 802.1X)的认证服务器。
链路14(1)和14(2)可以是逻辑或物理链路。例如,在一个实施例中,链路14(1)被实现为以太网链路,而链路14(2)被实现为逻辑隧道。如图1A所示,链路14(1)和14(2)都已根据链路认证协议被认证。
链路16也可以是逻辑链路(例如逻辑隧道)或物理链路。链路16的一个端点被耦合到网络设备12(1)中的接口,而链路16的另一个端点被耦合到网络设备12(2)中的接口。链路16尚未被链路认证协议认证。网络设备12(1)和12(2)将进行链路认证协议交换以认证链路16。在链路认证协议交换发起之前,网络设备12(1)和12(2)在链路认证协议交换中的角色是不确定的。换言之,网络设备12(1)和网络设备12(2)都不具有针对链路16上的链路认证协议交换预先配置的角色。
图1B示出图1A所示的网络元件的另一配置,以说明可实现本发明的另一情形。在本示例中,未经认证的链路16仍然耦合两个网络设备12(1)和12(2)。经认证的网络包括两个网络设备12(3)和12(4),这两个网络设备各自可充当认证服务器。网络设备12(1)通过经认证的链路14(1)耦合到经认证的网络10。网络设备12(2)通过经认证的链路14(2)耦合到经认证的网络10。如图1B中的虚线所示,网络设备12(1)可能能够与网络设备12(3)连接,而网络设备12(2)可能能够与网络设备12(4)连接。从而,网络设备12(1)和12(2)中的每一个可能能够连接到相应的认证服务器。在网络设备12(1)和12(2)尝试发起链路16的认证之前,每个网络设备的相应角色(认证者或请求者)对于网络设备12(1)和12(2)之一或两者可能是未知的。
注意,虽然图1A和1B的示例示出了两个网络设备都可能能够充当认证者的情形,但许多其他情形也是可能的。这种情形包括只有一个网络设备能充当认证者的情形,以及两个网络设备都不能充当认证者的情形。
根据一些链路认证协议,接口(例如端口)在未经认证的状态下开始操作。在未经认证的状态下,接口只能发送和接收根据链路认证协议发送的讯息(例如分组或帧)(即在此状态下其他讯息是不允许的)。在未经认证的状态下,接口使用链路认证协议来认证该接口被耦合到的对等接口,获取要用来控制发送到和/或接收自对等接口以及/或者经由链路从认证服务器接收的讯息的策略,以及/或者在接口和对等接口之间建立安全性关联。在认证完成之后,接口在经认证的状态下操作。当接口处于经认证的状态下时,网络设备可使用接口来发送和接收讯息。
在一个实施例中,为使链路认证协议交换成功,请求者网络设备需要被配置以用于链路认证协议交换中的身份和“秘密”。出于链路认证目的,身份唯一地标识请求者网络设备(和/或网络设备内的特定接口)。在请求者网络设备正被认证时秘密被提供给认证服务器以验证请求者网络设备。为了使认证服务器正确地验证请求者,请求者所使用的身份和秘密还需要被配置在认证服务器上。
图2示出了链路认证协议交换的示例。在使用IEEE 802.1X作为链路认证协议的实施例中,每个链路认证协议交换包括若干个操作。首先,认证者22向请求者20发送(1)请求标识信息的分组(这里称之为“ID请求”)。认证者22响应于检测到认证者22和请求者20之间的链路是活动的而发送ID请求。
响应于ID请求,请求者20向认证者22发送(2)包含标识信息的分组(称为“ID响应”)。ID响应可包括在请求者上配置用于链路认证协议的标识信息(例如,这种信息可唯一地标识请求者20和/或请求者20的经由正被认证的链路耦合到认证者22的接口)。认证者22随后将此信息转发(3)到认证服务器24。认证者22可利用AAA(认证、授权和记账)协议(如RADIUS(远程认证拨入用户服务))与认证服务器24通信。
响应于接收到来自认证者22的标识请求者20的信息,认证服务器24向认证者22发送(4)要被发送到请求者20的询问(例如用于令牌口令系统的询问)。该询问例如可包括对与请求者20的身份相关联的秘密的请求。认证者22随后向请求者20发送(5)包括该询问的链路认证协议分组(这里称之为“询问请求”)。
请求者20经由另一链路认证协议分组(这里称之为“询问响应”)向认证者22发送(6)对询问请求的响应。该响应可包括在请求者上配置用于链路认证协议的秘密。认证者22进而又将请求者的响应转发(7)到认证服务器24。如果请求者的响应指示请求者20具有适当的证书,则认证服务器24向认证者22发送(8)成功消息。认证者22使用链路认证协议来将成功消息转发(9)到请求者20。响应于各自接收到成功消息,请求者20和认证者22允许经由其进行链路认证协议交换的链路上的通信。经由该链路的通信可基于接收自认证服务器24的成功消息中包含的信息而受限制。
返回参看图1A和1B,网络设备12(1)和12(2)之一将需要充当认证者以进行链路16的链路认证协议交换。另一个网络设备将充当请求者。充当认证者的网络设备需要具有与认证服务器(例如图1A中的认证服务器12(3)和图1B中的认证服务器12(3)和12(4)之一的连通性)。如上所述,认证者和请求者针对链路16的角色最初是不确定的。
网络设备12(1)和12(2)动态确定哪个网络设备将会是认证者,哪个网络设备将会是请求者。网络设备12(1)和12(2)最初各自担当两个角色,从而网络设备将会经由链路16发起两个链路认证协议交换。在一个链路认证协议交换中,网络设备12(1)将会充当认证者,网络设备12(2)将会充当请求者。在另一个链路认证协议交换中,网络设备12(2)将会担当认证者的角色,而网络设备12(1)将会担当请求者的角色。在一些情形下,两个交换是基本同时被发起的。例如,充当认证者的每个网络设备12(1)和12(2)可在接收来自另一网络设备的任何链路认证协议分组之前向另一网络设备发送分组。
虽然两个链路认证协议交换经由链路16被发起,但是两个链路认证协议交换中只有一个会完成(即成功消息只会在两个链路认证协议交换中的一个之中传输)。另一个链路认证协议交换在两个网络设备上都将被终止。网络设备12(1)和12(2)中的每一个监视两个链路认证协议交换,并且基于监视结果选择要终止的交换。两个网络设备12(1)和12(2)将会选择相同的交换来终止。
在两个链路认证协议交换期间可能出现若干个结局。一个结局出现在以下情况下在对等网络设备接收到来自认证服务器的询问消息之前(在对等网络设备充当认证者的另一认证协议交换中),充当认证者角色的一个网络设备成功与认证服务器通信并向对等网络设备发送询问请求。在该情形下,其中对等网络设备是认证者的链路认证协议交换将在完成之前被终止,并且其中对等网络设备是请求者的链路认证协议交换将继续进行到完成。
第二种结局出现在充当其各自的认证者角色的两个网络设备都成功与认证服务器通信并向彼此发送询问请求时。在该情形下,两个网络设备都将基于对两个网络设备可用的信息执行平局决胜功能。平局决胜功能的一个结果是两个网络设备将会选择相同的链路认证协议交换来终止。例如,如果网络设备在链路认证协议分组中交换媒体访问控制(MAC)地址,则网络设备可比较MAC地址并选择具有最高MAC地址的网络设备作为认证者。其中所选网络设备充当请求者的链路认证协议交换在两个网络设备上都将被终止。
另一个结局出现在两个网络设备都不能与认证服务器通信时。在该情形下,两个链路认证协议交换都不能完成,因为两个网络设备都不能充当认证者。因此,两个链路认证协议交换都失败。如果链路认证协议是IEEE 802.1X,则两个网络设备将会继续尝试发起链路认证协议交换,并且这些交换将会继续失败和重启,直到任一网络设备放弃(例如基于超时变量的值)或与认证服务器的连通性被恢复。
图3示出每个网络设备如何能够包括监视认证者模块和请求者模块的角色确定模块。如图所示,网络设备12(1)(来自图1)包括认证者模块30(1)、请求者模块32(1)和角色确定模块34(1)。类似地,网络设备12(2)(也来自图1)包括认证者模块30(2)、请求者模块32(2)和角色确定模块34(2)。注意,网络设备12(1)和12(2)可针对每个接口包括单独的一组认证者、请求者和角色确定模块(例如,如果网络设备12(1)具有16个接口,则网络设备12(1)可包括三组认证者、请求者和角色确定模块)。
认证者模块30(1)和30(2)被配置为在经由链路的链路认证协议交换中充当认证者。从而,每个认证者模块30(1)和30(2)被配置为检测链路是否活动。响应于检测到链路活动,每个认证模块向对等网络设备发送ID请求(或其他适当的消息,如果除IEEE 802.1X之外的其他链路认证协议被使用话)。认证者模块30(1)和30(2)还被配置为将来自对等网络设备的ID响应和询问响应转发到认证服务器,并将接收自认证服务器的询问请求和成功消息转发到对等网络设备。响应于完成成功的链路认证协议交换(例如响应于接收到来自认证服务器的成功消息),每个认证者模块30(1)和30(2)被配置为将耦合到链路的相应接口的状态从未经认证更新为经认证。
注意,每个认证者模块30(1)和30(2)独立于对等网络设备中的认证者模块地操作。因此,认证者模块30(1)检测到链路活动并发送ID请求的时间可能不同于认证者模块30(2)检测到链路活动并发送ID请求的时间。类似地,请求者模块32(1)和32(2)独立于彼此地操作,角色确定模块34(1)和34(2)也是如此。
请求者模块32(1)和32(2)被配置为充当链路认证协议交换中的请求者操作。请求者模块32(1)和32(2)各自可存储与相应的网络设备和/或相应的接口相关联的身份和秘密信息。例如,身份和秘密可被配置给网络设备,并且该网络设备内包括的每个请求者模块可存储分配的身份和秘密。请求者模块32(1)和32(2)可被配置为响应于接收到相应的ID请求和询问请求向对等网络设备发送ID响应和询问响应。请求者模块32(1)和32(2)还被配置为响应于接收到成功消息将耦合到链路的相应接口的状态从未经认证更新为经认证。
角色确定模块34(1)和34(2)被配置为监视相应的认证者和请求者模块中的活动,并且基于该活动,选择两个链路认证协议交换之一以便终止。角色确定模块34(1)监视认证者模块30(1)和请求者模块32(1)中的活动,而角色确定模块34(2)监视认证者模块30(2)和32(2)中的活动。角色确定模块34(1)和34(2)使用相同的标准来选择要终止的链路认证协议交换,以便两个角色确定模块将选择相同的链路认证协议交换以便终止。角色确定模块34(1)和34(2)被配置为在两个网络设备12(1)和12(2)都具有与认证服务器的连通性的情形下执行平局决胜功能。
认证者模块30(1)可与请求者模块32(2)通信,以经由链路16进行链路认证协议交换(图3中未示出)。类似地,认证者模块30(2)可与请求者模块32(1)通信,以经由链路16进行另一个链路认证协议交换。
当将网络设备12(1)耦合到网络设备12(2)的链路变得活动时,网络设备12(1)将会操作请求者模块32(1)和认证者模块30(1)两者。角色确定模块34(1)将会监视发生在认证者模块30(1)和请求者模块32(1)两者之中的活动。响应于检测到网络设备12(1)具有与认证服务器的连通性并且检测到网络设备12(2)尚未建立与认证服务器的连通性,角色确定模块34(1)终止请求者模块32(1)的动作,从而从效果上而言终止了其中网络设备12(1)充当请求者的链路认证协议交换。或者,响应于检测到网络设备12(1)尚不具有与认证服务器的连通性但网络设备12(2)具有与认证服务器的连通性,角色确定模块34(1)可终止认证者模块30(1)的动作,从而从效果上而言终止了其中网络设备12(1)充当认证者的链路认证协议交换。角色确定模块34(2)可类似地监视认证者模块30(2)和请求者模块32(2),并且基于监视到的活动终止这些模块之一的动作。
角色确定模块34(1)可通过监视认证者模块30(1)中的活动来检测网络设备12(1)是否具有与认证服务器的连通性。例如,如果认证者模块30(1)已接收到来自认证服务器的询问消息,则角色确定模块34(1)可确定网络设备12(1)具有与认证服务器的连通性。如果认证者模块30(1)尚未接收到来自认证服务器的询问消息,则认证者模块30(1)可确定网络设备12(1)尚不具有与认证服务器的连通性。角色确定模块34(2)可类似地通过监视认证者模块30(2)中的活动来检测网络设备12(2)是否具有与认证服务器的连通性。
角色确定模块34(1)还可响应于监视请求者模块32(1)中的活动来确定网络设备12(2)是否具有与认证服务器的连通性。例如,如果请求者模块32(1)尚未接收到来自网络设备12(2)的询问请求,则角色确定模块34(1)可确定网络设备12(2)尚不具有与认证服务器的连通性。如果请求者模块32(1)已接收到来自网络设备12(2)的询问请求,则角色确定模块34(1)可确定网络设备12(2)具有与认证服务器的连通性。在一个实施例中,如果请求者模块32(1)已接收到来自网络设备12(2)的不是ID请求的请求(即非ID请求),则角色确定模块34(1)确定网络设备12(2)具有与认证服务器的连通性。角色确定模块34(2)可类似地通过监视请求者模块32(2)中的活动来检测网络设备12(1)是否具有与认证服务器的连通性。注意,通过监视认证者和请求者模块,角色确定模块能够检测网络设备是否具有与认证服务器的连通性,而无需执行额外的服务器可达性测试。
如果角色确定模块34(1)检测到网络设备12(1)具有与认证服务器的连通性并且网络设备12(2)也具有与认证服务器的连通性,则角色确定模块34(1)将会执行平局决胜功能,以选择网络设备12(1)或12(2)之一作为认证者。如果角色确定模块34(1)在平局决胜期间选择网络设备12(1)作为认证者,则角色确定模块34(1)将会终止请求者模块32(1)的操作。否则,角色确定模块34(1)将会终止认证者模块30(1)的操作。类似地,如果角色确定模块34(2)选择网络设备12(1)作为认证者,则角色确定模块34(2)将会终止认证者模块30(2)的操作。否则,角色确定模块34(2)将会终止请求者模块32(2)的操作。
在上述示例中,由于两个网络设备中的角色确定模块都监视由相同链路认证协议分组交换引起的活动并且基于相同标准进行确定,因此两个网络设备无需交换额外的消息就能得出关于每个网络设备的角色的相同结论。此外,由于未被终止的认证协议交换不受影响,因此不会向认证过程添加额外的延迟。此外,不需要向每个网络设备随机地分配角色,如果随机分配的角色不正确的话则需要重启链路认证协议交换。如果出现平局,则不需要重启链路认证协议交换。
上述示例已描述了通过未经认证的链路耦合的两个网络设备都被配置为动态确定针对链路认证协议交换的角色的情形。注意,被配置为执行动态角色确定的网络设备可被耦合到不执行动态角色确定的网络设备。例如,执行动态角色确定的网络设备可被耦合到已被预先配置为具有某个角色的对等网络设备。在这种情形下,执行动态角色确定的网络设备将会如上所述操作认证者模块和请求者模块两者,而对等网络设备将只充当认证者或请求者。如果对等网络设备被配置为请求者,则网络设备中的请求者模块将永远不会接收到ID请求,从而网络设备中的请求者模块的操作最终将被终止(例如,由于超时或由于角色确定模块检测到认证者模块具有与认证服务器的连通性)。类似地,如果对等网络设备被配置为认证者,则网络设备中的认证者模块将永远不会接收到ID响应,从而认证者模块的操作最终将被终止(例如,由于超时或由于角色确定模块检测到对等网络设备具有与认证服务器的连通性)。最终,认证者或请求者模块中只有一个会保持在网络设备处进行操作,从而允许对等网络设备根据其预先配置的角色而动作。
图4是由角色确定模块执行的方法的流程图。该方法开始于400。角色确定模块是网络设备的一部分,并被配置为确定在经由网络设备的特定接口进行的链路认证协议交换中网络设备的适当角色。如果网络设备在链路认证协议交换中的角色尚未确定(如410处所检测),则角色确定模块发起网络设备上的认证者和请求者角色(例如通过启用认证者模块和请求者模块两者),如420处所示。
如果在430处检测到网络设备尚不具有与认证服务器的连通性,并且如果在440处检测到对等网络设备也尚不具有与认证服务器的连通性,则方法继续检查以便找出网络设备或对等网络设备具有连通性的证据。最终,如果两个设备都不能建立与认证服务器的连通性,则过程可能超时(未示出)。
功能430的执行可包括监视网络设备内的活动。例如,网络设备内的认证者模块可被监视,以查明网络设备是否已接收到来自认证服务器的询问消息和/或网络设备是否准备好将这种询问消息转发到对等网络设备。
功能440的执行可类似地包括监视网络设备内的活动。例如,网络设备的请求者模块可被监视以查明请求者模块是否已接收到来自对等网络设备的询问请求。
如果网络设备尚不具有与认证服务器的连通性(在430处确定),并且对等网络设备具有与认证服务器的连通性(在440处确定),则网络设备的认证者角色被终止,如450处所示。注意,可通过终止网络设备内认证者模块的操作来执行功能450。
如果网络设备具有与认证服务器的连通性(在430处确定),并且对等网络设备尚不具有与认证服务器的连通性(在460处确定),则网络设备的请求者角色被终止,如470处所示。注意,可通过终止网络设备内请求者模块的操作来执行功能470。此外,与功能440一样,可通过监视网络设备内的请求者模块来执行功能460。
如果网络设备具有与认证服务器的连通性(在430处确定),并且对等网络设备也具有与认证服务器的连通性(在460处确定),则执行平局决胜功能,如480处所示。响应于平局决胜的结果,网络设备的请求者角色或认证者角色被终止(未示出)。方法在499处结束。
图5是示出根据本发明一个实施例的平局决胜方法的示例的流程图。注意,在其他实施例中,其他技术可被用来执行平局决胜,并且这种其他技术可使用其他信息(例如取代MAC地址和/或与MAC地址一起)来确定平局决胜的结果。该方法开始于500处。
在本示例中,通过比较网络设备和对等网络设备用于链路认证协议分组中的标识符(例如MAC地址)来执行平局决胜。更具体而言,具有较大的标识符值的网络设备将会被选择为认证者。从而,如果在510处确定对等网络设备的标识符大于网络设备的标识符,则网络设备的认证者角色被终止,如520处所示。如果相反对等网络设备的标识符小于网络设备的标识符,则网络设备的请求者角色被终止,如530处所示。该方法结束于599处。
返回参看图3,注意可执行以实现认证者模块、请求者模块和/或角色确定模块的程序指令可被存储在比如存储器(例如RAM(随机访问存储器))这样的各种计算机可读介质上。在一些实施例中,这种软件被存储在诸如CD(紧致盘)、DVD(数字多功能盘)、硬盘、光盘、磁带设备、软盘之类的计算机可读介质上。为了被执行,软件被从另一计算机可读介质加载到存储器中。指令和/或数据也可经由比如因特网这样的网络或在承载介质上被传送到计算设备以便存储在存储器中。在一些实施例中,计算机可读介质是诸如网络和/或无线链路之类的承载介质,其上承载有诸如电信号、电磁信号或数字信号之类的信号,这些信号传达着实现认证者模块、请求者模块和/或角色确定模块的数据和/或指令。
虽然已经针对本发明的特定实施例描述了本发明,但是各种变化和修改可能已被暗示给本领域的技术人员。希望这种变化和修改落在所附权利要求书的范围之内。
工业应用性本发明的实施例可用于联网领域。
权利要求
1.一种方法,包括监视多个链路认证协议交换,其中第一网络设备是所述多个链路认证协议交换中的第一链路认证协议交换中的认证者,并且是所述多个链路认证协议交换中的第二链路认证协议交换中的请求者;以及在完成所述多个链路认证协议交换中的一个之前终止所述多个链路认证协议交换中的所述一个。
2.如权利要求1所述的方法,其中所述终止步骤包括终止所述第一网络设备对所述多个链路认证协议交换中的一个的参与;并且所述方法还包括检测所述第一网络设备是否具有与认证服务器的连通性,其中所述终止步骤是响应于所述检测步骤而被执行的。
3.如权利要求2所述的方法,其中所述检测步骤包括检测所述第一网络设备对来自第二网络设备的非ID请求的接收,并且所述终止步骤包括终止所述多个链路认证协议交换中的所述第一链路认证协议交换。
4.如权利要求2所述的方法,其中所述检测步骤包括检测所述第一网络设备对来自所述认证服务器的消息的接收,并且所述终止步骤包括终止所述多个链路认证协议交换中的所述第二链路认证协议交换。
5.如权利要求2所述的方法,还包括检测所述第一网络设备和第二网络设备都具有与所述认证服务器的连通性;以及响应于所述检测步骤执行平局决胜功能,其中所述终止步骤是响应于执行所述平局决胜功能而被执行的。
6.如权利要求5所述的方法,其中所述执行所述平局决胜功能的步骤包括将所述第一网络设备的第一标识符与所述第二网络设备的第二标识符相比较。
7.如权利要求2所述的方法,其中所述多个链路认证协议交换是IEEE 802.1X协议交换。
8.一种网络设备,包括针对链路认证协议的认证者模块;针对所述链路认证协议的请求者模块;以及被耦合到所述认证者模块和所述请求者模块的角色确定模块。
9.如权利要求8所述的网络设备,其中所述角色确定模块被配置为监视所述认证者模块和所述请求者模块,以及在完成由所述认证者模块和所述请求者模块之一参与的链路认证交换之前,终止所述认证者模块和所述请求者模块之一的操作。
10.如权利要求9所述的网络设备,其中所述角色确定模块被配置为检测所述网络设备是否具有与认证服务器的连通性。
11.如权利要求10所述的网络设备,其中所述角色确定模块被配置为检测所述请求者模块对非ID请求的接收,并且所述角色确定模块被配置为响应于所述非ID请求终止所述认证者模块的操作。
12.如权利要求10所述的网络设备,其中所述角色确定模块被配置为检测所述认证者模块对来自所述认证服务器的消息的接收,并且所述角色确定模块被配置为响应于所述消息终止所述请求者模块的操作。
13.如权利要求10所述的网络设备,其中所述角色确定模块被配置为检测所述网络设备和第二网络设备是否都具有与所述认证服务器的连通性,以及响应于检测到所述网络设备和所述第二网络设备都具有与所述认证服务器的连通性而执行平局决胜功能,以及响应于所述平局决胜功能的结果终止所述认证者模块和所述请求者模块之一的操作。
14.一种系统,包括通过多条链路耦合的多个网络设备,其中所述多个网络设备中的第一网络设备包括针对链路认证协议的认证者模块;针对所述链路认证协议的请求者模块;以及被耦合到所述认证者模块和所述请求者模块的角色确定模块。
15.如权利要求14所述的系统,其中所述多条链路中的第一链路将所述第一网络设备耦合到所述多个网络设备中的第二网络设备,并且所述第二网络设备包括针对所述链路认证协议的第二认证者模块;针对所述链路认证协议的第二请求者模块;以及被耦合到所述第二认证者模块和所述第二请求者模块的第二角色确定模块。
16.如权利要求15所述的系统,其中所述角色确定模块被配置为监视所述认证者模块和所述请求者模块,以及在完成由所述认证者模块和所述请求者模块之一参与的链路认证交换之前,终止所述认证者模块和所述请求者模块之一的操作。
17.如权利要求16所述的系统,其中所述角色确定模块被配置为检测所述请求者模块对来自所述第二网络设备的非ID请求的接收,并且所述角色确定模块被配置为响应于所述非ID请求终止所述认证者模块的操作。
18.如权利要求16所述的系统,其中所述角色确定模块被配置为检测所述认证者模块对来自认证服务器的消息的接收,并且所述角色确定模块被配置为响应于所述消息终止所述请求者模块的操作。
19.如权利要求16所述的系统,其中所述角色确定模块被配置为检测所述网络设备和所述第二网络设备是否都具有与认证服务器的连通性,以及响应于检测到所述网络设备和所述第二网络设备都具有与所述认证服务器的连通性而执行平局决胜功能,以及响应于所述平局决胜功能的结果终止所述认证者模块和所述请求者模块之一的操作。
20.一种计算机可读介质,包括可执行来实现以下步骤的程序指令监视多个链路认证协议交换,其中第一网络设备是所述多个链路认证协议交换中的第一链路认证协议交换中的认证者,并且是所述多个链路认证协议交换中的第二链路认证协议交换中的请求者;以及在完成所述多个链路认证协议交换中的一个之前终止所述多个链路认证协议交换中的所述一个。
21.如权利要求20所述的计算机可读介质,其中所述终止所述多个链路认证协议交换中的所述一个的步骤包括终止所述第一网络设备对所述多个链路认证协议交换中的一个的参与。
22.如权利要求21所述的计算机可读介质,其中所述程序指令还可执行以实现以下步骤检测所述第一网络设备是否具有与认证服务器的连通性,其中所述多个链路认证协议交换中的所述一个是响应于所述检测步骤而被终止的。
23.如权利要求22所述的计算机可读介质,其中所述检测所述第一网络设备是否具有与认证服务器的连通性的步骤包括检测所述第一网络设备对来自第二网络设备的非ID请求的接收,并且所述终止所述多个链路认证协议交换中的所述一个的步骤包括终止所述多个链路认证协议交换中的所述第一链路认证协议交换。
24.如权利要求22所述的计算机可读介质,其中所述检测所述第一网络设备是否具有与认证服务器的连通性的步骤包括检测所述第一网络设备对来自所述认证服务器的消息的接收,并且所述终止所述多个链路认证协议交换中的所述一个的步骤包括终止所述多个链路认证协议交换中的所述第二链路认证协议交换。
25.如权利要求22所述的计算机可读介质,其中所述程序指令还可执行以实现以下步骤检测所述第一网络设备和第二网络设备都具有与所述认证服务器的连通性;以及响应于检测到所述第一网络设备和所述第二网络设备都具有与所述认证服务器的连通性而执行平局决胜功能,其中所述多个链路认证协议交换中的所述一个是响应于所述执行平局决胜功能的步骤而被终止的。
26.一种系统,包括用于监视多个链路认证协议交换的装置,其中第一网络设备是所述多个链路认证协议交换中的第一链路认证协议交换中的认证者,并且是所述多个链路认证协议交换中的第二链路认证协议交换中的请求者;以及用于在完成所述多个链路认证协议交换中的一个之前终止所述多个链路认证协议交换中的所述一个的装置。
27.如权利要求26所述的系统,其中所述终止所述多个链路认证协议交换中的所述一个包括终止所述第一网络设备对所述多个链路认证协议交换中的一个的参与。
28.如权利要求27所述的系统,还包括用于检测所述第一网络设备是否具有与认证服务器的连通性的装置,其中所述多个链路认证协议交换中的所述一个是响应于所述检测而被终止的。
全文摘要
公开了用于动态确定网络设备在链路认证协议交换中的角色的各种方法和系统。在一个实施例中,这种方法包括监视若干个(例如两个)链路认证协议交换。这些链路认证协议交换可基本同时被发起。第一网络设备在这些链路认证协议交换中的第一链路认证协议交换中充当认证者,并且在这些链路认证协议交换中的第二链路认证协议交换中充当请求者。这些链路认证协议交换中的一个在完成之前被终止。
文档编号H04L29/06GK101015188SQ200580024450
公开日2007年8月8日 申请日期2005年7月29日 优先权日2004年8月10日
发明者虎克·威尔逊 申请人:思科技术公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1