# Patent

## Title
Methods, systems, and computer readable media for providing access network signaling protocol interworking for user authentication

## Abstract

A method for access network signaling protocol interworking for user authentication includes receiving, from a node in an access network, a message formatted according to a signaling protocol of the access network and containing an authentication payload formatted according to an authentication protocol. The method further includes, in response to receiving the message, formulating a message formatted according to a signaling protocol of a cellular network, the message including the authentication payload formatted according to the authentication protocol. The method further includes forwarding the message formatted according to the signaling protocol of the cellular network to a node in the cellular network that implements the authentication protocol, the message including the authentication payload formatted according to the authentication protocol.

## Background
TECHNICAL FIELD
The subject matter described herein relates to seamlessly authenticating users of non-3GPP access networks, either trusted or untrusted, using an authentication, authorization, and account (AAA) server, such as a 3GPP AAA server. More particularly, the subject matter described herein relates to methods, systems, and computer readable media for providing access network signaling protocol interworking for user authentication.
BACKGROUND
When a user seeks to connect to a non-3GPP access network, the user (e.g. a mobile device) may need to be authenticated with the 3GPP core network to access services, such as VoIP calling, that require core network elements. In one example, the access network may be a trusted or untrusted Wi-Fi network from the perspective of the core network, which may affect some of the parameters used for authentication.
One example of an authentication protocol that could be used to authenticate access network users to the core network is extensible authentication protocol (EAP). For example, EAP authentication can be used between the access network (e.g. a Wi-Fi access gateway (WAG)) and an AAA server in the core network if the signaling protocol used by the access and core networks to carry the authentication information is the same. However, access networks often use different signaling protocols, such as RADIUS, to carry authentication information than protocols, such as Diameter, used by AAA servers. In light of the different protocols and network nodes involved, there exists a need for seamlessly authenticating Wi-Fi and other non-3GPP access network users to cellular networks that use a different signaling protocol to carry authentication information.
SUMMARY
The subject matter described herein includes methods, systems, and computer readable media for access network protocol interworking for user authentication. A method for access network signaling protocol interworking for user authentication includes receiving, from a node in an access network, a message formatted according to a signaling protocol of the access network and containing an authentication payload formatted according to an authentication protocol. The method further includes, in response to receiving the message, formulating a message formatted according to a signaling protocol of a cellular network, the message including the authentication payload formatted according to the authentication protocol. The method further includes forwarding the message formatted according to the signaling protocol of the cellular network to a node in the cellular network that implements the authentication protocol, the message including the authentication payload formatted according to the authentication protocol.
The subject matter described herein for signaling protocol interworking for user authentication may perform the signaling protocol interworking when the authentication protocol is implemented by a physical SIM card, a software implemented SIM card, or other hardware, software module, or firmware module in a user device implements an authentication protocol. Thus, user authentication as described herein is intended to each of the aforementioned implementations.
The subject matter described herein can be implemented in software in combination with hardware and/or firmware. For example, the subject matter described herein can be implemented in software executed by a processor. In one exemplary implementation, the subject matter described herein can be implemented using a non-transitory computer readable medium having stored thereon computer executable instructions that when executed by the processor of a computer control the computer to perform steps. Exemplary computer readable media suitable for implementing the subject matter described herein include non-transitory computer-readable media, such as disk memory devices, chip memory devices, programmable logic devices, and application specific integrated circuits. In addition, a computer readable medium that implements the subject matter described herein may be located on a single device or computing platform or may be distributed across multiple devices or computing platforms.



BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is a network diagram illustrating a Diameter signaling router (DSR) including an interworking function (IWF) for access network signaling protocol interworking for user authentication according to an embodiment of the subject matter described herein;
FIG. 2 is network diagram illustrating a DSR with a RADIUS-Diameter IWF for RADIUS-Diameter interworking according to an embodiment of the subject matter described herein;
FIG. 3 is a block diagram illustrating exemplary components of a DSR for access network signaling protocol interworking for user authentication according to an embodiment of the subject matter described herein;
FIG. 4 is a message flow diagram illustrating exemplary message exchanges for RADIUS-Diameter interworking for user authentication according to an embodiment of the subject matter described herein;
FIG. 5 is a message flow diagram illustrating exemplary message exchanges for Diameter-RADIUS interworking for user authentication according to an embodiment of the subject matter described herein;
FIG. 6 flow chart illustrating exemplary steps for access network signaling protocol interworking for user authentication according to an embodiment of the subject matter described herein; and
FIG. 7 is a block diagram of a DSR implementing access network signaling protocol interworking for user authentication according to an embodiment of the subject matter described herein.



DETAILED DESCRIPTION
According to the subject matter described herein authentication may be performed automatically where the user is authenticated to both the access network and a cellular network that allows the user to access cellular network services while connected to a trusted or untrusted access network. For example, authentication may be initiated by the SIM of the user device according to the extensible authentication protocol (EAP). The base extensible authentication protocol is described in IETF RFC 3748, Extensible Authentication Protocol (EAP), Jun. 2004. RADIUS support for EAP is described in IETF RFC 3579, RADIUS (Remote Authentication Dial In User Service) Support for Extensible Authentication Protocol (EAP), Sep. 2003. EAP methods for third generation authentication are found in IETF RFC 4187, Extensible Authentication Protocol Method for 3rd Generation Authentication and Key Agreement (EAP-AKA), Jan. 2006 and IETF RFC 5488, Extensible Authentication Protocol Method for 3rdGeneration Authentication and Key Agreement (EAP-AKA'), May 2009. The use of EAP for SIM based authentication is described in IETF RFC 4186, Extensible Authentication Protocol Method for Global System for Mobile Communications (GSM) Subscriber Identity Modules (EAP-SIM), Jan. 2006. The disclosure of each of these RFCs is incorporated herein by reference in its entirety.
EAP payloads must be communicated between the client in the access network, such as a Wi-Fi access gateway, and an AAA server to authenticate users who connect to an access network to the cellular network. The EAP SIM protocol RFC specifies RADIUS as the protocol for communicating EAP payloads between nodes in the access network. However, cellular networks may utilize Diameter for communicating with the AAA server. In other access networks, Diameter may be used for authentication, while the cellular network may use RADIUS for authentication. Because RADIUS and Diameter are different protocols, interworking is required to authenticate users who connect to an access network that uses one protocol to communicate authentication information with a cellular network that uses a different protocol to communicate authentication information.
FIG. 1 is a network diagram illustrating a DSR including an IWF for signaling protocol interworking for authentication between an access network that uses RADIUS and a cellular network that uses Diameter to communicate with an AAA server. Referring to FIG. 1, when a user device connects to an access network via a RADIUS client 100, RADIUS client 100 may communicate RADIUS messages carrying authentication payloads to DSR 102. In one example, RADIUS client 100 may be a Wi-Fi access gateway (WAG). DSR 102 may include an interworking function that converts between the RADIUS protocol and a Diameter protocol to communicate the authentication payloads to an AAA server 104. The Diameter protocol used on the interface between DSR 102 and AAA server 104 may be a Diameter SWa protocol or a Diameter STa protocol. The Diameter STa protocol is used when the access network is trusted. The Diameter SWa protocol is used when the access network is untrusted.
FIG. 2 is a network diagram illustrating an example of RADIUS-Diameter interworking for authentication. In FIG. 2, DSR 102 includes a RADIUS-Diameter IWF 200 that performs the signaling protocol interworking between RADIUS authentication messages and Diameter SWa/STa authentication messages. In the illustrated example, client 100 is a WLAN access gateway (AG). Such a gateway may be used by a Wi-Fi access network as an authentication gateway for user devices that attach to the access network. Because client 100 uses RADIUS and AAA server 104 uses Diameter SWa or STa, The RADIUS-Diameter IWF of DSR 102 performs the interworking required for seamless authentication between the RADIUS and Diameter networks.
As stated above, Diameter SWa is the protocol used between an untrusted non-3GPP IP access network and a 3GPP AAA server or proxy. Diameter STa is used between a trusted non-3GPP IP access network or proxy and a 3GPP access network or proxy. SWa and STA share the same Diameter STa application ID. The decision as to whether the non-3GPP access is trusted or untrusted is made by the 3GPP AAA server during the access and authorization procedure and communicated to the non-3GPP access network.
Because DSR 102 interfaces with both RADIUS and Diameter networks, DSR 102 includes internal components that perform the operations for Diameter-RADIUS protocol interworking. FIG. 3 is a block diagram illustrating exemplary components of DSR 102 that perform RADIUS to Diameter protocol interworking. Referring to FIG. 3, DSR 102 includes a RADIUS connection layer (RCL) 300 that encapsulates ingress RADIUS messages in Diameter messages for processing by internal Diameter components of DSR 102, such as Diameter routing layer (DRL) 302, which routes Diameter messages based on Diameter layer information in the messages. In an alternate implementation, RCL 300 may be omitted, and DSR 102 may also include a RADIUS routing layer that routes RADIUS messages based on RADIUS level information in the messages.
RCL 300 includes a Diameter encapsulation/de-encapsulation module 304 for performing the encapsulation and de-encapsulation of RADIUS messages. For example, Diameter encapsulation/de-encapsulation module 304 may encapsulate ingress RADIUS messages in Diameter messages as described above. Diameter encapsulation/de-encapsulation module 304 may remove egress RADIUS messages from their encapsulating Diameter messages before forwarding the RADIUS messages over a RADIUS network. RCL 300 may also include a RADIUS/UDP message handler 306 that removes ingress RADIUS messages from user datagram protocol (UDP) datagrams and encapsulates egress RADIUS messages in UDP datagrams.
A mediation function implemented in DRL 302 triggers a RADIUS to Diameter interworking for authentication (RD-IWF) function 310 for formulating RADIUS and Diameter request/response messages. If the ingress protocol is RADIUS and the egress protocol is Diameter, interworking function 310 may formulate the proper Diameter request/response message to carry the authentication payload obtained from the received RADIUS message to the Diameter network. If the ingress protocol is Diameter and the egress protocol is RADIUS, interworking function 310 may formulate the proper RADIUS message to carry the authentication payload obtained from the received Diameter message to the RADIUS network. Interworking function 310 may also generate error messages towards the RADIUS network. DRL 302 or DCL 310 may generate error messages towards the Diameter network.
In one exemplary implementation, interworking function 310 may be implemented using scripts such that modifications in mapping of parameters between the signaling protocol of the access network and that of the cellular network can be changed without code modification. If, for example, a new protocol parameter mapping needs to be added, the user can simply create a script that implements the new mapping and interworking function 310 will execute the script to perform the required mapping.
DRL 302 routes RADIUS-directed messages received from interworking function 310, and RCL 300 de-encapsulates the RADIUS-directed messages and sends the messages to RADIUS client 100. For Diameter-directed messages received from interworking function 310, DRL 302 routes the messages to AAA server 104. A Diameter connection layer (DCL) 314 maintains Diameter connections with external nodes, such as AAA server 104. In FIG. 3, arrow 316 illustrates the message flow path for inbound RADIUS messages, arrow 318 illustrates the message flow path for outbound Diameter messages, arrow 320 illustrates the message flow path for inbound Diameter messages, and arrow 322 illustrates the message flow path for outbound RADIUS messages. An exemplary hardware architecture for DSR 102 will be described in detail below.
One type of signaling protocol interworking that may be performed by DSR 102 is illustrated in FIG. 4. More particularly, FIG. 4 is a message flow diagram illustrating RADIUS-Diameter interworking when client 100 is a broadband network gateway (BNG). The messages in FIG. 4 may include AVPs or parameters in addition to those shown in FIG. 4. Referring to FIG. 4, when a user device attaches to an access network that supports automatic authentication as described herein, the user device sends authentication credentials from its SIM to BNG 100. The user device may be a mobile device, such as a mobile handset, a tablet computer, or a laptop computer. Alternatively, the user device may be a non-mobile computer, such as a desktop personal computer. In response to receiving the authentication credentials, BNG 100 sends a RADIUS access request message to DSR 102. The RADIUS access request message includes the user name of the user seeking authentication, an EAP message, a calling station ID, and a NAS port type. When DSR 102 receives the RADIUS access request message, RCL 300 encapsulates the RADIUS access request message in a Diameter EAP request (DER) message. The DER message includes the application ID STa, an origin host parameter that identifies the BNG as the origin host, an origin realm parameter that identifies the BNG realm as the origin realm, a destination realm parameter that is derived from the username and that corresponds to the realm of AAA server 104, a session ID parameter equal to zero, and a proprietary AVP that identifies the DER message as carrying RADIUS content.
In response to receiving the RADIUS access request message, DRL 302 triggers RD-IWF 310 to perform RADIUS-Diameter interworking. For the received RADIUS access request message, such interworking includes formulating a DER message and mapping parameters from the RADIUS message to the DER message. Accordingly, RD-IWF 110 formulates message 3, which is a DER message. The DER message includes a session ID parameter generated by RD-IWF 310, an authentication request type parameter specifying authorize_authenticate, the user name, the EAP payload, the calling station ID, a remote access type (RAT)-type derived from the NAS port type, and an access network (AN) ID derived from the NAS port type. Once RD-IWF 310 formulates the DER message, RD-IWF passes the message to DRL 302, which routes the DER message to AAA server 104.
Upon receiving the DER message, AAA server 104 performs a lookup in its subscriber database using user ID information extracted from the EAP payload. In this example, it is assumed that AAA server 104 locates a record for the subscriber and obtains EAP access challenge information from the record. Accordingly, AAA server 104 formulates message 4, which is a Diameter EAP answer (DEA) message. The DEA message identifies AAA server 104 as the origin host. The origin realm parameter is set to the realm of AAA server 104. The session ID parameter mirrors the session ID received in the DER message (message 3). The user name is set to the user name value received in the DER message. The EAP payload contains the authentication challenge information. The result code in this example indicates that an authentication record was successfully located. If an authentication record did not exist for the subscriber, the result code would indicate an authentication error or subscriber not found.
DSR 102 receives the DEA message. DRL 302 triggers RD-IWF 310 to perform Diameter to RADIUS mediation for the received DEA message. RD-IWF 310 determines based on the message type and the message destination that the egress protocol is RADIUS and sends the message to RCL 300. The message sent to RCL 300 may be the received DEA message with an added parameter identifying the DEA message as carrying RADIUS content. RCL 300 receives the DEA message and formulates message 6, which is a RADIUS access challenge message. The RADIUS access challenge message includes the user name, the EAP message from AAA server 104, the session ID for the authentication session assigned by RD-IWF 310. The DEA message also includes an origin host parameter identifying the origin host as AAA server 104. RCL 300 forwards the access challenge message to BNG 100.
Upon receiving the RADIUS access challenge message, BNG 100 forwards the authentication challenge information to the user device seeking authentication. The user device provides the challenge response information to BNG 100. BNG 100 formulates and sends message 7, which is a RADIUS access request message, to RCL 300. The access request message contains the same state as the access challenge message and the other attributes specified in message 1. The EAP payload in the access request message may carry the access challenge information.
Upon receiving the access request message, DSR 102 provides the message to RCL 300, which encapsulates the access request message in message 8, which is a Diameter DER message with the proprietary parameter identifying the message as containing RADIUS content. Mediation function 308 triggers RD-IWF 310 to process the DER message. RD-IWF 310 formulates message 9, which is a Diameter DER message. The Diameter DER message includes a destination host parameter obtained from a state AVP parameter, which the DSR sends to BNG 100 and BNG 100 echoes back. In this example, the destination host parameter would identify AAA server 104 as the destination host for the DER message. The session ID is the DER message is set to the session ID for the authentication session. The DER message includes the EAP payload, including the challenge response information from the user device. The other AVPs in the DER message may be the same as those in message 3. RD-IWF 310 may forward the DEA message to DRL 302, which routes the DER message (message 10) to AAA server 104.
Upon receiving the DER message, AAA server 104 extracts the EAP payload from the message, determines whether the authentication response information in the EAP payload matches the expected response, and determines an authentication result (i.e., successful or unsuccessful authentication). In this example, it is assumed that the authentication is successful. Accordingly, AAA server 104 formulates message 10, which is a DEA message, including a result code indicating successful authentication. The DEA message may also include an EAP payload and other parameters. AAA server 104 forwards the DEA message to DSR 102.
Upon receiving the DEA message, DRL 302 triggers RD-IWF 310 to perform a full translation of the DEA message. RD-IWF determines that the message is destined to a RADIUS destination, so RD-IWF 310 forwards the DEA message to RCL 300 for transmission of the corresponding RADIUS message. The DEA message may include a parameter indicating that the message carries RADIUS content. RCL 300 receives the DEA message, formulates a RADIUS access accept message including the EAP payload from the DEA message and forwards the access accept message to BNG 100. BNG 100 then informs the user device that authentication was successful. Thus, using the steps illustrated in FIG. 4, a user device can be seamlessly authenticated to a core network that uses Diameter.
Table 1 shown below illustrates exemplary parameter mapping between a RADIUS access request message and a Diameter DER message that may be performed by RD-IWF 310.







TABLE 1







RADIUS Access Request to Diameter DER Parameter Mappings











Diameter AVP
Value
SWa
STa
Notes





Destination-
Blank if State not present in
O
O
Needed in non-


Host
Access-Request. Taken from


initial Access-



value of State if present in


Request



Access-Request.


messages in






order to ensure






they are routed






to same AAA






server.


Session-ID
Generated by DSR if State not
M
M
Must be same



present in Access-Request.


value for the



Taken from value of State if


life of the



present in Access-Request.


authentication






session.


Auth-
STa
M
M
Used by both


Application-



STa and SWa.


ID


Auth-
AUTHORIZE_AUTHENTICATE
M
M


Request-


Type


EAP-
RADIUS EAP-Message
M
M


Payload
attribute


User-Name
RADIUS User-Name attribute
M
M


Calling-
RADIUS Calling-Station-ID
M
M


Station-ID


RAT-Type
RADIUS NAS-Port-Type
C
M


ANID
Mapped from RADIUS NAS-
O
M
Included if



Port-Type


access net






selects EAP-






AKA′






authentication






(most likely).









In Table 1, values for Diameter AVPs formulated based on a received RADIUS access request message are illustrated. In the Table “O” stands for optional and “M” stands for mandatory.
Table 2 shown below illustrates exemplary values for RADIUS attributes that may be populated from a received Diameter message.







TABLE 2







Diameter DER AVPs for RADIUS Access


Challenge Accept or Reject Message









RADIUS attribute
Value
Notes





User-Name
Diameter User-Name




AVP


EAP-Message
EAP-Payload


State
Diameter Session-



ID + Origin-Host (of



AAA server)


Message-
Added if configured by
RFC 3579 says this is


Authenticator
user
mandatory in RADIUS




message for EAP









In FIG. 3, DSR 102 performs signaling protocol interworking when the access network protocol is RADIUS and the cellular or core network protocol is Diameter. DSR 102 may also perform access network protocol interworking for authentication when the access network protocol is Diameter and a core network protocol is RADIUS. FIG. 5 illustrates such an example. Referring to FIG. 5, a wireless access gateway may initiate authentication with an AAA server when a user device connects to the access network that supports automatic authentication as described herein. Accordingly, wireless access gateway 100 formulates message 1 which is a DER message. The DER message includes the user name, an EAP payload, the calling station ID, an AA type parameter set to authentication only, and a session identifier. It should be noted that the messages illustrated in FIG. 5 may include other AVPs or parameters in addition to those illustrated. WAG 100 sends the DER message to DSR 102.
DSR 102 receives the DER message and, because the cellular network protocol is RADIUS, formulates message 2, which is a RADIUS access request message. The RADIUS access request message includes the user name, the EAP payload from the DER message, and the calling station ID. DSR 102 forwards the access request message to AAA server 104.
AAA server 104 receives the access request message and uses the calling station ID to perform a lookup in its subscriber database. In this example, it is assumed that AAA server 104 locates a record corresponding to the calling station. Accordingly, AAA server 104 formulates message 3, which is a RADIUS access challenge message. The access challenge message includes the user name, an EAP payload, and a session identifier. The EAP payload may include access challenge information. AAA server 104 sends the access challenge message to DSR 102.
DSR 102 receives the RADIUS access challenge message, determines that the outbound message should be a Diameter message, and formulates message 4, which is a Diameter DEA message. The DEA message includes the user name, an EAP payload including the access challenge information, the session identifier, and a result code that indicates whether the authentication lookup was successful. DSR 102 forwards the DEA message to WAG 100.
WAG 100 receives the DEA message, removes the access challenge information, and provides the access challenge information to the user device seeking authentication. The user device sends access challenge response to information to WAG 100. WAG 100 formulates a Diameter DER message including EAP payload that carries the challenge response information. The DER message also includes a user name, the calling station ID, an AA type parameter set to authentication only, and a session identifier. WAG 100 sends the DER message to DSR 102.
DSR 102 receives the DER message, determines that the outbound message should be a RADIUS message, and formulates message 6, which is a RADIUS access request message. The RADIUS access request message includes the EAP payload with the challenge response information, a user name, and a calling station ID. DSR 102 forwards the access request message to AAA server 104.
AAA server 104 receives the access request message, performs a lookup in its database to determine whether the challenge response information is equal to an expected response, and formulates a message 7, which is a RADIUS access response message. The RADIUS access response message includes an EAP payload that indicates results of the authentication, a user name, and the session ID. AAA server 104 sends the access response message to DSR 102.
DSR 102 receives the access response message, determines that the outbound message should be a Diameter message, and formulates a Diameter DEA message. The DEA message includes an EAP payload indicating successful authentication and a result code also indicating successful authentication. The DEA message also includes a user name and a session identifier. DSR 102 sends the DEA message to WAG 100.
WAG 100, upon receiving the DEA message, communicates with the user device to indicate that the authentication to the network is successful. After successful authentication, the user device can access the wireless access network as well as core network services.
FIG. 6 is a flow chart illustrating an exemplary process for access network signaling protocol interworking for user authentication according to an embodiment of the subject matter described herein. Referring to FIG. 6, in step 600, a message is received from a node in an access network. The message may be formatted in the signaling protocol of the access network and may include an authentication payload formatted according to an authentication protocol. For example, DSR 102 may receive a RADIUS message or a Diameter message including an EAP payload. In step 602, a message is formulated in the signaling protocol of a cellular network, where the message contains the authentication payload formatted according to the authentication protocol. For example, DSR 102 may forward a RADIUS or Diameter message, depending on the protocol used by the cellular network. The RADIUS or Diameter message may include the EAP payload from the received Diameter or RADIUS message.
In step 604, a message including the authentication payload and in the signaling protocol of the cellular network is forwarded to a node in the cellular network that implements the authentication protocol. For example, DSR 102 may forward a RADIUS or Diameter message with the EAP payload to AAA server 104.
In step 606, protocol interworking is performed between the node in the access network and the node in the cellular network to complete authentication of a subscriber according to the authentication protocol. For example, DSR 102 may convert between Diameter and RADIUS for subsequent message exchanges relating to authenticating a subscriber to the network. The authentication protocol may be any suitable authentication protocol, for example, EAP. Examples of such exchanges are illustrated in FIGS. 3 and 5.
In one exemplary implementation, the authentication protocol is implemented end to end between the node in the access network and the node in the cellular network. As a result, DSR 102 may perform the signaling protocol interworking to authenticate a subscriber while remaining stateless with respect to the authentication protocol.
As stated above, access network protocol interworking as described herein may be implemented on a DSR. FIG. 7 is a block diagram illustrating an exemplary architecture for DSR that implements access network protocol interworking according to an embodiment of the subject matter described herein. Referring to FIG. 10, DSR 102 includes a plurality of message processors 700, 702, 704, and 706 that perform various functions associated with Diameter routing, address resolution, and protocol interworking. Each message processor 700, 702, 704, and 706 may be implemented as a printed circuit board or blade that includes at least one processor 708 and memory 710. Message processors 700, 702, 704, and 706 may be connected to each other via a bus or other suitable internal connection. Each of message processors 700, 702, 704, and 706 may include a hypervisor (not shown) to virtualize access to underlying hardware resources so that the access network protocol interworking and other components described herein can operate in virtual machine environments.
In the illustrated example, message processor 700 includes Diameter connection layer (DCL) 314 and DRL) 302. DCL 314 performs functions for establishing Diameter connections with other nodes over Diameter interfaces, such as SWa and STa interfaces. DRL 302 routes messages based on Diameter level information in the messages.
Message processor 702 includes RADIUS connection layer (RCL) 306 that establishes and maintains RADIUS connections with other nodes. RCL 306 encapsulates received RADIUS messages in Diameter messages, as described above. Message processor 702 also includes DRL 302 that routes Diameter messages based on Diameter level information. DRL 302, in one implementation, may also determine whether received messages require processing by interworking function 310.
Message processor 704 includes an address resolution module 712 that performs range based address resolution and individual subscriber identifier address resolution for RADIUS and Diameter messages. Such address resolution may include performing a lookup based on an international mobile station identifier (IMSI) or a mobile subscriber integrated services digital network (MSISDN) number in a message to determine the appropriate destination for the message and inserting the routing information in the messages for routing the messages to the appropriate destination. Message processor 704 may also include an RD interworking function 310 that performs the protocol interworking functions described herein. For example, RD interworking function 310 may perform the access network protocol interworking described above with respect to FIG. 3 or FIG. 5. Message processor 706 may be identically provisioned to message processor 704 and may be provided for redundancy or load sharing purposes.
Thus, when a Diameter message arrives at message processor 700, DRL 302 determines whether signaling protocol interworking processing is required. If signaling protocol interworking is required, DRL 302 sends the message to one of message processors 704 and 706 for protocol interworking. RD IWF 310 on the receiving message processor performs the required signaling protocol interworking and formulates the outbound message. Address resolution may be performed to determine the routing information for the outbound message. RD IWF 310 or address resolution module 712 forwards the message to the appropriate message processor 700 or 702 which forwards the message to its intended next hop.
Accordingly, the architecture illustrated in FIG. 7 is a special purpose machine that performs access network signaling protocol interworking for authenticating users on different types of access networks using plural different types of cellular network authentication interfaces. The architecture illustrated in FIG. 7 improves the functionality of both access and cellular networks by seamlessly authenticating user devices to those networks without requiring that the access network and the core cellular network use the same signaling protocol to carry authentication information.
In addition, because the authentication protocol is implemented end-to-end between the access network and the authenticating server in the cellular network, the signaling protocol interworking can be performed statelessly with respect to the authentication protocol. Stateless signaling protocol interworking may simplify the design and/or implementation of the protocol interworking function.

