Patent Description:
An automatically switched optical network (automatically switched optical network, ASON) floods control routing data, node data, TE link data, and the like of different nodes on an entire network by using an open shortest path first (open shortest path first, OSPF) protocol. All nodes on a network can obtain entire-network data information. Currently, network requirements grow, and a network needs to expand from original <NUM> nodes to <NUM> nodes, or even more nodes. This manner improves an intelligent route computation/route establishment capability of a node, but also limits network expansion. The reason is that a larger network scale indicates a larger amount of data obtained by each node, and therefore memory and CPU usage becomes a bottleneck that limits network expansion.

To address network expansion, the OSPF protocol generates a new attribute during protocol development, that is, a not-so-stubby area (not-so-stubby area, NSSA), as shown in <FIG>. This attribute requires that an ASE route out of an autonomous system (autonomous system, AS) be prevented from entering the NSSA but an ASE route introduced by a router in the NSSA be able to be transmitted in the NSSA and sent out of the area. To meet the foregoing requirement, a link state advertisement (link state advertisement, LSA), that is, a type <NUM> LSA, is defined in the NSSA, and is used when a router in the area introduces an external route. Content of this type of LSA is basically the same as that of a type <NUM> LSA, except a type identifier. In this way, the router in the area may determine, based on the type of the LSA, whether the route comes from the area. However, because the type <NUM> LSA is newly defined, it cannot be identified by a router that does not support the NSSA attribute. Therefore, the protocol stipulates that a type <NUM> LSA generated in an NSSA is to be converted into a type <NUM> LSA on an area border router (area border router, ABR) of the NSSA, then the type <NUM> LSA is to be published, and an LSA publisher is to be changed to the ABR.

However, a strict limitation is imposed on a networking mode when the NSSA solution is used, and networking and deployment need to be performed according to a fixed pattern. In addition, an ABR node needs to be disposed, and the ABR node receives network data from an adjacent area. Therefore, a very high requirement is imposed on a CPU and a memory of the ABR node. If a specification of the ABR node remains unchanged, a scale of each adjacent area is limited in turn. It is impossible to require all mature planned networking to be reconstructed based on a stipulated networking specification. In addition, this implementation solution is not convenient for deployment or installation, and a requirement on a memory and a CPU of an ABR node also further affects experience. Therefore, this solution actually cannot meet a large-network requirement of a controller.

Therefore, a large-network link resource transmission solution urgently needs to be provided, to break through a bottleneck in memory and CPU usage on a large ASON network, meet a requirement for controlling link resources for ultra-large-scale nodes that continuously grow, and implement network expansion. Document <CIT> generally relates to a network element that acts as a hub in a hub and spoke topology. The network element is configured to limit the amount of topology and reachability information that is advertised to a set of one or more remote network elements that act as one or more spokes in the hub and spoke topology in a same routing area. The network element generates a set of one or two link state advertisements (LSAs) to advertise over an interface that connects at least one of the set of remote network elements to the network element, wherein the set of LSAs includes information that describes a connection to the set of remote network elements and one or more aggregate routes. The network element advertises, during a database exchange process with the one of the set of remote network elements, the set of LSAs to the one of the set of remote network element: Other link resource transmission methods are disclosed by the documents <CIT> and <CIT>.

This invention is defined by the appended claims. Embodiments of this application provide a link resource transmission method and apparatus, to break through a bottleneck in memory and CPU usage on a large ASON network, meet a requirement for controlling link resources for ultra-large-scale nodes that continuously grow, and implement network expansion, without increasing networking complexity. In particular, there are provided link resource transmission method, link resource transmission apparatus, and a computer program product, having the features of respective independent claims. The dependent claims relate to preferred embodiments.

According to a first aspect, a link resource transmission method is provided, including: A first node floods first control routing information, where the first control routing information includes an identifier of an area in which the first node is located. The first node receives second control routing information flooded by a second node, where the second control routing information includes an identifier of an area in which the second node is located. The first node determines, through comparison, whether the identifier of the area in which the first node is located is consistent with the identifier of the area in which the second node is located. When the identifier of the area in which the first node is located is consistent with the identifier of the area in which the second node is located, the first node transmits link data information of the first node to the second node.

In this aspect, no area border router needs to be specially disposed to control transmission of link data information. In this application, each node has a corresponding area identifier. Transmission of link data information in an area may be controlled depending on whether identifiers of areas in which nodes are located are consistent. A networking mode is simple, and a requirement on a memory and a CPU of a node is also decreased.

In a possible implementation, the first node is connected to a controller, and the method further includes: The first node transmits the link data information of the first node to the controller.

In this implementation, the controller may uniformly collect link data information of each node in each area, to provide a reference for subsequent service provisioning and the like.

