WO2011069419A1 - 一种IPv6报文的处理方法、设备和系统 - Google Patents

一种IPv6报文的处理方法、设备和系统 Download PDF

Info

Publication number
WO2011069419A1
WO2011069419A1 PCT/CN2010/079261 CN2010079261W WO2011069419A1 WO 2011069419 A1 WO2011069419 A1 WO 2011069419A1 CN 2010079261 W CN2010079261 W CN 2010079261W WO 2011069419 A1 WO2011069419 A1 WO 2011069419A1
Authority
WO
WIPO (PCT)
Prior art keywords
ipv6
header
extension header
access
message
Prior art date
Application number
PCT/CN2010/079261
Other languages
English (en)
French (fr)
Inventor
郑若滨
李宏宇
Original Assignee
华为技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Priority to EP10835454.9A priority Critical patent/EP2495926B1/en
Publication of WO2011069419A1 publication Critical patent/WO2011069419A1/zh
Priority to US13/482,742 priority patent/US8917723B2/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5007Internet protocol [IP] addresses
    • H04L61/5014Internet protocol [IP] addresses using dynamic host configuration protocol [DHCP] or bootstrap protocol [BOOTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5076Update or notification mechanisms, e.g. DynDNS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/167Adaptation for transition between two IP versions, e.g. between IPv4 and IPv6
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/618Details of network addresses
    • H04L2101/659Internet protocol version 6 [IPv6] addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general

Definitions

  • the present invention relates to the Internet technology, and in particular, to a method, a device, and a system for processing an IPv6 packet. Background technique
  • DSL Digital Subscriber Line
  • CPN Customer Premises Network
  • UE User Equipment
  • RG Residential Gateway
  • U is the RG and the Access Node (AN), such as the digital subscriber line In the access network (AN), the AN and the broadband connection are used in the access network (AN).
  • the Broadband Remote Access Server (BRAS) or the Broadband Network Gateway (BNG) is an aggregation network, and V is the Ethernet convergence reference point between the AN and the BRAS/BNG in the access network;
  • A10 is the access network.
  • SP Service provider
  • SP Service provider
  • SP Service Provider
  • SP Application Service Provider
  • NSP Network Service Provider
  • the AN can be an Optical Line Termination (OLT) or an Optical Network Unit (ONU), and a PON is used between the CPN and the access network. Access technology interconnections.
  • OLT Optical Line Termination
  • ONU Optical Network Unit
  • IPv4 Internet Protocol Version 4
  • IPv4 Internet Protocol Version 4
  • IPv6 Internet Protocol Version 4
  • the performance of IPv6 in many aspects is still not perfect. For example, there is no guarantee Security, authentication, or authorization, etc.; and, because the network does not recognize the type of user equipment, the same IPv6 prefix is assigned to different users, which affects normal routing. This has become one of the problems to be solved in the industry.
  • an embodiment of the present invention provides a method, a device, and a system for processing an IPv6 packet, which are used for securing access, authentication, and authorization in an IPv6 network, and are different terminals. Different IP v6 address prefixes are assigned to ensure normal network routing.
  • An embodiment of the present invention provides a method for processing an IPv6 packet of the sixth edition of the Internet Protocol, where the method includes:
  • the embodiment of the present invention further provides a method for processing an IPv6 packet of the sixth edition of the Internet Protocol, including: receiving an IPv6 packet carrying the access line information or device information, and obtaining the access line information or device information;
  • the embodiment of the invention further provides a network device, where the device includes:
  • An information adding unit configured to add access line information for the Internet Protocol version 6 IPv6 message; and a forwarding unit, configured to forward, by the extended header adding unit, the access line information
  • the embodiment of the invention further provides a terminal, where the terminal includes:
  • An extension header adding unit configured to add at least one IPv6 extension header for the Internet Protocol version 6 IPv64 , text, where the IPv6 extension header carries device information;
  • a forwarding unit configured to forward an IPv6 packet that is added by the extended header adding unit to the IPv6 extended header.
  • An embodiment of the present invention further provides a network server, where the server includes: a receiving unit, configured to receive an Internet Protocol version 6 carrying access line information or device information
  • the processing unit is configured to search for a corresponding relationship according to the access line information or the device information, to perform corresponding operations on the IPv6 packet.
  • An embodiment of the present invention further provides an IPv6 network system, where the system includes a terminal and/or a network device, and a network server.
  • the terminal is configured to add at least one IPv6 extension header to the IPv6 packet, where the IPv6 extension header carries the device information, and forwards the IPv6 packet to which the IPv6 extension header is added.
  • the network device is configured to add the access line information to the IPv6 packet; and forward the IPv6 packet to which the IPv6 extension header is added;
  • the network server is configured to receive an IPv6 packet carrying the access line information or the device information, and perform a corresponding operation on the IPv6 packet according to the access line information or the device information.
  • the technical solution provided by the embodiment of the present invention can enable the device that receives the IPv6 packet to perform the IPv6 report by using the access line information and/or the device information by carrying the access line information and/or the device information in the IPv6 packet. Access, authentication, and authorization of texts, or assign different IPv6 address prefixes to different terminals.
  • the technical solution of the embodiment of the present invention can ensure the security, authentication, and authorization of the access in the IPv6 network, and assign different IP v6 address prefixes to different terminals to ensure normal routing of the network.
  • FIG. 1 is a schematic diagram of a general reference architecture of a DSL network based on IPv4;
  • FIG. 2 is a schematic flowchart of a method for processing an IPv6 packet according to Embodiment 1 of the present invention
  • FIG. 3 is a schematic flowchart of a method for processing an IPv6 packet according to Embodiment 2 of the present invention.
  • FIG. 4 is a schematic diagram of an extension loop multicast using an access loop identifier in a PON system according to Embodiment 3 of the present invention. Method flow diagram;
  • FIG. 5 is a schematic flowchart of a method for an access node to add an access loop identifier extension header to a DHCP message according to Embodiment 3 of the present invention
  • FIG. 6 is a schematic diagram of a method for a relay agent function to be located at an access node according to Embodiment 3 of the present invention
  • FIG. 7 is a schematic structural diagram of a network device according to Embodiment 4 of the present invention.
  • FIG. 8 is a schematic structural diagram of a terminal according to Embodiment 5 of the present invention.
  • FIG. 9 is a schematic structural diagram of a network server according to Embodiment 6 of the present invention.
  • the method for processing an IPv6 packet according to the first embodiment of the present invention includes: Step 21: Add access line information or device information to an IPv6 packet;
  • Step 22 Forward the IPv6 packet to which the access line information or device information is added.
  • the access line information includes an Access Loop ID (ALI) or other required access line information.
  • ALI Access Loop ID
  • the above-mentioned access line information or device information may be added in an IPv6 message by adding an extension header; the extension header may use a new extension header, or use an existing extension header, for example, using a hop-by-hop option header (Hop- The by-Hop Options Header) carries the access loop identifier.
  • Hop- The by-Hop Options Header carries the access loop identifier.
  • Information carrying the above extended headers may be required to be inspected and processed by each node on the path.
  • IPv6 packet When the IPv6 packet is an Internet Control Message Protocol Version (ICMPv6) message, it can also be carried in the ICMPv6 relay message, and the access line information is added to the ICMPv6 relay message to be in the IPv6 packet. Add access line information.
  • ICMPv6 Internet Control Message Protocol Version
  • a first IPv6 extended header with an access loop identifier, or an access loop identifier extension header is added to the IPv6 packet.
  • the first IPv6 extension header may further include other required information, such as a Next Header and an extended header length (Hdr Ext Len).
  • Hdr Ext Len an extended header length
  • the foregoing adding the access line information in the IPv6 packet may be implemented by the relay agent function, and the relay agent function may be located on the access node or the IP edge node of the access network, or at the same time on the access node and the IP edge node.
  • the relay agent function obtains access line information from the corresponding network device, for example, the access node or the IP edge node saves the access line information, such as the access loop identifier, and the relay agent function from the access node and/or IP
  • the access loop identifier is obtained on the edge node.
  • the relay agent function can add the access line information to the IPv6 packet by adding the extension header of the access loop identifier to the IPv6 packet or by carrying the ICMPv6 message in the ICMPv6 relay message.
  • the access line information can be used to guarantee the security, authentication or authorization of the access, and can also be used to assign an IPv6 address prefix to the terminal.
  • the method further includes: the second relay agent function receiving the IPv6 packet including the first IPv6 extension header; the second relay agent The function deletes the first IPv6 extension header in the IPv6 packet, and forwards the IPv6 packet.
  • the second relay agent function and the relay agent function may be relay agent functions located in different network devices, such as the relay agent function being the relay agent function located in the ONU, and the second relay agent function being located in the OLT. Following the proxy function.
  • the above device information includes a Vendor Class ID or other required device information.
  • the terminal saves its own device information.
  • the terminal adds a second IPv6 extension header with a device type identifier, or a device type identifier extension header, to the IPv6 packet.
  • the second IPv6 extension header may also include other required information, such as a Next Header and an extended header length.
  • the above device information can be used to ensure the security, authentication or authorization of the access, and can also be used to assign an IPv6 address prefix to the terminal.
  • the technical solution provided by the embodiment of the present invention adds an IPv6 extension header to an IPv6 packet, and carries the access line information and/or device information in the IPv6 extension header, or the ICMPv6 message and the access ring roadmap.
  • the information carried in the ICMPv6 relay message ensures that the device receiving the IPv6 packet can perform access, authentication and authorization of the IPv6 packet by using the access line information, and/or use the device information to assign different terminals to different terminals. IP v6 address prefix.
  • the technical solution of the embodiment of the present invention can ensure the security, authentication, and authorization of the access in the IPv6 network, and assign different IP v6 address prefixes to different terminals to ensure normal routing of the network.
  • the method for processing an IPv6 packet according to Embodiment 2 of the present invention includes: Step 31: Receive an IPv6 packet carrying access line information or device information, and obtain the access line information or Device Information;
  • Step 32 Search for the corresponding relationship according to the access line information or the device information, so as to perform corresponding operations on the IPv6 packet.
  • an IPv6 packet having at least one IPv6 extension header may be received, where the IPv6 extension header carries access line information or device information, and the access line information or device is obtained according to the IPv6 extension header. And receiving the IPv6 packet carrying the ICMPv6 message, the IPv6 packet carrying the ICMPv6 message and the access loop information by using the ICMPv6 relay message, and extracting the access line information from the ICMPv6 relay message.
  • the operations of the foregoing steps 31 and 32 may be implemented by a network server or a network device having the same function.
  • the specific devices that perform the foregoing operations in different network architectures may be different, such as an OLT in the PON or an IP address. Edge nodes, etc.
  • the correspondences found by different extension headers may be different, and the operations performed are different.
  • the correspondence may be saved and maintained by the OLT or IP edge node, or may be saved by other devices in the network. And maintained, and the OLT or IP edge node obtains the required correspondence from the device when performing step 32.
  • the IPv6 extension header is the first IPv6 extension header that carries the access loop identifier
  • the first correspondence is maintained, and the IPv6 packet is accessed, authenticated, or authorized.
  • the corresponding relationship is the corresponding relationship required for access, authentication, or authorization by using the access loop identifier.
  • the first correspondence may be an access loop identifier and an access permit or may be authenticated or authorized.
  • the correspondence between the packets such as the access line multicast permission table in the multicast scenario. For example, in a multicast scenario, based on the above The IPv6 extension header carrying the access line information, finds the access line multicast permission table, determines whether access is allowed, and if so, allows access, and if not, denies access.
  • the second correspondence is maintained to allocate the IPv6 address prefix for the IPv64 ⁇ text, and the second correspondence is implemented by using the device type identifier.
  • the second correspondence is the relationship between the device type identifier and the IPv6 address prefix allowed to be allocated.
  • the technical solution provided by the embodiment of the present invention can perform the access, authentication, and authorization of the IPv6 packet by using the access line information and/or the device information in the IPv6 packet, or assign different IPv6 address prefixes to different terminals.
  • the technical solution of the embodiment of the invention can ensure the security, authentication and authorization of the access in the IPv6 network, and assign different IP v6 address prefixes to different terminals to ensure the normal routing of the network.
  • the embodiment of the present invention mainly takes a scenario of adding a new access loop identifier extension header (hereinafter also referred to as a first IPv6 extension header) and/or a device type identifier extension header (hereinafter also referred to as a second IPv6 extension header) as an example. Be explained.
  • the access loop identifier and/or device type identifier information can also be extended and carried in the existing IPv6 extension header. It will be understood that those skilled in the art can learn the processing methods of other similar IPv6 extension headers by the following description.
  • the relay agent function implements the addition or deletion of the access loop identity extension header.
  • the relay agent function has the capability of processing the IPv6 extension header, and the relay proxy function may be located at the access node or the IP edge node of the access network. on.
  • the following is an example in which the relay agent function is located on the access node and the IPv6 packet is an Internet Control Message Protocol (ICMP).
  • ICMP Internet Control Message Protocol
  • IPv6 packets that have not been added to the access loop identity extension header before the access node are displayed.
  • Table 2 shows the packet after the access node adds the access loop identifier extension header to the IPv6 packet.
  • the access node directly adds the access loop identifier extension header to the IPv6 packet header, and is IPv6.
  • the Next Header of the packet header indicates that the IPv6 extended header carried by the packet is used to carry the access loop identification information, and can be represented as a Next Header ⁇ Access Loop ID.
  • IPv6 Header IPv6 Header
  • ICMP Message ICMP Message
  • IPv6 header IPv6 Header
  • the access node may add an access loop identifier extension header to the packet to carry the access loop identifier information when receiving each IPv6 packet.
  • the access node may also forward the IPv6 packet only when the IPv6 packet is forwarded. Add an Access Loop ID extension header.
  • the IPv64 message can be a Router Solicitation (RS) message, a Router Advertisement (RA) message, a Neighbor Solicitation (NS) message, or Neighbor Advertisements (NA). ) or Multicast Listener Discovery (MLD) messages.
  • RS Router Solicitation
  • RA Router Advertisement
  • NS Neighbor Solicitation
  • NA Neighbor Advertisements
  • MLD Multicast Listener Discovery
  • Table 3 shows the specific structure of an access loop identifier extension header, including Next Header, extended header length, access loop type, and access loop identifier, but is not limited thereto.
  • the specific structure of the extension header is adjusted.
  • the extension header may not carry the information of the access loop type, and the access network may be informed by the context information in the network.
  • the access loop identifier extension header includes 32 ⁇ n bits, 31 to 24 bits in the first row are allocated to the Next Header, and 23 to 16 bits in the first row are allocated to the extension. Head length, assigning 15 to 8 bits in the first line to the access loop type, which may be DSL, Passive Optical Network (PON) or Ethernet (Ethernet), etc., and the remaining bits Reserved for the access loop identifier.
  • the access loop type which may be DSL, Passive Optical Network (PON) or Ethernet (Ethernet), etc.
  • the access loop identifier may include an agent circuit identifier (Agent Circuit ID) and/or a proxy remote ID (Agent Remote ID);
  • Different access loop types may have different access loop identification coding formats.
  • the coding format of the access loop identifier is as follows:
  • ANI_port [: ANI_XPI.ANI_XCI]
  • the encoding method uses ASCII code.
  • eth port type, ATM-based DSL interface
  • AccessNodeldentifier The access node identifier (such as a DSLAM device), a string of up to 50 characters in length, with no spaces in the string;
  • ANI_rack access node rack number (such as DSLAM equipment supporting tight coupling) 0 ⁇ 15;
  • ANI_ frame access node chassis number 0 ⁇ 31;
  • ANI_ slot access node slot number 0 ⁇ 127;
  • ANI_subslot access node sub-slot number 0 ⁇ 31;
  • ANI_port Access node port number 0 ⁇ 255;
  • XPI Optional, such as interface type is atm, XPI corresponds to VPI, XPI is 0 ⁇ 255; if interface type is eth, XPI corresponds to PVLAN, XPI is 0 ⁇ 4095;
  • ANI—XCI If the interface type is atm, XCI corresponds to VCI, XCI is 0 ⁇ 65535; if the interface type is eth, XCI corresponds to CVLAN, XCI is 0 ⁇ 4095; ANI XPI.ANI XCI, which mainly carries the service information of the CPE side, can be used to identify future service type requirements, such as identifying specific services in a multi-P VC application.
  • the interface type is ATM
  • the AccessNodeIdentifier, ANI_rack, ANI_frame, ANI_slot, ANI_subslot, and ANI_port fields can be filled in with 0.
  • the access node is an optical network unit/optical path termination point.
  • the encoding method uses ASCII code.
  • Each line in the above format represents a string.
  • the strings are separated by a space. There can be no spaces in the middle of the string.
  • ⁇ ⁇ means that the content is mandatory; , indicating a side-by-side relationship, choose one more; "[]” means that the content is optional. " ⁇ ⁇ ", "
  • AccessNodeldentifier The identifier of the access node (such as the OLT device), which is a string of up to 50 characters. There must be no spaces in the middle of the string. The device identification method of the access node is not specified.
  • ANI_rack Access node rack number (such as OLT device supporting tight coupling) 0 ⁇ 15.
  • ANI_ frame Access node chassis number 0 ⁇ 31.
  • ANI_ slot Access node slot number 0 ⁇ 127.
  • ANI_subslot Access node subslot number 0 ⁇ 31.
  • ANI_port Access node port number 0 ⁇ 255.
  • ONUJD The identifier of the ONU, the length is 24 characters.
  • the specific ONU identification method is not specified (you can use the MAC address of the ONU, for example, 0000000000001A2B3C4D5E6F; you can also use the logical identifier of the ONU, such as SH_EPON_0000000098765432, where "SH” means Shanghai, "EPON” means EPON ONU, "00000098765432" is the serial number of the ONU); if the ONU is SFU, HGU or SBU, the field following this field may not be included.
  • ONU_Slot MDU/MTU type ONU slot number 0 ⁇ 15.
  • ONU_Subslot MDU/MTU type ONU sub-slot number 0 ⁇ 15.
  • Port—ID MDU/MTU type ONU port number 0 ⁇ 128.
  • trk ONU user port type: atm refers to the ATM protocol DSL interface (such as ADSL2+), eth refers to the ordinary Ethernet interface, trk refers to the trunk type Ethernet interface, and the PTM mode VDSL2 interface should be eth or trk. Types of.
  • Port XPI.Port XCI is mainly used for user-side service information of MDU/MTU-type ONU ports carrying DSL interfaces. It can be used to identify future service type requirements, such as identifying specific services in multi-PVC or multi-VLAN applications. among them:
  • Port XPI Optional, for example, the interface type of the ONU is DSL interface, Port_XPI corresponds to the VPI of the interface, XPI is 0 ⁇ 255; if the interface type is eth or trk, Port_XPI corresponds to S VLAN, and the valid value is 0 ⁇ 4095 ( 4096 means no S VLAN);
  • Port XCI Optional, for example, the interface type of the ONU is DSL interface, Port_XCI corresponds to the VCI of the interface, and the value is 0 ⁇ 65535; if the interface type is eth or trk, Port_XCI corresponds to C VLAN, and the valid value is 0. ⁇ 4095.
  • LN EP GP indicates the access technology adopted by the user; LN indicates LAN access, EP indicates EPON technology, and GP indicates GPON technology.
  • VLAN ID value is filled in 4096.
  • the S VLAN is 4096.
  • the C VLAN is the VLAN ID of the user. The value is 0 to 4095.
  • the broadband user access line (port) information encoding format in the LAN system uses the PON system broadband user access line (port) information encoding format.
  • the coding format of the access line identifier is as follows:
  • ONU_Slot/ONU_Subslot/Port_ID ⁇ atm
  • the encoding method uses ASCII code.
  • Each line in the above format represents a string.
  • the strings are separated by a space. There can be no spaces in the middle of the string.
  • ⁇ ⁇ means that the content is mandatory; "" indicates a side-by-side relationship, choose one more; "[]” means that the content is optional. " ⁇ ⁇ ", "
  • AccessNodeldentifier The identifier of the access node (such as the campus corridor switch device) is a string of up to 50 characters. There is no space in the string. The method for identifying the access device is not specified.
  • ANI_rack Access node rack number (such as support for tightly coupled corridor switch equipment) 0 ⁇ 15.
  • ANI_ frame Access node chassis number 0 ⁇ 31.
  • ANI_ slot Access node slot number 0 ⁇ 127.
  • ANI_subslot Access node subslot number 0 ⁇ 31.
  • ANI_port Access node port number 0 ⁇ 255.
  • ONUJD The identifier of the corridor switch, the length is 24 characters.
  • the identification method of the specific corridor switch is not specified (for example, the network management IP of the corridor switch can be used, or the number of the corridor switch in the resource management system can be used).
  • ONU_Slot The slot number of the corridor switch is 0 ⁇ 15.
  • ONU_Subslot Sub-slot number 0 ⁇ 15 of the corridor switch.
  • Port— ID The port number of the corridor switch is 0 ⁇ 128.
  • hyd ⁇ Type of the user port of the corridor switch.
  • the value of this field in Option 82 for IPTV address allocation is "trk” or “hyd,,, “trk” Trunk-type Ethernet interface (the same port may have PPPoE Internet access service); "hyd” identifies the hybrid port of the Hybrid type. (On the UNI interface of the corridor switch, the Internet service is untagged, and the corridor switch is tagged with it; IPTV The business is tagged).
  • Port XPI The current unified value is 4096 (meaning there is no SVLAN);
  • Port XCI Corresponding to the IPTV service VLAN, the valid value is 0 ⁇ 4095;
  • LN EP GP Indicates the access technology used by this user.
  • the value in the LAN system is "LN".
  • LN the concept of rack, frame, and subslot is not required.
  • the corresponding location should be filled with 0, and the invalid VLAN ID value should be filled with 4096.
  • the S VLAN is 4096
  • the C VLAN is the VLAN ID of the user. The value is 0 to 4095.
  • the foregoing relay agent function may include a multi-level relay agent, and each level of the relay agent may add or delete an IPv6 extension header of the current level to add or delete an access loop of the current level. Identification information.
  • the relay agent at each level can add the access loop identifier extension header of the current level to the IPv6 packet as follows:
  • the current level relay agent directly adds the access loop identifier extension header of the current level after the access loop identifier extension header of the upper level, where the Next Header in the access loop identifier extension header of the upper level is set. Set to indicate the access loop identifier extension header of the current level; or,
  • the current level relay agent modifies the access loop identifier extension header of the upper level, and adds the current level access loop identifier to the access loop identifier of the access loop identifier extension header of the upper level, but does not increase New IPv6 extension header.
  • the relay agent function adds the access loop identifier extension header to the IPv6 packet and forwards the IPv6 packet.
  • the relay agent function may delete the access ring in the IPv6 packet, if necessary, such as considering network security factors. After the path identifier is extended, the IPv6 packet is forwarded to the next network device.
  • the relay agent function can delete the access loop identifier extension headers one by one according to the order of the extension headers, for example, according to the principle that the added packets are deleted first.
  • the access loop identifier extension headers are deleted layer by layer.
  • the location and number of bits of the access loop identifier extension header to be deleted may also be set, and the extension header added first but required to be deleted early may be directly deleted.
  • the relay agent function deletes each access loop identifier one by one.
  • the network server When the network server receives the foregoing IPv6 packet with at least one access loop identifier extension header, the network server searches for the first corresponding relationship maintained according to the access loop identifier extension header, to report the IPv6 packet.
  • the text performs the corresponding operation.
  • the first correspondence may be an access line multicast permission table, and the network server queries the access line multicast permission table according to the access loop identifier in the extension header to determine whether to allow multicast operation.
  • Device type identifier extension header For example, the first correspondence may be an access line multicast permission table, and the network server queries the access line multicast permission table according to the access loop identifier in the extension header to determine whether to allow multicast operation.
  • the terminal When the terminal initiates an IPv6 packet, the terminal adds a Vendor Class ID extension header to the IPv6 packet.
  • the Next Header in the IPv6 packet header of the IPv6 packet indicates that the IPv6 extended header carried in the IPv6 packet is a device type identifier extension header.
  • the device type identifier extension header includes a Next Header, an extended header length, and a device type identifier.
  • the device type identifier indicates the type of the terminal device and can include the device type option (Vendor) Class Option ).
  • IPv6 header IPv6 Header
  • the device type identifier extension header includes 32xn bits, 31 to 24 bits in the first row are assigned to the Next Header, and 23 to 16 bits in the first row are allocated to the extended header length. , the remaining bits are reserved for the device type identifier.
  • the user terminal sends the IPv6 packet with the device type identifier to the network, and the device in the network transparently transmits the packet.
  • the IP edge node can identify the type of the user terminal and the user service according to the device type identifier extension header in the packet.
  • the IP edge node uses the device type identifier to search for the second corresponding relationship that is maintained, and allocates different IPv6 address prefixes for different services of the user terminal. For example, the IP edge node queries the terminal type and the address prefix according to the learned terminal type. Relationship, and assign an IPv6 address prefix to the message accordingly.
  • Step 1 The multicast terminal sends a multicast listener discovery (MLD JOIN) message to the ONU.
  • MLD JOIN multicast listener discovery
  • Step 2 The ONU adds an access loop identifier extension header to the received IP address of the MLD JOIN message, and the access loop identifier extension header carries an access loop identifier (ALI).
  • ALI access loop identifier
  • Step 3 The OLT determines whether the MLD JOIN message can be authorized according to the ALI and access line multicast permission table.
  • the access line multicast permission table corresponding to each access line is maintained on the OLT, and the OLT queries the access line multicast permission table according to the access line identifier.
  • Step 4 If the corresponding access line does not allow the multicast address requested by the MLD JOIN message, then
  • the OLT discards the MLD JOIN message.
  • Step 5 If the corresponding access line allows the multicast address requested by the MLD JOIN message, the OLT passes the Operations Administration and Maintenance (OAM) or the Optical Network Unit Management and Control Interface (OMCI). a protocol, for example, the OLT sends an Extended Multicast Control OAM message and authorizes the ONU to configure a corresponding Multicast Entry;
  • OAM Operations Administration and Maintenance
  • OMCI Optical Network Unit Management and Control Interface
  • Step 6 Referring to FIG. 4, in this scenario, when the corresponding access line allows the multicast address requested by the MLD JOIN message, the method further includes: determining whether the requested multicast address in the MLD JOIN message first appears in the foregoing On the OLT.
  • Step 7 If the multicast address requested by the MLD JOIN message is first generated on the OLT, the OLT may forward the MLD message to the previous node, such as a multicast router. Before forwarding, the OLT deletes the access line identity extension header. If the multicast address requested by the above MLD JOIN message does not appear for the first time on the OLT, the MLD JOIN message is discarded.
  • Both the OLT and ONU support the relay agent function.
  • the above operation implements access and authorization of the MLD JOIN message through the access loop identifier extension header, thereby ensuring network security.
  • the MLD JOIN message carrying the access loop identifier extension header may be further used by a management or control node in the network to collect the user's joining and leaving of the multicast group.
  • the BRAS can use the access loop identifier in the MLD JOIN message to count which users join or leave the multicast group.
  • DHCP dynamic host configuration protocol
  • Step 1 The home gateway or user terminal (ie DHCP client) sends a DHCP message to the access node.
  • DHCPv6 is used as an example.
  • the DHCP message and its IPv6 packet format are as shown in Table 6.
  • the DHCP message includes the DHCP extension header option (Option).
  • Step 2 The access node adds an access loop identifier extension header to the received IP packet of the DHCP message.
  • the access loop identifier extension header carries the access loop identifier (ALI).
  • ALI access loop identifier
  • the access node forwards the DHCP message to the IP edge node.
  • the access node supports the relay agent function.
  • Step 3 After receiving the DHCP message, the IP edge node inserts the access loop identifier into the DHCP message according to the access loop identifier extension header of the IP packet where the DHCP message is located. For example, the IP edge node extracts the access loop identifier and deletes the access loop identifier extension header of the IP packet where the DHCP message is located, and encapsulates the DHCP message and the access loop identifier in the transit proxy message, and then forwards the packet to the DHCP server. . Before forwarding, the IP edge node can authenticate or authorize according to the access loop identity to the AAA server.
  • the IP edge node supports a relay agent function, and the relay agent function supported on the IP edge node may be referred to as a second relay agent function with respect to the relay agent function on the access node.
  • the IP edge node can insert the access loop identifier into the DHCP message in at least the following two ways. The following two methods are described by using DHCPv6 as an example. method one
  • the IP edge node deletes the access loop identifier extension header in the received DHCP v6 message
  • the IPv6 message is encapsulated into a relay message option (Relay Message Option) and placed in the relay agent message (Relay Agent).
  • the transit agent message is composed of a relay agent MSG Header and an option (Option).
  • the IP edge node adds the access loop identifier to the loop proxy ID in the form of Option, such as the interface identifier option (Interface-id option), according to the access loop identifier extension header of the IP packet in which the DHCPv6 message is located.
  • Option such as the interface identifier option (Interface-id option)
  • the IP edge node after receiving the DHCPv6 message, extracts the access loop identifier in the access loop identifier extension header of the IP packet where the DHCPv6 message is located, and deletes the access loop identifier extension header.
  • the access loop ID is added directly to the Option-id option, such as the Interface-id option.
  • Step 4 After receiving the DHCP message from the IP edge node, the DHCP server performs corresponding processing according to the access loop identifier. For example, the IP address/prefix allocation or the access control is performed according to the access loop identifier.
  • the DHCP server replies to the DHCP client with the DHCP message carrying the access loop identifier, taking DHCPv6 as an example.
  • the DHCP server sends the replied DHCP message to the IP edge node.
  • the IP edge node adds the access loop identifier extension header to the IP packet according to the access loop identifier carried in the DHCP message.
  • Step 6 After receiving the DHCP message, the access node forwards the access loop identification information in the extension header of the IP packet to the corresponding home gateway or user on the corresponding access line. terminal. Before forwarding, the access loop identifier extension header in the IP packet can be deleted for security reasons.
  • the embodiment of the present invention provides a method for using an IPv6 packet to be an ICMPv6 message.
  • the new ICMPv6 message carries the existing ICMPv6 message and carries the method of accessing the loop identifier.
  • the case where the ICMPv6 relay message is an ICMPv6 relay message is taken as an example, and the specific name of the new message is not limited herein.
  • the data sender signs the ICMPv6 message, and the data receiver knows whether the data has been tampered with by verifying the signature. When the signature is consistent, the data is not tampered with, and it is allowed to be safe. data. If the access loop identification information is added directly to the ICMPv6 message, the integrity of the ICMPv6 message is destroyed. The data receiver will find out that the ICMPv6 message has been modified by signature verification, but it is impossible to know whether this modification has other illegal tampering besides adding the access line identification information.
  • the ICMPv6 message is carried in the ICMPv6 relay message as it is, and the data receiver extracts the ICMPv6 message from the ICMPv6 relay message and performs signature verification, so that the ICMPv6 message can be found to be tampered with.
  • the data receiver can also obtain access line identification information from the ICMPv6 relay message for access security, authentication or authorization.
  • the above-mentioned operation of carrying the access loop identifier by the ICMPv6 relay message can be implemented by the relay agent function.
  • the scenario in which the relay agent function is located on the access node is taken as an example.
  • the method specifically includes the following steps:
  • Step 1 The home gateway or the user terminal sends an ICMPv6 message to the access node.
  • the format of the ICMPv6 message and its IPv6 packet is shown in Table 10.
  • NextHeader is 58.
  • Step 2 The access node carries the received ICMPv6 message from the user terminal/home gateway to the ICMPv6 relay message, and adds an access loop ID (Access Loop ID) to the ICMPv6 relay message; the access node uses the ICMPv6
  • the transit message is forwarded to the IP edge node.
  • the value of the Code field is set to 0, indicating that the ICMPv6 message from the user to the router is transited.
  • Table 11 shows the structure of the ICMPv6 message carrying the ICMPv6 message and the access ring identifier.
  • the ICMP v6 relay message header is composed of an ICMP v6 Relay Message Header and an option (Option).
  • Table 12 shows the specific structure of the ICMPv6 relay message.
  • the Type field is the type of the ICMP v6 message, indicating that the message is an ICMP v6 relay message.
  • the Code field indicates the direction of the ICMPv6 relay: The Code value is 0, indicating that the ICMPv6 message from the user to the router is transited; the Code value is 1, indicating Transfer ICMP v6 messages from the router to the user;
  • the Type field indicates an existing ICMPv6 message
  • the Code field indicates that the ICMPv6 relay is performed.
  • Checksum is a checksum
  • Client IP/MAC address Option is used to indicate the IP/MAC address of the ICMP sender. Usually, it is carried only when the Code value is 0.
  • the Relay Option is mandatory and carries the ICMPv6 message that is transferred.
  • the specific format of the ICMPv6 message is the same as the information except the IPv6 header in Table 10.
  • IPv6 pseudo-header Option The school-sum for the Relay Option.
  • the specific format of the IP v6 pseudo-header option is shown in Table 13 below: Table 13
  • Application layer packet length (Upper-Layer Packet Length)
  • the destination address in the IPv6 pseudo-header option is the IP address of the final destination of the route extension header; the application-layer packet length (Upper-Layer Packet Length) contains the ICMPv6 before the transit. Header and payload length.
  • the destination IP address and source IP address of the ICMPv6 relay message can be used for the purpose of the original ICMPv6 message.
  • the IP address and the source IP address are forwarded.
  • the ICMPv6 relay message can be sent without the IPv6 pseudo-message header.
  • the ICMPv6 relay message extracts the information of the original IPv6 packet header of the original ICMPv6 message as the IPv6 pseudo-message header. It is carried in the ICMPv6 relay message, and then adds a new IPv6 header before the ICMPv6 relay message.
  • the destination IP address is the IP edge node address
  • the source IP address is the access node address
  • the user IP/MAC address option is set. Source IP/MAC address of the original ICMPv6 message.
  • Step 3 After receiving the ICMPv6 relay message, the IP edge node extracts the ICMPv6 message and the access loop identifier from the user terminal/home gateway from the ICMPv6 relay message, and needs to check the checksum of the ICMPv6 message from the user terminal/home gateway.
  • the access loop identifier for example, performing authentication or authorization according to the access loop identifier to the AAA server, or performing IP address prefix allocation according to the access loop identifier;
  • the IP edge node replies to the user terminal/home gateway by using the ICMPv6 message, and the ICMPv6 message also needs to be carried in the ICMPv6 relay message, and carries the access in the ICMPv6 relay message.
  • the IP edge node forwards the ICMPv6 relay message to the access node.
  • the value of the Code field is set to 1, indicating that the ICMPv6 packet from the router to the user is transited.
  • the source IP address of the ICMPv6 relay message is the IP edge node address, and the destination IP address is the user terminal/home gateway address.
  • the ICMPv6 relay message can be without the IPv6 pseudo-message header option; or the IP address of the ICMPv6 relay message.
  • the source IP address of the packet is the IP edge node address, and the destination IP address is the address of the access node.
  • the ICMPv6 relay message needs to carry the information that will reply the user terminal/home gateway with the IPv6 header of the ICMPv6 message as IPv6.
  • the pseudo-message header is carried in the ICMPv6 relay message.
  • the source IP address of the IPv6 pseudo-message header is the IP edge node address, and the destination IP address is the user terminal/home gateway address.
  • the verification of the checksum of the ICMP v6 message of the user terminal/home gateway may be performed according to the IPv6 pseudo-message header option and the ICMPv6 header of the user terminal/home gateway; if the ICMPv6 relay message does not have the IPv6 pseudo-message header option Then, an IPv6 pseudo-message header is generated according to the IPv6 header of the ICMPv6 relay message, and then the IPv6 pseudo-message header and the ICMPv6 header of the user terminal/home gateway are verified.
  • Step 4 After receiving the ICMP v6 Relay message, the access node extracts the ICMPv6 message and the access loop identifier from the user terminal/home gateway, and sends an ICMPv6 message to the user terminal/home gateway according to the access loop identifier. The corresponding access line is forwarded to the home gateway or the user terminal. If the IP address of the IP packet where the ICMPv6 relay message is located is the IP edge node address, the destination IP address is the user terminal/home gateway address, and the access node can The IPv6 header of the ICMPv6 relay message is forwarded.
  • the access node extracts the IPv6 pseudo packet header from the ICMPv6 relay message to construct a new IPv6 packet header.
  • the source IP address is an IP edge node address
  • the destination IP address is a user terminal/home gateway address
  • an ICMPv6 message replying to the user terminal/home gateway is sent.
  • the technical solution provided by the embodiment of the present invention can enable the device that receives the IPv6 packet to utilize the access line information and/or the device letter by carrying the access line information and/or the device information in the IPv6 extension header. Perform IPv6 packet access, authentication, and authorization, or assign different IPv6 address prefixes to different terminals.
  • the technical solution of the embodiment of the present invention can ensure the security, authentication, and authorization of the access in the IPv6 network, and assign different IP v6 address prefixes to different terminals to ensure normal routing of the network.
  • a fourth embodiment of the present invention provides a network device.
  • the device includes: an information adding unit 71, configured to add access line information for an IPv6 packet;
  • the forwarding unit 72 is configured to forward the IPv6 message added by the information adding unit 71 to the access line information.
  • the information adding unit 71 is specifically configured to add at least one IPv6 extension header to the IPv6 packet to add the access line information in the IPv6 packet; the added IPv6 extension header includes the access loop identifier, and the next A header Next Header and an extended header length; wherein, the Next Header indicates information of the next extended header, and the access line information includes an access loop identifier.
  • the information adding unit 71 is specifically configured to carry the ICMPv6 message in the ICMPv6 relay message to add the access line information in the IPv6 packet, where the IPv6 packet is an ICMPv6 message, and the ICMPv6 relay message is used.
  • An access loop identifier is carried, and the access line information includes the access loop identifier.
  • the information adding unit 71 includes a current level adding module and an upper level adding module, where the upper level adding module is configured to add a previous level IPv6 extended header to the IPv6 packet, where the current The level adding module is configured to add a current level IPv6 extension header to the IPv6 packet by using at least one of the following manners:
  • the device may further include: a receiving and deleting unit, configured to receive the IPv6 packet with the first IPv6 extended header, delete the first IPv6 extended header in the IPv6 packet, and forward the Said IPv6 message.
  • a receiving and deleting unit configured to receive the IPv6 packet with the first IPv6 extended header, delete the first IPv6 extended header in the IPv6 packet, and forward the Said IPv6 message.
  • each functional module and unit in the embodiment of the apparatus of the present invention reference is made to the method embodiment of the present invention.
  • the functional modules and units in the device embodiment of the present invention may be implemented separately or integrated in one or more units.
  • the network device described above can be implemented by an access node and/or an IP edge node of the access network.
  • the technical solution provided by the embodiment of the present invention can enable the device that receives the IPv6 packet to perform the IPv6 report by using the access line information and/or the device information by carrying the access line information and/or the device information in the IPv6 extension header. Access, authentication, and authorization of texts, or assign different IPv6 address prefixes to different terminals.
  • the technical solution of the embodiment of the present invention can ensure the security, authentication, and authorization of the access in the IPv6 network, and assign different IP v6 address prefixes to different terminals to ensure normal routing of the network.
  • a fifth embodiment of the present invention provides a terminal. As shown in FIG. 8, the terminal includes:
  • the extension header adding unit 81 is configured to add at least one IPv6 extension header for the IPv6 packet, where the IPv6 extension header carries device information.
  • the forwarding unit 82 is configured to forward the IPv6 packet that is added by the header adding unit 81 to the IPv6 extended header.
  • IPv6 extension header added by the extension header adding unit 81 includes a device type identifier
  • Next Header indicates information of the next extended header, and the device information includes a device type identifier.
  • each unit of the terminal in the device embodiment of the present invention refers to the method embodiment of the present invention.
  • the functional modules and units in the device embodiment of the present invention may be implemented separately or integrated in one or more units.
  • the technical solution provided by the embodiment of the present invention adds an IPv6 extension header to an IPv6 packet, carries the access line information and/or device information in the IPv6 extension header, and performs IPv6 packet by using the access line information and/or the device information. Access, authentication and authorization, or assign different IP v6 address prefixes to different terminals.
  • the technical solution of the embodiment of the present invention can ensure the security, authentication, and authorization of the access in the IPv6 network, and assign different IP v6 address prefixes to different terminals to ensure normal routing of the network.
  • the sixth embodiment of the present invention further provides a network server. As shown in FIG. 9, the server includes: a receiving unit 91, configured to receive an IPv6 packet carrying access line information or device information, to obtain the access line. Information or equipment information;
  • the processing unit 92 is configured to search for a corresponding relationship according to the access line information or device information, to perform corresponding operations on the IPv6 packet.
  • the receiving unit 91 is configured to receive an IPv6 packet with at least one IPv6 extended header, where the IPv6 extended header carries access line information or device information, and obtains the access line information according to the IPv6 extended header. Or equipment information; or,
  • IPv6 packet carrying an ICMPv6 message Receiving an IPv6 packet carrying an ICMPv6 message, the IPv6 packet carrying the ICMPv6 message and the access loop information by using the ICMPv6 relay message, and extracting the access line information from the ICMPv6 relay message.
  • the processing unit 92 is configured to: according to the access line information or the device information, search for a first correspondence, to access, authenticate, or authorize the IPv6 packet, where the IPv6 extension header a first IPv6 extension header, where the first IPv6 extension header carries an access loop identifier, a next header Next Header, and an extended header length, where the access line information includes the access loop identifier; or,
  • the processing unit 92 is configured to search for the second correspondence according to the access line information or the device information, to allocate an IPv6 address prefix to the IPv6 packet, where the IPv6 extension header is a second IPv6 extension header,
  • the second IPv6 extension header carries a device type identifier, a Next Header, and an extended header length, and the device information includes the device type identifier.
  • the processing unit 92 can also have both of the functions described above.
  • each unit of the network server in the device embodiment of the present invention refers to the method embodiment of the present invention.
  • the functional modules and units in the device embodiment of the present invention may be implemented separately or integrated in one or more units.
  • the device provided by the embodiment of the present invention can enable the device that receives the IPv6 packet to perform IPv6 by using the access line information and/or the device information, by carrying the access line information and/or the device information in the IPv6 packet. Packet access, authentication, and authorization, or assign different IPv6 address prefixes to different terminals.
  • the technical solution of the embodiment of the present invention can ensure security, authentication, and authorization of access in an IPv6 network, and Different IP v6 address prefixes are assigned to different terminals to ensure normal routing of the network.
  • An embodiment of the present invention further provides an IPv6 network system, where the system includes a terminal and/or a network device, and a network server.
  • the terminal is configured to add at least one IPv6 extension header to the IPv6 packet, where the IPv6 extension header carries the device information, and forwards the IPv6 packet to which the IPv6 extension header is added.
  • the network device is configured to add at least one IPv6 extension header to the IPv6 packet, where the IPv6 extension header carries the access line information, and forwards the IPv6 packet with the IPv6 extension header added;
  • the network server is configured to receive an IPv6 packet carrying the access line information or the device information, and perform a corresponding operation on the IPv6 packet according to the access line information or the device information.
  • the device provided by the embodiment of the present invention can enable the device that receives the IPv6 packet to perform IPv6 reporting by using the access line information and/or the device information by carrying the access line information and/or the device information in the IPv6 packet. Access, authentication, and authorization of texts, or assign different IPv6 address prefixes to different terminals.
  • the technical solution of the embodiment of the present invention can ensure the security, authentication, and authorization of the access in the IPv6 network, and assign different IP v6 address prefixes to different terminals to ensure normal routing of the network.
  • the present invention can be implemented by means of software plus the necessary general hardware platform. Based on such understanding, the technical solution of the present invention, which is essential or contributes to the prior art, may be embodied in the form of a software product, which may be stored in a storage medium such as a ROM/RAM, a disk, An optical disk or the like includes instructions for causing a computer device (which may be a personal computer, server, or network device, etc.) to perform the methods described in various embodiments of the present invention or portions of the embodiments.
  • a computer device which may be a personal computer, server, or network device, etc.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