## Claims

1. A method for access network signaling protocol interworking for user authentication, the method comprising:
in a Diameter signaling router (DSR) including at least one message processor:
receiving, from a broadband network gateway (BNG) in an access network, a first message formatted according to a signaling protocol of the access network and containing an authentication payload formatted according to an authentication protocol, wherein the signaling protocol of the access network comprises a remote authentication dial in user service (RADIUS) protocol and the first message comprises a RADIUS access request message carrying an extensible authentication protocol (EAP) payload;
in response to receiving the first message, formulating a second message formatted according to a signaling protocol of a cellular network, the second message including the authentication payload formatted according to the authentication protocol, wherein the signaling protocol of the cellular network comprises a Diameter protocol and the second message comprises a Diameter EAP request (DER) message carrying the EAP payload;
forwarding the second message formatted according to the signaling protocol of the cellular network to an authentication, authorization, and accounting (AAA) server in the cellular network that implements the authentication protocol, the second message including the authentication payload formatted according to the authentication protocol; and
receiving, from the AAA server and in response to the DER message, a Diameter EAP answer (DEA) message.

2. The method of claim 1 wherein the Diameter protocol comprises a Diameter SWa protocol.

3. The method of claim 1 wherein the Diameter protocol comprises a Diameter STa protocol.