In another possible implementation, the method further includes: The first node receives an area identifier setting instruction from the controller, and obtains the identifier of the area in which the first node is located, where the setting instruction includes the identifier of the area in which the first node is located.

In this implementation, an area identifier of a node is configured by a user by using the controller, and the user may freely configure an area to which the node belongs.

In still another possible implementation, the method further includes: The first node receives an area identifier update instruction from the controller, where the update instruction includes an updated identifier of an area in which the first node is located. The first node suspends transmitting the link data information of the first node to the second node. The first node determines, through comparison, whether the updated identifier of the area in which the first node is located is consistent with the identifier of the area in which the second node is located. When the updated identifier of the area in which the first node is located is consistent with the identifier of the area in which the second node is located, the first node transmits the link data information of the first node to the second node.

In this implementation, the identifier of the area in which the first node is located may be updated. When the identifier is updated, the first node immediately stops transmitting the link data information of the first node to the second node. The reason is that after the identifier of the area in which the first node is located is updated, the first node may be no longer located in a same area as that of the second node, and link data information cannot be transmitted between different areas. The first node may transmit the link data information of the first node to the second node only after determining, through comparison again, that the updated identifier of the area in which the first node is located is consistent with the identifier of the area in which the second node is located, to ensure normal operating of a transmission system.

According to a first example not encompassed by the claims but useful for understanding the present disclosure, a link resource transmission method is provided, including: A controller receives control routing information sent by a node in one or more areas. The controller creates, based on area information in the control routing information, a process corresponding to the one or more areas. The controller simultaneously collects link data information of the one or more areas in the process of the one or more areas.

In this example, the controller may uniformly and simultaneously collect link data information sent by nodes in a plurality of areas.

In a possible implementation, the method further includes: The controller receives an area division instruction, where the division instruction is used to instruct to obtain a plurality of areas through division, and each area includes one or more nodes. The controller sends a setting instruction to the one or more nodes in each area, where the setting instruction includes an identifier of the area in which the one or more nodes are located.

In another possible implementation, the method further includes: During service provisioning, the controller configures, based on an initial node and a last node for service provisioning and link data information of the one or more nodes, a parameter for the initial node, the last node, and one or more nodes between the initial node and the last node, to create a service transmission channel between the initial node and the last node.

In this implementation, after uniformly collecting link data information of a node in each area, the controller may create a service transmission channel between any two nodes according to a service provisioning request.

According to a second example not encompassed by the claims but useful for understanding the present disclosure, a link resource transmission method is provided, and is applied to a transmission system. The transmission system includes a first node, a second node, and a controller. The method includes: The first node floods first control routing information, where the first control routing information includes an identifier of an area in which the first node is located. The second node floods second control routing information, where the second control routing information includes an identifier of an area in which the second node is located. The first node determines, through comparison, whether the identifier of the area in which the first node is located is consistent with the identifier of the area in which the second node is located. When the identifier of the area in which the first node is located is consistent with the identifier of the area in which the second node is located, the first node transmits link data information of the first node to the second node.

In a possible implementation, the method further includes: The controller receives an area division instruction, where the division instruction is used to instruct to obtain a plurality of areas through division, and each area includes a plurality of nodes. The controller sends a first setting instruction to the first node, and sends a second setting instruction to the second node, where the first setting instruction includes the identifier of the area in which the first node is located, and the second setting instruction includes the identifier of the area in which the second node is located. The first node receives the first setting instruction from the controller, and obtains the identifier of the area in which the first node is located. The second node receives the second setting instruction from the controller, and obtains the identifier of the area in which the second node is located.

In another possible implementation, the method further includes: The first node receives an area identifier update instruction from the controller, where the update instruction includes an updated identifier of an area in which the first node is located. The first node suspends transmitting the link data information of the first node to the second node. The first node determines, through comparison, whether the updated identifier of the area in which the first node is located is consistent with the identifier of the area in which the second node is located. When the updated identifier of the area in which the first node is located is consistent with the identifier of the area in which the second node is located, the first node transmits the link data information of the first node to the second node.

In still another possible implementation, the first node is located in a first area, the second node is located in a second area, and the method further includes: The controller creates, based on the first control routing information and the second control routing information, a first process corresponding to the first area and a second process corresponding to the second area. The controller simultaneously collects the link data information of the first node in the first process, and collects link data information of the second node in the second process.

In still another possible implementation, the method further includes: During service provisioning, the controller configures, based on an initial node and a last node for service provisioning and link data information of the one or more nodes, a parameter for the initial node, the last node, and one or more nodes between the initial node and the last node, to create a service transmission channel between the initial node and the last node.

According to a second aspect, a link resource transmission apparatus is provided, to implement the link resource transmission method in any one of the first aspect or the possible implementations of the first aspect. The foregoing method may be implemented by software, by hardware, or by hardware by executing corresponding software.