一种 IPv6报文的处理方法、 设备和系统 技术领域
本发明涉及互联网技术,尤其涉及一种 IPv6报文的处理方法、设备和系统。 背景技术
随着因特网应用的普及, 用户对网络带宽的要求也越来越高, 如何基于已 有的资源实现高速且安全的接入,成为业界研究的重点。而数字用户线路( Digital Subscriber Line , DSL )网络由于基于庞大的电话网, 拥有大量的用户基础, 得 到了广泛的重视。
参见图 1显示了 DSL网络通用参考架构示意图。 其中, T为驻地网络
( Customer Premises Network ,CPN ) 中, 用户设备 ( User Equipment,UE )和驻 地网关 ( Residential Gateway , RG ) 间的参考点; U为 RG和接入节点 ( Access Node, AN ), 例如数字用户线接入复用设备( Digital Subscriber Line Access Multiplexer, DSLAM ), 间的参考点, CPN网絡与接入网间采用 DSL接入技术 互连; 在接入网( Access Network, AN )中, AN和宽带接入服务器(Broadband Remote Access Server, BRAS )或宽带网络网关 ( Broadband Network Gateway, BNG )间为汇聚网络, V为接入网中 AN和 BRAS/BNG间的以太网汇聚参考点; A10为接入网与服务提供商( Service Provider, SP )间的参考点, 该参考点既可 以连接应用服务提供商( Application Service Provider, ASP )到拥有接入网的网 络业务提供商 (Network Service Provider, NSP ), 或在漫游情景下, 连接 NSP 到拜访地接入网。 不同类型的网絡中, 采用的具体设备和技术会有差异。 例如, 在无源光网络( Passive Optical Network, PON ) 网络中, AN可以为光路终结点 ( Optical Line Termination,OLT )或光网络单元 (Optical Network Unit, ONU), CPN与接入网间采用 PON等接入技术互连。
现有的 DSL网络通常 于互联网协议第四版( Internet Protocol Version 4, IPv4 )构建的, 随着 IPv4地址的枯竭, 从 IPv4向 IPv6的演进成为一个必然的 趋势。 然而, 目前 IPv6在很多方面上的性能还很不完善。 例如, 无法保证接 入的安全、 认证或授权等; 并且, 由于网络无法识别用户设备的类型, 导致为 不同的用户分配了相同的 IPv6前缀, 影响了正常的路由, 这已成为业界亟待解 决的问题之一。
发明内容
为解决现有技术中存在的问题, 本发明的实施例提供一种 IPv6报文的处理 方法、 设备和系统, 用于在 IPv6网络中保证接入的安全、 认证和授权, 且为不 同的终端分配不同的 IP v6地址前缀, 保证了网络的正常路由。
为达到上述目的, 本发明的实施例釆用如下技术方案:
本发明实施例提供了一种互联网协议第六版 IPv6报文的处理方法, 所述方 法包括:
在 IPv6报文中添加接入线路信息或设备信息;
转发添加了所述接入线路信息或设备信息的 IPv6报文。
本发明实施例还提供了一种互联网协议第六版 IPv6报文的处理方法,包括: 接收携带接入线路信息或设备信息的 IPv6报文, 得到所述接入线路信息或 设备信息;
根据所述接入线路信息或设备信息, 查找对应关系, 以对所述 IPv6报文进 行相应的操作。
本发明实施例还提供了一种网络设备, 所述设备包括:
信息添加单元, 用于为互联网协议第六版 IPv6报文添加接入线路信息; 转发单元, 用于转发由所述扩展头添加单元添加了所述接入线路信息的
IPv6报文。
本发明实施例还提供了一种终端, 所述终端包括:
扩展头添加单元, 用于为互联网协议第六版 IPv64艮文添加至少一个 IPv6 扩展头, 所述 IPv6扩展头携带设备信息;
转发单元, 用于转发由所述扩展头添加单元添加了所述 IPv6扩展头的 IPv6 报文。
本发明实施例还提供了一种网络服务器, 所述服务器包括: 接收单元, 用于接收携带接入线路信息或设备信息的互联网协议第六版
IPv6报文, 得到所述接入线路信息或设备信息;
处理单元, 用于根据所述接入线路信息或设备信息, 查找对应关系, 以对 所述 IPv6报文进行相应的操作。
本发明实施例还提供了一种 IPv6网络系统,所述系统包括终端和 /或网络设 备, 以及网络服务器,
所述终端, 用于为 IPv6报文添加至少一个 IPv6扩展头, 所述 IPv6扩展头 携带设备信息; 转发添加了所述 IPv6扩展头的 IPv6报文;
所述网络设备, 用于为 IPv6报文添加接入线路信息; 转发添加了所述 IPv6 扩展头的 IPv6报文;
所述网络服务器, 用于接收携带接入线路信息或设备信息的 IPv6报文; 根 据所述接入线路信息或设备信息, 查找对应关系, 以对所述 IPv6报文进行相应 的操作。
本发明实施例提供的技术方案, 通过在 IPv6报文中携带接入线路信息和 / 或设备信息,可以使收到该 IPv6报文的设备能够利用接入线路信息和 /或设备信 息执行 IPv6报文的接入、认证和授权,或为不同的终端分配不同的 IPv6地址前 缀。本发明实施例的技术方案能够在 IPv6网络中保证接入的安全、认证和授权, 且为不同的终端分配不同的 IP v6地址前缀, 保证了网络的正常路由。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案, 下面将对实施 例或现有技术描述中所需要使用的附图作简单地介绍, 显而易见地, 下面描述 中的附图仅仅是本发明的一些实施例, 对于本领域普通技术人员来讲, 在不付 出创造性劳动的前提下, 还可以根据这些附图获得其他的附图。
图 1为基于 IPv4的 DSL网络通用参考架构示意图;
图 2为本发明实施例一提供的 IPv6报文的处理方法流程示意图;
图 3为本发明实施例二提供的 IPv6报文的处理方法流程示意图;
图 4为本发明实施例三提供的 PON系统中利用接入环路标识扩展头组播的 方法流程示意图;
图 5为本发明实施例三提供的接入节点在 DHCP消息中添加接入环路标识 扩展头时的方法流程示意图;
图 6为本发明实施例三提供的中继代理功能位于接入节点时的方法示意图; 图 7为本发明实施例四提供的网络设备结构示意图;
图 8为本发明实施例五提供的终端的结构示意图;
图 9为本发明实施例六提供的网络服务器的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图, 对本发明实施例中的技术方案进行清 楚、 完整地描述, 显然, 所描述的实施例仅仅是本发明一部分实施例, 而不是 全部的实施例。 基于本发明中的实施例, 本领域普通技术人员在没有作出创造 性劳动前提下所获得的所有其他实施例, 都属于本发明保护的范围。
本发明实施例一提供的 IPv6报文的处理方法,如图 2所示,所述方法包括: 步骤 21 : 在 IPv6报文中添加接入线路信息或设备信息;
步骤 22: 转发添加了所述接入线路信息或设备信息的 IPv6报文。
在本发明实施例中,上述接入线路信息包括接入环路标识( Access Loop ID, ALI ) 或其它所需的接入线路信息。 可以通过添加扩展头以在 IPv6报文中添加 上述接入线路信息或设备信息; 该扩展头可以采用新增的扩展头, 或利用已有 的扩展头, 例如, 采用逐跳选项头(Hop-by-Hop Options Header )来携带接入环 路标识。 可以要求承载上述扩展头的信息被该信息经过路径上的每个节点检查 和处理。 当 IPv6报文为因特网控制消息协议 ( Internet Control Message Protocol Version 6, ICMPv6 )消息时, 也可以将其承载在 ICMPv6中转消息中, 并在该 ICMPv6中转消息添加接入线路信息, 以在 IPv6报文中添加接入线路信息。
当釆用添加扩展头的方式时, 为 IPv6报文添加具有接入环路标识的第一 IPv6扩展头, 或称之为接入环路标识扩展头。 除了上述接入环路标识, 该第一 IPv6扩展头还可以包括其它所需的信息, 如下一个包头 (Next Header )和扩展 头长度(Hdr Ext Len )等。 为了便于清楚描述本发明实施例的技术方案, 在本发明的实施例中, 釆用 了 "第一"、 "第二" 等字样对功能和作用基本相同的相同项或相似项进行区分, 本领域技术人员可以理解 "第一"、 "第二" 等字样并对不对数量和执行次序进 行限定。
上述在 IPv6报文中添加接入线路信息可以由中继代理功能实现, 中继代理 功能可以位于接入网的接入节点或 IP边缘节点上, 或同时位于接入节点和 IP 边缘节点上。 中继代理功能从相应的网络设备上获取接入线路信息, 例如接入 节点或 IP边缘节点保存该接入线路信息, 如接入环路标识, 中继代理功能从接 入节点和 /或 IP边缘节点上获取接入环路标识。 中继代理功能可以通过在 IPv6 报文中添加接入环路标识的扩展头, 或将 ICMPv6消息承载在 ICMPv6中转消 息中, 以在 IPv6报文中添加接入线路信息。 该接入线路信息可用于保证接入的 安全、 认证或授权, 也可用于为终端分配 IPv6地址前缀。
进一步的,在上述中继代理功能为 IPv6报文添加第一 IPv6扩展头之后,还 可以包括: 第二中继代理功能接收包含所述第一 IPv6扩展头的 IPv6报文; 第二 中继代理功能删除所述 IPv6报文中的第一 IPv6扩展头,并转发所述 IPv6报文。
第二中继代理功能与上述中继代理功能可以为位于不同网络设备的中继代 理功能, 如上述中继代理功能为位于 ONU的中继代理功能, 第二中继代理功能 为位于 OLT的中继代理功能。
上述的设备信息包括设备类型标识( Vendor Class ID )或其它所需的设备信 息。 终端中保存其自身的设备信息。 当釆用添加扩展头的方式时, 终端为 IPv6 报文添加具有设备类型标识的第二 IPv6扩展头,或称之为设备类型标识扩展头。 除了上述设备类型标识, 该第二 IPv6扩展头还可以包括其它所需的信息, 如 Next Header和扩展头长度等。
上述的设备信息可以用于保证接入的安全、 认证或授权, 也可用于为终端 分配 IPv6地址前缀。
本发明实施例提供的技术方案,通过为 IPv6报文添加 IPv6扩展头,在 IPv6 扩展头中携带接入线路信息和 /或设备信息, 或者将 ICMPv6消息和接入环路标 识承载在 ICMPv6中转消息, 保证了使收到该 IPv6报文的设备能够能够利用接 入线路信息执行 IPv6报文的接入、认证和授权, 和 /或利用设备信息为不同的终 端分配不同的 IP v6地址前缀。
本发明实施例的技术方案能够在 IPv6网络中保证接入的安全、认证和授权, 且为不同的终端分配不同的 IP v6地址前缀, 保证了网络的正常路由。 本发明实施例二提供的 IPv6报文的处理方法,如图 3所示,所述方法包括: 步骤 31 : 接收携带接入线路信息或设备信息的 IPv6报文, 得到所述接入线 路信息或设备信息;
步骤 32:根据所述接入线路信息或设备信息,查找对应关系,以对所述 IPv6 报文进行相应的操作。
进一步的,在步骤 31中,可以接收具有至少一个 IPv6扩展头的 IPv6报文, 所述 IPv6扩展头携带接入线路信息或设备信息,根据所述 IPv6扩展头得到所述 接入线路信息或设备信息; 或者, 接收承载有 ICMPv6消息的 IPv6报文, 所述 IPv6报文利用 ICMPv6中转消息承载所述 ICMPv6消息和接入环路信息, 从该 ICMPv6中转消息提取得到所述接入线路信息。
可以由网络服务器或具有相同功能的网络设备实现上述步骤 31和步骤 32 的操作, 在不同的网络架构中执行上述操作的具体设备会有所差别, 如可以为 PON中的 OLT, 也可以为 IP边缘节点等。 在步骤 32中, 基于不同的扩展头所 查找的对应关系可以不同,执行的操作也不同,这种对应关系可以由上述的 OLT 或 IP边缘节点保存并维护, 或者由网络中的其他设备进行保存并维护, 而 OLT 或 IP边缘节点在执行步骤 32时从该设备获取所需的对应关系。 例如, 当上述 的 IPv6扩展头为携带接入环路标识的第一 IPv6扩展头时,查找所维护的第一对 应关系, 以对所述 IPv6报文进行接入、 认证或授权, 该第一对应关系为利用接 入环路标识实现接入、 认证或授权时所需的对应的关系, 例如, 该第一对应关 系可以为接入环路标识与允许接入或可以通过认证或准予授权的报文的对应关 系, 如组播场景中的接入线路组播权限表等。 例如在组播的场景中, 基于上述 携带接入线路信息的 IPv6扩展头, 查找接入线路组播权限表, 判断是否允许接 入, 若是, 允许接入, 若否, 拒绝接入。
当上述的 IPv6扩展头为携带设备类型标识的第二 IPv6扩展头时,查找所维 护的第二对应关系,以为所述 IPv64艮文分配 IPv6地址前缀, 该第二对应关系为 利用设备类型标识实现终端的 IPv6地址分配时所需的对应关系, 例如, 该第二 对应关系为设备类型标识与允许分配的 IPv6地址前缀的关系。
本发明实施例提供的技术方案, 能够利用 IPv6报文中的接入线路信息和 / 或设备信息, 执行 IPv6报文的接入、 认证和授权, 或为不同的终端分配不同的 IPv6地址前缀。 本发明实施例的技术方案能够在 IPv6网络中保证接入的安全、 认证和授权, 且为不同的终端分配不同的 IP v6地址前缀, 保证了网络的正常路 由。
下面对本发明实施例三提供的 IPv6报文的处理方法进行详细说明。
本发明实施例主要以添加新的接入环路标识扩展头 (下文也称为第一 IPv6 扩展头 )和 /或设备类型标识扩展头(下文也称为第二 IPv6扩展头)的场景为例 进行说明。接入环路标识和 /或设备类型标识信息也可以在现有的 IPv6扩展头中 进行扩展携带。 可以理解, 本领域技术人员可以通过下文的描述获知其它相似 IPv6扩展头的处理方法。
接入环路标识扩展头
由中继代理功能实现接入环路标识扩展头的添加或删除, 中继代理功能具 备对 IPv6扩展头进行处理的能力, 而中继代理功能可以位于接入网的接入节点 或 IP边缘节点上。下面以中继代理功能位于接入节点以及 IPv6报文为因特网控 制消息协议 ( Internet Control Message Protocol, ICMP )才艮文为例进行说明。 新 的 IPv6扩展头的添加过程主要包括如下处理:
如表 1所示, 显示了经过接入节点前的未添加接入环路标识扩展头的 IPv6 报文。 参见表 2, 显示了接入节点为该 IPv6报文添加了接入环路标识扩展头后 的报文。 接入节点在 IPv6包头后续直接添加该接入环路标识扩展头, 并由 IPv6 包头的下一个包头(Next Header )指示后续携带的 IPv6扩展头用于承载接入环 路标识信息, 可以表示为 Next Header^ Access Loop ID。
表 1
IPv6包头 (IPv6 Header) ICMP消息 (ICMP Message)
Next Header = ICMP 表 2
接入环路标识扩展头 ICMP消息
IPv6包头 (IPv6 Header)
(Access Loop ID Header ) (ICMP Message)
Next Header = Access Loop ID Next Header = ICMP
接入节点可以在接收到每个 IPv6报文时即为该报文添加接入环路标识扩展 头, 以承载接入环路标识信息; 接入节点也可以仅在转发该 IPv6报文时才添加 Access Loop ID扩展头, 该 IPv64艮文可以是路由器请求 ( Router Solicitation, RS )消息、 路由器通告 ( Router Advertisement, RA )消息、 邻居请求(Neighbor Solicitation, NS ) 消息、 邻居通告( Neighbor Advertisements, NA )或组播监听 器发现 ( Multicast Listener Discovery, MLD ) 消息等。
表 3显示了一种接入环路标识扩展头的具体结构, 包括 Next Header, 扩展 头长度、 接入环路类型 ( Access Loop Type ) 和接入环路标识, 但不局限于此, 可以对该扩展头的具体结构进行调整, 例如, 可选的, 该扩展头中也可以不携 带接入环路类型的信息, 而接入网点可由网络中的上下文信息获知该接入环路 类型。
表 3
Figure imgf000010_0001
示例性的, 如表 3所示, 该接入环路标识扩展头包括 32χη比特, 将第一行 中的 31至 24比特分配给 Next Header, 将第一行中的 23至 16比特分配给扩展 头长度, 将第一行中的 15至 8比特分配给接入环路类型, 该接入环路类型可以 为 DSL、 无源光网络(PON )或以太网 (Ethernet )等, 将剩余的比特预留给接 入环路标识。
接入环路标识可以包括代理电路标识( Agent Circuit ID ) 和 /或代理远程标 识 ( Agent Remote ID );
对不同的接入环路类型, 可以有不同的接入环路标识编码格式。
例如, 当接入环路类型为 DSL, 接入节点为 DSLAM时, 接入环路标识的编 码格式具体如下:
{atm|eth}
AccessNodeIdentifier/ANI_rack/ANI_frame/ANI_slot/ANI_subslot/
ANI_port [: ANI_XPI.ANI_XCI]
说明:
编码方式采用 ASCII码。
atm|eth: 端口类型, 基于 ATM的 DSL接口 |基于 DSL的以太接口;
AccessNodeldentifier: 接入节点标识 (如 DSLAM设备), 长度不超过 50个字 符的字串, 字符串内没有空格;
ANI— rack: 接入节点机架号 (如支持紧耦合的 DSLAM设备) 0〜15; ANI— frame: 接入节点机框号 0~31;
ANI— slot: 接入节点槽号 0~127;
ANI— subslot: 接入节点子槽号 0~31;
ANI_port: 接入节点端口号 0~255;
ANI— XPI: 可选项, 如接口类型为 atm, XPI对应于 VPI, XPI为 0~255; 如接 口类型为 eth, XPI对应于 PVLAN, XPI为 0~4095;
ANI— XCI: 如接口类型为 atm, XCI对应于 VCI, XCI为 0~65535; 如接口类 型为 eth,XCI对应于 CVLAN, XCI为 0~4095; ANI XPI.ANI XCI, 主要是携带 CPE侧的业务信息, 可用于标识未来的业 务类型需求, 如在多 P VC应用场合下可标识具体的业务。
字符串之间用一个空格隔开, 字符串内没有空格。 花括号 { }中的内容是必 选的, I 表示并列的关系, 多选一。 [ ]表示可选项。 对于某些设备没有机架、 框、 子槽的概念, 相应位置应统一填 0。
如接口类型为 ATM, 则 AccessNodeIdentifier、 ANI_rack、 ANI— frame、 ANI_slot、 ANI— subslot、 ANI_port域可统一填 0。
如运营商未使用 S VLAN技术, 则 XPI=4096,XCI= VLAN,取值为 0~4095。 如运营商未使用 VLAN技术区分用户(用户 PC直连 B AS端口),则 XPI=4096, XCI=4096。 又如, 当接入环路类型为 PON, 接入节点为光网絡单元 /光路终结点
( ONU/OLT ) 时, 接入环路标识的编码格式具体如下:
AccessNodeIdentifier/ANI_rack/ANI_frame/ANI_slot/ANI_subslot/ANI_port/ ONU ID
[ONU_Slot/ONU_Subslot/Port_ID] [: {atm/eth|trk}/Port_XPI.Port_XCI]
[LN EP GP]
说明:
编码方式采用 ASCII码。
以上格式中每行表示一个字符串, 编码时字符串之间用一个空格隔开, 字 符串中间不能有空格。
"{ }"表示其中的内容是必选的; ,表示并列的关系, 多选一; "[]"表示其中 的内容是可选项。 "{ }"、 "|"、 "[] "不出现在编码中。 "/"、 ":"、 "."是保留字符, 直接进行编码。
AccessNodeldentifier: 接入节点标识 (如 OLT设备), 为长度不超过 50个字 符的字符串, 字符串中间不能有空格, 具体接入节点设备标识方法不作规定。
ANI— rack: 接入节点机架号 (如支持紧耦合的 OLT设备) 0~15。 ANI— frame: 接入节点机框号 0~31。
ANI— slot: 接入节点槽号 0〜127。
ANI— subslot: 接入节点子槽号 0~31。
ANI_port: 接入节点端口号 0~255。
ONUJD: ONU的标识, 长度为 24个字符, 具体 ONU标识方法暂不作规定 (可以釆用 ONU的 MAC地址, 例如 0000000000001A2B3C4D5E6F; 也可以釆用 ONU的逻辑标识, 例如 SH_EPON_0000000098765432, 其中" SH"表示上海, "EPON"表示 EPON ONU, "00000098765432"为 ONU的序号); 如果 ONU为 SFU、 HGU或者 SBU, 则可以不包含此字段后面的字段。
ONU_Slot: MDU/MTU型 ONU的槽号 0 ~ 15。
ONU_Subslot: MDU/MTU型 ONU的子槽号 0 ~ 15。
Port— ID: MDU/MTU型 ONU的端口号 0 ~ 128。
atm|eth|trk: ONU用户端口类型: atm指采用 ATM协议的 DSL接口 (如 ADSL2+ ) , eth指普通的以太接口, trk指 Trunk类型的以太接口, 采用 PTM模式 的 VDSL2接口应为 eth或 trk类型。
Port XPI.Port XCI,主要是携带 DSL接口的 MDU/MTU型 ONU端口的用户侧 业务信息, 可用于标识未来的业务类型需求, 如在多 PVC或者多 VLAN应用场合 下可标识具体的业务。 其中:
Port XPI: 可选项, 如 ONU的接口类型为 DSL接口, Port_XPI对应于该接口 的 VPI, XPI为 0~255; 如接口类型为 eth或 trk, Port_XPI对应于 S VLAN, 有效值 为 0~4095 ( 4096表示没有 S VLAN ) ;
Port XCI: 可选项, 如 ONU的接口类型为 DSL接口, Port_XCI对应于该接口 的 VCI, 取值为 0~65535; 如接口类型为 eth或 trk, Port— XCI对应于 C VLAN, 有 效值为 0~4095。
LN EP GP: 表示该用户采用的接入技术; LN表示 LAN接入, EP表示 EPON 技术, GP表示 GPON技术。
对于某些设备没有机架、 框、 子槽的概念, 相应位置应统一填 0, 对于无效 的 VLAN ID值都填 4096。
如运营商未使用 S VLAN技术, 则 S VLAN=4096, C VLAN值为用户的 VLAN ID, 其取值为 0~4095。
如运营商未使用 VLAN技术区分用户 (用户 PC直连 B AS端口) , 则
SVLAN=4096, CVLAN=4096。
当接入环路类型为 ETHemet, 接入节点为以太网交换机时, LAN 系统中的 宽带用户接入线路(端口)信息编码格式釆用 PON 统的宽带用户接入线路(端 口)信息编码格式, 接入线路标识的编码格式具体如下:
AccessNodeIdentifier/ANI_rack/ANI_frame/ANI_slot/ANI_subslot/ANI_port/ ONU—ID
ONU_Slot/ONU_Subslot/Port_ID: {atm|eth|trk|hyd}/Port_XPI.Port_XCI
{LN|EP|GP}
说明:
编码方式采用 ASCII 码。
以上格式中每行表示一个字符串, 编码时字符串之间用一个空格隔开, 字 符串中间不能有空格。
"{ }"表示其中的内容是必选的; "「表示并列的关系, 多选一; "[]"表示其中 的内容是可选项。 "{ }"、 "|"、 "[]"不出现在编码中。
"/"、 ":"、 "."是保留字符, 直接进行编码。
AccessNodeldentifier: 接入节点 (如园区楼道交换机设备)标识, 为长度不 超过 50 个字符的字符串, 字符串内没有空格, 具体接入节点设备标识方法不作 规定。
ANI— rack: 接入节点机架号 (如支持紧耦合的楼道交换机设备) 0~15。 ANI— frame: 接入节点机框号 0~31。
ANI— slot: 接入节点槽号 0~127。
ANI— subslot: 接入节点子槽号 0~31。 ANI_port: 接入节点端口号 0~255。
ONUJD: 楼道交换机的标识, 长度为 24 个字符, 具体楼道交换机的标识 方法暂不作规定 (例如, 可以釆用楼道交换机的网管 IP, 也可以釆用楼道交换 机在资源管理系统中的编号) 。
ONU_Slot: 楼道交换机的槽号 0 ~ 15。
ONU_Subslot: 楼道交换机的子槽号 0 ~ 15。
Port— ID: 楼道交换机的端口号 0 ~ 128。
{atm/eth|trk|hyd}:楼道交换机用户端口的类型,在 LAN接入网中,用于 IPTV 地址分配的 Option82中本字段的值为 "trk"或" hyd,,, "trk"表示 Trunk 类型的以太 接口 (同一个端口可能还有 PPPoE上网业务) ; "hyd"标识 Hybrid类型的以太网 端口 (在楼道交换机的 UNI接口上上网业务为 untagged, 由楼道交换机为其打上 VLAN Tag; IPTV业务为 tagged ) 。
Port XPI: 当前统一取值为 4096 (表示没有 SVLAN ) ;
Port XCI: 对应于 IPTV业务 VLAN, 有效值为 0~4095;
LN EP GP: 表示该用户采用的接入技术, 在 LAN系统中取值为 "LN "。 对于某些设备没有机架、 框、 子槽的概念, 相应位置应统一填 0, 对于无效 的 VLAN ID值都填 4096。
如运营商未使用 S VLAN技术, 则 S VLAN=4096, C VLAN 值为用户的 VLAN ID, 其取值为 0〜4095。
如运营商未使用 VLAN 技术区分用户 (用户 PC 直连 BAS 端口) , 则
SVLAN=4096 , CVLAN=4096。
进一步的, 本发明实施例中, 上述中继代理功能可以包括多级中继代理, 每级中继代理都可以添加或删除本级的 IPv6扩展头, 以添加或删除本级的接入 环路标识的信息。 各级中继代理可以通过如下方式在 IPv6报文中添加当前级的 接入环路标识扩展头:
当前级中继代理在上一级的接入环路标识扩展头之后直接添加当前级的接 入环路标识扩展头, 其中, 将上一级的接入环路标识扩展头中的 Next Header设 置为指示当前级的接入环路标识扩展头; 或者,
当前级中继代理修改上一级的接入环路标识扩展头, 在上一级的接入环路 标识扩展头的接入环路标识中添加当前级的接入环路标识, 但不增加新的 IPv6 扩展头。
对每一级的中继代理, 或者, 对一个中继代理处理的不同 IPv6报文, 可以 选择上述的任一种方式添加当前级的接入环路标识扩展头。
中继代理功能为上述 IPv6报文添加完接入环路标识扩展头后, 转发该 IPv6 报文。 当中继代理功能接收到包含所述接入环路标识扩展头的 IPv6报文时, 当 需要时, 如考虑到网络安全因素等, 中继代理功能可以删除所述 IPv6报文中的 接入环路标识扩展头后, 转发所述 IPv6报文至下一个网络设备。
当中继代理功能具有多级中继代理时, 中继代理功能可以在需要时逐次删 除各接入环路标识扩展头, 例如, 根据扩展头的添加顺序, 按照后添加的报文 先删除的原则, 一层一层地删除各个接入环路标识扩展头; 也可以设置需要删 除的接入环路标识扩展头的位置和比特数, 直接删除先添加但要求早删除的扩 展头。 对一个接入环路标识扩展头携带多个接入环路标识的情况, 中继代理功 能逐次删除各接入环路标识。
当网络服务器接收到具有至少一个接入环路标识扩展头的上述 IPv6报文 时, 网络服务器根据所述接入环路标识扩展头, 查找所维护的第一对应关系, 以对所述 IPv6报文进行相应的操作。 例如, 该第一对应关系可以为接入线路组 播权限表, 网络服务器根据扩展头中的接入环路标识查询该接入线路组播权限 表, 判断是否允许组播操作。 设备类型标识扩展头
终端在发起 IPv6报文时,为该 IPv6报文添加设备类型标识( Vendor Class ID ) 扩展头。该 IPv6报文 IPv6包头中的 Next Header指示后续携带的 IPv6扩展头为设备 类型标识扩展头。 该设备类型标识扩展头包括 Next Header, 扩展头长度和设备 类型标识。设备类型标识表明终端设备的类型, 可以包括设备类型选项(Vendor Class Option )。
参见表 4, 显示了一种添加了设备类型标识扩展头的 IPv6报文 t
Figure imgf000017_0001
设备类型标识扩展头 ICMP消息
IPv6包头 (IPv6 Header)
(Vendor Class ID Header ) (ICMP Message) Next Header = Vendor Class ID Next Header = ICMP
Figure imgf000017_0002
Figure imgf000017_0003
参见表 5, 显示了设备类型标识扩展头的结构。 示例性的, 如表 5所示, 该 设备类型标识扩展头包括 32xn比特, 将第一行中的 31至 24比特分配给 Next Header, 将第一行中的 23至 16比特分配给扩展头长度, 将剩余的比特预留给 设备类型标识。
用户终端将添加完设备类型标识的 IPv6报文向网络发送, 网络中的设备透 传该报文, 而 IP边缘节点可以根据报文中的设备类型标识扩展头识别用户终端 的类型以及用户业务的类型, IP边缘节点利用该设备类型标识查找所维护的第 二对应关系, 为用户终端的不同业务分配不同的 IPv6地址前缀, 例如, IP边缘节 点根据获知的终端类型查询终端类型与地址前缀的对应关系, 并依此为该报文 分配 IPv6地址前缀。
参见图 4, 下面对本发明实施例提供的 PON系统中利用接入环路标识扩展头 组播的方法进行描述。 步骤 1 : 组播终端 ( Multicast Terminal ) 向 ONU发送组播监听器发现加入 ( MLD JOIN ) 消息。
步骤 2: ONU在接收到的 MLD JOIN消息所在 IP报文中添加接入环路标识扩 展头, 该接入环路标识扩展头携带接入环路标识 (ALI )。 ONU将该 MLD JOIN 消息转发给 OLT。
步骤 3: OLT根据 ALI和接入线路组播权限表判断是否能够对该 MLD JOIN消 息进行授权。
OLT上维护有各接入线路对应的接入线路组播权限表, OLT根据接入线路标 识查询接入线路组播权限表。
步骤 4: 如果相应的接入线路不允许 MLD JOIN消息所请求的组播地址, 则
OLT丢弃该 MLD JOIN消息。
步骤 5:如果相应的接入线路允许 MLD JOIN消息所请求的组播地址,则 OLT 通过操作管理维护 ( Operations Administration and Maintenance , OAM )或光网 絡单元管理和控制接口 ( ONU Management and Control Interface, OMCI )协议, 例如, OLT发送扩展组播控制 OAM消息 ( Extended Multicast Control OAM )通 知并授权 ONU配置相应的组播转发项目(Multicast Entry);
步骤 6: 参见图 4, 在该场景中, 当相应的接入线路允许 MLD JOIN消息所请 求的组播地址还包括:判断上述 MLD JOIN消息中所请求的组播地址是否第一次 出现在上述 OLT上。
步骤 7: 如果上述 MLD JOIN消息所请求的组播地址在 OLT上是第一次出现, 则 OLT可以将该 MLD消息再转发给上一个节点, 如组播路由器 (Multicast Router )。 在转发之前, OLT删除接入线路标识扩展头。 如果上述 MLD JOIN消息 所请求的组播地址在 OLT上不是第一次出现, 则丟弃该 MLD JOIN消息。
上述 OLT和 ONU都支持中继代理功能。
上述操作通过接入环路标识扩展头实现了对 MLD JOIN消息的接入和授权, 保证了网络的安全。 进一步的, 携带接入环路标识扩展头的 MLD JOIN消息还可 以进一步用于网络中的管理或控制节点来统计用户对组播组的加入离开情况。 比如, BRAS可以通过 MLD JOIN消息中的接入环路标识, 来统计哪些用户加入 或离开了哪个组播组。
参见图 5, 下面对本发明实施例提供的由接入节点在动态主机配置协议 ( Dynamic Host Configuration Protocol , DHCP )消息中添加接入环路标识扩展 头的场景进行描述。
步骤 1 : 家庭网关或用户终端 (即 DHCP客户端) 向接入节点发送 DHCP 消息。 以 DHCPv6为例, DHCP消息及其所在的 IPv6报文格式, 如表 6所示, DHCP消息包括 DHCP扩展头 选项 ( Option )。
Figure imgf000019_0001
Figure imgf000019_0002
步骤 2: 接入节点在接收到的 DHCP消息所在 IP报文中添加接入环路标识 扩展头, 如表 7所示, 该接入环路标识扩展头携带接入环路标识 (ALI )。 接入 节点将该 DHCP消息转发给 IP边缘节点。 该接入节点支持中继代理功能。
Figure imgf000019_0003
步骤 3: IP边缘节点接收到 DHCP消息后, 根据 DHCP消息所在 IP报文的 接入环路标识扩展头将接入环路标识插入到 DHCP消息中。 例如, IP边缘节点 提取接入环路标识并删除 DHCP消息所在 IP报文的接入环路标识扩展头, 将 DHCP消息和接入环路标识都封装在中转代理消息中, 然后转发给 DHCP服务 器。 在转发之前 IP边缘节点可以根据接入环路标识到 AAA服务器进行认证或 授权。 该 IP边缘节点支持中继代理功能, 相对于上述接入节点上的中继代理功 能, IP边缘节点上支持的中继代理功能可称为第二中继代理功能。
IP边缘节点至少可通过如下两种方式将接入环路标识插入到 DHCP消息中, 下面分别以 DHCPv6为例对这两种方式进行说明。 方式一
参见表 8所示, IP边缘节点删除接收到的 DHCP v6消息中的接入环路标识扩 展头后, 将该 DHCPv6消息封装为一个中转消息选项( Relay Message Option )放 入中转代理消息 (Relay Agent MSG ) 中。 其中, 中转代理消息由中转代理消息 头 ( Relay Agent MSG Header )和选项 ( Option )组成。
然后, IP边缘节点根据 DHCPv6消息所在 IP报文的接入环路标识扩展头将接 入环路标识以 Option的形式, 如接口标识选项 ( Interface-id option ) 添加到中转 代理消息中。
表 8
选项 (Options) 中转消息选项 (Relay MSG option) 接口标识选项
(Interface-id option)
DHCP包头 选项
(DHCP Header) (Options)
Figure imgf000020_0001
方式二
如表 9所示, IP边缘节点接收到 DHCPv6消息后, 提取 DHCPv6消息所在 IP报文的接入环路标识扩展头中的接入环路标识, 并删除该接入环路标识扩展 头, 将接入环路标识以 Option的形式, 如 Interface-id option, 直接添加到
DHCPv6消息中。
表 9
步骤 4: DHCP服务器接收到上述来自 IP边缘节点的 DHCP消息后, 根据 接入环路标识进行相应的处理。 例如, 才艮据接入环路标识进行 IP地址 /前缀的分 配, 或进行接入的控制等。
然后, DHCP服务器向 DHCP客户端回复携带接入环路标识的 DHCP消息, 以 DHCPv6为例, 所回复的消息的格式参见表 8和表 9; 步骤 5: DHCP服务器将回复的 DHCP消息发送至 IP边缘节点, IP边缘节点收 到 DHCP消息后, 根据 DHCP消息携带的接入环路标识在 IP报文添加接入环路标 识扩展头; 删除 DHCP消息中的接入环路标识信息, 或者, 删除中转代理消息, 并将中转代理消息中的 Relay Message Option 所封装的 DHCP消息取出, 然后转 发 DHCP消息给接入节点, 以 DHCPv6为例, 该消息的格式参见表 7;
步骤 6: 接入节点收到 DHCP消息后, 根据 IP报文的接入环路标识扩展头中 的接入环路标识信息在其所对应的接入线路上进行转发给相应的家庭网关或用 户终端。 在转发之前, 出于安全考虑, 可以删除 IP报文中的接入环路标识扩展 头。
可以理解,本发明实施例可以在 IPv6报文中仅添加接入环路标识扩展头(如 表 2所示) , 也可以在 IPv6报文中仅添加设备类型标识扩展头 (如表 4所示) , 也可以在 IPv6报文中同时添加接入环路标识扩展头和设备类型标识扩展头。
上述内容描述了利用扩展头在 IPv6报文中携带接入环路标识或设备类型标 识的方法, 但不局限于此, 当 IPv6报文为 ICMPv6消息时, 本发明实施例还提供 了利用一种新的 ICMPv6消息来承载已有的 ICMPv6消息, 同时承载接入环路标 识的方法。 本发明实施例以该新的 ICMPv6消息为 ICMPv6中转消息 ( ICMPv6 Relay Message )的情况为例进行描述, 在此不对该新消息具体的名称进行限定。
通常考虑到数据的安全性, 数据发送者会对 ICMPv6消息进行签名, 数据接 收者通过对签名的验证来获知数据是否被篡改, 当签名一致时说明该数据未被 篡改, 是可以允许的安全的数据。 如果直接在 ICMPv6消息中添加接入环路标识 信息, 会破坏 ICMPv6消息的完整性。 数据接收者将通过签名验证发现 ICMPv6 消息已被改动, 但无法知道这种改动除了添加接入线路标识信息外, 是否存在 其它非法的篡改。 针对这种问题, 本发明实施例, 将 ICMPv6消息原封不动地承 载到 ICMPv6 中转消息中,数据接收者将 ICMPv6消息从 ICMPv6中转消息中取出 后进行签名验证, 就能发现 ICMPv6消息是否被篡改, 而且数据接收者还可以从 ICMPv6中转消息得到接入线路标识信息, 用于进行接入安全、 认证或授权。
可以由中继代理功能实现上述由 ICMPv6中转消息携带接入环路标识的操 作, 在此以中继代理功能位于接入节点的场景为例进行说明。 如图 6所示, 具体 包括如下步骤:
步骤 1 : 家庭网关或用户终端向接入节点发送 ICMPv6消息, 该 ICMPv6消息 及其所在的 IPv6报文格式参见表 10所示。
表 10
Figure imgf000022_0001
其中, 对于 ICMP消息, NextHeader为 58。
步骤 2: 接入节点将接收到的来自用户终端 /家庭网关的 ICMPv6消息承载到 ICMPv6 中转消息中, 并在 ICMPv6中转消息中添加接入环路标识( Access Loop ID ) ; 接入节点将该 ICMPv6中转消息转发给 IP边缘节点; 其中, Code域值设置 为 0, 表明中转由用户到路由器的 ICMPv6报文。
参见表 11, 显示了利用 ICMPv6中转消息承载 ICMPv6消息和接入环路标识 的 ICMPv6报文结构。
表 11
Figure imgf000022_0002
其中, ICMP v6中转消息由中转消息头 ( ICMP v6 Relay Message Header )和 选项 (Option ) 组成。 表 12显示了 ICMPv6中转消息的具体结构。
表 12
Figure imgf000023_0001
其中, Type域为 ICMP v6消息的类型, 表明该消息为 ICMP v6中转消息; Code域表明 ICMPv6中转的方向: Code值为 0, 表明中转由用户到路由器的 ICMPv6报文; Code值为 1, 表明中转由路由器到用户的 ICMP v6报文;
或者, Type域表明为一种已有的 ICMPv6消息,通过 Code域表明进行 ICMPv6 中转。
Checksum为校验和;
Client IP/MAC address Option 用于表明 ICMP发送方的 IP/MAC地址,通常仅 当 Code值为 0时才携带;
Relay Option为必选项, 用于携带被中转的 ICMPv6消息, 该 ICMPv6消息的 具体格式同表 10中除 IPv6报文头外的所有信息;
IPv6伪才艮文头选项 (IPv6 pseudo-header Option): 用于 Relay Option的校马 和。 IP v6伪艮文头选项的具体格式如下表 13所示: 表 13
31-8 bit 7-0 bit
原 IP±也址 (Source Address)
目的 IP±也址 (Destination Address)
应用层报文长度 (Upper-Layer Packet Length)
Zero Next Header=58(ICMP)
如杲中转前 IPv6报文中有路由扩展头,那么 IPv6伪报头选项中目的地址是该 路由扩展头的最终目的地的 IP地址; 应用层报文长度(Upper-Layer Packet Length ) 包含中转前 ICMPv6报头和净荷长度。
ICMPv6 Relay消息的目的 IP地址和源 IP地址可以采用原 ICMPv6消息的目的
IP地址和源 IP地址进行转发, 此时 ICMPv6 Relay消息可不带 IPv6伪报文头选项; 或者, ICMPv6 中转消息将原 ICMPv6消息所在 IPv6报文头的信息提取出来, 作 为 IPv6伪报文头选项,携带于 ICMPv6中转消息中, 然后在 ICMPv6中转消息前添 加新的 IPv6报文头进行发送, 目的 IP地址为 IP边缘节点地址, 源 IP地址为接入节 点地址, 将用户 IP/MAC地址选项设为原 ICMPv6消息的源 IP/MAC地址。
步骤 3: IP边缘节点接收到 ICMPv6中转消息后, 从 ICMPv6中转消息中取出 原来来自用户终端 /家庭网关的 ICMPv6消息和接入环路标识,需要对来自用户终 端 /家庭网关的 ICMPv6消息的 checksum进行计算,再根据接入环路标识进行相应 的处理, 例如, 根据该接入环路标识到 AAA服务器进行认证或授权, 或根据接 入环路标识进行 IP地址前缀的分配;
然后, IP边缘节点以 ICMPv6消息向用户终端 /家庭网关进行回复,该 ICMPv6 消息同样需要承载于 ICMPv6 中转消息中, 并在该 ICMPv6中转消息中携带接入 环路标识;
再次, IP边缘节点将该 ICMPv6中转消息转发给接入节点, 其中, Code域值 设置为 1, 表明中转由路由器到用户的 ICMPv6报文。
ICMPv6中转消息所在的 IP报文源 IP地址为 IP边缘节点地址, 目的 IP地址为 用户终端 /家庭网关地址,此时 ICMPv6中转消息可不带 IPv6伪报文头选项;或者, ICMPv6中转消息所在的 IP报文源 IP地址为 IP边缘节点地址, 目的 IP地址为接入 节点地址,这时, ICMPv6中转消息需要携带将回复用户终端 /家庭网关以 ICMPv6 消息所在 IPv6报文头的信息提取出来, 作为 IPv6伪报文头选项, 携带于 ICMPv6 中转消息中, 该 IPv6伪报文头的源 IP地址为 IP边缘节点地址, 目的 IP地址为用户 终端 /家庭网关地址。
其中, 对用户终端 /家庭网关的 ICMP v6消息的 checksum的验证, 可根据 IPv6 伪报文头选项和用户终端 /家庭网关的 ICMPv6消息头进行计算; 如果 ICMPv6 Relay消息不带 IPv6伪报文头选项, 则根据 ICMPv6 Relay消息所在 IPv6报文头生 成 IPv6伪报文头, 然后对 IPv6伪报文头和用户终端 /家庭网关的 ICMPv6消息头进 行验证。
步骤 4:接入节点收到 ICMP v6 Relay消息后,从中取出回复用户终端 /家庭网 关的 ICMPv6消息和接入环路标识,并根据接入环路标识对回复用户终端 /家庭网 关的 ICMPv6消息在其所对应的接入线路上进行转发给家庭网关或用户终端; 如果 ICMPv6 Relay消息所在的 IP报文源 IP地址为 IP边缘节点地址, 目的 IP地 址为用户终端 /家庭网关地址, 接入节点可以釆用 ICMPv6 Relay消息所在 IPv6报 文头进行转发。
如果 ICMPv6 Relay消息所在的 IP报文源 IP地址为 IP边缘节点地址, 目的 IP地 址为接入节点地址, 则接入节点从 ICMPv6 Relay消息中提取 IPv6伪报文头, 构 造新的 IPv6报文头, 源 IP地址为 IP边缘节点地址, 目的 IP地址为用户终端 /家庭网 关地址, 然后发送回复用户终端 /家庭网关的 ICMPv6消息。
本发明实施例提供的技术方案, 通过在 IPv6扩展头中携带接入线路信息和 / 或设备信息, 可以使收到该 IPv6报文的设备能够利用接入线路信息和 /或设备信 息执行 IPv6报文的接入、认证和授权,或为不同的终端分配不同的 IPv6地址前缀。 本发明实施例的技术方案能够在 IPv6网络中保证接入的安全、 认证和授权, 且 为不同的终端分配不同的 IP v6地址前缀, 保证了网络的正常路由。
本发明实施例四提供了一种网络设备, 如图 7所示, 所述设备包括: 信息添加单元 71 , 用于为 IPv6报文添加接入线路信息;
转发单元 72,用于转发由所述信息添加单元 71添加了所述接入线路信息的 IPv6 艮文。
进一步的, 所述信息添加单元 71 ,具体用于为 IPv6 艮文添加至少一个 IPv6 扩展头, 以在 IPv6报文中添加接入线路信息; 所添加的 IPv6扩展头包括接入环 路标识、 下一个包头 Next Header和扩展头长度; 其中, Next Header指示下一 个扩展头的信息, 所述接入线路信息包括接入环路标识。
或者, 所述信息添加单元 71, 具体用于将 ICMPv6消息承载在 ICMPv6中 转消息中,以在 IPv6报文中添加接入线路信息,其中,所述 IPv6报文为 ICMPv6 消息, 所述 ICMPv6中转消息承载有接入环路标识, 所述接入线路信息包括所 述接入环路标识。
进一步的, 所述信息添加单元 71包括当前级添加模块和上一级添加模块, 所述上一级添加模块, 用于在所述 IPv6报文中添加上一级的 IPv6扩展头, 所述当前级添加模块, 用于通过下述的至少一种方式为所述 IPv6报文中添加当 前级的 IPv6扩展头:
在上一级的 IPv6扩展头之后直接添加当前级的第一 IPv6扩展头, 其中,上 一级的 IPv6扩展头中的 Next Header指示当前级的 IPv6扩展头;
或者,
"改上一级的 IPv6扩展头,在上一级的 IPv6扩展头的接入环路标识中添加 当前级的接入环路标识。
进一步的, 所述设备还可以包括: 接收删除单元, 用于接收具有所述第一 IPv6扩展头的 IPv6报文, 删除所述 IPv6报文中的第一 IPv6扩展头, 并转发所 述 IPv6报文。
本发明装置实施例中各功能模块和单元的具体工作方式参见本发明方法实 施例。 本发明装置实施例中各功能模块和单元可以单独实现, 也可以集成在一 个或多个单元中实现。 例如, 上述的网络设备可以由接入网的接入节点和 /或 IP 边缘节点实现。
本发明实施例提供的技术方案, 通过在 IPv6扩展头中携带接入线路信息和 / 或设备信息, 可以使收到该 IPv6报文的设备能够利用接入线路信息和 /或设备信 息执行 IPv6报文的接入、认证和授权,或为不同的终端分配不同的 IPv6地址前缀。 本发明实施例的技术方案能够在 IPv6网络中保证接入的安全、 认证和授权, 且 为不同的终端分配不同的 IP v6地址前缀, 保证了网络的正常路由。 本发明实施例五提供了一种终端, 如图 8所示, 所述终端包括:
扩展头添加单元 81,用于为 IPv6报文添加至少一个 IPv6扩展头,所述 IPv6 扩展头携带设备信息;
转发单元 82, 用于转发由所述 展头添加单元 81添加了所述 IPv6扩展头 的 IPv6报文。
进一步的, 所述扩展头添加单元 81添加的 IPv6扩展头包括设备类型标识、
Next Header和扩展头长度; 其中, Next Header指示下一个扩展头的信息, 所述 设备信息包括设备类型标识。
本发明装置实施例中终端的各个单元的具体工作方式参见本发明方法实施 例。 本发明装置实施例中各功能模块和单元可以单独实现, 也可以集成在一个 或多个单元中实现。
本发明实施例提供的技术方案, 通过为 IPv6报文添加 IPv6扩展头, 在 IPv6 扩展头中携带接入线路信息和 /或设备信息, 利用接入线路信息和 /或设备信息执 行 IPv6报文的接入、 认证和授权, 或为不同的终端分配不同的 IP v6地址前缀。 本发明实施例的技术方案能够在 IPv6网络中保证接入的安全、 认证和授权, 且 为不同的终端分配不同的 IP v6地址前缀, 保证了网络的正常路由。 本发明实施例六还提供了一种网络服务器, 如图 9所示, 所述服务器包括: 接收单元 91 , 用于接收携带接入线路信息或设备信息的 IPv6报文, 得到所 述接入线路信息或设备信息;;
处理单元 92, 用于根据所述接入线路信息或设备信息, 查找对应关系, 以 对所述 IPv6报文进行相应的操作。
进一步的, 所述接收单元 91, 用于接收具有至少一个 IPv6扩展头的 IPv6 报文,所述 IPv6扩展头携带接入线路信息或设备信息,根据所述 IPv6扩展头得 到所述接入线路信息或设备信息; 或者,
接收承载有 ICMPv6消息的 IPv6报文,所述 IPv6报文利用 ICMPv6中转消 息承载所述 ICMPv6消息和接入环路信息, 从该 ICMPv6中转消息提取得到所 述接入线路信息。
进一步的, 所述处理单元 92, 用于根据所述接入线路信息或设备信息, 查 找第一对应关系, 以对所述 IPv6报文进行接入、 认证或授权, 其中, 所述 IPv6 扩展头为第一 IPv6扩展头,所述第一 IPv6扩展头携带接入环路标识、下一个包 头 Next Header和扩展头长度,所述接入线路信息包括所述接入环路标识;或者, 所述处理单元 92, 用于根据所述接入线路信息或设备信息, 查找第二对应 关系, 以为所述 IPv6报文分配 IPv6地址前缀, 其中, 所述 IPv6扩展头为第二 IPv6扩展头, 所述第二 IPv6扩展头携带设备类型标识、 Next Header和扩展头 长度, 所述设备信息包括所述设备类型标识。
所述处理单元 92也可以同时具备上述描述的两种功能。
本发明装置实施例中网络服务器的各个单元的具体工作方式参见本发明方 法实施例。 本发明装置实施例中各功能模块和单元可以单独实现, 也可以集成 在一个或多个单元中实现。
本发明实施例提供的技术方案, 通过为在 IPv6报文中携带接入线路信息和 / 或设备信息, 可以使收到该 IPv6报文的设备能够利用接入线路信息和 /或设备信 息执行 IPv6报文的接入、认证和授权,或为不同的终端分配不同的 IPv6地址前缀。 本发明实施例的技术方案能够在 IPv6网络中保证接入的安全、 认证和授权, 且 为不同的终端分配不同的 IP v6地址前缀, 保证了网络的正常路由。 本发明实施例还提供了一种 IPv6网络系统,所述系统包括终端和 /或网络设 备, 以及网络服务器,
所述终端, 用于为 IPv6报文添加至少一个 IPv6扩展头, 所述 IPv6扩展头 携带设备信息; 转发添加了所述 IPv6扩展头的 IPv6报文;
所述网络设备, 用于为 IPv6报文添加至少一个 IPv6扩展头, 所述 IPv6扩 展头携带接入线路信息; 转发添加了所述 IPv6扩展头的 IPv6报文;
所述网络服务器, 用于接收携带接入线路信息或设备信息的 IPv6报文; 根 据所述接入线路信息或设备信息, 查找对应关系, 以对所述 IPv6报文进行相应 的操作。
本发明实施例提供的技术方案, 通过在 IPv6报文中携带接入线路信息和 /或 设备信息, 可以使收到该 IPv6报文的设备能够利用接入线路信息和 /或设备信息 执行 IPv6报文的接入、 认证和授权, 或为不同的终端分配不同的 IPv6地址前缀。 本发明实施例的技术方案能够在 IPv6网络中保证接入的安全、 认证和授权, 且 为不同的终端分配不同的 IP v6地址前缀, 保证了网络的正常路由。
本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件 平台的方式来实现。 基于这样的理解, 本发明的技术方案本质上或者说对现有 技术做出贡献的部分可以软件产品的形式体现出来, 该计算机软件产品可以存 储在存储介质中, 如 ROM/RAM、 磁碟、 光盘等, 包括若干指令用以使得一台 计算机设备(可以是个人计算机, 服务器, 或者网络设备等)执行本发明各个 实施例或者实施例的某些部分所述的方法。
以上所述, 仅为本发明的具体实施方式, 但本发明的保护范围并不局限于 此, 任何熟悉本技术领域的技术人员在本发明揭露的技术范围内, 可轻易想到 变化或替换, 都应涵盖在本发明的保护范围之内。 因此, 本发明的保护范围应 以权利要求的保护范围为准。