4. The method of claim 1 wherein the node in the access network comprises a RADIUS client that receives an authentication request from a user device.

5. The method of claim 1 wherein the authentication protocol is implemented end to end between the node in the access network and the node in the cellular network.

6. The method of claim 5 wherein the Diameter signaling router is stateless with respect to the authentication protocol.

7. A system for access network signaling protocol interworking for user authentication, the system comprising:
a Diameter signaling router (DSR) including at least one message processor:
an interworking function in the DSR and implemented by the at least one processor for receiving, from a broadband network gateway (BNG) in an access network, a first message formatted according to a signaling protocol of the access network and containing an authentication payload formatted according to an authentication protocol, wherein the signaling protocol of the access network comprises a remote authentication dial in user service (RADIUS) protocol and the first message comprises a RADIUS access request message carrying an extensible authentication protocol (EAP) payload, for, in response to receiving the first message, formulating a second message formatted according to a signaling protocol of a cellular network, the second message including the authentication payload formatted according to the authentication protocol, for forwarding the second message formatted according to the signaling protocol of the cellular network to an authentication, authorization, and accounting (AAA) server in the cellular network that implements the authentication protocol, the second message including the authentication payload formatted according to the authentication protocol, wherein the signaling protocol of the cellular network comprises a Diameter protocol, and the second message comprises a Diameter EAP request message carrying the EAP payload, and for receiving, from the AAA server and in response to the Diameter EAP request message, a Diameter EAP answer (DEA) message.