In a possible implementation, a structure of the link resource transmission apparatus includes a processor and a memory. The processor is configured to support the apparatus in performing a corresponding function in the foregoing link resource transmission method. The memory is configured to be coupled to the processor, and the memory stores a program (an instruction) and/or data that are/is necessary for the apparatus. Optionally, the link resource transmission apparatus may further include a communications interface, configured to support link resource transmission between the apparatus and another network element.

In another possible implementation, the link resource transmission apparatus may include a unit module that performs a corresponding action in the foregoing method.

According to a third example not encompassed by the claims but useful for understanding the present disclosure, a link resource transmission apparatus is provided, to implement the link resource transmission method in any one of the first and second examples, or the possible implementations of the first and second examples. The foregoing method may be implemented by software, by hardware, or by hardware by executing corresponding software.

In a possible implementation, a structure of the link resource transmission apparatus includes a processor and a memory. The processor is configured to support the apparatus in performing a corresponding function in the foregoing link resource transmission method. The memory is configured to be coupled to the processor, and the memory stores a program (an instruction) and data that are necessary for the apparatus. Optionally, the link resource transmission apparatus may further include a communications interface, configured to support link resource transmission between the apparatus and another network element.

According to a fourth example not encompassed by the claims but useful for understanding the present disclosure, a link resource transmission system is provided, including the foregoing link resource transmission apparatus.

According to a fifth example not encompassed by the claims but useful for understanding the present disclosure, a link resource transmission system is provided, including a first node, a second node, and a controller. The first node floods first control routing information, where the first control routing information includes an identifier of an area in which the first node is located. The second node floods second control routing information, where the second control routing information includes an identifier of an area in which the second node is located. The first node determines, through comparison, whether the identifier of the area in which the first node is located is consistent with the identifier of the area in which the second node is located. When the identifier of the area in which the first node is located is consistent with the identifier of the area in which the second node is located, the first node further transmits link data information of the first node to the second node.

In a possible implementation, the controller receives an area division instruction, where the division instruction instructs to obtain a first area and a second area through division, the first area includes one or more first nodes, and the second area includes one or more second nodes. The controller further sends a first setting instruction to the first node, and sends a second setting instruction to the second node, where the first setting instruction includes the identifier of the area in which the first node is located, and the second setting instruction includes the identifier of the area in which the second node is located. The first node further receives the first setting instruction from the controller, and obtains the identifier of the area in which the first node is located. The second node further receives the second setting instruction from the controller, and obtains the identifier of the area in which the second node is located.

In another possible implementation, the first node receives an area identifier update instruction from the controller, where the update instruction includes an updated identifier of an area in which the first node is located. The first node stops transmitting the link data information of the first node to the second node. The first node further determines, through comparison, whether the updated identifier of the area in which the first node is located is consistent with the identifier of the area in which the second node is located. When the updated identifier of the area in which the first node is located is consistent with the identifier of the area in which the second node is located, the first node further transmits the link data information of the first node to the second node.

In still another possible implementation, the first node is located in the first area, and the second node is located in the second area. The controller creates, based on the first control routing information and the second control routing information, a first process corresponding to the first area and a second process corresponding to the second area. The controller further simultaneously collects the link data information of the first node in the first process, and collects link data information of the second node in the second process.

In still another possible implementation, during service provisioning, the controller further configures, based on an initial node and a last node for service provisioning and link data information of the one or more nodes, a parameter for the initial node, the last node, and one or more nodes between the initial node and the last node, to create a service transmission channel between the initial node and the last node.

According to a sixth example not encompassed by the claims but useful for understanding the present disclosure, a computer-readable storage medium is provided. The computer-readable storage medium stores a computer program or an instruction. When the computer program or the instruction is executed, the methods in the foregoing aspects are implemented.

According to a third aspect, a computer program product including an instruction is provided. When the instruction runs on a computer, the computer is enabled to perform the methods in the first aspect.

The following describes several concepts in this application.

The OSPF is an interior gateway protocol (interior gateway protocol, IGP), is used for routing decision in a single autonomous system (autonomous system, AS), and is an implementation of a link-state routing protocol.

A link is another saying of a router interface. Therefore, the OSPF is also referred to as an interface-state routing protocol. The OSPF advertises a network interface state between routers to establish a link-state database and generate a shortest-path tree. Each OSPF router uses these shortest paths to construct a routing table.

The OSPF routing protocol is a typical link-state (link-state) routing protocol, and is usually used within one routing area. Herein, the routing area is an autonomous system, and includes a set of networks that exchange routing information by using a uniform routing policy or routing protocol. In the AS, all OSPF routers maintain a same database that describes a structure of the AS. The database stores state information of a corresponding link in the routing area. An OSPF router uses this database to calculate an OSPF routing table of the OSPF router.