Claims

权 利 要 求 书
1、 一种互联网协议第六版 IPv6报文的处理方法, 其特征在于, 所述方法 包括:
在 IPv6报文中添加接入线路信息或设备信息;
转发添加了所述接入线路信息或设备信息的 IPv6报文。
2、 根据权利要求 1所述的方法, 其特征在于, 所述在 IPv6报文中添加接 入线路信息或设备信息具体为:
为 IPv6报文添加至少一个 IPv6扩展头, 所述 IPv6扩展头携带接入线路信 息或设备信息。
3、 根据权利要求 2所述的方法, 其特征在于, 所述为 IPv6报文添加至少 一个 IPv6扩展头, 所述 IPv6扩展头携带接入线路信息具体为:
中继代理功能为 IPv6报文添加第一 IPv6扩展头, 所述第一 IPv6扩展头携 带接入环路标识、 下一个包头 Next Header和扩展头长度;
其中, Next Header指示下一个扩展头的信息, 所述接入线路信息包括接入 环路标识。
4、 根据权利要求 3所述的方法, 其特征在于, 所述中继代理功能为 IPv6 报文添加第一 IPv6扩展头包括:
所述中继代理功能包括至少两级中继代理, 上一级中继代理在所述 IPv6报 文中添加上一级的第一 IPv6扩展头, 当前级中继代理通过下述的至少一种方式 为所述 IPv6报文添加当前级的第一 IPv6扩展头:
当前级中继代理在上一级的第一 IPv6扩展头之后直接添加当前级的第一 IPv6扩展头, 其中, 上一级的第一 IPv6扩展头中的 Next Header指示当前级的 第一 IPv6扩展头; 或者,
当前级中继代理修改上一级的第一 IPv6扩展头,在上一级的第一 IPv6扩展 头的接入环路标识中添加当前级的接入环路标识。
5、 根据权利要求 3所述的方法, 其特征在于, 在中继代理功能为 IPv6报 文添加第一 IPv6扩展头之后, 所述方法还包括:
第二中继代理功能接收包含所述第一 IPv6扩展头的 IPv6报文;
第二中继代理功能删除所述 IPv6报文中的第一 IPv6扩展头, 并转发所述 IPv6才艮 。
6、 根据权利要求 3所述的方法, 其特征在于, 当所述 IPv6报文包括动态 主机配置协议 DHCP消息时, 在中继代理功能为 IPv6报文添加第一 IPv6扩展 头之后, 所述方法还包括:
第二中继代理功能接收包含所述第一 IPv6扩展头的 IPv6报文;
第二中继代理功能根据所述第一 IPv6扩展头提取接入环路标识, 并删除所 述第一 IPv6扩展头;
第二中继代理功能将所述接入环路标识和所述 DHCP消息封装在中转代理 消息的中转消息选项中; 或者, 第二中继代理功能将所述接入环路标识以选项 的形式直接添加到所述 DHCP消息所在的 IPv6报文中;
第二中继代理功能向网络服务器转发所述 DHCP消息所在的 IPv6报文。
7、 根据权利要求 6所述的方法, 其特征在于, 在第二中继代理功能向网络 服务器转发所述 DHCP消息所在的 IPv6报文之后, 还包括:
第二中继代理功能接收网络服务器发送的 DHCP消息所在的 IPv6报文, 所 述 IPv6报文携带接入环路标识;
第二中继代理功能删除所述接入环路标识, 根据所述接入环路标识为所述 IPv6报文添加第一 IPv6扩展头并转发该 IPv6报文。
8、 根据权利要求 1所述的方法, 其特征在于, 当所述 IPv6报文包括因特 网控制消息协议第六版 ICMPv6消息时, 所述在 IPv6报文中添加接入线路信息 包括:
中继代理功能将 ICMPv6消息承载在 ICMPv6中转消息中, 所述 ICMPv6 中转消息承载有接入环路标识, 所述接入线路信息包括所述接入环路标识。
9、根据权利要求 8所述的方法,其特征在于,所述中继代理功能将 ICMPv6 消息和接入环路标识承载在 ICMPv6中转消息中的选项 Option中。
10、 根据权利要求 2所述的方法, 其特征在于, 所述方法具体为: 终端为 IPv6报文添加第二 IPv6扩展头, 所述第二 IPv6扩展头携带设备类 型标识、 Next Header和扩展头长度;
其中, Next Header指示下一个扩展头的信息, 所述设备信息包括设备类型 标识。
11、 一种互联网协议第六版 IPv6报文的处理方法, 其特征在于, 所述方法 包括:
接收携带接入线路信息或设备信息的 IPv6报文, 得到所述接入线路信息或 设备信息;
根据所述接入线路信息或设备信息, 查找对应关系, 以对所述 IPv6报文进 行相应的操作。
12、 根据权利要求 11所述的方法, 其特征在于, 所述接收携带接入线路信 息或设备信息的 IPv6报文, 得到所述接入线路信息或设备信息包括:
接收具有至少一个 IPv6扩展头的 IPv6报文, 所述 IPv6扩展头携带接入线 路信息或设备信息, 根据所述 IPv6扩展头得到所述接入线路信息或设备信息; 或者,
接收承载有因特网控制消息协议第六版 ICMPv6消息的 IPv6报文, 所述 IPv6报文利用 ICMPv6中转消息承载所述 ICMPv6消息和接入环路信息, 从该 ICMPv6中转消息提取得到所述接入线路信息。
13、 根据权利要求 11所述的方法, 其特征在于, 所述根据所述接入线路信 息或设备信息, 查找对应关系, 以对所述 IPv6报文进行相应的操作包括:
根据接入线路信息或设备信息, 查找第一对应关系, 以对所述 IPv6报文进 行接入、 认证或授权, 其中, 所述 IPv6扩展头为第一 IPv6扩展头, 所述第一 IPv6扩展头携带接入环路标识、 下一个包头 Next Header和扩展头长度, 所述接 入线路信息包括所述接入环路标识; 和 /或,
根据接入线路信息或设备信息, 查找第二对应关系, 以为所述 IPv6报文分 配 IPv6地址前缀, 其中, 所述 IPv6扩展头为第二 IPv6扩展头, 所述第二 IPv6 扩展头携带设备类型标识、 Next Header和扩展头长度, 所述设备信息包括所述 设备类型标识。
14、 一种网络设备, 其特征在于, 所述设备包括:
信息添加单元, 用于为互联网协议第六版 IPv6报文添加接入线路信息; 转发单元, 用于转发由所述信息添加单元添加了所述接入线路信息的 IPv6 报文。
15、 根据权利要求 14所述的网络设备, 其特征在于,
所述信息添加单元, 具体用于为 IPv6报文添加至少一个 IPv6扩展头; 所添加的 IPv6扩展头包括接入环路标识、 下一个包头 Next Header和扩展 头长度, 其中, Next Header指示下一个扩展头的信息, 接入环路标识为所述接 入线路信息。
16、 根据权利要求 14所述的网络设备, 其特征在于,
所述信息添加单元, 具体用于将因特网控制消息协议第六版 ICMPv6消息 承载在 ICMPv6中转消息中,其中,所述 IPv6报文为 ICMPv6消息,所述 ICMPv6 中转消息承载有接入环路标识, 所述接入线路信息包括所述接入环路标识。
17、 根据权利要求 15所述的网络设备, 其特征在于, 所述信息添加单元包 括当前级添加模块和上一级添加模块, 所述上一级添加模块, 用于在所述 IPv6 报文中添加上一级的 IPv6扩展头, 所述当前级添加模块, 用于通过下述的至少 一种方式为所述 IPv6报文添加当前级的 IPv6扩展头:
在上一级的 IPv6扩展头之后直接添加当前级的 IPv6扩展头,其中,上一級 的 IPv6扩展头中的 Next Header指示当前级的 IPv6扩展头;
或者,
^改上一级的 IPv6扩展头,在上一级的 IPv6扩展头的接入环路标识中添加 当前级的接入环路标识。
18、 根据权利要求 14至 17任一项所述的网络设备, 其特征在于, 所述设 备由接入网的接入节点和 /或 IP边缘节点实现。
19、 一种终端, 其特征在于, 所述终端包括:
扩展头添加单元, 用于为互联网协议第六版 IPv64艮文添加至少一个 IPv6 扩展头, 所述 IPv6扩展头携带设备信息;
转发单元, 用于转发由所述扩展头添加单元添加了所述 IPv6扩展头的 IPv6 报文。
20、 根据权利要求 19所述的终端, 其特征在于, 所述扩展头添加单元添加 的 IPv6扩展头包括设备类型标识、 下一个包头 Next Header和扩展头长度, 其 中, Next Header指示下一个扩展头的信息, 设备类型标识为所述设备信息。
21、 一种网络服务器, 其特征在于, 所述网络服务器包括: 接收单元, 用于接收携带接入线路信息或设备信息的互联网协议第六版
IPv6报文, 得到所述接入线路信息或设备信息;
处理单元, 用于根据所述接入线路信息或设备信息, 查找对应关系, 以对 所述 IPv6报文进行相应的操作。
22、 根据权利要求 21所述的网络服务器, 其特征在于,
所述接收单元,用于接收具有至少一个 IPv6扩展头的 IPv6报文,所述 IPv6 扩展头携带接入线路信息或设备信息, 根据所述 IPv6扩展头得到所述接入线路 信息或设备信息; 或者,
接收承载有 ICMPv6消息的 IPv6报文,所述 IPv6报文利用 ICMPv6中转消 息承载所述 ICMPv6消息和接入线路信息, 从该 ICMPv6中转消息提取得到所 述接入线路信息。
23、 根据权利要求 21所述的网络服务器, 其特征在于,
所述处理单元, 用于根据所述接入线路信息或设备信息, 查找第一对应关 系, 以对所述 IPv6报文进行接入、 认证或授权, 其中, 所述 IPv6扩展头为第一 IPv6扩展头,所述第一 IPv6扩展头携带接入环路标识、下一个包头 Next Header 和扩展头长度, 所述接入线路信息包括所述接入环路标识; 和 /或,
所述处理单元, 用于根据所述接入线路信息或设备信息, 查找第二对应关 系,以为所述 IPv6报文分配 IPv6地址前缀,其中,所述 IPv6扩展头为第二 IPv6 扩展头, 所述第二 IPv6扩展头携带设备类型标识、 Next Header和扩展头长度, 所述设备信息包括所述设备类型标识。
24、 一种 IPv6网络系统, 其特征在于, 所述系统包括终端和 /或网络设备, 以及网络服务器,
所述终端, 用于为 IPv6报文添加至少一个 IPv6扩展头, 所述 IPv6扩展头 携带设备信息; 转发添加了所述 IPv6扩展头的 IPv6报文;
所述网络设备, 用于为 IPv6报文添加接入线路信息; 转发添加了所述 IPv6 扩展头的 IPv6报文;
所述网络服务器, 用于接收携带接入线路信息或设备信息的 IPv6报文; 根 据所述接入线路信息或设备信息, 查找对应关系, 以对所述 IPv6报文进行相应 的操作。
PCT/CN2010/079261 2009-12-07 2010-11-30 一种IPv6报文的处理方法、设备和系统 WO2011069419A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP10835454.9A EP2495926B1 (en) 2009-12-07 2010-11-30 Method, device and system for processing ipv6 messages
US13/482,742 US8917723B2 (en) 2009-12-07 2012-05-29 Method, device, and system for processing IPv6 packet

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN200910224093.5 2009-12-07
CN2009102240935A CN102088391B (zh) 2009-12-07 2009-12-07 一种IPv6报文的处理方法、设备和系统

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US13/482,742 Continuation US8917723B2 (en) 2009-12-07 2012-05-29 Method, device, and system for processing IPv6 packet

