Patent Publication Number: US-11665134-B2

Title: Message processing method, access controller, and network node

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
     This application is a continuation of U.S. patent application Ser. No. 15/260,740, filed on Sep. 9, 2016, which is a continuation of International Application No. PCT/CN2015/073304, filed on Feb. 26, 2015, which claims priority to Chinese Patent Application No. 201410088000.1, filed on Mar. 11, 2014, All of the afore-mentioned patent applications are hereby incorporated by reference in their entireties. 
    
    
     TECHNICAL FIELD 
     This application relates to the field of communications technologies, and in particular, to a message processing method, an access controller, and a network node. 
     BACKGROUND 
     In a current access network, there are massive network devices, such as a digital subscriber line access multiplexer (DSLAM), an optical network unit (ONU), an optical line terminal (OLT), a router, a broadband network gateway (BNG), a switch, and a broadband remote access server. When these network devices are located on a propagation path for a message, each of these network devices needs to support a function of processing an access loop identifier carried in the message, and a format and contents of the access loop identifier vary slightly with each operator. Therefore, all these network devices need to be customized for different operators, and versions and upgrades of these network devices also aggravate the situation, which results in great operation and maintenance complexity for the network devices. 
     SUMMARY 
     This application provides a message processing method, an access controller, and a network node, to resolve a technical problem of great operation and maintenance complexity for a network device in the prior art. 
     A first aspect of this application provides a message processing method, including: 
     receiving, by an access controller, a first message used to obtain Internet Protocol IP address information for a user-side device and a first access loop identifier of a first network node, where the first message and the first access loop identifier are sent by the first network node, the first access loop identifier is not carried in the first message, and the IP address information includes an IP address or an IP address prefix; obtaining, by the access controller, first IP address information for the user-side device based on the first access loop identifier, where the first IP address information includes a first IP address or a first IP address prefix; and sending, by the access controller, the first IP address information to the first network node. 
     With reference to the first aspect, in a first possible implementation manner of the first aspect, the obtaining, by the access controller, the first IP address information based on the first access loop identifier includes: sending, by the access controller, either the first access loop identifier or the first access loop identifier and a second access loop identifier of a second network node to an authentication, authorization and accounting AAA server, where the second network node and the first network node belong to a same data packet forwarding path, and the second access loop identifier is determined according to the first access loop identifier and a correspondence between the first access loop identifier and the second access loop identifier: receiving, by the access controller, authorization information sent by the AAA server; and obtaining or allocating, by the access controller, the first IP address information based on the authorization information. 
     With reference to the first aspect, in a second possible implementation manner of the first aspect, the obtaining, by the access controller, the first IP address information for the user-side device based on the first access loop identifier includes: sending, by the access controller, either the first access loop identifier or the first access loop identifier and a second access loop identifier of a second network node to an address allocation node, where the address allocation node includes an IP edge node, a Dynamic Host Configuration Protocol DHCP server, or an authentication, authorization and accounting AAA server, the second network node and the first network node belong to a same data packet forwarding path, and the second access loop identifier is determined according to the first access loop identifier and a correspondence between the first access loop identifier and the second access loop identifier; and receiving, by the access controller, the first IP address information sent by the address allocation node. 
     With reference to the second possible implementation manner of the first aspect, in a third possible implementation manner of the first aspect, the sending, by the access controller, either the first access loop identifier or the first access loop identifier and a second access loop identifier of a second network node to an address allocation node includes: 
     adding, by the access controller, either the first access loop identifier or the first access loop identifier and the second access loop identifier to the first message, to form a second message; and 
     sending, by the access controller, the second message to the address allocation node; or 
     the sending, by the access controller, either the first access loop identifier or the first access loop identifier and a second access loop identifier of a second network node to an address allocation node includes: 
     creating, by the access controller, a second message, where the second message carries the first access loop identifier or carries the first access loop identifier and the second access loop identifier; and 
     sending, by the access controller, the second message to the address allocation node. 
     With reference to the first aspect or any one of the first possible implementation manner of the first aspect to the third possible implementation manner of the first aspect, in a fourth possible implementation manner of the first aspect, the method further includes: receiving, by the access controller, a Media Access Control MAC address of the user-side device that is sent by the first network node; forming, by the access controller, a mapping relationship between the first IP address information and the MAC address according to the obtained first IP address information and the MAC address; and sending, by the access controller, the mapping relationship to the first network node. 
     With reference to the first aspect or any one of the first possible implementation manner of the first aspect to the fourth possible implementation manner of the first aspect, in a fifth possible implementation manner of the first aspect, the first message and the first access loop identifier are included in an OpenFlow message. 
     With reference to the first aspect or any one of the first possible implementation manner of the first aspect to the fifth possible implementation manner of the first aspect, in a sixth possible implementation manner of the first aspect, the first network node is an access node AN, and the user-side device is customer-premises equipment CPE; or 
     the first network node is an optical network unit ONU, and the user-side device is customer-premises equipment CPE; or 
     the first network node is customer-premises equipment CPE, and the user-side device is user equipment (UE) connected to the CPE. 
     A second aspect of this application further provides a message processing method, including: 
     receiving, by a first network node, a first message that is used to obtain Internet Protocol IP address information for a user-side device and is sent by the user-side device, where the IP address information includes an IP address or an IP address prefix; sending, by the first network node, the first message and a first access loop identifier of the first network node to an access controller, where the first access loop identifier is not carried in the first message; receiving, by the first network node, first IP address information that is obtained for the user-side device and is sent by the access controller, where the first IP address information includes a first IP address or a first IP address prefix, and the first IP address information is specifically obtained by the access controller based on the first access loop identifier; and forwarding, by the first network node, the first IP address information to the user-side device. 
     With reference to the second aspect, in a first possible implementation manner of the second aspect, the method further includes: sending, by the first network node, a Media Access Control MAC address of the user-side device to the access controller, receiving, by the first network node, a mapping relationship between the first IP address information and the MAC address, where the mapping relationship is sent by the access controller, and generating, by the first network node, a mapping relationship table between IP address information and a MAC address. 
     With reference to the second aspect or the first possible implementation manner of the second aspect, in a second possible implementation manner of the second aspect, the first message and the first access loop identifier are included in an OpenFlow message. 
     With reference to the second aspect or the first possible implementation manner of the second aspect or the second possible implementation manner of the second aspect, in a third possible implementation manner of the second aspect, the first network node is an access node AN, and the user-side device is customer-premises equipment CPE; or 
     the first network node is an optical network unit ONU, and the user-side device is customer-premises equipment CPE; or 
     the first network node is customer-premises equipment CPE, and the user-side device is user equipment (UE) connected to the CPE. 
     A third aspect of this application further provides an access controller, including: 
     a receiving unit, configured to receive a first message used to obtain Internet Protocol IP address information for a user-side device and a first access loop identifier of a first network node, where the first message and the first access loop identifier are sent by the first network node, the first access loop identifier is not carried in the first message, and the IP address information includes an IP address or an IP address prefix; a processing unit, configured to obtain first IP address information for the user-side device based on the first access loop identifier, where the first IP address information includes a first IP address or a first IP address prefix: and a sending unit, configured to send the first IP address information to the first network node. 
     With reference to the third aspect, in a first possible implementation manner of the third aspect, the processing unit is specifically configured to: control the sending unit to send either the first access loop identifier or the first access loop identifier and a second access loop identifier of a second network node to an authentication, authorization and accounting AAA server: control the receiving unit to receive authorization information sent by the AAA server; and obtain or allocate the first IP address information based on the authorization information, where the second network node and the first network node belong to a same data packet forwarding path, and the second access loop identifier is determined according to the first access loop identifier and a correspondence between the first access loop identifier and the second access loop identifier. 
     With reference to the third aspect, in a second possible implementation manner of the third aspect, the processing unit is specifically configured to: control the sending unit to send either the first access loop identifier or the first access loop identifier and a second access loop identifier of a second network node to an address allocation node, where the address allocation node includes an IP edge node, a Dynamic Host Configuration Protocol DHCP server, or an authentication, authorization and accounting AAA server; and control the receiving unit to receive the first IP address information sent by the address allocation node, where the second network node and the first network node belong to a same data packet forwarding path, and the second access loop identifier is determined according to the first access loop identifier and a correspondence between the first access loop identifier and the second access loop identifier. 
     With reference to the second possible implementation manner of the third aspect, in a third possible implementation manner of the third aspect, the processing unit is specifically configured to: add either the first access loop identifier or the first access loop identifier and the second access loop identifier to the first message, to form a second message; and control the sending unit to send the second message to the address allocation node: or 
     the processing unit is specifically configured to: 
     create a second message, where the second message carries the first access loop identifier or carries the first access loop identifier and the second access loop identifier: and control the sending unit to send the second message to the address allocation node. 
     With reference to the third aspect or any one of the first possible implementation manner of the third aspect to the third possible implementation manner of the third aspect, in a fourth possible implementation manner of the third aspect, the receiving unit is further specifically configured to receive a Media Access Control MAC address of the user-side device that is sent by the first network node; the processing unit is further specifically configured to form a mapping relationship between the first IP address information and the MAC address according to the obtained first IP address information and the MAC address; and the sending unit is further specifically configured to send the mapping relationship to the first network node. 
     With reference to the third aspect or any one of the first possible implementation manner of the third aspect to the fourth possible implementation manner of the third aspect, in a fifth possible implementation manner of the third aspect, the first message and the first access loop identifier are included in an OpenFlow message. 
     With reference to the third aspect or any one of the first possible implementation manner of the third aspect to the fifth possible implementation manner of the third aspect, in a sixth possible implementation manner of the third aspect, the first network node is an access node AN, and the user-side device is customer-premises equipment CPE; or 
     the first network node is an optical network unit ONU, and the user-side device is customer-premises equipment CPE: or 
     the first network node is customer-premises equipment CPE, and the user-side device is user equipment (UE) connected to the CPE. 
     A fourth aspect of this application further provides an access controller, including: 
     a receiver, configured to receive a first message used to obtain Internet Protocol IP address information for a user-side device and a first access loop identifier of a first network node, where the first message and the first access loop identifier are sent by the first network node, the first access loop identifier is not carried in the first message, and the IP address information includes an IP address or an IP address prefix; a processor, configured to obtain first IP address information for the user-side device based on the first access loop identifier, where the first IP address information includes a first IP address or a first IP address prefix; and a transmitter, configured to send the first IP address information to the first network node. 
     With reference to the fourth aspect, in a first possible implementation manner of the fourth aspect, the processor is specifically configured to: send either the first access loop identifier or the first access loop identifier and a second access loop identifier of a second network node to an authentication, authorization and accounting AAA server; receive authorization information sent by the AAA server: and obtain or allocate the first IP address information based on the authorization information, where the second network node and the first network node belong to a same data packet forwarding path, and the second access loop identifier is determined according to the first access loop identifier and a correspondence between the first access loop identifier and the second access loop identifier, and receive the first IP address information sent by an address allocation node. 
     With reference to the fourth aspect, in a second possible implementation manner of the fourth aspect, the processor is specifically configured to: send either the first access loop identifier or the first access loop identifier and a second access loop identifier of a second network node to an address allocation node, where the address allocation node includes an IP edge node, a Dynamic Host Configuration Protocol DHCP server, or an authentication, authorization and accounting AAA server, the second network node and the first network node belong to a same data packet forwarding path, and the second access loop identifier is determined according to the first access loop identifier and a correspondence between the first access loop identifier and the second access loop identifier; and receive the first IP address information sent by the address allocation node. 
     With reference to the second possible implementation manner of the fourth aspect, in a third possible implementation manner of the fourth aspect, the processor is specifically configured to: add either the first access loop identifier or the first access loop identifier and the second access loop identifier to the first message, to form a second message; and send the second message to the address allocation node; or 
     the processor is specifically configured to: create a second message, where the second message carries the first access loop identifier or carries the first access loop identifier and the second access loop identifier: and send the second message to the address allocation node. 
     With reference to the fourth aspect or any one of the first possible implementation manner of the fourth aspect to the third possible implementation manner of the fourth aspect, in a fourth possible implementation manner of the fourth aspect, the receiver is further specifically configured to receive a Media Access Control MAC address of the user-side device that is sent by the first network node; the processor is further specifically configured to form a mapping relationship between the first IP address information and the MAC address according to the obtained first IP address information and the MAC address; and the transmitter is further specifically configured to send the mapping relationship to the first network node. 
     With reference to the fourth aspect or any one of the first possible implementation manner of the fourth aspect to the fourth possible implementation manner of the fourth aspect, in a fifth possible implementation manner of the fourth aspect, the first message and the first access loop identifier are included in an OpenFlow message. 
     With reference to the fourth aspect or any one of the first possible implementation manner of the fourth aspect to the fifth possible implementation manner of the fourth aspect, in a sixth possible implementation manner of the fourth aspect, the first network node is an access node AN, and the user-side device is customer-premises equipment CPE; or 
     the first network node is an optical network unit ONU, and the user-side device is customer-premises equipment CPE; or 
     the first network node is customer-premises equipment CPE, and the user-side device is user equipment (UE) connected to the CPE. 
     A fifth aspect of this application provides a network node, including: 
     a first receiving unit, configured to receive a first message that is used to obtain Internet Protocol IP address information for a user-side device and is sent by the user-side device, where the IP address information includes an IP address or an IP address prefix; a first sending unit, configured to send the first message and a first access loop identifier of the network node to an access controller, where the first access loop identifier is not carried in the first message: a second receiving unit, configured to receive first IP address information obtained for the user-side device, where the first IP address information includes a first IP address or a first IP address prefix, and the first IP address information is specifically obtained by the access controller based on the first access loop identifier; and a second sending unit, configured to forward the first IP address information to the user-side device. 
     With reference to the fifth aspect, in a first possible implementation manner of the fifth aspect, the network node further includes a processing unit, where 
     the first sending unit is further specifically configured to send a Media Access Control MAC address of the user-side device to the access controller; the second receiving unit is further specifically configured to receive a mapping relationship between the first IP address information and the MAC address, where the mapping relationship is sent by the access controller; and 
     the processing unit is specifically configured to generate a mapping relationship table between IP address information and a MAC address. 
     With reference to the fifth aspect or the first possible implementation manner of the fifth aspect, in a second possible implementation manner of the fifth aspect, the first message and the first access loop identifier are included in an OpenFlow message. 
     With reference to the fifth aspect or the first possible implementation manner of the fifth aspect or the second possible implementation manner of the fifth aspect, in a third possible implementation manner of the fifth aspect, the network node is an access node AN, and the user-side device is customer-premises equipment CPE; or 
     the network node is an optical network unit ONU, and the user-side device is customer-premises equipment CPE; or 
     the network node is customer-premises equipment CPE, and the user-side device is user equipment (UE) connected to the CPE. 
     A sixth aspect of this application provides a network node, including: 
     a first receiver, configured to receive a first message that is used to obtain Internet Protocol IP address information for a user-side device and is sent by the user-side device, where the IP address information includes an IP address or an IP address prefix; a first transmitter, configured to send the first message and a first access loop identifier of the network node to an access controller, where the first access loop identifier is not carried in the first message; a second receiver, configured to receive first IP address information that is obtained for the user-side device and is sent by the access controller, where the first IP address information includes a first IP address or a first IP address prefix, and the first IP address information is specifically obtained by the access controller based on the first access loop identifier; and a second transmitter, configured to forward the first IP address information to the user-side device. 
     With reference to the sixth aspect, in a first possible implementation manner of the sixth aspect, the network node further includes a processor, where 
     the first transmitter is further specifically configured to send a Media Access Control MAC address of the user-side device to the access controller; the second receiver is further specifically configured to receive a mapping relationship between the first IP address information and the MAC address, where the mapping relationship is sent by the access controller; and 
     the processor is specifically configured to generate a mapping relationship table between IP address information and a MAC address. 
     With reference to the sixth aspect or the first possible implementation manner of the sixth aspect, in a second possible implementation manner of the sixth aspect, the first message and the first access loop identifier are included in an OpenFlow message. 
     With reference to the sixth aspect or the first possible implementation manner of the sixth aspect or the second possible implementation manner of the sixth aspect, in a third possible implementation manner of the sixth aspect, the network node is an access node AN, and the user-side device is customer-premises equipment CPE; or 
     the network node is an optical network unit ONU, and the user-side device is customer-premises equipment CPE; or 
     the network node is customer-premises equipment CPE, and the user-side device is user equipment (UE) connected to the CPE. 
     A seventh aspect of this application provides a message processing method, including: 
     receiving, by an access controller, a first message used to obtain Internet Protocol (IP) address information for a user-side device and a first access loop identifier of a first network node, where the first message and the first access loop identifier are sent by the first network node, the first access loop identifier is not carried in the first message; 
     obtaining, by the access controller, an authentication, authorization and accounting (AAA) message according to the first access loop identifier, where the AAA message includes the first access loop identifier; and 
     sending, by the access controller, the AAA message to an AAA server. 
     Optionally, where the method further includes: 
     receiving, by the access controller, authentication or authorization information sent by the AAA server; 
     obtaining or allocating, by the access controller, IP address information based on the authentication or authorization information, where the IP address information includes an IP address or an IP address prefix; and 
     sending, by the access controller, the IP address information to the first network node. 
     Optionally, where the AAA message further includes a second access loop identifier of a second network node, the second network node and the first network node belong to a same data packet forwarding path; 
     the obtaining, by the access controller, an authentication, authorization and accounting AAA message according to the first access loop identifier includes: 
     obtaining, by the access controller, the second access loop identifier according to the first access loop identifier and a correspondence between the first access loop identifier and the second access loop identifier; and 
     generating, by the access controller, the AAA message according to the first access loop identifier and the second access loop identifier. 
     Optionally, where the method further includes: 
     receiving, by the access controller, a Media Access Control (MAC) address of the user-side device that is sent by the first network node; forming, by the access controller, a mapping relationship between the IP address information and the MAC address according to the obtained IP address information and the MAC address; and 
     sending, by the access controller, the mapping relationship to the first network node. 
     Optionally, where the first message and the first access loop identifier are included in an OpenFlow openflow, message. 
     A eighth aspect of this application provides a message processing method, including: 
     receiving, by a first network node, a first message that is used to obtain Internet Protocol (IP) address information for a user-side device and is sent by the user-side device; 
     sending, by the first network node, the first message and a first access loop identifier of the first network node to an access controller, where the first access loop identifier is not carried in the first message. 
     Optionally, where the method further includes: 
     receiving, by the first network node, IP address information that is obtained for the user-side device and is sent by the access controller, where the IP address information includes an IP address or an IP address prefix, and the IP address information is obtained by the access controller based on the first access loop identifier; and 
     sending, by the first network node, the IP address information to the user-side device. 
     Optionally, where the method further includes: 
     sending, by the first network node, a Media Access Control (MAC) address of the user-side device to the access controller; 
     receiving, by the first network node, a mapping relationship between the IP address information and the MAC address, where the mapping relationship is sent by the access controller; and 
     generating, by the first network node, a mapping relationship table between the IP address information and the MAC address. 
     Optionally, where the first message and the first access loop identifier are included in an OpenFlow message. 
     A ninth aspect of this application provides an access controller, including: 
     a receiving unit, configured to receive a first message used to obtain Internet Protocol (IP) address information for a user-side device and a first access loop identifier of a first network node, where the first message and the first access loop identifier are sent by the first network node, the first access loop identifier is not carried in the first message; 
     a processing unit, configured to obtain an authentication, authorization and accounting (AAA) message according to the first access loop identifier, where the AAA message includes the first access loop identifier; and 
     a sending unit, configured to send the AAA message to an AAA server. 
     Optionally, where 
     the receiving unit is further configured to receive authentication or authorization information sent by the AAA server; 
     the processing unit is further configured to obtain or allocate IP address information based on the authentication or authorization information, where the IP address information includes an IP address or an IP address prefix; and 
     the sending unit is further configured to send the IP address information to the first network node. 
     Optionally, where the AAA message further includes a second access loop identifier of a second network node, the second network node and the first network node belong to a same data packet forwarding path; 
     the processing unit is specifically configured to: 
     obtain the second access loop identifier according to the first access loop identifier and a correspondence between the first access loop identifier and the second access loop identifier; and 
     generate the AAA message according to the first access loop identifier and the second access loop identifier. 
     Optionally, where 
     the receiving unit is further configured to receive a Media Access Control (MAC) address of the user-side device that is sent by the first network node; 
     the processing unit is further configured to form a mapping relationship between the IP address information and the MAC address according to the obtained IP address information and the MAC address; and 
     the sending unit is further configured to send the mapping relationship to the first network node. 
     A tenth aspect of this application provides a network node, including: 
     a first receiving unit, configured to receive a first message that is used to obtain Internet Protocol (IP) address information for a user-side device and is sent by the user-side device; 
     a first sending unit, configured to send the first message and a first access loop identifier of the network node to an access controller, where the first access loop identifier is not carried in the first message. 
     Optionally, where the network node further includes: 
     a second receiving unit, configured to receive the IP address information obtained for the user-side device, where the IP address information includes an IP address or an IP address prefix, and the IP address information is obtained by the access controller based on the first access loop identifier; and 
     a second sending unit, configured to send the IP address information to the user-side device. 
     Optionally, where the network node further includes a processing unit, where 
     the first sending unit is further configured to send a Media Access Control (MAC) address of the user-side device to the access controller; 
     the second receiving unit is further configured to receive a mapping relationship between the IP address information and the MAC address, where the mapping relationship is sent by the access controller; and 
     the processing unit is configured to generate a mapping relationship table between the IP address information and the MAC address. 
     The one or more technical solutions provided in the embodiments of this application have at least the following technical effects or advantages: 
     In the embodiments of this application, a control function of a network node is transferred to an access controller. The access controller receives a first message used to obtain Internet Protocol IP address information for a user-side device and a first access loop identifier of a first network node, where the first message and the first access loop identifier are sent by the first network node. The access controller obtains first IP address information for the user-side device based on the first access loop identifier. Then, the access controller sends the first access loop identifier and the first IP address information to the first network node, so that the first network node can forward the first IP address information to the user-side device. Therefore, in the embodiments of this application, the first access loop identifier is processed by the access controller, and the first network node performs only a simple forwarding action, and no longer needs to support a function of processing various messages. In this application, because a control plane function of the network node is separated out, the network node is simplified to a simple forwarding device, and no longer needs to support a function of processing various control messages (such as DHCP/RS/RA) related to an IP address or an IP address prefix, thereby implementing decoupling the network node from a service, and reducing operation and maintenance complexity and management costs. Further, the network node is more simplified, which helps implement high performance of the network node and reuse the network node. 
    
    
     
       BRIEF DESCRIPTION OF DRAWINGS 
       To describe the technical solutions in the present invention more clearly, the following briefly describes the accompanying drawings required for describing the implementation manners. Apparently, the accompanying drawings in the following description show merely some implementation manners of the present invention, and a person of ordinary skill in the art may still derive other drawings from these accompanying drawings without creative efforts. 
         FIG.  1    is a flowchart of a message processing method on an access controller side according to an embodiment of this application; 
         FIG.  2    is a schematic flowchart of a message processing method on a network node side according to an embodiment of this application: 
         FIG.  3    is a diagram of an interaction process among network elements in a message processing method according to an embodiment of this application: 
         FIG.  4    is a schematic diagram of an implementation form of a message processing method according to an embodiment of the present invention: 
         FIG.  5    is a schematic diagram of an implementation form of a message processing method according to an embodiment of the present invention; 
         FIG.  6    is a schematic diagram of an implementation form of a message processing method according to an embodiment of the present invention; 
         FIG.  7    is a schematic diagram of an implementation form of a message processing method according to an embodiment of the present invention; 
         FIG.  8    is a schematic diagram of an implementation form of a message processing method according to an embodiment of the present invention; 
         FIG.  9    is a schematic diagram of an implementation form of a message processing method according to an embodiment of the present invention; 
         FIG.  10    is a functional block diagram of an access controller according to Embodiment 2 of this application; 
         FIG.  11    is a concept graph of a hardware implementation instance of an access controller according to Embodiment 3 of this application: 
         FIG.  12    is a functional block diagram of a network node according to Embodiment 4 of this application; and 
         FIG.  13    is a concept graph of a hardware implementation instance of a network node according to Embodiment 5 of this application. 
     
    
    
     DESCRIPTION OF EMBODIMENTS 
     To make the objectives, technical solutions, and advantages of the embodiments of the present invention clearer, the following clearly describes the technical solutions in the embodiments of the present invention with reference to the accompanying drawings in the embodiments of the present invention. Apparently, the described embodiments are some but not all of the embodiments of the present invention. All other embodiments obtained by a person of ordinary skill in the art based on the embodiments of the present invention without creative efforts shall fall within the protection scope of the present invention. 
     In the embodiments of this application, a control function of a network node is transferred to an access controller. The access controller receives a first message used to obtain Internet Protocol IP address information for a user-side device and a first access loop identifier of a first network node, where the first message and the first access loop identifier are sent by the first network node. The access controller obtains first IP address information for the user-side device based on the first access loop identifier. Then, the access controller sends the first access loop identifier and the first IP address information to the first network node, so that the first network node can forward the first IP address information to the user-side device. Therefore, in the embodiments of this application, the first access loop identifier is processed by the access controller, and the first network node performs only a simple forwarding action, and no longer needs to support a function of processing various messages. In this application, because a control plane function of the network node is separated out, the network node is simplified to a simple forwarding device, and no longer needs to support a function of processing various control messages (such as DHCP/RS/RA) related to an IP address or an IP address prefix, thereby implementing decoupling the network node from a service, and reducing operation and maintenance complexity and management costs. Further, the network node is more simplified, which helps implement high performance of the network node and reuse the network node. 
     The term “and/or” in this specification describes only an association relationship for describing associated objects and represents that three relationships may exist. For example, A and/or B may represent the following three cases: Only A exists, both A and B exist, and only B exists. In addition, the character “/” in this specification generally indicates an “or” relationship between the associated objects. 
     In the following, implementation manners of this application are described in detail with reference to the accompanying drawings. 
     Embodiment 1 
     This embodiment provides a message processing method. Referring to  FIG.  1   ,  FIG.  1    is a flowchart of the message processing method in this embodiment. The method includes the following contents. 
     Step  101 : An access controller receives a first message used to obtain Internet Protocol IP address information for a user-side device and a first access loop identifier of a first network node, where the first message and the first access loop identifier are sent by the first network node, the first access loop identifier is not carried in the first message, and the IP address information includes an IP address or an IP address prefix. 
     Step  102 : The access controller obtains first IP address information for the user-side device based on the first access loop identifier, where the first IP address information includes a first IP address or a first IP address prefix. 
     Step  103 : The access controller sends the first IP address information to the first network node, so that the first network node can forward the first IP address information to the user-side device. 
     The method flow shown in  FIG.  1    is described from an access controller side. Further referring to  FIG.  2   ,  FIG.  2    is a method flowchart of a message processing method on a network node side in this embodiment. As shown in  FIG.  2   , the method includes the following contents. 
     Step  201 : A first network node receives a first message that is used to obtain Internet Protocol IP address information for a user-side device and is sent by the user-side device, where the IP address information includes an IP address or an IP address prefix. 
     Step  202 : The first network node sends the first message and a first access loop identifier of the first network node to an access controller, where the first access loop identifier is not carried in the first message. 
     Step  203 : The first network node receives first IP address information that is obtained for the user-side device and is sent by the access controller, where the first IP address information includes a first IP address or a first IP address prefix. The first IP address information is specifically obtained by the access controller based on the first access loop identifier. 
     Step  204 : The first network node forwards the first IP address information to the user-side device. 
     Referring to  FIG.  3    at the same time,  FIG.  3    is a diagram of an interaction process among a user-side device, a network node, and an access controller. An implementation process of the message processing method in this embodiment of this application is described in detail in the following with reference to  FIG.  1   ,  FIG.  2   , and  FIG.  3   . 
     In step  200 , the user-side device sends a first message to a first network node, and correspondingly, the first network node performs step  201  of receiving the first message. After receiving the first message, the first network node performs step  202  of sending the first message and a first access loop identifier of the first network node to the access controller, and correspondingly, the access controller performs step  101  of receiving the first message and the first access loop identifier. After receiving the first message and the first access loop identifier, the access controller performs step  102  of obtaining first IP address information for a user-side device based on the first access loop identifier. Then, the access controller performs step  103  of sending the first IP address information to the first network node, and correspondingly, the first network node performs step  203  of receiving the first IP address information. Then, the first network node performs step  204  of forwarding the first IP address information to the user-side device. 
     In view of this, in this embodiment of this application, for a message sent by a user-side device, a first network node sends the message and an access loop identifier to an access controller for processing, then receives first IP address information from the access controller, and forwards the first IP address information to the user-side device, which implements separation between a control plane function and a forwarding plane function during message processing, operation and maintenance complexity of a network node is reduced, and management costs are also reduced. 
     The access loop identifier is also referred to as an access line identifier, and can uniquely identify a network node and a physical port or a logical port on the first network node that receives the first message. 
     The first message specifically includes a device identifier of the user-side device. 
     Optionally, in step  103 , the access controller further delivers the first access loop identifier to the first network node, and correspondingly, and in step  203 , the first network node further receives the first access loop identifier sent by the access controller. Therefore, further, in step  204 , the first network node specifically forwards the first IP address information to the user-side device by using a physical port corresponding to the first access loop identifier. 
     Alternatively, in step  204 , the first network node may specifically forward the first IP address information to the user-side device by using a forwarding table. 
     Optionally, that the first network node sends the first message and a first access loop identifier to the access controller in step  202  specifically includes: creating a third message of a type different from that of the first message, where the third message carries the first message and the first access loop identifier; and sending the third message to the access controller. The type of the third message is specifically related to a communications protocol between the network node and the access controller. For example, the network node may be connected to the access controller by using OpenFlow, an access management or control protocol (such as an optical network unit management and control interface OMCI or Ethernet operation, administration, and maintenance ETH OAM), or a tunnel. Therefore, the type of the third message may be, for example, an OpenFlow message. Correspondingly, when the access controller performs step  103 , step  103  specifically includes: creating a fourth message of a same type as the third message, where the fourth message carries and sends the first access loop identifier and the first IP address information to the first network node. For example, the fourth message is also an OpenFlow message. 
     Specific implementation manners of step  102  are described in detail in the following, and step  102  includes but is not limited to the following two specific implementation manners. 
     In a first possible implementation manner, step  102  includes: sending, by the access controller, either the first access loop identifier or the first access loop identifier and a second access loop identifier of a second network node to an AAA (authentication, authorization and accounting) server; receiving, by the access controller, authorization information sent by the AAA server; and obtaining or allocating, by the access controller, the first IP address information based on the authorization information. The AAA server specifically performs authorization verification based on the first access loop identifier or based on the first access loop identifier and the second access loop identifier, and delivers the authorization information after the verification succeeds. Specifically, when the access controller sends the first access loop identifier, the AAA server performs authorization verification based on the first access loop identifier; when the access controller sends the first access loop identifier and the second access loop identifier, the AAA server performs authorization verification based on the first access loop identifier and the second access loop identifier. 
     Optionally, when sending the authorization information, the AAA server may further incidentally send service information to the access controller. 
     First, the second network node and the first network node belong to a same data packet forwarding path, and the second access loop identifier is determined according to the first access loop identifier and a correspondence between the first access loop identifier and the second access loop identifier, for example, is determined by the access controller according to the correspondence. A quantity of network node levels is related to a specific network. For example, for a passive optical network (PON), there are generally two network nodes, where for example, a first network node is an optical network unit (ONU), and a second network node is an optical line terminal (OLT). 
     Then, the sending, by the access controller, either the first access loop identifier or the first access loop identifier and a second access loop identifier of a second network node to an AAA server specifically includes: initiating, by the access controller, a fifth message of a type different from that of the first message, where the fifth message carries the first access loop identifier or carries the first access loop identifier and the second access loop identifier; and sending the fifth message to the AAA server. Correspondingly, the receiving, by the access controller, authorization information sent by the AAA server specifically includes: receiving a sixth message sent by the AAA server, where the sixth message carries the authorization information, and the sixth message and the fifth message are of a same type, for example, each is an AAA message. 
     In this embodiment, the access controller is integrated with a function of allocating the first IP address information by a Dynamic Host Configuration Protocol (DHCP) server. Therefore, the AAA server needs to first perform authentication or authorization on the user-side device, and after the authentication succeeds or being authorized by the AAA server, the access controller allocates an IP address or an IP address prefix. 
     In another embodiment, after being authorized by the AAA server, the access controller may not allocate the first IP address information, but request an IP address or an IP address prefix from the DHCP server, and by receiving first IP address information sent by the DHCP server, obtain an IP address or an IP address prefix corresponding to the user-side device. 
     In a second possible implementation manner, step  102  includes: sending, by the access controller, either the first access loop identifier or the first access loop identifier and a second access loop identifier of a second network node to an address allocation node, where in this embodiment, the address allocation node includes an IP edge node, a DHCP server, or an AAA server, so that the address allocation node allocates the first IP address information: and receiving, by the access controller, the first IP address information, such as an IP address or an IP address prefix, sent by the address allocation node. 
     Optionally, in an embodiment, the sending, by the access controller, either the first access loop identifier or the first access loop identifier and a second access loop identifier of a second network node to an address allocation node includes: adding, by the access controller, either the first access loop identifier or the first access loop identifier and the second access loop identifier to the first message, to form a second message; and sending, by the access controller, the second message to the address allocation node. In other words, the second message and the first message are of a same type. 
     Optionally, in another embodiment, the sending, by the access controller, either the first access loop identifier or the first access loop identifier and a second access loop identifier of a second network node to an address allocation node includes: creating, by the access controller, a second message, where the second message carries the first access loop identifier or carries the first access loop identifier and the second access loop identifier; and sending, by the access controller, the second message to the address allocation node. In an embodiment, the first message and the second message are messages of different types. For example, the first message is an RS message, and the second message is an AAA message. In another embodiment, the first message and the second message are messages of a same type. For example, each of the first message and the second message is a DHCP message. In this case, the second message may further carry the first message. 
     Further, in the second possible implementation manner, if the access controller sends the first access loop identifier and the second access loop identifier to the address allocation node, it indicates that there are at least two network nodes, and before the sending, the access controller further needs to obtain the second access loop identifier of the second network node. Therefore, in this embodiment, before the first access loop identifier and the second access loop identifier are sent, the method further includes: searching for the second access loop identifier according to the first access loop identifier. Generally, during network construction, a correspondence between the first access loop identifier and the second access loop identifier is already stored on the access controller. Therefore, the access controller can obtain the second access loop identifier by searching the stored correspondence according to the first access loop identifier. 
     Referring to  FIG.  3    again, in a further embodiment, the method further includes: receiving, by the access controller, a Media Access Control MAC address of the user-side device that is sent by the first network node. Specifically, a first DHCP message sent by the user-side device to a network node is carried on an Ethernet frame, and a source MAC address in a frame header of the Ethernet frame is the MAC address of the user-side device. After receiving the first DHCP message, the network node needs to extract the source MAC address from the frame header of the Ethernet frame in which the first DHCP message is located. Then, the first network node sends the Media Access Control MAC address to the access controller. In step  104 : the access controller forms a mapping relationship between the first IP address information and the MAC address according to the obtained first IP address information and the MAC address. In step  1051  or step  1052 : the access controller sends the mapping relationship between the first IP address information and the MAC address to the first network node or the second network node, so that the first network node or the second network node generates a mapping relationship table between IP address information and a MAC address. The Media Access Control MAC address of the user-side device may be a MAC address of customer-premises equipment CPE, or may be a MAC address of user equipment (UE). 
     Correspondingly, on a network node side, the method further includes: sending, by the first network node, the Media Access Control MAC address of the user-side device to the access controller; and receiving, by the first network node, the mapping relationship between the first IP address information and the MAC address, where the mapping relationship is sent by the access controller, and in step  1061 , generating, by the first network node, the mapping relationship table between IP address information and a MAC address. 
     Alternatively, the method includes: sending, by the first network node, the Media Access Control MAC address of the user-side device to the access controller; and receiving, by the second network node, the mapping relationship between the first IP address information and the MAC address; and in step  1062 , generating, by the second network node, the mapping relationship table between IP address information and a MAC address. 
     That the first network node sends the MAC address to the access controller may be performed when the first message is being sent to the access controller in step  202 , or the MAC address may be sent before or after step  202 , as long as the access controller receives the MAC address before step  104 . Step  104  may be specifically performed after step  102  or performed after step  103 . 
     Generally, when there is only one network node, the mapping relationship between the first IP address information and the MAC address is sent to the first network node, and the mapping relationship table is saved on the first network node. When there are two network nodes, the mapping relationship between the first IP address information and the MAC address is sent to the second network node, and the mapping relationship is saved on the second network node. 
     In this embodiment, the access controller obtains the mapping relationship between the first IP address information and the MAC address, and delivers the mapping relationship to a network node, and the network node saves the mapping relationship, to implement a function of preventing IP address spoofing or IP address prefix spoofing (IP prefix spoofing). 
     Optionally, the first network node is an access node AN, and the user-side device is customer-premises equipment CPE; or the first network node is an optical network unit ONU, and the user-side device is customer-premises equipment CPE: or the first network node is customer-premises equipment CPE, and the user-side device is user equipment (UE) connected to the CPE. 
     Several specific examples are separately described in detail in the following. First, in a first embodiment, in this embodiment, there is only one level of network node, and the network node is a network node in a DSL/Ethernet. When the network node supports a DSL line of an asynchronous transfer mode (ATM), a format of the first access loop identifier is Access-Node-Identifier atm slot/portvpi.vci. When the network node supports an Ethernet DSL/Ethernet line, a format of the first access loop identifier is Access-Node-Identifier eth slot/port [:vlan-id]. Access-Node-Identifier is an identifier of the network node (such as a DSLAM); slot/port is one or a combination of a chassis number, a rack number, a frame number, a slot number, a sub-slot number, or a port (port) number on the network node: vpi.vci is a virtual path identifier and a virtual channel identifier on the DSL line; “[ ]” in the format means optional, and :vlan-id (virtual local area network identifier). 
     A message processing method in  FIG.  4    is a scenario in which a user-side device requests to allocate first IP address information, and the method includes: 
     Step  301 : A user-side device sends a first DHCP message to a first network node. 
     Step  302 : The first network node creates a first OpenFlow message. OpenFlow extension is required, so that the first OpenFlow message (such as a packet-in message) carries the first DHCP message and a corresponding first access loop identifier Line ID of the first network node. Optionally, the first OpenFlow message further carries a MAC address of the user-side device that sends the first DHCP message. 
     Step  303 : The first network node sends the first OpenFlow message to an access controller. 
     Step  304 : The access controller obtains the first DHCP message and the first access loop identifier Line ID from the first OpenFlow message, and adds the Line ID to the first DHCP message, to form a second DHCP message, or the access controller obtains the first DHCP message and the first access loop identifier Line ID from the first OpenFlow message, and creates a second DHCP message, where the second DHCP message carries the first DHCP message and the first access loop identifier Line ID. 
     Step  305 : The access controller sends the second DHCP message to an IP edge node (such as a BNG/BRAS) or a DHCP server. The BRAS is a broadband access server. 
     Step  306 : The IP edge node/DHCP server obtains or allocates first IP address information according to the Line ID. 
     Step  307 : The IP edge node/DHCP server sends a third DHCP message to the access controller, where the third DHCP message carries the allocated first IP address information. 
     Step  308 : The access controller sends a second OpenFlow message to the first network node, where the second OpenFlow message carries the Line ID and the third DHCP message. 
     Step  309 : The first network node forwards the third DHCP message to the user-side device. 
     Further, the method further includes: 
     The first network node further sends the MAC address of the user-side device to the access controller, which is, for example, performed in step  302  or performed separately. 
     Step  310 : The access controller forms a mapping relationship between the first IP address information and the MAC address according to the obtained first IP address information and the MAC address. 
     Step  311 : The access controller sends a third OpenFlow message to the first network node, where the third OpenFlow message carries the mapping relationship between the first IP address information and the MAC address. 
     Step  312 : The first network node generates a mapping relationship table between IP address information and a MAC address according to the third OpenFlow message. 
     Then, further referring to  FIG.  5   ,  FIG.  5    is a flowchart of another message processing method, and the method includes: 
     Step  401 : A user-side device sends a first DHCP message to a first network node. 
     Step  402 : The first network node creates a first OpenFlow message. OpenFlow extension is required, so that the first OpenFlow message (such as a packet-in message) carries the first DHCP message and a corresponding first access loop identifier Line ID of the first network node. Optionally, the first OpenFlow message further carries a MAC address of the user-side device that sends the first DHCP message. 
     Step  403 : The first network node sends the first OpenFlow message to an access controller. 
     Step  404 : The access controller initiates a first AAA message, where the first AAA message carries the Line ID. 
     Step  405 : The access controller sends the first AAA message to an AAA server. 
     Step  406 : The AAA server sends a second AAA message to the access controller, where the second AAA message carries authorization information. Optionally, the second AAA message may further carry service information. 
     Step  407 : The access controller obtains or allocates first IP address information based on the authorization information. 
     Step  408 : The access controller sends a second OpenFlow message to the first network node, where the second OpenFlow message carries the Line ID and a second DHCP message, and the second DHCP message carries the allocated first IP address information. 
     Step  409 : The first network node forwards the second DHCP message to the user-side device. 
     Further, the method further includes: further sending, by the first network node, the MAC address to the access controller, which is, for example, performed in step  402  or performed separately; and step  410  to step  412 , where step  410  to step  412  are the same as step  310  to step  312  in  FIG.  4   , and details are not described herein. 
     Then, further referring to  FIG.  6   ,  FIG.  6    is an application scenario in an IPv6 (Internet Protocol Version 6) network, and a message processing method includes: 
     Step  501 : A user-side device sends a router solicitation (RS) message to a first network node. 
     Step  502 : The first network node creates a first OpenFlow message. OpenFlow extension is required, so that the first OpenFlow message (such as a packet-in message) carries the RS message and a corresponding first access loop identifier Line ID of the first network node. Optionally, the first OpenFlow message further carries a MAC address of the user-side device that sends the RS message. 
     Step  503 : The first network node sends the first OpenFlow message to an access controller. 
     Step  504 : The access controller obtains the first DHCP message and the first access loop identifier Line ID from the first OpenFlow message, and the access controller initiates a first AAA message, where the first AAA message carries the Line ID. 
     Step  505 : The access controller sends the first AAA message to an AAA (authentication, authorization and accounting) server. 
     Step  506 : The AAA server allocates a first IP address prefix according to the Line ID. 
     Step  507 : The AAA server sends a second AAA message to the access controller, where the second AAA message carries the allocated first IP address prefix. 
     Step  508 : The access controller sends a second OpenFlow message to the first network node. OpenFlow extension is required, so that the second OpenFlow message carries the Line ID and a router advertisement (RA) message, and the RA message carries the allocated first IP address prefix. 
     Step  509 : The first network node forwards the RA message to the user-side device. 
     Further, the method further includes: 
     The first network node further sends the MAC address of the user-side device to the access controller, which may be performed in step  502  or performed separately. Specifically, the RS message sent by the user-side device to the first network node is carried on an Ethernet frame, and a source MAC address in a frame header of the Ethernet frame is the MAC address of the user-side device. After receiving the RS message, the first network node needs to extract the source MAC address from the frame header of the Ethernet frame in which the RS message is located, and then the first network node sends the Media Access Control MAC address to the access controller for receiving. 
     Step  510 : The access controller forms a mapping relationship between the first IP address prefix and the MAC address according to the obtained first IP address prefix and the MAC address. 
     Step  511 : The access controller sends a third OpenFlow message to the first network node, where the third OpenFlow message carries the mapping relationship between the first IP address prefix and the MAC address. 
     Step  512 : The first network node generates a mapping relationship table between an IP address prefix and a MAC address according to the third OpenFlow message. 
     For a PON system, an access loop identifier includes a first access loop identifier of a first network node and a second access loop identifier of a second network node. In this embodiment, it is assumed that the first network node is an ONU, and that the second network node is an OLT. A format of an access loop identifier is Access-Node-Identifier atm slot1/port1/ONUID/slot2/port2:vpi.vci when the ONU supports a DSL line of an ATM, or Access-Node-Identifier eth slot1/port1/ONUID/slot2/port2[:vlan-id] when the ONU supports an Ethernet DSL/Ethernet line. Access-Node-Identifier is an identifier of the OLT; slot1/port1 is one or a combination a chassis number, a rack number, a frame number, a slot number, a sub-slot number, or a portnumber on the OLT; slot2/port2 is one or a combination of a chassis number, a rack number, a frame number, a slot number, a sub-slot number, or a port number on the ONU. ONUID/slot2/port2:vpi.vci is ONU-part Line ID information, and Access-Node-Identifier slot1/port1 is OLT-part Line ID information. That is, the first access loop identifier is an ONU-part Line ID, and the second access loop identifier is an OLT-part Line ID. 
     Then, referring to  FIG.  7   ,  FIG.  7    is a message processing method in a PON system, and the method includes: 
     Step  601 : A user-side device sends a first DHCP message to an ONU. 
     Step  602 : The ONU creates a first OpenFlow message. OpenFlow extension is required, so that the first OpenFlow message (such as a packet-in message) carries an ONU-part Line ID and the first DHCP message. Optionally, the first OpenFlow message further carries a MAC address of the user-side device that sends the first DHCP message. 
     Step  603 : The ONU sends the first OpenFlow message to an access controller. 
     Step  604 : The access controller obtains the first DHCP message and the ONU-part Line ID from the first OpenFlow message, and then searches for an OLT-part Line ID corresponding to the user-side device according to the ONU-part Line ID. 
     Step  605 : The access controller adds the ONU-part Line ID and the OLT-part Line ID to the first DHCP message, to form a second DHCP message; or creates a second DHCP message, where the second DHCP message carries the first DHCP message, the ONU-part Line ID, and the OLT-part Line ID. 
     Step  606 : The access controller sends the second DHCP message to an IP edge node/DHCP server. 
     Step  607 : The IP edge node/DHCP server allocates first IP address information according to the ONU-part Line ID and the OLT-part Line ID. 
     Step  608 : The IP edge node/DHCP server sends a third DHCP message to the access controller, where the third DHCP message carries the allocated first IP address information. 
     Step  609 : The access controller sends a second OpenFlow message to the ONU, where the second OpenFlow message carries the ONU-part Line ID and the third DHCP message. 
     Step  610 : The ONU sends the third DHCP message to the user-side device. 
     Further, the method further includes: 
     The ONU further sends the MAC address of the user-side device to the access controller, which is, for example, performed in step  602  or performed separately. 
     Step  611 : The access controller forms a mapping relationship between the first IP address information and the MAC address according to the obtained first IP address information and the MAC address. 
     Step  612 : The access controller sends a third OpenFlow message to an OLT, where the third OpenFlow message carries the mapping relationship between the first IP address information and the MAC address. 
     Step  613 : The OLT generates a mapping relationship table between IP address information and a MAC address according to the third OpenFlow message. 
     Then, further referring to  FIG.  8   .  FIG.  8    is a schematic flowchart of another DHCP message processing method, and the method includes: 
     Step  701  to step  704  are the same as step  601  to step  604  in the embodiment in  FIG.  7   , and details are not described. 
     Step  705 : The access controller initiates a first AAA message, where the message carries the ONU-part Line ID and the OLT-part Line ID. 
     Step  706 : The access controller sends the first AAA message to an AAA server. 
     Step  707 : The AAA server sends a second AAA message to the access controller, where the second AAA message carries authorization information. 
     Step  708 : The access controller obtains or allocates first IP address information according to the authorization information. 
     Step  709 : The access controller sends a second OpenFlow message to the ONU, where the second OpenFlow message carries the ONU-part Line ID and a second DHCP message, and the second DHCP message carries the allocated first IP address information. 
     Step  710 : The ONU sends the second DHCP message to the user-side device. 
     Further, the method includes: further sending, by the ONU, the MAC address of the user-side device to the access controller, which is, for example, performed in step  702  or performed separately; and step  711  to step  713 , where step  711  to step  713  are the same as step  611  to step  613  in the embodiment in  FIG.  7   , and details are not described herein. 
     Further referring to  FIG.  9   ,  FIG.  9    is a flowchart of a message processing method in an IPv6 application scenario in a PON network, and the method includes: 
     Step  801 : A user-side device sends an RS message to an ONU. 
     Step  802 : The ONU creates a first OpenFlow message. OpenFlow extension is required, so that the first OpenFlow message (such as a packet-in message) carries an ONU-part Line ID and the RS message. Optionally, the first OpenFlow message further carries a MAC address of the user-side device that sends the RS message. 
     Step  803 : The ONU sends the first OpenFlow message to an access controller. 
     Step  804 : The access controller obtains the RS message and the ONU-part Line ID from the first OpenFlow message, and searches for an OLT-part Line ID corresponding to the user-side device according to the ONU-part Line ID. 
     Step  805 : The access controller initiates a first AAA message, where the message carries the ONU-part Line ID and the OLT-part Line ID. 
     Step  806 : The access controller sends the first AAA message to an AAA server. 
     Step  807 : The AAA server allocates a first IP address prefix according to the ONU-part Line ID and the OLT-part Line ID. 
     Step  808 : The AAA server sends a second AAA message to the access controller, where the second AAA message carries the allocated first IP address prefix. 
     Step  809 : The access controller sends a second OpenFlow message to the ONU. OpenFlow extension is required, so that the second OpenFlow message carries the ONU-part Line ID and an RA message, and the RA message carries the allocated first IP address prefix. 
     Step  810 : The ONU sends the RA message to the user-side device. 
     Further, the method further includes: 
     further sending, by the ONU, the MAC address of the user-side device to the access controller, which is, for example, performed in step  802  or performed separately. 
     Step  811 : The access controller forms a mapping relationship between the first IP address prefix and the MAC address according to the obtained first IP address prefix and the MAC address. 
     Step  812 : The access controller sends a third OpenFlow message to an OLT, where the third OpenFlow message carries the mapping relationship between the first IP address prefix and the MAC address. 
     Step  813 : The OLT generates a mapping relationship table between an IP address prefix and a MAC address according to the third OpenFlow message. 
     Embodiment 2 
     An embodiment of this application further provides an access controller. Referring to  FIG.  10   , the access controller includes: a receiving unit  901 , configured to receive a first message used to obtain Internet Protocol IP address information for a user-side device and a first access loop identifier of a first network node, where the first message and the first access loop identifier are sent by the first network node, the first access loop identifier is not carried in the first message, and the IP address information includes an IP address or an IP address prefix; a processing unit  902 , where the access controller obtains first IP address information for the user-side device based on the first access loop identifier, where the first IP address information includes a first IP address or a first IP address prefix; and a sending unit  903 , configured to send the first IP address information to the first network node, so that the first network node can forward the first IP address information to the user-side device. 
     Optionally, the sending unit  903  is further configured to send the first access loop identifier to the first network node, so that the first network node can forward the first IP address information to the user-side device from a physical port corresponding to the first access loop identifier. 
     In an embodiment, the processing unit  902  is specifically configured to: send either the first access loop identifier or the first access loop identifier and a second access loop identifier of a second network node to an authentication, authorization and accounting AAA server; receive authorization information sent by the AAA server; and obtain or allocate the first IP address information based on the authorization information, where the second network node and the first network node belong to a same data packet forwarding path, and the second access loop identifier is determined by the access controller according to the first access loop identifier and a correspondence between the first access loop identifier and the second access loop identifier. 
     In another embodiment, the processing unit  902  is specifically configured to: send either the first access loop identifier or the first access loop identifier and a second access loop identifier of a second network node to an address allocation node, where the address allocation node includes an IP edge node, a Dynamic Host Configuration Protocol DHCP server, or an AAA server, the second network node and the first network node belong to a same data packet forwarding path, and the second access loop identifier is determined by the access controller according to the first access loop identifier and a correspondence between the first access loop identifier and the second access loop identifier, so that the address allocation node allocates the first IP address information; and receive the first IP address information sent by the address allocation node. 
     Further, the processing unit  902  is specifically configured to: add either the first access loop identifier or the first access loop identifier and the second access loop identifier to the first message, to form a second message; and send the second message to the address allocation node. 
     Further, the processing unit  902  is specifically configured to: create a second message, where the second message carries the first access loop identifier or carries the first access loop identifier and the second access loop identifier: and send the second message to the address allocation node. Types of the first message and the second message may be the same or different. 
     With reference to the foregoing embodiments, the processing unit  902  is further specifically configured to search for the second access loop identifier according to the first access loop identifier. 
     With reference to the foregoing embodiments, the receiving unit  901  is further specifically configured to receive a Media Access Control MAC address of the user-side device that is sent by the first network node; the processing unit  902  is further specifically configured to form a mapping relationship between the first IP address information and the MAC address according to the obtained first IP address information and the MAC address; and the sending unit  903  is further specifically configured to send the mapping relationship between the first IP address information and the MAC address to the first network node or the second network node, so that the first network node or the second network node generates a mapping relationship table between IP address information and a Media Access Control MAC address. 
     With reference to the foregoing embodiments, the first message and the first access loop identifier are included in an OpenFlow message. 
     With reference to the foregoing embodiments, the first network node is an access node AN, and the user-side device is customer-premises equipment CPE; or the first network node is an optical network unit ONU, and the user-side device is customer-premises equipment CPE: or the first network node is customer-premises equipment CPE, and the user-side device is user equipment (UE) connected to the CPE. 
     In a product form, the access controller may be embedded in an OLT/BNG device, or may be an independent device. 
     Various variation manners and specific instances in the message processing methods in the foregoing embodiments of  FIG.  1    and  FIG.  3    to  FIG.  9    are also applicable to the access controller in this embodiment. By means of the foregoing detailed description on the message processing methods, a person skilled in the art may clearly know an implementation method of the access controller in this embodiment, and for ease of brevity in this description, details are not described herein. 
     Embodiment 3 
     This embodiment provides an access controller. Referring to  FIG.  11   ,  FIG.  11    is a concept graph of a hardware implementation instance of the access controller. The access controller includes: a receiver  1001 , configured to receive a first message used to obtain Internet Protocol IP address information for a user-side device and a first access loop identifier of a first network node, where the first message and the first access loop identifier are sent by the first network node, the first access loop identifier is not carried in the first message, and the IP address information includes an IP address or an IP address prefix: a processor  1002 , where the access controller obtains first IP address information for the user-side device based on the first access loop identifier, where the first IP address information includes a first IP address or a first IP address prefix; and a transmitter  1003 , configured to send the first IP address information to the first network node, so that the first network node can forward the first IP address information to the user-side device. 
     Optionally, the transmitter  1003  is further configured to send the first access loop identifier to the first network node, so that the first network node can forward the first IP address information to the user-side device from a physical port corresponding to the first access loop identifier. 
     In a bus architecture (indicated by a bus  1000 ) in  FIG.  11   , the bus  1000  may include any quantity of interconnected buses and bridges. The bus  1000  connects various circuits including one or more processors  1002  represented by a processor  1002  and a memory represented by a memory  1005 . The bus  1000  may further connect various other circuits such as a peripheral device, a voltage stabilizer, and a power management circuit, which are known in the art. Therefore, further description is not provided herein. A bus interface  1004  provides an interface between the bus  1000  and the receiver  1001  and/or the transmitter  1003 . The receiver  1001  and the transmitter  1003  may be a same element, that is, a transceiver, which provides a unit configured to communicate with various other apparatuses on a transmission medium. 
     The processor  1002  is responsible for managing the bus  1000  and general processing, and may further provide various functions, including timing, peripheral interfacing, voltage regulation, power management, and another control function. The memory  1005  may be configured to store data used by the processor  1002  executing an operation. 
     In an embodiment, the processor  1002  is specifically configured to: send either the first access loop identifier or the first access loop identifier and a second access loop identifier of a second network node to an AAA server; receive authorization information sent by the AAA server; and obtain or allocate the first IP address information based on the authorization information, where the second network node and the first network node belong to a same data packet forwarding path, and the second access loop identifier is determined by the access controller according to the first access loop identifier and a correspondence between the first access loop identifier and the second access loop identifier. 
     In another embodiment, the processor  1002  is specifically configured to: send either the first access loop identifier or the first access loop identifier and a second access loop identifier of a second network node to an address allocation node, so that the address allocation node allocates the first IP address information; and receive the first IP address information sent by the address allocation node, where the second network node and the first network node belong to a same data packet forwarding path, and the second access loop identifier is determined by the access controller according to the first access loop identifier and a correspondence between the first access loop identifier and the second access loop identifier. 
     Further, the processor  1002  is specifically configured to: add either the first access loop identifier or the first access loop identifier and the second access loop identifier to the first message, to form a second message: and send the second message to the address allocation node. 
     Further, the processor  1002  is specifically configured to: create a second message, where the second message carries the first access loop identifier or carries the first access loop identifier and the second access loop identifier; and send the second message to the address allocation node. Types of the first message and the second message may be the same or different. 
     With reference to the foregoing embodiments, the processor  1002  is further specifically configured to search for the second access loop identifier according to the first access loop identifier. 
     With reference to the foregoing embodiments, the receiver  1001  is further specifically configured to receive a Media Access Control MAC address of the user-side device that is sent by the first network node; the processor  1002  is further specifically configured to form a mapping relationship between the first IP address information and the MAC address according to the obtained first IP address information and the MAC address; and the transmitter  1003  is further specifically configured to send the mapping relationship between the first IP address information and the MAC address to the first network node or the second network node, so that the first network node or the second network node generates a mapping relationship table between IP address information and a Media Access Control MAC address. 
     With reference to the foregoing embodiments, the first message and the first access loop identifier are included in an OpenFlow message. 
     With reference to the foregoing embodiments, the first network node is an access node AN, and the user-side device is customer-premises equipment CPE; or the first network node is an optical network unit ONU, and the user-side device is customer-premises equipment CPE; or the first network node is customer-premises equipment CPE, and the user-side device is user equipment (UE) connected to the CPE. 
     In a product form, the access controller may be embedded in an OLT/BNG device, or may be an independent device. 
     Various variation manners and specific instances in the message processing methods in the foregoing embodiments of  FIG.  1    and  FIG.  3    to  FIG.  9    are also applicable to the access controller in this embodiment. By means of the foregoing detailed description on the message processing methods, a person skilled in the art may clearly know an implementation method of the access controller in this embodiment, and for ease of brevity in this description, details are not described herein. 
     Embodiment 4 
     This embodiment provides a network node, as shown in  FIG.  12   . In  FIG.  12   , units are drawn according to a message processing flow, where the network node includes: 
     a first receiving unit  1100 , configured to receive a first message that is used to obtain Internet Protocol IP address information for a user-side device and is sent by the user-side device, where the IP address information includes an IP address or an IP address prefix; a first sending unit  1101 , configured to send the first message and a first access loop identifier of the network node to an access controller, where the first access loop identifier is not carried in the first message; a second receiving unit  1102 , configured to receive first IP address information that is obtained for the user-side device and is sent by the access controller, where the first IP address information includes a first IP address or a first IP address prefix, and the first IP address information is specifically obtained by the access controller based on the first access loop identifier; and a second sending unit  1103 , configured to forward the first IP address information to the user-side device. 
     Optionally, the second receiving unit  1102  is further configured to receive the first access loop identifier sent by the access controller, and the second sending unit  1103  is specifically configured to forward the first IP address information to the user-side device from a physical port corresponding to the first access loop identifier. 
     In an embodiment, the network node further includes a processing unit  1104 , where the first sending unit  1101  is further specifically configured to send a Media Access Control MAC address of the user-side device to the access controller; the second receiving unit  1102  is further specifically configured to receive a mapping relationship between the first IP address information and the MAC address, where the mapping relationship is sent by the access controller; and the processing unit  1104  is specifically configured to generate a mapping relationship table between IP address information and a MAC address. 
     In another embodiment, the first sending unit  1101  is further specifically configured to send a Media Access Control MAC address of the user-side device to the access controller, so that the access controller forms a mapping relationship between the first IP address information and the MAC address according to the obtained first IP address information and the MAC address, and send the mapping relationship to a second network node. 
     With reference to the foregoing embodiments, the first message and the first access loop identifier are included in an OpenFlow message. 
     With reference to the foregoing embodiments, the network node is an access node AN, and the user-side device is customer-premises equipment CPE; or the network node is an optical network unit ONU, and the user-side device is customer-premises equipment CPE; or the network node is customer-premises equipment CPE, and the user-side device is user equipment (UE) connected to the CPE. 
     Alternatively, the network node may be specifically a DSLAM, an OLT, an Ethernet switch, an aggregation device, a BNG/BRAS, or the like. 
     Various variation manners and specific instances in the message processing methods in the foregoing embodiments of  FIG.  2    to  FIG.  9    are also applicable to the network node in this embodiment. By means of the foregoing detailed description on the message processing methods, a person skilled in the art may clearly know an implementation method of the network node in this embodiment, and for ease of brevity in this description, details are not described herein. 
     Embodiment 5 
     This embodiment provides a network node. Referring to  FIG.  13   .  FIG.  13    is a block diagram of a hardware implementation instance of the network node. The network node includes: a first receiver  1201 , configured to receive a first message that is used to obtain Internet Protocol IP address information for a user-side device and is sent by the user-side device, where the IP address information includes an IP address or an IP address prefix: a first transmitter  1202 , configured to send the first message and a first access loop identifier of the network node to an access controller, where the first access loop identifier is not carried in the first message: a second receiver  1203 , configured to receive first IP address information that is obtained for the user-side device and is sent by the access controller, where the first IP address information includes a first IP address or a first IP address prefix: and the first IP address information is specifically obtained by the access controller based on the first access loop identifier; and a second transmitter  1204 , configured to forward the first IP address information to the user-side device. 
     Optionally, the network node further includes a physical port  1205 . The second receiver  1203  is further configured to receive the first access loop identifier sent by the access controller. Therefore, the second transmitter  1204  is specifically configured to forward the first IP address information to the user-side device from the physical port  1205  corresponding to the first access loop identifier. 
     In an embodiment, the network node further includes a processor  1207 , where the first transmitter  1202  is further specifically configured to send a Media Access Control MAC address of the user-side device to the access controller; the second receiver  1203  is further specifically configured to receive a mapping relationship between the first IP address information and the MAC address, where the mapping relationship is sent by the access controller: and the processor  1207  is specifically configured to generate a mapping relationship table between IP address information and a MAC address. 
     In another embodiment, the first transmitter  1202  is further specifically configured to send a Media Access Control MAC address of the user-side device to the access controller, so that the access controller forms a mapping relationship between the first IP address information and the MAC address according to the obtained first IP address information and the MAC address; and send the mapping relationship to a second network node. 
     In a bus architecture (indicated by a bus  1200 ) in  FIG.  13   , the bus  1200  may include any quantity of interconnected buses and bridges. The bus  1200  connects various circuits including one or more processors represented by a processor  1207  and a memory represented by a memory  1208 . The bus  1200  may further connect various other circuits such as a peripheral device, a voltage stabilizer, and a power management circuit, which are known in the art. Therefore, further description is not provided herein. A bus interface  1206  provides an interface between the bus  1200  and the first receiver  1201  and the second transmitter  1204  and between the bus  1200  and the first transmitter  1202  and the second receiver  1203 . The first receiver  1201  and the second transmitter  1204  may be a same element, that is, a transceiver, and the first transmitter  1202  and the second receiver  1203  may be a same element, which provides a unit configured to communicate with various other apparatuses on a transmission medium. 
     The processor  1207  is responsible for managing the bus  1200  and general processing, and the memory  1208  may be configured to store data used by the processor  1207  executing an operation. 
     With reference to the foregoing embodiments, the first message and the first access loop identifier are included in an OpenFlow message. 
     With reference to the foregoing embodiments, the network node is an access node AN, and the user-side device is customer-premises equipment CPE; or the network node is an optical network unit ONU, and the user-side device is customer-premises equipment CPE; or the network node is customer-premises equipment CPE, and the user-side device is user equipment (UE) connected to the CPE. 
     Alternatively, the network node may be specifically a DSLAM, an OLT, an Ethernet switch, an aggregation device, a BNG/BRAS, or the like. 
     Various variation manners and specific instances in the message processing methods in the foregoing embodiments of  FIG.  2    to  FIG.  9    are also applicable to the network node in this embodiment. By means of the foregoing detailed description on the message processing methods, a person skilled in the art may clearly know an implementation method of the network node in this embodiment, and for ease of brevity in this description, details are not described herein. 
     The one or more technical solutions provided in the embodiments of this application have at least the following technical effects or advantages: 
     In the embodiments of this application, a control function of a network node is transferred to an access controller. The access controller receives a first message used to obtain Internet Protocol IP address information for a user-side device and a first access loop identifier of a first network node, where the first message and the first access loop identifier are sent by the first network node. The access controller obtains first IP address information for the user-side device based on the first access loop identifier. Then, the access controller sends the first access loop identifier and the first IP address information to the first network node, so that the first network node can forward the first IP address information to the user-side device. Therefore, in the embodiments of this application, the first access loop identifier is processed by the access controller, and the first network node performs only a simple forwarding action, and no longer needs to support a function of processing various messages. In this application, because a control plane function of the network node is separated out, the network node is simplified to a simple forwarding device, and no longer needs to support a function of processing various control messages (such as DHCP/RS/RA) related to an IP address or an IP address prefix, thereby implementing decoupling the network node from a service, and reducing operation and maintenance complexity and management costs. Further, the network node is more simplified, which helps implement high performance of the network node and reuse the network node. 
     A person skilled in the art should understand that the embodiments of this application may be provided as a method, a system, or a computer program product. Therefore, this application may use a form of hardware only embodiments, software only embodiments, or embodiments with a combination of software and hardware. Moreover, the present invention may use a form of a computer program product that is implemented on one or more computer-usable storage media (including but not limited to a disk memory, an optical memory, and the like) that include computer-usable program code. 
     This application is described with reference to the flowcharts and/or block diagrams of the method, the device (system), and the computer program product according to the embodiments of this application. It should be understood that computer program instructions may be used to implement each process and/or each block in the flowcharts and/or the block diagrams and a combination of a process and/or a block in the flowcharts and/or the block diagrams. These computer program instructions may be provided for a general-purpose computer, a dedicated computer, an embedded processor, or a processor of any other programmable data processing device to generate a machine, so that the instructions performed by a computer or a processor of any other programmable data processing device generate an apparatus for implementing a specific function in one or more processes in the flowcharts and/or in one or more blocks in the block diagrams. 
     These computer program instructions may be stored in a computer readable memory that can instruct the computer or any other programmable data processing device to work in a specific manner, so that the instructions stored in the computer readable memory generate an artifact that includes an instruction apparatus. The instruction apparatus implements a specific function in one or more processes in the flowcharts and/or in one or more blocks in the block diagrams. 
     These computer program instructions may be loaded onto a computer or another programmable data processing device, so that a series of operations and steps are performed on the computer or the another programmable device, thereby generating computer-implemented processing. Therefore, the instructions performed on the computer or the another programmable device provide steps for implementing a specific function in one or more processes in the flowcharts and/or in one or more blocks in the block diagrams. 
     Finally, it should be noted that the foregoing embodiments are merely intended for describing the technical solutions of the present invention, but not for limiting the present invention. Although the present invention is described in detail with reference to the foregoing embodiments, persons of ordinary skill in the art should understand that they may still make modifications to the technical solutions described in the foregoing embodiments or make equivalent replacements to some or all technical features thereof, without departing from the scope of the technical solutions of the embodiments of the present invention.