8. The system of claim 7 wherein the Diameter protocol comprises a Diameter SWa protocol.

9. The system of claim 7 wherein the Diameter protocol comprises a Diameter STa protocol.

10. The system of claim 7 wherein the node in the access network comprises a remote RADIUS client that receives an authentication request from a user device.

11. The system of claim 7 wherein the authentication protocol is implemented end to end between the node in the access network and the node in the cellular network.

12. The system of claim 11 wherein the Diameter signaling router is stateless with respect to the authentication protocol.

13. A non-transitory computer readable medium having stored thereon executable instructions that when executed by the processor on a computer control the computer to perform steps comprising:
in a Diameter signaling router (DSR) including at least one message processor:
receiving, from a broadband network gateway (BNG) in an access network, a first message formatted according to a signaling protocol of the access network and containing an authentication payload formatted according to an authentication protocol, wherein the signaling protocol of the access network comprises a remote authentication dial in user service (RADIUS) protocol and the first message comprises a RADIUS access request message carrying an extensible authentication protocol (EAP) payload;
in response to receiving the first message, formulating a second message formatted according to a signaling protocol of a cellular network, the second message including the authentication payload formatted according to the authentication protocol, wherein the signaling protocol of the cellular network comprises a Diameter protocol and the second message comprises a Diameter EAP request message carrying the EAP payload;
forwarding the second message formatted according to the signaling protocol of the cellular network to an authentication, authorization, and accounting (AAA) server in the cellular network that implements the authentication protocol, the second message including the authentication payload formatted according to the authentication protocol; and
receiving, from the AAA server and in response to the DER message, a Diameter EAP answer (DEA) message.