Publications (1)

Publication Number Publication Date
WO2011069419A1 true WO2011069419A1 (zh) 2011-06-16

Family

ID=44100012

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2010/079261 WO2011069419A1 (zh) 2009-12-07 2010-11-30 一种IPv6报文的处理方法、设备和系统

Country Status (4)

Country Link
US (1) US8917723B2 (zh)
EP (2) EP2495926B1 (zh)
CN (1) CN102088391B (zh)
WO (1) WO2011069419A1 (zh)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102215124B (zh) * 2011-06-08 2013-06-05 华为技术有限公司 一种故障处理方法、汇聚节点及光网络保护系统
US9497076B2 (en) * 2012-03-12 2016-11-15 ZTE Portugal-Projectos de Telecomunições Unipessoal Lda Dual-stack support for demarc auto configuration (DAC) mechanism in DOCSIS provisioning of EPON (DPOE) network
CN102710802B (zh) * 2012-05-07 2017-10-17 中兴通讯股份有限公司 IPv6配置信息提供装置及获取方法
CN103457856B (zh) * 2012-06-05 2018-01-23 华为技术有限公司 报文处理方法、系统及路由设备
CN103841024B (zh) * 2012-11-27 2017-07-21 中国电信股份有限公司 一种家庭网关实现数据分流的方法和家庭网关
CN108566451B (zh) 2014-03-11 2021-05-14 华为技术有限公司 一种消息处理方法、接入控制器及网络节点
CN105099914B (zh) * 2014-04-24 2018-12-25 华为技术有限公司 一种指示组播转发表项的方法及设备
US10257099B2 (en) 2014-09-30 2019-04-09 A 10 Networks, Incorporated Applications of processing packets which contain geographic location information of the packet sender
US9762683B2 (en) * 2014-09-30 2017-09-12 A 10 Networks, Incorporated Use of packet header extension for geolocation/geotargeting
CN113225238B (zh) 2015-07-17 2022-08-26 华为技术有限公司 消息传输方法、接入节点、接入控制器及接入系统
WO2017166148A1 (zh) * 2016-03-31 2017-10-05 华为技术有限公司 一种数据传输的方法和相关设备
CN109495594B (zh) * 2017-09-11 2022-03-29 华为技术有限公司 一种数据传输方法、pnf sdn控制器、vnf sdn控制器及系统
CN113472650A (zh) * 2020-03-31 2021-10-01 华为技术有限公司 报文处理方法、设备、系统及存储介质
CN113765865B (zh) * 2020-06-05 2022-12-27 华为技术有限公司 一种报文处理方法、设备及系统
CN114189905A (zh) * 2020-09-15 2022-03-15 华为技术有限公司 一种报文处理方法及相关设备
CN114629843A (zh) * 2020-12-11 2022-06-14 华为技术有限公司 一种报文处理方法及装置
CN114710781A (zh) * 2020-12-16 2022-07-05 华为技术有限公司 一种终端识别方法及装置
CN113300961B (zh) * 2021-05-14 2022-07-08 烽火通信科技股份有限公司 一种IPv4接入策略路由下发控制的方法与系统
US11888648B1 (en) * 2022-09-29 2024-01-30 Amazon Technologies, Inc. Software-enabled access point (SoftAP) based bridging of devices in two wireless networks

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1863199A (zh) * 2005-09-30 2006-11-15 华为技术有限公司 宽带网络中开展业务的方法
CN1897589A (zh) * 2005-07-13 2007-01-17 上海贝尔阿尔卡特股份有限公司 在通信网络中支持IPv6无状态地址配置的接入装置、路由设备及其方法
CN101047614A (zh) * 2006-05-01 2007-10-03 华为技术有限公司 一种IPv6网络环境中流传输路径建立方法和数据传输系统

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6553565B2 (en) 1999-04-23 2003-04-22 Sun Microsystems, Inc Method and apparatus for debugging optimized code
US7047519B2 (en) 2001-09-26 2006-05-16 International Business Machines Corporation Dynamic setting of breakpoint count attributes
JP4444833B2 (ja) * 2002-09-24 2010-03-31 オレンジュ・エスエー 電気通信
US7336619B2 (en) * 2002-10-25 2008-02-26 General Instrument Corporation Method for converting an IP measurement protocol packet to a data packet
US7299456B2 (en) 2003-09-18 2007-11-20 International Business Machines Corporation Run into function
KR101086397B1 (ko) * 2003-12-02 2011-11-23 삼성전자주식회사 Ip 패킷의 에러 처리 장치 및 방법, 그리고 상기 방법을실행하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체
US20060193316A1 (en) * 2005-02-25 2006-08-31 Allen Mark R Autonomous network topology and method of operating same
CN100571196C (zh) 2005-03-22 2009-12-16 华为技术有限公司 移动IPv6报文穿越防火墙的实现方法
CN1937541B (zh) * 2005-09-20 2010-08-11 华为技术有限公司 一种网络性能测试方法
KR101032737B1 (ko) * 2005-09-28 2011-05-06 각고호우징 게이오기주크 콘텐츠 송출장치, 콘텐츠 수신장치, 콘텐츠 송출방법 및콘텐츠 수신방법
JP4747197B2 (ja) * 2005-10-28 2011-08-17 パナソニック株式会社 トンネリングループ検出制御装置
US8447898B2 (en) * 2005-10-28 2013-05-21 Microsoft Corporation Task offload to a peripheral device
CN1972225B (zh) 2005-11-24 2010-09-15 华为技术有限公司 下一代网络中不同子系统之间交互用户信息的方法
US20080159287A1 (en) 2006-12-29 2008-07-03 Lucent Technologies Inc. EFFICIENT PERFORMANCE MONITORING USING IPv6 CAPABILITIES
CN101316257B (zh) * 2007-05-31 2012-08-22 华为技术有限公司 数字用户线接入复用器、光网络单元、光线路终端和基站
KR100933365B1 (ko) * 2007-09-28 2009-12-22 한국전자통신연구원 액세스 네트워크의 자원 관리 시스템 및 방법
CN101547383B (zh) * 2008-03-26 2013-06-05 华为技术有限公司 一种接入认证方法及接入认证系统以及相关设备
CN101873515B (zh) * 2009-04-21 2013-12-04 华为技术有限公司 无源光网络的ipv6协议消息传输方法、系统及装置
US8619797B2 (en) * 2009-05-12 2013-12-31 Futurewei Technologies, Inc. Using internet protocol version six (IPv6) tunnel for access identifier transport

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1897589A (zh) * 2005-07-13 2007-01-17 上海贝尔阿尔卡特股份有限公司 在通信网络中支持IPv6无状态地址配置的接入装置、路由设备及其方法
CN1863199A (zh) * 2005-09-30 2006-11-15 华为技术有限公司 宽带网络中开展业务的方法
CN101047614A (zh) * 2006-05-01 2007-10-03 华为技术有限公司 一种IPv6网络环境中流传输路径建立方法和数据传输系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP2495926A4 *

