Abstract:
A method for realizing the synchronous authentication among the different authentication control devices is provided. The user accesses the network and initiates the authentication by the slave authentication control device. Then the master authentication control device obtains the authentication information of the user from the slave authentication control device and transmits it to the master authentication server of the master authentication control device. Finally, the master authentication server performs the authentication process to the user according to the authentication information of the user. Therefore the accessing user can obtain the network authority of a plurality of service providers with only one logging on in the network in which a plurality of service providers are interconnected. The present invention facilitates the access to the network for the user and can assure that each service provider can control and manage the accessing user efficiently and thereby protects the benefit of the service providers.

Description:
FIELD OF THE INVENTION  
       [0001]     The present invention relates to the field of network authentication technology, particularly to a method for implementing synchronous authentication among different authentication control devices.  
       BACKGROUND OF THE INVENTION  
       [0002]     There are a lot of different service providers such as operators, ISP (Internet Service Provider) and ICP (Internet Content Provider) in current communication networks, and each of the service providers can provide various services for the access users independently or cooperatively, and perform the authentication and accounting processing independently or cooperatively.  
         [0003]     When they cooperate with each other, there are various corresponding cooperating modes, wherein the relatively typical cooperating mode is to implement the operation and the cooperation via exchanging the authentication and accounting information of the users among the AAA (Authentication, Authorization, and Accounting) systems.  
         [0004]     The network architecture of the AAA system is shown in  FIG. 1 . When a user accesses the network via an access device, an authentication control device is responsible for carrying the identity information of the access user, and initiating the access and authentication processing for the access user toward an AAA server. There are a lot of generally adopted measures for the user authentication, such as PPPoE (Point-to-Point Protocol over Ethernet) authentication, WEB authentication and 802.1x authentication etc.  
         [0005]     The network architecture of a cooperating mode currently adopted among different service providers is shown in  FIG.2 , and taking the PPPoE access authentication as example, the detailed authentication processing flow for the access user in the network shown in FIG. 2  is shown in  FIG.3 , including the following steps:  
         [0006]     Step  31 : a user terminal sends a PADI message, i.e. a PPPoE Active Discovery Initiation message, to an authentication control device (i.e. PPPoE server) to start a PPPoE access;  
         [0007]     Step  32 : the authentication control device (PPPoE server) sends a PADO message, i.e. a PPPoE Active Discovery Offer message, to the user terminal;  
         [0008]     Step  33 : the user terminal initiates a PADR request (a PPPoE Active Discovery Request message) to the authentication control device (PPPoE server) according to the PADO message responded by the authentication control device;  
         [0009]     Step  34 : the authentication control device (PPPoE server) generates a session id (session identifier), and sends it to the user terminal via PADS (PPPoE Active Discovery Session message);  
         [0010]     Step  35 : the user terminal and the authentication control device (PPPoE server) perform a PPP LCP (Link Control protocol) negotiation to establish link layer communication and synchronously negotiate for using a CHAP (Challenge Handshake Authentication Protocol) authentication mode;  
         [0011]     Step  36 : the authentication control device (PPPoE server) sends and provides a Challenge (challenge code) of 128 bits to the authentication user terminal via a Challenge message;  
         [0012]     Step  37 : after receiving the Challenge message, the user terminal makes an MD5 algorithm encryption for a password and the Challenge message and then sends the encrypted Challenge-Password and challenge message in a Response message to the authentication control device (PPPoE server);  
         [0013]     Step  38 : the authentication control device (PPPoE server) sends the encrypted Challenge message and Challenge-Password and the username to a RADIUS (Remote Authentication Dial in User Service) user authentication server of service provider A for authentication;  
         [0014]     Step  39 : If the RADIUS user authentication server of service provider A recognizes that it is a user of service provider B according to the username, forward the authentication message to the RADIUS user authentication server of service provider B for real authentication;  
         [0015]     That is, the authentication server of service provider A sends an Access-Request message to the authentication server of service provider B;  
         [0016]     Step  310 : the RADIUS user authentication server of service provider B determines whether the user is legal according to the user information, and then responds with an authentication Success/Failure message to the RADIUS user authentication server of service provider A;  
         [0017]     That is, the authentication server of service provider B sends an Access-Accept/Access-Reject message to the authentication server of the service provider A;  
         [0018]     Step  311 : the RADIUS user authentication server of service provider A forwards the authentication Success/Failure message to the authentication control device (PPPoE server); if succeeds, carry the negotiation parameter and the user&#39;s relevant service attribute to authorize the user; after obtaining the user authorization, the authentication control device (PPPoE server) can perform various control and management on the user network; if fails, the flow is ended here.  
         [0019]     Step  312 : the authentication control device (PPPoE server) returns an authentication result (i.e. Success/Failure) to the user terminal; if the authentication is successful, continue to execute step  313 , or else the flow is ended here;  
         [0020]     Step  313 : the user terminal conducts an NCP (Network Control Protocol) negotiation such as IPCP (IP Control Protocol) protocol etc, and obtains, via the authentication control device (PPPoE server), parameters such as the planning IP address;  
         [0021]     Step  314 : if the authentication is successful, the authentication control device (PPPoE server) initiates an Accounting-Start request to the RADIUS user accounting server of service provider A;  
         [0022]     The authentication control device can send accounting/start/stop message to service provider A, that is, the Accounting-Response/Start/Stop message;  
         [0023]     Step  315 : if the RADIUS user accounting server of service provider A discovers that the user is a roaming user whose service provider is service provider B, forward the accounting message to the RADIUS user accounting server of service provider B for real accounting;  
         [0024]     Step  316 : the RADIUS user accounting server of service provider B responds with an Accounting-Accept message to the RADIUS user accounting server of service provider A; and  
         [0025]     Step  317 : the RADIUS user accounting server of service provider A forwards the Accounting-Accept message to the authentication control device (PPPoE server).  
         [0026]     Here the access user passes the authentication, and obtains the legal authority, and can launch its network service normally.  
         [0027]     When the user wants to terminate the network service, it can cut off the network connection via PPPoE; specifically, it can send an Accounting-Stop message in the message format transmitted in step  314  to step  317 , so as to implement the Accounting-Stop processing.  
         [0028]     Via the above processing, the mutual communication of the authentication and accounting information is implemented between service provider A and service provider B. However, because the core devices for authentication and accounting (i.e. the authentication control device) are in the network of service provider A and meanwhile the AAA information is forwarded from the AAA server of service provider A to the AAA server of service provider B, actually the control right on the users is completely held by service provider A. Therefore, if service provider A modifies the parameters of the authentication control device and the AAA server, there is a great possibility that service provider B will suffer losses.  
         [0029]     To avoid occurrence of the case that the controlled service provider suffers possible losses due to the inequitable status among different service providers, now each service provider needs to set and apply its own authentication control device. The corresponding network architecture is shown in  FIG.4 . Still taking the PPPoE access authentication mode as example, here gives the description of the authentication processing flow for the access user in FIG. 4  with reference to  FIG.5 , and the corresponding processing flow includes:  
         [0030]     The processing procedure from Step  51  to Step  58  is the same as that from step  31  to step  38  shown in  FIG. 3 , and therefore detailed description is omitted;  
         [0031]     Step  59 : the RADIUS user authentication server of service provider A determines whether or not the user is legal according to the user information, and then executes step  510  by responding with the authentication Success/Failure message to the authentication control device;  
         [0032]     If succeeds, carry the negotiation parameter and the user&#39;s relevant service attribute to authorize the user, and executes step  511 ; after obtaining the user authorization, the authentication control device (PPPoE server) can perform various control and management on the user network; if fails, the flow is ended here.  
         [0033]     Step  511 : the user terminal conducts an NCP (such as IPCP) negotiation, and obtains, via the authentication control device (PPPoE server), parameters such as the planning IP address;  
         [0034]     Step  512 : if the authentication is successful, the authentication control device (PPPoE server) initiates an Accounting-Start request to the RADIUS user accounting server of service provider A;  
         [0035]     Step  513 : the RADIUS user accounting server of service provider A responds with an Account-Accept message to the authentication control device (PPPoE server).  
         [0036]     Here, the access user passes the authentication, and obtains the legal authority, and can launch its network service normally. However, because the user does not get the authorization of service provider B, it can only visit the network of service provider A. Thus, when the user wants to visit service provider B and external networks, the user needs to be re-authenticated by service provider B. That is, the user terminal initiates a secondary authentication request for the authentication control device of service provider B, and generally the WEB authentication mode is adopted currently. The detailed authentication processing procedure is also shown in  FIG. 5 , and includes:  
         [0037]     Step  514 : the authentication control device of service provider B sends the user information to the RADIUS user authentication server of service provider B for authentication;  
         [0038]     Step  515 : the RADIUS user authentication server of service provider B determines whether or not the user is legal according to the user information, and then execute step  516 , that is, responding with the Authentication Success/Failure message to the authentication control device of service provider B;  
         [0039]     If succeeds, carry the negotiation parameter and the user&#39;s relevant service attribute to authorize the user; after obtaining the user authorization, the authentication control device (PPPoE server) can perform the various control and management on the user network; if fails, the flow is ended here.  
         [0040]     Step  517 : the authentication control device of service provider B returns the authentication result to the user terminal, and if the authentication is successful, continue to execute step  518 ;  
         [0041]     Step  518 : the authentication control device of service provider B initiates an Accounting-Start request for the RADIUS user accounting server of service provider B;  
         [0042]     Step  519 : the RADIUS user accounting server of service provider B responds with an Accounting-Accept message to the authentication control device of service provider B;  
         [0043]     Here, the access user has passed the authentication, and obtained the legal authority of the network of service provider B/the external network, and can launch its network service normally. That is, if the user passes the authentication twice, it can visit service provider A, service provider B and the external network.  
         [0044]     In this solution, if there are multiple service providers, the user needs to be authenticated for many times to obtain the authority layer by layer. That is, the user is required to login for each service provider, which makes the user&#39;s operation procedure complicated. Furthermore, each service provider maintains its operation information individually, thus making the operation cost of the service provider increased greatly.  
       SUMMARY OF THE INVENTION  
       [0045]     Embodiments of the present invention provide a method for implementing synchronous authentication among different authentication control devices, which simplifies the login and authentication procedure when the user accesses the network, and guarantees the reliable control and management of the access user by each service provider.  
         [0046]     The embodiments of the present invention are implemented by the following technical solution  
         [0047]     A method for implementing synchronous authentication among different authentication control devices in an embodiment of the present invention, includes:  
         [0048]     A. a user accessing a network, and initiating an authentication via a slave authentication control device;  
         [0049]     B. a master authentication control device acquiring the user&#39;s authentication information from the slave authentication control device, and sending the user&#39;s authentication information to a master authentication server of the master authentication control device;  
         [0050]     C. the master authentication server performing authentication processing of the user according to its authentication information.  
         [0051]     The network accessed under the control of the slave authentication control device accesses an external network via the network accessed under the control of the master authentication control device.  
         [0052]     Said step B includes:  
         [0053]     The master authentication control device actively detecting and acquiring a message bearing the authentication information sent by the slave authentication control device, and forwarding the message to the master authentication server directly or after repackaging it.  
         [0054]     Said step B includes:  
         [0055]     The slave authentication device actively sending the user&#39;s authentication information to the master authentication control device, and the master authentication control device forwarding the authentication information to the master authentication server directly or after repackaging them.  
         [0056]     The authentication information of the user accessed under the control of the master and slave authentication control devices is stored in the master authentication server.  
         [0057]     The method for implementing the synchronous authentication among different authentication control devices further includes:  
         [0058]     storing the authentication information of the user accessed under the control of the slave authentication control device in a slave authentication server.  
         [0059]     Said step C includes:  
         [0060]     C1. after receiving the user&#39;s authentication information, the master authentication server performing authentication processing of the user and determining whether the user&#39;s authentication information is stored in the slave authentication server; if yes, executing step C2, or else not processing it;  
         [0061]     C2. sending the user&#39;s authentication information to the slave authentication server, and the slave authentication server performing authentication processing of the user according to the authentication information.  
         [0062]     The method for implementing the synchronous authentication among different authentication control devices also includes:  
         [0063]     D. the master authentication server acquiring accounting information from the master authentication control device, and performing the accounting to the access user according to the accounting information.  
         [0064]     Said step D also includes: the slave authentication control device sending the accounting information to the master authentication server via the master authentication control device, and the master authentication server performing the accounting according to the accounting information.  
         [0065]     Said step D also includes:  
         [0066]     the master authentication server sending the accounting information to the slave authentication server, and the slave authentication server performing the accounting according to the accounting information.  
         [0067]     It can be seen from the technical solution provided by the embodiments of the present invention described above that in the network where multiple service providers are connected with each other according to the embodiment of the present invention, the access user can obtain the network authority of multiple service providers by logining only once, which brings great convenience for the user to access the network.  
         [0068]     Furthermore, the embodiments of the present invention can guarantee that each service provider controls and manages the access user effectively, so as to protect the interest of the service provider effectively.  
         [0069]     In addition, the embodiments of the present invention also bring the result that each service provider needs to configure the system only once when it is installed, without the necessity of providing additional maintenance for the authentication control device and the AAA server etc. As for an individual user, all the service providers need to be maintained only once, that is, the user information needs to undergo establishment, modification, deletion and various maintenance operation only once, which is not the same as the solution provided by the prior art that each service provider needs to be maintained once respectively. 
     
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0070]      FIG. 1  is a diagram illustrating the conventional network architecture of the network with the AAA server;  
         [0071]      FIG. 2  is a conventional network architecture diagram I illustrating that a user initiates the authentication to multiple service providers in the prior art;  
         [0072]      FIG. 3  is a flow chart illustrating the authentication processing performed by the network shown in  FIG.2 ;  
         [0073]      FIG. 4  is a conventional network architecture diagram II illustrating that a user initiates the authentication to multiple service providers in the prior art;  
         [0074]      FIG. 5  is a flow chart illustrating the authentication processing performed by the network shown in  FIG.4 ;  
         [0075]      FIG. 6  is a network architecture diagram illustrating that a user initiates the authentication to multiple service providers in an embodiment of the present invention;  
         [0076]      FIG. 7  is a flow chart illustrating the authentication processing performed by the network shown in  FIG.6 . 
     
    
     DETAILED DESCRIPTION OF THE EMBODIMENTS  
       [0077]     The embodiments of the present invention show that when a user of those service providers which cooperate with each other accesses the network, an authentication processing procedure is initiated to the authentication control device of each service provider at the same time based on the identifier information of the access user. Accordingly, the user of different service providers which are in cooperation with each other in the network can finish, at one time, the access and authentication processing procedures of different service providers, thus guaranteeing the operating interest of each service provider adequately.  
         [0078]     In the method of the embodiments of the present invention, each service provider has their respective independent authentication control device, as shown in  FIG. 6 , and all the authentication control devices can configure their own AAA servers correspondingly. In the embodiments of the present invention, an authentication control device in the network connected directly to the external network is called master authentication control device, such as the authentication control device of service provider B in  FIG. 6 ; an authentication control device in other networks connected to the external network via the network connected directly to the external network is called slave authentication control device, such as the authentication control device of service provider A in  FIG. 6 .  
         [0079]     In the embodiments of the present invention, all authentication information of the users who have gained access to each master or slave authentication control device is stored in the master authentication server to which the master authentication control device corresponds, and the master authentication server is, for example, the AAA (Authentication, Authorization, and Accounting) server and the corresponding RDIUS user authentication server of service provider B in  FIG. 6 ; alternatively, the authentication information may be stored in the slave authentication server to which each slave authentication control device corresponds, and the slave authentication server is, for example, the AAA (Authentication, Authorization, and Accounting) server and the corresponding RDIUS user authentication server of service provider A in  FIG. 6 .  
         [0080]     Taking the network architecture shown in  FIG. 6  as example, the embodiment of the method of the present invention is shown in detail in  FIG. 7 , including the following steps:  
         [0081]     Step  71 : a user terminal sends a PADI message to an authentication control device (i.e. PPPoE server) of service provider A to start a PPPoE access;  
         [0082]     Step  72 : after receiving the PADI message, the authentication control device sends a PADO message to the user terminal;  
         [0083]     Step  73 : the user terminal sends a PADR request to the authentication control device according to the PADO message responded by the authentication control device;  
         [0084]     Step  74 : the authentication control device generates a session id (session identifier), and sends it to the user terminal via a PADS message;  
         [0085]     Step  75 : the user terminal and the authentication control device perform a PPP LCP (Link Control protocol) negotiation to establish link layer communication and synchronously negotiate for using the CHAP authentication mode;  
         [0086]     Step  76 : the authentication control device sends and provides a Challenge of 128 bit to the authentication user terminal via a Challenge message;  
         [0087]     Step  77 : after receiving the Challenge message, the user terminal makes an MD5 algorithm encryption for a password and the Challenge message and then sends the encrypted Challenge-Password and Challenge message in a Response message to the authentication control device of service provider A;  
         [0088]     The processing procedure for the user access from step  71  to step  76  is completely the same as the corresponding processing procedure in the prior art.  
         [0089]     Step  78 : after receiving the authentication information, the authentication control device of service provider A sends the user identity information (i.e. the authentication information) such as a Challenge, a Challenge-Password and the username to the authentication control device of service provider B, i.e. the master authentication control device;  
         [0090]     Step  79 : the authentication control device of service provider B sends the user identity information to the RADIUS user authentication server of service provider B for authentication; the RADIUS user authentication server and the corresponding AAA server of service provider B are called master authentication server;  
         [0091]     If the user identity information is stored in the AAA server of service provider B, the RADIUS user authentication server of service provider B determines whether the user is legal according to the user identity information, and execute step  712 ; if the user identity information is stored in the AAA server of service provider A, execute step  710 .  
         [0092]     Step  710 : the RADIUS user authentication server of service provider B forwards the user information to the RADIUS user authentication server of service provider A;  
         [0093]     Step  711 : the RADIUS user authentication server of service provider A determines whether or not the user is legal according to the user information, and then responds with an authentication Success/Failure message;  
         [0094]     If succeeds, carry the negotiation parameter and the user&#39;s relevant service attribute to authorize the user;  
         [0095]     Step  712 : return the authentication Success/Failure message to the authentication control device of service provider B;  
         [0096]     If skip from step  79  to this step, the RADIUS user authentication server of service provider B determines whether or not the user is legal according to the user information, and then responds with the authentication Success/Failure message; if succeeds, carry the negotiation parameter and the use&#39;s relevant service attribute to authorize the user;  
         [0097]     If skip from step  711  to this step, the RADIUS user authentication server of service provider B forwards the message sent from the RADIUS user authentication server of service provider A to the authentication control device of service provider B; if the RADIUS server of service provider B contains the user information, authenticate directly and return the result;  
         [0098]     Step  713 : after receiving the authentication Success/Failure message, if the user authorization is obtained successfully, the authentication control device of service provider B performs various control and management on the network of service provider B, and synchronously forwards the message to the authentication control device of service provider A; for example, if the authentication is successful and the authorization is obtained, the authentication control device of service provider B can manage the user and the traffic which enter the network of service provider B; however, if the authentication fails, the user can not enter the network of service provider B via the authentication control device of service provider B;  
         [0099]     Step  714 : after receiving the message, if the user authorization is obtained successfully, the authentication control device of service provider A performs various control and management on the network of service provider A, and synchronously, the authentication control device of service provider A returns the authentication result to the user terminal;  
         [0100]     After the user terminal receives the message, if the authentication fails, the flow is ended here, or else continue to execute step  715 .  
         [0101]     Step  715 : the user terminal conducts an NCP (such as IPCP) negotiation, and obtains, via the authentication control device of service provider A, the parameters such as the planning IP address etc.  
         [0102]     Step  716 : if the NCP negotiation is successful, the authentication control device of service provider A initiates an Accounting-Start request to the authentication control device of service provider B, that is, sending the accounting information to the authentication control device;  
         [0103]     Step  717 : the authentication control device of service provider B forwards the request to the RADIUS user accounting server of service provider B;  
         [0104]     If service provider A needs no accounting information, execute step  720  directly, or else execute step  718 ;  
         [0105]      95  Step  718 : the RADIUS user accounting server of service provider B forwards the request to the RADIUS user accounting server of service provider A;  
         [0106]     Step  719 : the RADIUS user accounting server of service provider A responds with an Accounting-Accept message to the RADIUS user accounting server of service provider B;  
         [0107]     Step  720 : if skip from step  717  to this step, the RADIUS user accounting server of service provider B responds with the Accounting-Accept message to the authentication control device of service provider B; and  
         [0108]     If skip from step  719  to step  720 , forward the received Accounting-Accept message to the authentication control device of service provider B.  
         [0109]     Step  721 : the authentication control device of service provider B forwards the Accounting-Accept message to the authentication control device of service provider A;  
         [0110]     Here, the access user passes the authentication, and obtains the legal access authority of service provider A, service provider B and the external network, and can launch its network service normally.  
         [0111]     In the embodiments of the present invention, when the user wants to terminate the network service, it can cut off the network connection also via PPPoE server (the authentication control device), that is, sending the corresponding Accounting-Stop message according to the message format transmitted from step  716  to step  721 , so as to stop the corresponding accounting procedure.  
         [0112]     In the accounting procedure, the embodiments of the present invention also can adopt the accounting processing mode that the authentication control device of service provider A does not provide the accounting information and the accounting information is provided only by the authentication control device of service provider B. That is, step  716  and step  721  are omitted in  FIG. 7 . If the accounting is performed by only service provider B and service provider A trusts this, the accounting needs to be performed only once; only in the distrust case, the accounting needs to be performed by both service providers A and B, and then to be checked.  
         [0113]     The embodiments of the present invention are applicable not only to PPPoE, but also to all the other authentication modes. Besides the RADIUS, the AAA protocol may include DIAMETER (a new AAA protocol) and TACACS (Terminal Access Controller Access Control System, an AAA protocol) etc.  
         [0114]     Because the authentication control device of service provider B is required to synchronize the authentication and accounting information with that of the authentication control device of service provider A, the authentication control device of service provider B must acquire the authentication information of the authentication control device of service provider A.  
         [0115]     Currently, there are mainly two adoptable acquisition modes: one is the mode of detecting the data message which bears the authentication information, and another is the mode of setting the master authentication control device as a proxy server of the slave authentication control device. The following gives the explanation of these two modes:  
         [0116]     (1) The mode of detecting the data message: in this mode, it is required that the authentication request message (such as RADIUS request message) initiated by the authentication control device of service provider A must be transmitted through the authentication control device of service provider B; in this way, the authentication control device of service provider B can detect all the data message; practically, it also can be configured to detect the specified message or the message of the specified AAA server; generally, the detected message is stored at first, and then forwarded; on the other hand, it also can be repackaged and then forwarded as required;  
         [0117]     (2) The mode of setting the master authentication control device as a proxy server: the authentication control device of service provider A takes the authentication control device of service provider B as a RADIUS Server, and all the messages are sent directly to the RADIUS port of the authentication control device of service provider B; the authentication control device of service provider B functions as a standard RADIUS Proxy to receive, modify, and send the authentication message; generally the RADIUS proxy needs to repackage the message and then forward the repackaged message, but the RADIUS proxy also can store the received message and forward the stored message directly.  
         [0118]     Because the authentication control device of service provider B and the authentication control device of service provider A have synchronized the authentication and accounting information and all the user authentication and authorization information are stored in all the authentication control devices, the embodiments of the present invention enable the user to obtain the legal network authority of multiple service providers by inputting the username and the password only once.  
         [0119]     In the practical applications, the embodiments of the present invention can be extended to the interconnections among multiple service providers, so as to realize the synchronous authentication among multiple authentication control devices.  
         [0120]     The above is just the preferred embodiments of the present invention, and the scope of the present invention is not limited thereto. Those skilled in the art shall appreciate that various changes or variations can be made within the scope of the present invention. Thus, the scope of the present invention should be defined by the claims.