As a link-state routing protocol, the OSPF transmits a link state advertisement (link state advertisement, LSA) to all routers in an area.

The LSA is description information of an OSPF interface, for example, an IP address, a subnet mask, a network type, or a cost value of the interface. OSPF routers exchange link states (LSAs) instead of routing tables. The OSPF obtains all link state information on a network, to calculate an accurate network path to reach each target. An OSPF router sends all link states of the OSPF router to a neighbor. The neighbor places all received link states in a link-state database (link-state database). The neighbor then sends the link states to all its neighbors, without any change during transmission. With this process, finally, all OSPF routers on the network have all link states on the network, and link states of all the routers should be able to depict a same network topology.

A basic assumption of the ASON is to introduce a control plane in an optical transport network, to implement on-demand allocation of network resources and further achieve an intelligent optical network. The ASON enables a future optical transport network to develop into a network that provides a connection for any place and any user, become a network including thousands of switching junctions and tens of millions of terminals, and serve as an intelligent fully automatically switched optical network.

The ASON includes three planes: a transmission plane, a control plane, and a management plane. In addition, the ASON further includes a data communications network (data communications network, DCN) that serves as an auxiliary network.

The control plane includes a set of communications entities, and is responsible for performing a call control and connection control function, and recovering a connection when a failure occurs.

The control plane is like a navigation device, can automatically search for a route, and can further re-calculate a route when an error occurs, to implement protection and recovery. The control plane can collect and spread network topology information, quickly and effectively configure a service connection, and reconfigure or modify a service connection. The control plane supports a plurality of protection and recovery solutions, supports traffic control engineering, is not limited by subnet division for routing areas and transmission resources, and is not limited by a connection control manner.

The management plane performs a function of managing the control plane, the transmission plane, and the data communications network (DCN). The control plane, the transmission plane, and the data communications network (DCN) report their respective management information such as alarms, performance, and events to the management plane. The management plane ensures collaborative work between all planes. The management plane is like a driver who is driving a vehicle. The driver sets a destination for the navigation device, and manages and controls the navigation device and the vehicle during entire driving.

The transmission plane performs functions such as optical signal transmission, multiplexing, configuration protection switching, and a cross connection, and ensures reliability of a transmitted optical signal. The transmission plane is like a road, and the optical signal is a vehicle that runs on the road.

The DCN provides an out-of-band transmission channel for communication within the control plane, the management plane, or the transmission plane and commutation between the three planes, and mainly carries distributed signaling messages related to the control plane and management information related to the transmission plane. The DCN is like a GPS signal transmission channel, and is responsible for transmitting positioning and navigation information.

This application provides a link resource transmission method and apparatus, and no area border router needs to be specially disposed to control transmission of link data information. In this application, each node has a corresponding area identifier. Transmission of link data information in an area may be controlled depending on whether identifiers of areas in which nodes are located are consistent. A networking mode is simple, and a requirement on a memory and a CPU of a node is also decreased.

<FIG> is a schematic structural diagram of a link resource transmission system according to an embodiment of this application. As shown in <FIG>, the transmission system is a large-network system, and may include a large quantity of nodes, for example, more than <NUM> nodes. The transmission system uses OSPF TELINK (link data) area-specific control. Link data is a large-scale data type structure, in the OSPF protocol, that performs intra-area flooding. Specifically, the transmission system includes a controller. A plurality of nodes in the transmission system are distributed to three areas (area) (the figure shows merely an example, and any quantity of areas may be obtained through division in practice): an area <NUM>, an area <NUM>, and an area <NUM>. Each area includes one or more nodes. A node may also be referred to as an ASON device. Nodes in each area may be connected by using an optical fiber or a network cable. Nodes across areas may also be connected by using an optical fiber or a network cable. The three areas jointly serve as an AS area. The controller controls the entire AS area uniformly. A plurality of area processes are created in the controller. In a process corresponding to each area, the controller communicates with each node in the area by using the OSPF protocol or the like.

<FIG> is a schematic flowchart of a link resource transmission method according to an embodiment of this application.

A first node floods first control routing information, where the first control routing information includes an identifier of an area in which the first node is located.

Correspondingly, a node or a controller in the area in which the first node is located or in another area receives the first control routing information.

The first node, or referred to as an ASON device, supports setting of an identifier (area id) of an area in which the first node is located. After network planning, the controller sets different area IDs on nodes, to distribute the nodes to different AS areas. As shown in <FIG>, an area <NUM>, an area <NUM>, and an area <NUM> are obtained through division.