Also Published As

Publication number Publication date
EP2495926A4 (en) 2012-09-05
EP2495926B1 (en) 2014-09-10
CN102088391A (zh) 2011-06-08
CN102088391B (zh) 2013-09-11
EP2495926A1 (en) 2012-09-05
US20120236864A1 (en) 2012-09-20
EP2790381B1 (en) 2015-05-20
EP2790381A1 (en) 2014-10-15
US8917723B2 (en) 2014-12-23

Similar Documents

Publication Publication Date Title
WO2011069419A1 (zh) 一种IPv6报文的处理方法、设备和系统
EP1875668B1 (en) Scalable system method for dsl subscriber traffic over an ethernet network
US7860117B2 (en) Communication proxy method, device and system
CN101026519B (zh) 基于用户信息字符串动态创建vlan接口
US7539185B2 (en) Fast-path implementation for an uplink double tagging engine
US8875233B2 (en) Isolation VLAN for layer two access networks
US7835370B2 (en) System and method for DSL subscriber identification over ethernet network
US6888834B1 (en) System and method for providing wireless internet services
WO2018041152A1 (zh) 宽带远程接入服务器控制平面功能和转发平面功能的分离
JP4801153B2 (ja) 通信ネットワーク内のIPv6ステートレスアドレス構成をサポートするアクセス装置、ルーティング装置およびその方法
KR101455219B1 (ko) 패킷을 포워딩하기 위한 방법, 장치 및 시스템
EP1693996B1 (en) Automatic discovery of psuedo-wire peer addresses in ethernet-based networks
US8599860B2 (en) Multiple prefix connections with translated virtual local area network
WO2012163178A1 (zh) 边缘节点的分配方法和装置及边缘节点控制器
US8630285B2 (en) Method, system, and apparatus for transmitting IPV6 message in passive optical network
WO2008023360A2 (en) Point-to-multipoint functionality in a bridged network
WO2007124679A1 (fr) Procédé et système de communication en réseau
WO2011044808A1 (zh) 一种匿名通信的溯源方法及系统
WO2006122502A1 (fr) Méthode de transmission de message en couche 2 et dispositif d’accès
CN110611893B (zh) 为漫游无线用户设备扩展订户服务
WO2011050676A1 (zh) 一种匿名通信的方法及注册、取消方法及接入节点
WO2011107052A2 (zh) 一种防止地址冲突的方法及接入节点
JP2010514290A (ja) メディアアクセス制御アドレスを変換するためのネットワーク装置及び方法
WO2011032478A1 (zh) 一种获取终端身份标识的方法、装置及终端
WO2012041168A1 (zh) 用于IPv6网络的网络连接处理方法及其装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 10835454

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2010835454

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE