U.S. patent application number 17/105434 was filed with the patent office on 2021-03-18 for route generation method and device.
This patent application is currently assigned to HUAWEI TECHNOLOGIES CO., LTD.. The applicant listed for this patent is HUAWEI TECHNOLOGIES CO.,LTD.. Invention is credited to Guoyi Chen, Jie Dong, Zongpeng Du.
Application Number | 20210084009 17/105434 |
Document ID | / |
Family ID | 1000005254710 |
Filed Date | 2021-03-18 |
![](/patent/app/20210084009/US20210084009A1-20210318-D00000.png)
![](/patent/app/20210084009/US20210084009A1-20210318-D00001.png)
![](/patent/app/20210084009/US20210084009A1-20210318-D00002.png)
![](/patent/app/20210084009/US20210084009A1-20210318-D00003.png)
![](/patent/app/20210084009/US20210084009A1-20210318-D00004.png)
![](/patent/app/20210084009/US20210084009A1-20210318-D00005.png)
![](/patent/app/20210084009/US20210084009A1-20210318-D00006.png)
![](/patent/app/20210084009/US20210084009A1-20210318-D00007.png)
United States Patent
Application |
20210084009 |
Kind Code |
A1 |
Du; Zongpeng ; et
al. |
March 18, 2021 |
ROUTE GENERATION METHOD AND DEVICE
Abstract
This application provides a route generation method, applied to
an SRv6 network and including: receiving, by a first network
device, a first notification packet from a second network device;
where the first notification packet includes a network slice
identifier, the first notification packet indicates an association
relationship between information of the network slice identifier
and an IPv6 address prefix of the second network device, and the
network slice identifier is used to identify one network slice; and
generating, by the first network device, a route forwarding entry
for the IPv6 address prefix of the second network device based on
an association relationship between the network slice identifier
and the IPv6 address prefix of the second network device. This
helps implement a network slice and resource isolation in the
SRv6.
Inventors: |
Du; Zongpeng; (Shenzhen,
CN) ; Chen; Guoyi; (Beijing, CN) ; Dong;
Jie; (Beijing, CN) |
|
Applicant: |
Name |
City |
State |
Country |
Type |
HUAWEI TECHNOLOGIES CO.,LTD. |
Shenzhen |
|
CN |
|
|
Assignee: |
HUAWEI TECHNOLOGIES CO.,
LTD.
Shenzhen
CN
|
Family ID: |
1000005254710 |
Appl. No.: |
17/105434 |
Filed: |
November 25, 2020 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
PCT/CN2019/082353 |
Apr 12, 2019 |
|
|
|
17105434 |
|
|
|
|
Current U.S.
Class: |
1/1 |
Current CPC
Class: |
H04L 45/74 20130101;
H04L 61/6086 20130101 |
International
Class: |
H04L 29/12 20060101
H04L029/12; H04L 12/741 20060101 H04L012/741 |
Foreign Application Data
Date |
Code |
Application Number |
May 25, 2018 |
CN |
201810515357.1 |
Claims
1. A route generation method by a first network device in an
Internet protocol version 6 (IPv6)-based segment routing over an
IPv6 data plane (SRv6) network, wherein the method comprises:
receiving a first notification packet from a second network device,
that includes a network slice identifier that identifies one
network slice and indicates an association relationship between
information of the network slice identifier and an IPv6 address
prefix of the second network device; and generating a route
forwarding entry for the IPv6 address prefix of the second network
device based on an association relationship between the network
slice identifier and the IPv6 address prefix of the second network
device.
2. The method according to claim 1, wherein the method further
comprises: obtaining the network slice identifier and an IPv6
address prefix of the first network device, and generating a second
notification packet; and sending the second notification packet to
the second network device, wherein the second notification packet
comprises the network slice identifier, and the second notification
packet indicates an association relationship between the
information of the network slice identifier and the IPv6 address
prefix of the first network device.
3. The method according to claim 1, wherein the first notification
packet is an intermediate system to intermediate system (ISIS)
protocol link state protocol data unit (LSPDU) message, the LSPDU
message comprises the network slice identifier, and the LSPDU
message indicates the association relationship between the
information of the network slice identifier and the IPv6 address
prefix of the second network device.
4. The method according to claim 3, wherein the LSPDU message
comprises an IPv6 reachable type-length-value (TLV) field, the IPv6
reachable TLV field comprises a prefix field and a
sub-type-length-value (sub-TLV) field, the prefix field is used to
carry the IPv6 address prefix of the second network device, and the
sub-TLV field is used to carry the network slice identifier.
5. The method according to claim 1, wherein the first notification
packet is an interior gateway protocol (IGP) notification message,
the notification message comprises an SRv6 segment identifier
(SID), the SID comprises a locator part, the locator part comprises
the network slice identifier, and the locator part indicates the
association relationship between the information of the network
slice identifier and the IPv6 address prefix of the second network
device.
6. The method according to claim 5, wherein the locator part
comprises the network slice identifier and the IPv6 address prefix
of the second network device.
7. A notification packet sending method by a second network device
in an Internet protocol version 6 (IPv6) based segment routing over
an IPv6 data plane (SRv6) network, wherein the method comprises:
obtaining a network slice identifier and an IPv6 address prefix of
the second network device, and generating a first notification
packet; and sending the first notification packet to a first
network device, wherein the first notification packet comprises the
network slice identifier, the first notification packet indicates
an association relationship between information of the network
slice identifier and the IPv6 address prefix of the second network
device, and the network slice identifier is used to identify one
network slice.
8. A first network device, comprises: a transceiver, configured to
receive a first notification packet from a second network device,
wherein the first notification packet comprises a network slice
identifier, the first notification packet indicates an association
relationship between information of the network slice identifier
and an Internet protocol version 6 (IPv6) address prefix of the
second network device, and the network slice identifier is used to
identify one network slice; and a processor, configured to generate
a route forwarding entry for the IPv6 address prefix of the second
network device based on an association relationship between the
network slice identifier and the IPv6 address prefix of the second
network device.
9. The network device according to claim 8, wherein the processor
is further configured to: obtain the network slice identifier and
an IPv6 address prefix of the first network device, and generate a
second notification packet; and the transceiver is further
configured to send the second notification packet to the second
network device, wherein the second notification packet comprises
the network slice identifier, and the second notification packet
indicates an association relationship between the information of
the network slice identifier and the IPv6 address prefix of the
first network device.
10. The network device according to claim 8, wherein the first
notification packet is an intermediate system to intermediate
system (ISIS) protocol link state protocol data unit (LSPDU)
message, the LSPDU message comprises the network slice identifier,
and the LSPDU message indicates the association relationship
between the information of the network slice identifier and the
IPv6 address prefix of the second network device.
11. The network device according to claim 10, wherein the LSPDU
message comprises an IPv6 reachable type-length-value (TLV) field,
the IPv6 reachable TLV field comprises a prefix field and a
sub-type-length-value (sub-TLV) field, the prefix field is used to
carry the IPv6 address prefix of the second network device, and the
sub-TLV field is used to carry the network slice identifier.
12. The network device according to claim 8, wherein the first
notification packet is an interior gateway protocol (IGP)
notification message, the notification message comprises an segment
routing over an IPv6 data plane (SRv6) segment identifier (SID),
the SID comprises a locator part, the locator part comprises the
network slice identifier, and the locator part indicates the
association relationship between the information of the network
slice identifier and the IPv6 address prefix of the second network
device.
13. The network device according to claim 12, wherein the locator
part comprises the network slice identifier and the IPv6 address
prefix of the second network device.
14. A second, comprises: a processor, configured to: obtain a
network slice identifier and an IPv6 address prefix of the second
network device, and generate a first notification packet; and a
transceiver, configured to send the first notification packet to a
first network device, wherein the first notification packet
comprises the network slice identifier, the first notification
packet indicates an association relationship between information of
the network slice identifier and the IPv6 address prefix of the
second network device, and the network slice identifier is used to
identify one network slice.
Description
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application is a continuation of International
Application No. PCT/CN2019/082353, filed on Apr. 12, 2019, which
claims priority to Chinese Patent Application No. 201810515357.1,
filed on May 25, 2018. The disclosures of the aforementioned
applications are hereby incorporated by reference in their
entireties.
TECHNICAL FIELD
[0002] The present application relates to the field of
communications technologies, and specifically, to a route
generation method, a network device, and a system.
BACKGROUND
[0003] A network slice (Network Slicing) is a virtualization form
that allows a plurality of logical networks to run on a shared
physical network infrastructure. In other words, based on a shared
physical network, a corresponding network slice (or a virtual
network) is partitioned by using a virtualization technology, to
meet differentiated requirements of a user. Resources in virtual
network slices are logically isolated, independent of each other,
and do not affect each other.
[0004] Segment routing inherits from and innovates on an internet
protocol (Internet Protocol, IP) routing technology, and has a
unique advantage in aspects such as implementing network
virtualization, and network programmability. An SR data plane is
implemented in two manners: multiprotocol label switching
(Multi-Protocol Label Switching, MPLS) or an internet protocol
version 6 (Internet Protocol version 6, IPv6). An IPv6-based SR is
referred to as an internet protocol version 6 segment routing
(Internet Protocol version 6 Segment Routing, IPv6 SR) or segment
routing over IPv6 data plane (SRv6). However, the SRv6 currently
does not support resource isolation, and cannot implement a network
slice to generate a corresponding route for each network slice.
SUMMARY
[0005] A route generation method, a network device, and a system
provided in embodiments of the present application help resolve a
problem of generating a corresponding route for each network slice
in an SRv6 network. This implements a network slice in the SRv6
network.
[0006] To resolve the foregoing problem, a first aspect of the
embodiments of the present application provides a route generation
method, applied to an SRv6 network, and the method includes:
receiving, by a first network device, a first notification packet
from a second network device, where the first notification packet
includes a network slice identifier, the first notification packet
indicates an association relationship between information of the
network slice identifier and an IPv6 address prefix of the second
network device, and the network slice identifier is used to
identify one network slice; and generating, by the first network
device a route forwarding entry for the IPv6 address prefix of the
second network device based on an association relationship between
the network slice identifier and the IPv6 address prefix of the
second network device, where the route forwarding entry of the IPv6
address prefix of the second network device is in the network
slice.
[0007] The network slice identifier is associated with the IPv6
address prefix of the network device, and flooding is performed
inside the SRv6 network, so as to generate a route for an IPv6
address prefix of each network slice. In this way, an SRv6 physical
network is sliced into a virtual network, and resources in
different virtual networks are isolated from each other and do not
affect each other.
[0008] In a possible design, the first network device obtains the
network slice identifier and an IPv6 address prefix of the first
network device, and generates a second notification packet; and the
first network device sends the second notification packet to the
second network device, where the second notification packet
includes the network slice identifier, and the second notification
packet indicates an association relationship between the
information of the network slice identifier and the IPv6 address
prefix of the first network device.
[0009] The network slice identifier is associated with the IPv6
address prefix of the network device, and flooding is performed
inside the SRv6 network, so as to help further generate the route
for the IPv6 address prefix of each network slice. In this way, the
SRv6 physical network is sliced into the virtual network, and the
resources in the different virtual networks are isolated from each
other and do not affect each other.
[0010] In a possible design, the first notification packet is an
intermediate system to intermediate system ISIS protocol link state
protocol data unit LSPDU message, the LSPDU message includes the
network slice identifier, and the LSPDU message indicates the
association relationship between the information of the network
slice identifier and the IPv6 address prefix of the second network
device.
[0011] The ISIS LSPDU message carries the network slice identifier
and indicates the association relationship between the information
of the network slice identifier and the IPv6 address prefix. In
this way, the SRv6 physical network is sliced into the virtual
network, and this helps easily implement an SRv6 network slice.
[0012] In a possible design, the LSPDU message includes an IPv6
reachable type-length-value TLV field, the IPv6 reachable TLV field
includes a prefix field and a sub-type-length-value sub-TLV field,
the prefix field is used to carry the IPv6 address prefix of the
second network device, and the sub-TLV field is used to carry the
network slice identifier.
[0013] The ISIS LSPDU message carries the network slice identifier
in the sub-TLV and indicates the association relationship between
the information of the network slice identifier and the IPv6
address prefix. In this way, the SRv6 physical network is sliced
into the virtual network, there is no need to modify a large
quantity of standards, and compatibility with an existing standard
is good.
[0014] In a possible design, the first notification packet is an
interior gateway protocol IGP notification message, the
notification message includes an SRv6 segment identifier SID, the
SID includes a locator part, the locator part includes the network
slice identifier, and the locator part indicates the association
relationship between the information of the network slice
identifier and the IPv6 address prefix of the second network
device.
[0015] The locator part in the SRv6 SID field carries the network
slice identifier and indicates the association relationship between
the information of the network slice identifier and the IPv6
address prefix. In this way, the SRv6 physical network is sliced
into the virtual network, a network administrator can easily
identify the virtual network based on the SID, and this facilitates
manual management and reduces operations and/or configuration
errors.
[0016] In a possible design, the locator part includes the network
slice identifier and the IPv6 address prefix of the second network
device. The method is simple and clear, and helps efficiently and
correctly manage a network.
[0017] According to a second aspect, an embodiment of the present
application provides a notification packet sending method, applied
to an SRv6 network, and the method includes: obtaining, by a second
network device, a network slice identifier and an IPv6 address
prefix of the second network device, and generating a first
notification packet; and sending, by the second network device, the
first notification packet to the first network device, where the
first notification packet includes the network slice identifier,
the first notification packet indicates an association relationship
between information of the network slice identifier and the IPv6
address prefix of the second network device, and the network slice
identifier is used to identify one network slice.
[0018] According to a third aspect, the present application
provides a first network device, and the first network device is
configured to perform the method in any one of the first aspect or
the possible implementations of the first aspect. Specifically, the
first network device includes a module configured to perform the
method in any one of the first aspect or the possible
implementations of the first aspect.
[0019] According to a fourth aspect, the present application
provides a first network device, and the first network device
includes a processor, a transceiver, a random access memory, a
read-only memory, and a bus. The processor is separately coupled to
the transceiver, the random access memory, and the read-only memory
by using the bus. When the first network device needs to run, the
first network device is started by using a basic input/output
system built into the read-only memory or a bootloader booting
system in an embedded system, to boot the first network device to
enter a normal running state. After the first network device enters
the normal running state, an application program and an operating
system run in the random access memory, to enable the processor to
perform the method in any one of the first aspect or the possible
implementations of the first aspect.
[0020] According to a fifth aspect, a first network device is
provided, and the first network device includes a central
processing unit, a forwarding entry memory, a physical interface
card, and a network processor. The first network device is
configured to perform the method in any possible implementation of
the first aspect. Specifically, the first network device includes a
module configured to perform the method in any one of the first
aspect or the possible implementations of the first aspect.
[0021] According to a sixth aspect, the present application
provides a computer-readable medium including an instruction, and
when the instruction is run on a computer, the computer is enabled
to perform the method in any one of the first aspect or the
possible implementations of the first aspect.
[0022] According to a seventh aspect, the present application
provides a second network device, and the second network device is
configured to perform the method in any one of the second aspect or
the possible implementations of the second aspect. Specifically,
the second network device includes a module configured to perform
the method in any one of the second aspect or the possible
implementations of the second aspect.
[0023] According to an eighth aspect, the present application
provides a second network device, and the second network device
includes a processor, a transceiver, a random access memory, a
read-only memory, and a bus. The processor is separately coupled to
the transceiver, the random access memory, and the read-only memory
by using the bus. When the second network device needs to run, the
second network device is started by using a basic input/output
system built into the read-only memory or a bootloader booting
system in an embedded system, to boot the second network device to
enter a normal running state. After the second network device
enters the normal running state, an application program and an
operating system run in the random access memory, to enable the
processor to perform the method in any one of the second aspect or
the possible implementations of the second aspect.
[0024] According to a ninth aspect, a second network device is
provided, and the second network device includes a central
processing unit, a forwarding entry memory, a physical interface
card, and a network processor. The second network device is
configured to perform the method in any possible implementation of
the second aspect. Specifically, the second network device includes
a module configured to perform the method in any one of the second
aspect or the possible implementations of the second aspect.
[0025] According to a tenth aspect, the present application
provides a computer-readable medium including an instruction, and
when the instruction is run on a computer, the computer is enabled
to perform the method in any one of the second aspect or the
possible implementations of the second aspect.
[0026] According to an eleventh aspect, the present application
provides a system, and the system includes the first network device
in any one of the third aspect to the fifth aspect and the second
network device in any one of the seventh aspect to the ninth
aspect.
BRIEF DESCRIPTION OF DRAWINGS
[0027] To describe the technical solutions in the embodiments of
this application more clearly, the following briefly introduces the
accompanying drawings required for describing the embodiments. It
is clearly that the accompanying drawings in the following
description show merely some embodiments recorded in this
application, and a person of ordinary skill in the art may still
derive other drawings from these accompanying drawings.
[0028] FIG. 1 is a schematic diagram of a scenario to which an SRv6
network is applicable according to an embodiment of the present
application;
[0029] FIG. 2 is a schematic flowchart of a route generation method
according to an embodiment of the present application;
[0030] FIG. 3A is a schematic diagram of a format of an IPv6
reachable TLV field according to an embodiment of the present
application;
[0031] FIG. 3B is a schematic diagram of a format of a network
slice identifier sub-TLV field according to an embodiment of the
present application;
[0032] FIG. 4A is a schematic structural diagram of an IPv6 SID
according to an embodiment of the present application;
[0033] FIG. 4B is a schematic structural diagram of another IPv6
SID according to an embodiment of the present application;
[0034] FIG. 5 is a schematic diagram of a virtual network into
which an SRv6 physical network is sliced according to an embodiment
of the present application;
[0035] FIG. 6A is a schematic structural diagram of a first network
device according to an embodiment of the present application;
[0036] FIG. 6B is a schematic structural diagram of another first
network device according to an embodiment of the present
application;
[0037] FIG. 6C is a schematic structural diagram of still another
first network device according to an embodiment of the present
application;
[0038] FIG. 7A is a schematic structural diagram of a second
network device according to an embodiment of the present
application;
[0039] FIG. 7B is a schematic structural diagram of another second
network device according to an embodiment of the present
application;
[0040] FIG. 7C is a schematic structural diagram of still another
second network device according to an embodiment of the present
application; and
[0041] FIG. 8 is a schematic structural diagram of a system
according to an embodiment of the present application.
DESCRIPTION OF EMBODIMENTS
[0042] In order to enable a person skilled in the art to better
understand the solutions in the present application, the following
further describes the embodiments of the present application in
detail with reference to accompanying drawings and implementations.
It is clearly that the described embodiments are a part rather than
all of the embodiments of the present application. All other
embodiments obtained by a person of ordinary skill in the art based
on the embodiments of the present application without creative
efforts shall fall within the protection scope of the present
application.
[0043] Before the technical solutions of the embodiments of the
present application are described, a scenario to which the
embodiments of the present application are applicable is first
described as an example. The present application is applied to an
SRv6 network. The SRv6 network usually includes a plurality of
network devices that support an IPv6 segment routing technology,
and the network device may be a device such as a router or a
switch. The router and the switch may be physical devices, or may
be virtualization technology-based virtual devices (for example, a
virtual server, a virtual router, and a virtual switch). As shown
in FIG. 1, for example, the SRv6 network includes routers R 1, R 2,
R 3, and R 4. The routers in the SRv6 network flood SR routing
information through interaction of an interior gateway protocol
(IGP), to discover a topology and generate a route forwarding entry
for the SRv6 network.
[0044] The foregoing describes the possible scenario to which the
present application is related and a problem that exists in a
network slice aspect of a SRv6 technology. Based on this, the
following further describes the embodiments of the present
application in detail.
[0045] FIG. 2 is a schematic flowchart of a route generation method
according to an embodiment of the present application. With
reference to the scenario example shown in FIG. 1, a first network
device and a second network device in FIG. 2 are any router shown
in FIG. 1. For example, if the first network device is the router R
1, the second network device is any one of the other routers R 2, R
3, or R 4 except R 1 in FIG. 1.
[0046] As shown in FIG. 2, an interaction process between the first
network device and the second network device is described in the
solution provided in this embodiment of the present application.
Operations performed by the first network device include parts 210,
211, 212, and 213, and operations performed by the second network
device include parts 220, 221, 222, and 223, which are described
below.
[0047] Part 220: The second network device obtains the network
slice identifier and an IPv6 address prefix of the second network
device, and generates a first notification packet, where the
network slice identifier is used to identify one network slice.
[0048] Part 221: The second network device sends the first
notification packet to the first network device.
[0049] In a specific implementation, that the second network device
obtains the network slice identifier (for example, a slice ID 1)
and the IPv6 address prefix (for example, an IPv6 prefix 2) of the
second network device includes: The second network device
configures the network slice identifier and the IPv6 address prefix
of the second network device on the second network device based on
a configuration command, the second network device receives a
message sent by a control management device, and obtains from the
message, the network slice identifier and the IPv6 address prefix
of the second network device, the second network device generates
the network slice identifier and the IPv6 address prefix of the
second network device by using an algorithm that is run on the
second network device, or when the second network device is
implemented based on software, the second network device sets
default values of the network slice identifier and the IPv6 address
prefix of the second network device.
[0050] Likewise, part 210: The first network device obtains the
network slice identifier and an IPv6 address prefix of the first
network device, and generates a second notification packet.
[0051] Part 211: The first network device sends the second
notification packet to the second network device.
[0052] In a specific implementation, that the first network device
obtains the network slice identifier (for example, the slice ID 1)
and the IPv6 address prefix (for example, an IPv6 prefix 1) of the
first network device includes: The first network device configures
the network slice identifier and the IPv6 address prefix of the
first network device on the first network device based on a
configuration command, the first network device receives a message
sent by a control management device, and obtains from the message,
the network slice identifier and the IPv6 address prefix of the
first network device, the first network device generates the
network slice identifier and the IPv6 address prefix of the first
network device by using an algorithm that is run on the first
network device, or when the first network device is implemented
based on software, the first network device sets default values of
the network slice identifier and the IPv6 address prefix of the
first network device.
[0053] Part 212: The first network device receives the first
notification packet from the second network device, where the first
notification packet includes the network slice identifier and
indicates an association relationship between information of the
network slice identifier and the IPv6 address prefix of the second
network device.
[0054] In a specific implementation, routers in an SRv6 network 1
flood SR routing information based on an IGP, to discover a network
topology and generate a route for the SRv6 network 1. The SR
routing information includes information such as a node segment
identifier (Node SID), an adjacency segment identifier (Adjacency
SID), and an IPv6 address prefix. The IGP is ISIS or the open
shortest path first (OSPF).
[0055] For example, the first notification packet is an ISIS
protocol link state protocol data unit (LSPDU) message, and the
LSPDU message includes the network slice identifier and indicates
the association relationship between the information of the network
slice identifier and the IPv6 address prefix of the second network
device.
[0056] The LSPDU message includes an IPv6 reachable
type-length-value (TLV) field. As shown in FIG. 3A, the IPv6
reachable TLV field includes a prefix field and a
sub-type-length-value (sub-TLV) field. The prefix field is used to
carry the IPv6 address prefix, and the sub-TLV field is used to
carry the network slice identifier.
[0057] As shown in FIG. 3B, the sub-TLV field includes a sub-type
field, a sub-length field, and a sub-value field. The sub-type
field indicates the network slice identifier, the sub-length field
indicates a length of the sub-value field or a length of the
sub-TLV field, and the sub-value is a value of the network slice
identifier, for example, a value 1 indicates a network slice whose
slice ID is 1.
[0058] It should be noted that, for details about the LSPDU message
in the present application, refer to the ISO-10589 standard
released by International Organization for Standardization (ISO),
and for details about the IPv6 reachable TLV, refer to the Request
For Comments (RFC) 5308 released by Internet Engineering Task Force
(IETF). Content in the two standards related to each of the LSPDU
message and the IPv6 reachable TLV is generally incorporated into
this specification by reference as if it were replicated as a
whole. For brevity, details are not described herein.
[0059] The ISIS LSPDU message carries the network slice identifier
in the sub-TLV and indicates the association relationship between
the information of the network slice identifier and the IPv6
address prefix. In this way, an SRv6 physical network is sliced
into a virtual network, there is no need to modify a large quantity
of standards, and compatibility with an existing standard is good.
Therefore, it is a simple and easy-to-use SRv6 network slicing
method.
[0060] It should be noted that, the LSPDU message provided in this
embodiment of the present application is used to carry the network
slice identifier, and indicate the association relationship between
the information of the network slice identifier and the IPv6
address prefix of the second network device is merely an example,
and does not constitute a limitation.
[0061] In another specific implementation, the first notification
packet is an IGP notification message, and the IGP is ISIS or OSPF.
The first notification packet includes an SRv6 segment identifier
(SID). For example, the first notification packet is an ISIS
protocol link state protocol data unit (LSPDU) message, and the
LSPDU message includes the SRv6 SID in two manners.
[0062] One is that the LSPDU message includes an extended IS
reachable (Extended IS Reachability) TLV defined in the IETF RFC
5305, where a type value of the extended IS reachability TLV is 22,
and the extended IS reachability TLV includes the SRv6 SID. Content
in the standard related to the extended IS reachability TLV is
generally incorporated into this specification by reference as if
it were replicated as a whole. For brevity, details are not
described herein.
[0063] The other is that the LSPDU message includes an SRv6
adjacency segment identifier sub-type-length-value (Adjacency-SID
sub-TLV) or an SRv6 local area network adjacency segment identifier
sub-type-length-value (LAN Adjacency-SID sub-TLV) defined in the
IETF draft-bashandy-isis-srv6-extensions-02 draft, and the SRv6
adjacency-SID sub-TLV or the SRv6 LAN adjacency-SID sub-TLV
includes the SRv6 SID. Content in the IETF draft related to the
SRv6 adjacency-SID sub-TLV or the SRv6 LAN adjacency-SID sub-TLV is
generally incorporated into this specification by reference as if
it were replicated as a whole. For brevity, details are not
described herein.
[0064] The SRv6 SID includes a locator part and a function part.
The locator part includes the network slice identifier and
indicates the association relationship between the information of
the network slice identifier and the IPv6 address prefix of the
second network device. For example, in one case, the SRv6 SID is a
128-bit value.
[0065] FIG. 4A is a schematic structural diagram of the SRv6 SID
field. The locator part (or field) includes a slice identifier
(Slice ID) field and an IPv6 prefix field, and the slice ID field
is located at a head-end of the locator field. The slice ID field
is used to carry the information of the network slice identifier,
and the IPv6 prefix field is used to carry the IPv6 address prefix
of the first network device.
[0066] It should be noted that, as shown in FIG. 4B, the slice ID
field may also be located at a tail end of the locator field. FIG.
4A and FIG. 4B each shows an example of a location of the slice ID
field in the locator field, but does not constitute a limitation.
For example, the slice ID field may alternatively be located in the
middle of the locator field.
[0067] The locator part in the SRv6 SID field carries the network
slice identifier and indicates the association relationship between
the information of the network slice identifier and the IPv6
address prefix. In this way, an SRv6 physical network is sliced
into a virtual network, a network administrator can easily identify
a corresponding virtual network based on the SID, and this
facilitates manual management. Because the slice ID is included in
the SID, when the administrator views the SID, the administrator
can identify a virtual network (or a network slice) to which the
SID belongs, to identify an operation and/or a configuration error.
This reduces incorrect configuration and a misoperation, and helps
efficiently and correctly manage a network.
[0068] It should be noted that, the SRv6 SID in the LSPDU message
provided in this embodiment of the present application is used to
carry the network slice identifier, and the SRv6 SID indicates the
association relationship between the information of the network
slice identifier and the IPv6 address prefix of the second network
device is merely an example, and does not constitute a limitation.
The SRv6 SID can also be carried in another IGP message.
[0069] Part 213: The first network device generates and stores a
route forwarding entry for the IPv6 address prefix of the second
network device based on the association relationship between the
network slice identifier (for example, the network slice identifier
indicates a network slice 1 (Slice 1)) and the IPv6 address prefix
(IPv6 Prefix 2) of the second network device. The route forwarding
entry is an entry in the network slice. For example, as shown in
Table 1, the route forwarding entry includes an association
relationship between a match item and an execution action, and the
match item includes an IPv6 address prefix. When the first network
device receives a data packet that is in the slice 1 and that is
destined for an address whose prefix is the prefix 2, the first
network device searches for the route forwarding entry based on the
prefix 2, and performs a corresponding operation after the route
forwarding entry is found, for example, actions such as forwarding
the data packet to an outbound interface or a next hop.
TABLE-US-00001 TABLE 1 IPv6 prefix Action Prefix 2 Outbound
interface, next hop, or the like
[0070] It should be noted that, in this embodiment of the present
application, the solution is described only by using an interaction
processing process between the first network device and the second
network device as an example. It may be understood that the first
network device further receives a notification packet sent by each
of the other network devices in the SRv6 network, and the first
network device also sends a notification packet of the first
network device to each of the other network devices in the SRv6
network.
[0071] Therefore, the SR routing information is flooded in the SRv6
network by using the IGP, and the SR routing information is
associated with the network slice identifier (for example, the
network slice identifier indicates the network slice 1 (Slice 1)).
In this way, each router in the SRv6 network 1 obtains the SR
routing information associated with the network slice identifier
(for example, the slice 1) in the SRv6 network, and this generates
a network topology of the network slice (for example, the slice 1)
indicated in the network slice identifier in the SRv6 network.
Finally, each router in the SRv6 network calculates a route
forwarding entry based on the network topology of the network slice
(for example, the slice 1), where the route forwarding entry is in
the network slice (for example, the slice 1). Likewise, several
network slices such as a slice 2 may also be generated. After the
SR routing information is associated with the network slice
identifier, flooding is performed inside the SRv6 network. In this
way, the SRv6 physical network is sliced into several virtual
networks (a slice 1 and a slice 2 in network slices shown in FIG.
5) and resources in different virtual networks are isolated from
each other, and do not affect each other.
[0072] In addition, an IPv6 prefix-based route forwarding entry is
generated by flooding the association relationship between the IPv6
prefix and the slice ID. An IP address prefix has a function of
aggregating an IP address, so that one IP prefix may cover several
IP addresses with a same IP prefix, and therefore IP address-based
route forwarding entry may be aggregated, and a quantity of route
forwarding entries can be reduced, to save storage space of a
network device.
[0073] Part 222: The second network device receives the second
notification packet from the first network device, where the second
notification packet includes the network slice identifier and
indicates an association relationship between information of the
network slice identifier and the IPv6 address prefix of the first
network device.
[0074] Part 223: The second network device generates and stores a
route forwarding entry for the IPv6 address prefix of the first
network device in the network slice based on the association
relationship between the information of the network slice
identifier and the IPv6 address prefix of the first network
device.
[0075] Specific implementation principles of parts 222 and 223 are
the same as the specific implementation principles of parts 212 and
213. For details, refer to related chapters. Details are not
described again.
[0076] FIG. 6A is a possible schematic structural diagram of a
first network device 500A to which the foregoing embodiment
relates. The first network device 500A is applied to an SRv6
network, and includes a main control board 510, an interface board
530, a switching board 520, and an interface board 540. The main
control board 510 is configured to complete functions such as
system management, device maintenance, and protocol processing. The
switching board 520 is configured to exchange data between various
interface boards (the interface board is also referred to as a line
card or a service board). The interface boards 530 and 540 are
configured to provide various service interfaces (for example, an
Ethernet interface and a POS interface), and implement data packet
forwarding. The main control board 510, the interface boards 530
and 540, and the switching board 520 are connected to a platform
backboard by using a system bus for interworking. A central
processing unit 531 on the interface board 530 is configured to
control and manage the interface board and communicate with a
central processing unit 511 on the main control board 510.
[0077] The first network device 500A receives a first notification
packet from a second network device from a physical interface card
533, where the first notification packet includes a network slice
identifier and indicates an association relationship between
information of the network slice identifier and an IPv6 address
prefix of the second network device (which is consistent with
related descriptions in FIG. 2, and details are not described
herein again). The physical interface card 533 sends the first
notification packet to a network processor 532 and the network
processor 532 searches for a forwarding entry memory 534 according
to a destination address (which is a local IP address of the first
network device) in the first notification packet. A local packet is
indicated in a matching result. Therefore, the network processor
532 sends the first notification packet upward to the central
processing unit 511 in a control plane. The central processing unit
511 on the main control board 510 is further configured to generate
a route forwarding entry for the IPv6 address prefix (based on the
IPv6 address prefix, the forwarding entry is generated in a route
forwarding entry corresponding to the network slice) based on an
association relationship between the network slice identifier and
the IPv6 address prefix of the second network device, and deliver
the route forwarding entry to the forwarding entry memory 534 by
using the central processing unit 531.
[0078] For steps that the central processing unit 511 specifically
performs to perform the function in Part 213 in FIG. 2, and steps
that the physical interface card 533 and the network processor 532
specifically perform to implement the function in Part 212 in FIG.
2, refer to the foregoing related descriptions. Details are not
described herein again.
[0079] It should be understood that, in this embodiment of the
present application, an operation on the interface board 540 is
consistent with an operation on the interface board 530. For
brevity, details are not described again. It should be understood
that the first network device 500A in this embodiment of the
present application may correspond to the first network device in
the network slice method embodiment, modules in the first network
device 500A and the foregoing other operations and/or functions are
separately used to implement the steps and methods implemented by
the first network device in the embodiments corresponding to FIG. 1
to FIG. 5. For brevity, details are not described herein again.
[0080] It should be noted that, there may be one or more main
control boards, and when there are a plurality of main control
boards, the main control boards may include an active main control
board and a standby main control board. There may be one or more
interface boards, and the first network device having a stronger
data processing capability provides more interface boards. There
may also be one or more physical interface cards on the interface
board. There may be no switching board, or one or more switching
boards. When there are a plurality of switching boards, load
sharing and redundancy backup may be implemented together. In a
centralized forwarding architecture, the first network device may
need no switching board, and the interface board provides a
function of processing service data of an entire system. In a
distributed forwarding architecture, the first network device may
have at least one switching board, and exchange data between a
plurality of interface boards by using the switching board, to
provide a large-capacity data exchange and processing capability.
Therefore, a data access and processing capability of the first
network device in the distributed architecture is better than a
data access and processing capability of the first network device
in the centralized architecture. Optionally, the first network
device 500A in another form may have only one card. In other words,
there is no switching board, and functions of an interface board
and a main control board are integrated into the card. In this
case, a central processing unit on the interface board and a
central processing unit on the main control board may be combined
into one central processing unit on the card, to perform functions
after the two central processing units are combined. A device in
this form (for example, a network device such as a low-end switch
or router) has a weaker data exchange and processing capability. A
specific architecture that is to be used depends on a specific
networking deployment scenario. This is not limited herein.
[0081] FIG. 6B is another possible schematic structural diagram of
a first network device 500B to which the foregoing embodiment
relates. The first network device 500B is applied to an SRv6
network. The first network device 500B includes a processing unit
504B and a transceiver unit 506B.
[0082] The transceiver unit 506B is configured to receive a first
notification packet from a second network device, where the first
notification packet includes a network slice identifier and
indicates an association relationship between information of the
network slice identifier and an IPv6 address prefix of the second
network device, and the network slice identifier is used to
identify one network slice.
[0083] The processing unit 504B is configured to generate a route
forwarding entry for the IPv6 address prefix of the second network
device based on an association relationship between the network
slice identifier and the IPv6 address prefix of the second network
device, and based on the IPv6 address prefix, the forwarding entry
is generated in a route forwarding entry corresponding to the
network slice.
[0084] The first network device 500B further includes a memory
508B, and the memory 508B is configured to store the route
forwarding entry of the IPv6 address prefix of the second network
device.
[0085] The processing unit 504B is further configured to obtain the
network slice identifier and an IPv6 address prefix of the first
network device 500B and generate a second notification packet.
[0086] The transceiver unit 506B is further configured to send the
second notification packet to the second network device, where the
second notification packet includes the network slice identifier
and indicates an association relationship between the information
of the network slice identifier and the IPv6 address prefix of the
first network device.
[0087] It should be understood that the first network device 500B
in this embodiment of the present application may correspond to the
first network device in the network slice generation method
embodiment, modules in the first network device 500B and the
foregoing other operations and/or functions are separately used to
implement the steps and methods implemented by the first network
device in the embodiments corresponding to FIG. 1 to FIG. 5. For
brevity, details are not described herein again.
[0088] FIG. 6C is a possible schematic structural diagram of a
first network device 500C to which the foregoing embodiment
relates. The first network device 500C is applied to an SRv6
network, and the first network device 500C includes a transceiver
510C, a processor 520C, a random access memory 540C, a read-only
memory 550C, and a bus 560C. The processor 520C is separately
coupled to the transceiver 510C, the random access memory 540C, and
the read-only memory 550C by using the bus 560C. When the first
network device 500C needs to run, the first network device 500C is
started by using a basic input/output system built into the
read-only memory 550C or a bootloader booting system in an embedded
system, to boot the first network device 500C to enter a normal
running state. After the first network device 500C enters the
normal running state, an application program and an operating
system run in the random access memory 540C, so that:
[0089] the transceiver 510C receives a first notification packet
from a second network device, where the first notification packet
includes a network slice identifier and indicates an association
relationship between information of the network slice identifier
and an IPv6 address prefix of the second network device, and the
network slice identifier is used to identify one network slice,
and
[0090] the processor 520C generates a route forwarding entry for
the IPv6 address prefix based on an association relationship
between the network slice identifier and the IPv6 address prefix of
the second network device. Based on the IPv6 address prefix, the
forwarding entry is generated in a route forwarding entry
corresponding to the network slice.
[0091] The random access memory 540C stores the route forwarding
entry generated for the IPv6 address prefix.
[0092] The processor 520C further obtains the network slice
identifier and an IPv6 address prefix of the first network device,
and generates a second notification packet.
[0093] The transceiver 510C further sends the second notification
packet to the second network device, where the second notification
packet includes the network slice identifier and indicates an
association relationship between the information of the network
slice identifier and the IPv6 address prefix of the first network
device.
[0094] The first network device 500C in this embodiment of the
present application may correspond to the first network device in
the embodiments corresponding to FIG. 1 to FIG. 5, and the
processor 520C, the transceiver 510C, and the like in the first
network device 500C can implement functions of the first network
device in the embodiments corresponding to FIG. 1 to FIG. 5 and/or
steps and methods implemented by the first network device in the
embodiments corresponding to FIG. 1 to FIG. 5. The processor 520C
is configured to perform all operations of the processing unit 504B
in the first network device in FIG. 6B, and the transceiver 510C is
configured to perform all operations of the transceiver unit 506B
in the first network device in FIG. 6B. For brevity, details are
not described herein again.
[0095] It should be noted that in this embodiment, the first
network device may alternatively be implemented based on a general
physical server with reference to a network functions
virtualization (NFV) technology, and the first network device is a
virtual first network device (for example, a virtual host, a
virtual router, or a virtual switch). The virtual first network
device may be a virtual machine (VM) on which a program used for a
network slice generation function is run, and the virtual machine
is deployed on a hardware device (for example, a physical server).
The virtual machine is a complete computer system simulated by
software, having a complete hardware system function, and running
in an isolated environment. After reading this application, with
reference to the NFV technology, a person skilled in the art may
virtualize on the general physical server a plurality of first
network devices having the foregoing functions. Details are not
described herein.
[0096] FIG. 7A is a possible schematic structural diagram of a
second network device 600A to which the foregoing embodiment
relates. The second network device 600A is applied to an SRv6
network, and includes a main control board 610, an interface board
630, a switching board 620, and an interface board 640. The main
control board 610 is configured to complete functions such as
system management, device maintenance, and protocol processing. The
switching board 620 is configured to exchange data between various
interface boards (the interface board is also referred to as a line
card or a service board). The interface boards 630 and 640 are
configured to provide various service interfaces (for example, an
Ethernet interface and a POS interface), and implement data packet
forwarding. The main control board 610, the interface boards 630
and 640, and the switching board 620 are connected to a platform
backboard by using a system bus for interworking. A central
processing unit 631 on the interface board 630 is configured to
control and manage the interface board and communicate with a
central processing unit 611 on the main control board 610.
[0097] The central processing unit 611 on the main control board
610 is further configured to obtain a network slice identifier (the
network slice identifier is used to identify one network slice) and
an IPv6 address prefix of the second network device, generate a
first notification packet, and deliver the first notification
packet to a network processor 632 by using the central processing
unit 631. The first notification packet includes the network slice
identifier and indicates an association relationship between
information of the network slice identifier and the IPv6 address
prefix of the second network device (which is consistent with
related descriptions in FIG. 2, and details are not described
herein again).
[0098] The network processor 632 sends, based on that a destination
address of the first notification packet is a broadcast address in
the network slice (virtual network), the first notification packet
to all physical interface cards that belong to the network slice.
The network processor 632 sends the first notification packet to a
physical interface card 633, and sends the first notification
packet to a first network device by using the physical interface
card 633.
[0099] For steps that the central processing unit 611 specifically
performs to perform the function in Part 223 in FIG. 2, and steps
that the physical interface card 633 and the network processor 632
specifically perform to implement the function in Part 222 in FIG.
2, refer to the foregoing related descriptions. Details are not
described herein again.
[0100] It should be understood that, in this embodiment of the
present application, an operation on the interface board 640 is
consistent with an operation on the interface board 630. For
brevity, details are not described again. It should be understood
that the second network device 600A in this embodiment of the
present application may correspond to the second network device in
the network slice method embodiment, modules in the second network
device 600A and the foregoing other operations and/or functions are
separately used to implement the steps and methods implemented by
the second network device in the embodiments corresponding to FIG.
1 to FIG. 5. For brevity, details are not described herein
again.
[0101] It should be noted that, there may be one or more main
control boards, and when there are a plurality of main control
boards, the main control boards may include an active main control
board and a standby main control board. There may be one or more
interface boards, and the second network device having a stronger
data processing capability provides more interface boards. There
may also be one or more physical interface cards on the interface
board. There may be no switching board, or one or more switching
boards. When there are a plurality of switching boards, load
sharing and redundancy backup may be implemented together. In a
centralized forwarding architecture, the second network device may
need no switching board, and the interface board provides a
function of processing service data of an entire system. In a
distributed forwarding architecture, the second network device may
have at least one switching board, and exchange data between a
plurality of interface boards by using the switching board, to
provide a large-capacity data exchange and processing capability.
Therefore, a data access and processing capability of the second
network device in the distributed architecture is better than a
data access and processing capability of the second network device
in the centralized architecture. Optionally, the second network
device 600A in another form may have only one card. In other words,
there is no switching board, and functions of an interface board
and a main control board are integrated into the card. In this
case, a central processing unit on the interface board and a
central processing unit on the main control board may be combined
into one central processing unit on the card, to perform functions
after the two central processing units are combined. A device in
this form (for example, a network device such as a low-end switch
or router) has a weaker data exchange and processing capability. A
specific architecture that is to be used depends on a specific
networking deployment scenario. This is not limited herein.
[0102] FIG. 7B is another possible schematic structural diagram of
a second network device 600B to which the foregoing embodiment
relates. The second network device 600B is applied to an SRv6
network. The second network device 600B includes a processing unit
604B and a transceiver unit 606B.
[0103] The processing unit 604B is configured to obtain a network
slice identifier and an IPv6 address prefix of the second network
device, and generate a first notification packet.
[0104] The transceiver unit 606B is configured to send the first
notification packet to the first network device, where the first
notification packet includes the network slice identifier and
indicates an association relationship between information of the
network slice identifier and the IPv6 address prefix of the second
network device, and the network slice identifier is used to
identify one network slice.
[0105] The transceiver unit 606B is further configured to receive a
second notification packet from the first network device, where the
second notification packet includes the network slice identifier
and indicates an association relationship between the information
of the network slice identifier and an IPv6 address prefix of the
first network device.
[0106] The processing unit 604B is further configured to generate a
route forwarding entry for the IPv6 address prefix of the first
network device in the network slice based on an association
relationship between the network slice identifier and the IPv6
address prefix of the first network device.
[0107] The second network device 600B further includes a memory
608B, and the memory 608B is configured to store the route
forwarding entry of the IPv6 address prefix of the first network
device.
[0108] It should be understood that the second network device 600B
in this embodiment of the present application may correspond to the
second network device in the network slice generation method
embodiment, modules in the second network device 600B and the
foregoing other operations and/or functions are separately used to
implement the steps and methods implemented by the second network
device in the embodiments corresponding to FIG. 1 to FIG. 5. For
brevity, details are not described herein again.
[0109] FIG. 7C is a possible schematic structural diagram of a
second network device 600C to which the foregoing embodiment
relates. The second network device 600C is applied to an SRv6
network, and the second network device 600C includes a transceiver
610C, a processor 620C, a random access memory 640C, a read-only
memory 650C, and a bus 660C. The processor 620C is separately
coupled to the transceiver 610C, the random access memory 640C, and
the read-only memory 650C by using the bus 660C. When the second
network device 600C needs to run, the second network device 600C is
started by using a basic input/output system built into the
read-only memory 650C or a bootloader booting system in an embedded
system, to boot the second network device 600C to enter a normal
running state. After the second network device 600C enters the
normal running state, an application program and an operating
system run in the random access memory 640C, so that:
[0110] the processor 620C obtains a network slice identifier and an
IPv6 address prefix of the second network device, and generates a
first notification packet; and
[0111] the transceiver 610C sends the first notification packet to
the first network device, where the first notification packet
includes the network slice identifier and indicates an association
relationship between information of the network slice identifier
and the IPv6 address prefix of the second network device, and the
network slice identifier is used to identify one network slice.
[0112] The transceiver 610C further receives a second notification
packet from the first network device, where the second notification
packet includes the network slice identifier and indicates an
association relationship between the information of the network
slice identifier and an IPv6 address prefix of the first network
device.
[0113] The processor 620C further generates a route forwarding
entry for the IPv6 address prefix of the first network device in
the network slice based on an association relationship between the
network slice identifier and the IPv6 address prefix of the first
network device.
[0114] The random access memory 640C stores the route forwarding
entry of the IPv6 address prefix of the first network device.
[0115] The second network device 600C in this embodiment of the
present application may correspond to the second network device in
the embodiments corresponding to FIG. 1 to FIG. 5, and the
processor 620C, the transceiver 610C, and the like in the second
network device 600C can implement functions of the second network
device in the embodiments corresponding to FIG. 1 to FIG. 5 and/or
steps and methods implemented by the second network device in the
embodiments corresponding to FIG. 1 to FIG. 5. The processor 620C
is configured to perform all operations of the processing unit 604B
in the second network device in FIG. 7B, and the transceiver 610C
is configured to perform all operations of the transceiver unit
606B in the second network device in FIG. 7B. For brevity, details
are not described herein again.
[0116] It should be noted that in this embodiment, the second
network device may alternatively be implemented based on a general
physical server with reference to a network functions
virtualization (NFV) technology, and the second network device is a
virtual second network device (for example, a virtual host, a
virtual router, or a virtual switch). The virtual second network
device may be a virtual machine (VM) on which a program used for a
notification packet sending function is run, and the virtual
machine is deployed on a hardware device (for example, a physical
server). The virtual machine is a complete computer system
simulated by software, having a complete hardware system function,
and running in an isolated environment. After reading this
application, with reference to the NFV technology, a person skilled
in the art may virtualize on the general physical server a
plurality of second network devices having the foregoing functions.
Details are not described herein.
[0117] FIG. 8 is a schematic diagram of a route generation system
800 according to an embodiment of the present application. As shown
in FIG. 8, the system 800 includes a first network device 810 and a
second network device 820. The first network device 810 is any
first network device described in FIG. 6A, FIG. 6B, and FIG. 6C, or
a virtual first network device, and the second network device 820
is any second network device described in FIG. 7A, FIG. 7B, and
FIG. 7C or a virtual second network device. For a detailed
description about each device in the system, refer to related
chapters in FIG. 6A to FIG. 6C, FIG. 7A to FIG. 7C, and the like.
Details are not described herein again.
[0118] It should be understood that a person skilled in the art can
obtain, on a basis of reading this application, combinations of
optional features, steps, or methods described in embodiments in
this application without creative efforts, and all of the
combinations belong to embodiments disclosed in this application.
For simple description or writing, different combinations are not
described.
[0119] It should be understood that the term "and/or" in this
specification describes only an association relationship for
describing associated objects and represents that three
relationships may exist. For example, A and/or B may represent the
following three cases: Only A exists, both A and B exist, and only
B exists. In addition, the character "I" in this specification
generally indicates an "or" relationship between the associated
objects.
[0120] It should be understood that sequence numbers of the
foregoing processes do not mean execution sequences in various
embodiments of the present application. The execution sequences of
the processes should be determined according to functions and
internal logic of the processes, and should not be construed as any
limitation on the implementation processes of the embodiments of
the present application.
[0121] A person of ordinary skill in the art may be aware that, in
combination with the examples described in the embodiments
disclosed in this specification, units and algorithm steps may be
implemented by electronic hardware or a combination of computer
software and electronic hardware. Whether the functions are
performed by hardware or software depends on particular
applications and design constraint conditions of the technical
solutions. A person skilled in the art may use different methods to
implement the described functions for each particular application,
but it should not be considered that the implementation goes beyond
the scope of the present application.
[0122] It may be clearly understood by a person skilled in the art
that, for the purpose of convenient and brief description, for a
detailed working process of the foregoing system, apparatus, and
unit, refer to a corresponding process in the foregoing method
embodiments, and details are not described herein again.
[0123] In the several embodiments provided in this application, it
should be understood that the disclosed system, apparatus, and
method may be implemented in other manners. For example, the
described apparatus embodiment is merely an example. For example,
division into the unit is merely logical function division and may
be other division in actual implementation. For example, a
plurality of units or components may be combined or integrated into
another system, or some features may be ignored or not performed.
In addition, the displayed or discussed mutual couplings or direct
couplings or communication connections may be implemented by using
some interfaces. The indirect couplings or communication
connections between the apparatuses or units may be implemented in
electronic, mechanical, or other forms.
[0124] The units described as separate parts may or may not be
physically separate, and parts displayed as units may or may not be
physical units, may be located in one position, or may be
distributed on a plurality of network units. Some or all of the
units may be selected based on actual requirements to achieve the
objectives of the solutions of the embodiments.
[0125] In addition, functional units in the embodiments of the
present application may be integrated into one processing unit, or
each of the units may exist alone physically, or two or more units
are integrated into one unit.
[0126] When the functions are implemented in the form of a software
functional unit and sold or used as an independent product, the
functions may be stored in a computer-readable storage medium.
Based on such an understanding, the technical solutions of the
present application essentially, or the part contributing to the
prior art, or some of the technical solutions may be implemented in
a form of a software product. The computer software product is
stored in a storage medium, and includes several instructions for
instructing a computer device (which may be a personal computer, a
server, a network device, or the like) to perform all or some of
the steps of the methods described in the embodiments of the
present application. The storage medium includes various media that
can store program code, such as a USB flash drive, a removable hard
disk, a read-only memory (ROM), a random access memory (RAM), a
magnetic disk, or an optical disc.
[0127] The foregoing descriptions are merely specific
implementations of the present application, but are not intended to
limit the protection scope of the present application. Any
variation or replacement readily figured out by a person skilled in
the art within the technical scope disclosed in the present
application shall fall within the protection scope of the present
application. Therefore, the protection scope of the present
application shall be subject to the protection scope of the
claims.
* * * * *