After the area ID is set on the first node, the node floods only the first control routing information, but does not transmit link data information of the first node. In this application, link data information can be transmitted only between nodes in a same area, and only control routing information can be transmitted between nodes in different areas. For example, when OSPF of the first node receives a creation or update IPS message sent by a LIM module, if a PPP link is involved, the OSPF needs to modify enable_te_flooding into false (that is, by default, link data information is not flooded). The first control routing information includes the identifier of the area in which the node is located. The first control routing information may be a type of LSA, for example, a type <NUM> LSA. When the LIM module activates an interface by using a MIB message, the OSPF sends a type <NUM> LSA. The link data information may be the foregoing TELINK.

A second node floods second control routing information, where the second control routing information includes an identifier of an area in which the second node is located.

Correspondingly, a node or a controller in the area in which the second node is located or in another area receives the second control routing information.

Likewise, after an area ID is set on the second node, the node floods only the second control routing information, but does not transmit link data information of the second node. The second control routing information includes the identifier of the area in which the second node is located.

The first node determines, through comparison, whether the identifier of the area in which the first node is located is consistent with the identifier of the area in which the second node is located.

After receiving the second control routing information (for example, a type <NUM> LSA) of the second node, the first node parses the area ID, in the second control routing information, of the area in which the second node is located, and determines, through comparison, whether the identifier of the area in which the first node is located is consistent with the identifier of the area in which the second node is located.

When the identifier of the area in which the first node is located is consistent with the identifier of the area in which the second node is located, the first node transmits the link data information of the first node to the second node.

If the identifier of the area in which the first node is located is consistent with the identifier of the area in which the second node is located, it indicates that the first node and the second node are located in a same area. In this case, the first node may transmit the link data information of the first node to the second node. For example, the first node modifies enable_te_flooding into true, and floods all TELINK information of the first node to the second node. The link data information includes a link state and attribute information. The link state includes link connectivity state information and the like. The attribute information includes information about bandwidth, a remote end, a subrack, a board slot, a port, and the like.

If the identifier of the area in which the first node is located is inconsistent with the identifier of the area in which the second node is located, only control routing information (an LSA) is flooded.

Through flooding and identification of area IDs, TE links of different areas are isolated, and control routing is not limited. Therefore, through control, TE link information is not transmitted between different areas, but TE link information can be transmitted within a same area.

For mature planned networking of customers, it is impossible to require all customers to perform reconstruction based on a stipulated networking specification. In addition, this implementation is not convenient for deployment or installation of customers. Furthermore, a requirement on a memory and a CPU of an ABR also further affects customer experience.

However, the solution of OSPF TELINK area-specific control and entire-network flooding of control routing information in this application has the following differences from an NSSA:.

According to the link resource transmission method provided in this embodiment of this application, no area border router needs to be specially disposed to control transmission of link data information. In this application, each node has a corresponding area identifier. Transmission of link data information in an area may be controlled depending on whether identifiers of areas in which nodes are located are consistent. A networking mode is simple, and a requirement on a memory and a CPU of a node is also decreased.

<FIG> are a schematic flowchart of another link resource transmission method according to an embodiment of this application.

A controller receives an area division instruction, where the division instruction is used to instruct to obtain a plurality of areas through division, and each area includes a plurality of nodes.

A user may divide a network into a plurality of areas by using the controller, and each area includes one or more nodes. The controller receives an area division instruction from the user. In an example of this embodiment, the network may be divided into a plurality of areas, and a quantity of areas into which the network is divided is not limited.

The controller sends a first setting instruction to a first node, where the first setting instruction includes an identifier of an area in which the first node is located.

Correspondingly, the first node receives the first setting instruction from the controller, and obtains the identifier of the area in which the first node is located.

After dividing the network into a plurality of areas, the controller sends, to a node in each area, a setting instruction for an identifier of an area in which the node is located. In this step, the controller sends the first setting instruction to the first node, where the first setting instruction includes the identifier of the area in which the first node is located.

The controller sends a second setting instruction to a second node, where the second setting instruction includes an identifier of an area in which the second node is located.

Correspondingly, the second node receives the second setting instruction from the controller, and obtains the identifier of the area in which the second node is located.

Likewise, the controller sends the second setting instruction to the second node, where the second setting instruction includes the identifier of the area in which the second node is located.

The identifier of the area in which the first node is located and the identifier of the area in which the second node is located may be the same, or may be different.

The first node floods first control routing information, where the first control routing information includes the identifier of the area in which the first node is located.

The second node floods second control routing information, where the second control routing information includes the identifier of the area in which the second node is located.

The first node determines, through comparison, whether the identifier of the area in which the first node is located is consistent with the identifier of the area in which the second node is located.

When the identifier of the area in which the first node is located is consistent with the identifier of the area in which the second node is located, the first node transmits link data information of the first node to the second node.

For a specific implementation process of S204 to S207, refer to steps S101 to S104 in the embodiment shown in <FIG>.

The controller creates, based on area information in the first control routing information and the second control routing information, a first process corresponding to a first area and a second process corresponding to a second area.

Each node in an area may transmit various types of control routing information to the controller. The controller uniformly collects various types of control routing information sent by nodes in each area. The various types of control routing information include a type <NUM> LSA, that is, include an identifier of an area in which a node is located. The network is divided into a plurality of areas. Because the controller obtains an identifier of an area in which each node is located, the controller may learn of the area in which each node is located. The controller may create, based on the area information (the identifier of the area in which the first node is located and the identifier of the area in which the second node is located) in the first control routing information and the second control routing information, the first process corresponding to the first area and the second process corresponding to the second area. As shown in <FIG>, the controller creates, in the controller, processes or instances corresponding to an area <NUM>, an area <NUM>, and an area <NUM>. The process collects link data information of a node in each area from the node in the area. A plurality of created processes may be executed simultaneously.

The controller simultaneously collects the link data information of the first node in the first process, and collects link data information of the second node in the second process.

After creating, in the controller, the processes or the instances corresponding to the area <NUM>, the area <NUM>, and the area <NUM>, the controller may simultaneously execute the three processes, that is, simultaneously collect link data information of nodes in the area <NUM>, the area <NUM>, and the area <NUM> from the nodes. This greatly improves efficiency for obtaining link data information.

<FIG> is a schematic diagram of transmitting a link resource/topology resource according to an embodiment of this application. As shown in <FIG>, nodes in a plurality of areas separately transmit link data information, that is, OSPF-TE shown in the figure, to the controller by using the OSPF protocol, so that the controller can obtain entire-network link resources, or referred to as topology resources.

The controller sends an area identifier update instruction to the first node, where the update instruction includes an updated identifier of an area in which the first node is located.

Correspondingly, the first node receives the area identifier update instruction from the controller.

An area may be obtained through manual division. Therefore, an identifier of an area in which a node is located may also be changed. For example, the controller needs to update the identifier of the area in which the first node is located. In this case, the controller sends the area identifier update instruction to the first node, where the update instruction includes the updated identifier of the area in which the first node is located. The first node receives the update instruction, and obtains the updated identifier of the area in which the first node is located.

The first node suspends transmitting the link data information of the first node to the second node.

Before the area ID of the first node is updated, the area ID of the first node may be the same as the area ID of the second node. In this case, the first node may transmit the link data information of the first node to the second node. Optionally, the first node periodically transmits link data information of the first node to the second node. Because the area ID is updated, the area in which the first node is located may be different from the area in which the second node is located, that is, the area ID of the first node may be different from the area ID of the second node. When detecting that the area ID of the first node is updated, the first node immediately suspends transmitting the link data information of the first node to the second node.

The first node determines, through comparison, whether the updated identifier of the area in which the first node is located is consistent with the identifier of the area in which the second node is located.

After detecting that the area ID of the first node is updated, the first node performs a same procedure as that in S206 to determine, through comparison, whether the updated identifier of the area in which the first node is located is consistent with the identifier of the area in which the second node is located.

When the updated identifier of the area in which the first node is located is consistent with the identifier of the area in which the second node is located, the first node transmits the link data information of the first node to the second node.

An implementation of S213 is the same as that of S207.

During service provisioning, the controller configures, based on an initial node and a last node for service provisioning and link data information of the one or more nodes, a parameter for the initial node, the last node, and one or more nodes between the initial node and the last node, to create a service transmission channel between the initial node and the last node.

This application supports a cross-area E2E (end-to-end, end-to-end) channel. <FIG> is a schematic diagram of service provisioning according to an embodiment of this application. When a user requires an ASON channel to be created between an initial node and a last node, the controller calculates an LSP path in an end-to-end manner, and delivers the LSP path to the initial node of a service. The initial node of the service is responsible for end-to-end service configuration, preset path rerouting, and intra-area rerouting, and is also responsible for reporting a service status to the controller. As shown in <FIG>, a service is provisioned to the controller, and the controller delivers an LSP path to a node (an initial node) in an area by using the PCEP protocol, to create an E2E ODU that can cross a plurality of areas, and transmit an RSVP service.

According to the link resource transmission method provided in this embodiment of this application, no area border router needs to be specially disposed to control transmission of link data information. In this application, each node has a corresponding area identifier. Transmission of link data information in an area may be controlled depending on whether identifiers of areas in which nodes are located are consistent. A networking mode is simple, and a requirement on a memory and a CPU of a node is also decreased. After uniformly collecting link data information of a node in each area, the controller may create a service transmission channel between any two nodes according to a service provisioning requirement.

The foregoing describes in detail the method in the embodiments of the present invention. The following provides an apparatus in the embodiments of the present invention.

Based on a same concept as that of the link resource transmission method in the foregoing embodiments, as shown in <FIG>, an embodiment of this application further provides a link resource transmission apparatus <NUM>. The link resource transmission apparatus may be applied to the link resource transmission method shown in <FIG> and <FIG> to <FIG>. The link resource transmission apparatus <NUM> includes a sending unit <NUM>, a receiving unit <NUM>, and a comparison unit <NUM>.

The sending unit <NUM> is configured to flood first control routing information, where the first control routing information includes an identifier of an area in which a first node is located.

The receiving unit <NUM> is configured to receive second control routing information flooded by a second node, where the second control routing information includes an identifier of an area in which the second node is located.

The comparison unit <NUM> is configured to determine, through comparison, whether the identifier of the area in which the first node is located is consistent with the identifier of the area in which the second node is located.

The sending unit <NUM> is further configured to: when the identifier of the area in which the first node is located is consistent with the identifier of the area in which the second node is located, transmit link data information of the first node to the second node.

In an implementation, the first node is connected to a controller, and the sending unit <NUM> is further configured to transmit the link data information of the first node to the controller.

In another implementation, the receiving unit <NUM> is further configured to receive an area identifier setting instruction from the controller, and obtain the identifier of the area in which the first node is located, where the setting instruction includes the identifier of the area in which the first node is located.

More detailed descriptions of the sending unit <NUM>, the receiving unit <NUM>, and the comparison unit <NUM> may be directly obtained by directly referring to related descriptions of the first node in the method embodiments shown in <FIG> and <FIG> to <FIG>.

Based on a same concept as that of the link resource transmission method in the foregoing embodiments, as shown in <FIG>, an embodiment of this application further provides a link resource transmission apparatus <NUM>. The link resource transmission apparatus may be applied to the link resource transmission method shown in <FIG> and <FIG> to <FIG>. The link resource transmission apparatus <NUM> includes a receiving unit <NUM> and a creation unit <NUM>, and may further include a sending unit <NUM> and a configuration unit <NUM>.

The receiving unit <NUM> is configured to receive control routing information sent by a node in one or more areas.

The creation unit <NUM> is configured to create, based on the control routing information, a process corresponding to the one or more areas.

The receiving unit <NUM> is further configured to simultaneously collect link data information of the one or more areas in the process of the one or more areas.

In an implementation, the receiving unit <NUM> is further configured to receive an area division instruction, where the division instruction is used to instruct to obtain a plurality of areas through division, and each area includes one or more nodes.

The sending unit <NUM> is further configured to send a setting instruction to the one or more nodes in each area, where the setting instruction includes an identifier of the area in which the one or more nodes are located.

In another implementation, the configuration unit <NUM> is configured to: during service provisioning, perform parameter configuration for an initial node, a last node, and one or more nodes between the initial node and the last node, based on the initial node and the last node for service provisioning and link data information of the one or more nodes, to create a service transmission channel between the initial node and the last node.

More detailed descriptions of the receiving unit <NUM>, the creation unit <NUM>, the sending unit <NUM>, and the configuration unit <NUM> may be directly obtained by directly referring to related descriptions of the controller in the method embodiments shown in <FIG> and <FIG> to <FIG>.

Based on a same concept as that of the link resource transmission method in the foregoing embodiments, as shown in <FIG>, an embodiment of this application further provides a link resource transmission system. The link resource transmission system may be applied to the link resource transmission method shown in <FIG> and <FIG> to <FIG>. The transmission system <NUM> includes a controller <NUM>, a first node <NUM>, and a second node <NUM>. Certainly, the transmission system may alternatively include more nodes. Herein merely shows an example. The controller is separately connected to the first node <NUM> and the second node <NUM>.

The first node <NUM> floods first control routing information, where the first control routing information includes an identifier of an area in which the first node <NUM> is located.

The second node <NUM> floods second control routing information, where the second control routing information includes an identifier of an area in which the second node <NUM> is located.

The first node <NUM> determines, through comparison, whether the identifier of the area in which the first node <NUM> is located is consistent with the identifier of the area in which the second node <NUM> is located.

When the identifier of the area in which the first node <NUM> is located is consistent with the identifier of the area in which the second node <NUM> is located, the first node <NUM> transmits link data information of the first node <NUM> to the second node <NUM>.

In an implementation, the controller <NUM> receives an area division instruction, where the division instruction is used to instruct to obtain a plurality of areas through division, and each area includes one or more nodes.

The controller <NUM> sends a first setting instruction to the first node <NUM>, and sends a second setting instruction to the second node <NUM>, where the first setting instruction includes the identifier of the area in which the first node <NUM> is located, and the second setting instruction includes the identifier of the area in which the second node <NUM> is located.

The first node <NUM> receives the first setting instruction from the controller <NUM>, and obtains the identifier of the area in which the first node <NUM> is located.

The second node <NUM> receives the second setting instruction from the controller <NUM>, and obtains the identifier of the area in which the second node <NUM> is located.

In another implementation, the first node <NUM> receives an area identifier update instruction from the controller <NUM>, where the update instruction includes an updated identifier of an area in which the first node <NUM> is located.

The first node <NUM> suspends transmitting the link data information of the first node <NUM> to the second node <NUM>.

The first node <NUM> determines, through comparison, whether the updated identifier of the area in which the first node <NUM> is located is consistent with the identifier of the area in which the second node <NUM> is located.

When the updated identifier of the area in which the first node <NUM> is located is consistent with the identifier of the area in which the second node <NUM> is located, the first node <NUM> transmits the link data information of the first node <NUM> to the second node <NUM>.

In still another implementation, the first node <NUM> is located in a first area, and the second node <NUM> is located in a second area.

The controller <NUM> creates, based on the first control routing information and the second control routing information, a first process corresponding to the first area and a second process corresponding to the second area.

The controller <NUM> simultaneously collects the link data information of the first node <NUM> in the first process, and collects link data information of the second node <NUM> in the second process.

In still another implementation, during service provisioning, the controller <NUM> configures, based on an initial node and a last node for service provisioning and link data information of the one or more nodes, a parameter for the initial node, the last node, and one or more nodes between the initial node and the last node, to create a service transmission channel between the initial node and the last node.

An embodiment of this application further provides a link resource transmission apparatus. The link resource transmission apparatus is configured to perform the foregoing link resource transmission method. <FIG> is a schematic structural diagram of still another link resource transmission apparatus according to an embodiment of this application. As shown in <FIG>, the apparatus may include:
an input apparatus <NUM>, an output apparatus <NUM>, a memory <NUM>, and a processor <NUM> (there may be one or more processors in the apparatus, and one processor is shown in <FIG> as an example). In some embodiments of this application, the input apparatus <NUM>, the output apparatus <NUM>, the memory <NUM>, and the processor <NUM> may be connected by using a bus or in another manner. <FIG> shows an example in which a bus is used for connection.

The processor <NUM> may be a central processing unit (central processing unit, CPU), a network processor (network processor, NP), or a combination of a CPU and an NP.

The processor <NUM> may further include a hardware chip. The hardware chip may be an application-specific integrated circuit (application-specific integrated circuit, ASIC), a programmable logic device (programmable logic device, PLD), or a combination thereof. The PLD may be a complex programmable logic device (complex programmable logic device, CPLD), a field-programmable gate array (field-programmable gate array, FPGA), a generic array logic (generic array logic, GAL), or any combination thereof.

The memory <NUM> may include a volatile memory (volatile memory) such as a random access memory (random-access memory, RAM); or the memory may include a non-volatile memory (non-volatile memory) such as a flash memory (flash memory), a hard disk drive (hard disk drive, HDD), or a solid-state drive (solid-state drive, SSD); or the memory may include a combination of the foregoing types of memories.

The foregoing link resource transmission method may be partially or completely implemented by hardware or software.

Optionally, the link resource transmission apparatus may be a chip or an integrated circuit in a specific implementation.

Optionally, when the link resource transmission method in the foregoing embodiments is partially or completely implemented by software, the link resource transmission apparatus includes: a memory, configured to store a program; and a processor, configured to execute the program stored in the memory. When the program is executed, the link resource transmission apparatus is enabled to implement the link resource transmission method provided in the foregoing embodiments.

Optionally, the memory may be a physically independent unit, or may be integrated with a processor.

Optionally, when the link resource transmission method in the foregoing embodiments is partially or completely implemented by software, the link resource transmission apparatus may alternatively include only a processor. A memory configured to store a program is located outside the link resource transmission apparatus. The processor is connected to the memory by using a circuit or a wire, to read and execute the program stored in the memory.

This application further provides a computer program product, configured to perform the method in <FIG> or <FIG> to <FIG> when being executed on a computing device.

This application further provides a computer-readable storage medium. The computer-readable storage medium stores a computer program. When the program is executed by a processor, the method in <FIG> or <FIG> A to <FIG> is implemented.

For example, the unit division is merely logical function division and may be another division in actual implementation.

Claim 1:
A link resource transmission method, comprising:
flooding (S101), by a first node, first control routing information, wherein the first control routing information comprises an identifier of an area in which the first node is located;
receiving (S102), by the first node, second control routing information flooded by a second node, wherein the second control routing information comprises an identifier of an area in which the second node is located;
determining (S103), by the first node through comparison, whether the identifier of the area in which the first node is located is consistent with the identifier of the area in which the second node is located; and
when (S104) the identifier of the area in which the first node is located is consistent with the identifier of the area in which the second node is located, transmitting, by the first node, link data information of the first node to the second node.