CN113132268A - Resource allocation method and equipment - Google Patents

Resource allocation method and equipment Download PDF

Info

Publication number
CN113132268A
CN113132268A CN201911404975.XA CN201911404975A CN113132268A CN 113132268 A CN113132268 A CN 113132268A CN 201911404975 A CN201911404975 A CN 201911404975A CN 113132268 A CN113132268 A CN 113132268A
Authority
CN
China
Prior art keywords
node
service
macro
controller
time
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201911404975.XA
Other languages
Chinese (zh)
Inventor
万俊杰
于德雷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201911404975.XA priority Critical patent/CN113132268A/en
Priority to PCT/CN2020/140421 priority patent/WO2021136213A1/en
Publication of CN113132268A publication Critical patent/CN113132268A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/80Actions related to the user profile or the type of traffic
    • H04L47/801Real time traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0896Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/80Actions related to the user profile or the type of traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W72/00Local resource management
    • H04W72/04Wireless resource allocation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W72/00Local resource management
    • H04W72/04Wireless resource allocation
    • H04W72/044Wireless resource allocation based on the type of the allocated resource
    • H04W72/0446Resources in time domain, e.g. slots or frames
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W72/00Local resource management
    • H04W72/50Allocation or scheduling criteria for wireless resources
    • H04W72/52Allocation or scheduling criteria for wireless resources based on load

Abstract

A resource configuration method and equipment are used for meeting the requirement of providing deterministic forwarding service in a DIP technology and improving the resource utilization rate. In the method, a controller receives a request message, the request message is used for indicating the controller to configure time domain resources for executing a first service, the controller sends a configuration message to a first node, the configuration message indicates N positions of N time units in a macro cycle, the N time units are the time domain resources for executing the first service, and the bandwidth resources correspondingly obtained by the N time units meet the bandwidth requirement of the first service. The controller configures time domain resources by taking time units as granularity, can control the time delay of the first node for forwarding the message of the first service within an index range, and meets the requirement of providing deterministic forwarding service in the DIP technology. When the configuration resources are excessive, the controller can also configure the excessive resources to the new service according to the resource occupation condition of each node, thereby reducing resource waste and improving the resource utilization rate.

Description

Resource allocation method and equipment
Technical Field
The present application relates to the field of communications technologies, and in particular, to a resource allocation method and device.
Background
In a sixth version of internet protocol (IPv 6), in order to meet the demand of differentiated services in new application scenarios (e.g., artificial intelligence, industrial internet, internet of things, etc.), a Deterministic Internet Protocol (DIP) technology is proposed. The DIP technology aims to provide deterministic forwarding service for services, and the deterministic forwarding service refers to controlling the time delay of node forwarding messages within a certain index range through some technical processing.
At present, when configuring resources for a node, a controller only needs to ensure that the configured bandwidth resources meet bandwidth requirements of a service, that is, only ensures that the maximum data volume allowed to be transmitted in a unit time meets actual transmission requirements of the service, but specifically, which time period to perform data transmission and how much data volume to transmit in one time period are uncertain, which results in different actual bandwidths in different time ranges. For example, a bandwidth of 1.2 gigabits per second (i.e., 1.2G bits/s) is configured, the actual bandwidth in the previous 0.5 second is 2.4G bits/s in actual application, the amount of data of 1.2G bits is transmitted, the actual bandwidth in the next 0.5 second is 0, and no data transmission is performed. Because the controller only configures bandwidth resources meeting bandwidth requirements for the nodes, and the nodes forward the messages in which time period, do not forward the messages in which time period, and the next-hop nodes of the nodes receive the messages in which time period, the controller does not determine, the time delay of forwarding the messages by the nodes is uncertain for the controller. Obviously, the current resource configuration method cannot meet the requirement that the DIP technology provides deterministic forwarding service.
Disclosure of Invention
The embodiment of the application provides a resource configuration method and equipment, which are used for meeting the requirement of a DIP technology for providing deterministic forwarding service and improving the resource utilization rate.
In a first aspect, an embodiment of the present application provides a resource allocation method, where the method includes: the controller receives a request message, wherein the request message is used for indicating the controller to configure time domain resources for executing a first service, and the controller sends a configuration message to the first node, and the configuration message indicates N positions of N time units in a macro period; the N time units are time domain resources for executing the first service, and bandwidth resources corresponding to the N time units meet a bandwidth requirement of the first service, one time unit of the N time units is used for indicating a minimum duration for scheduling the time domain resources, one macrocycle includes M time units, M is an integer greater than or equal to N, and N is an integer greater than or equal to 1.
By the above method, the controller sends, in response to the request message, a configuration message indicating N positions to the first node, so that the first node will execute the first service in N time units corresponding to N positions in a macro cycle by taking a time unit as a granularity, but not execute the first service in time units other than the N time units corresponding to the N positions in the macro cycle, which means that the controller can control the delay of the first node forwarding the packet of the first service within a certain index range, and meet the requirement of the DIP technology for providing the deterministic forwarding service, for example, the controller can control the delay of the first node forwarding the packet of the first service to be 1 time unit by instructing the first node to execute the first service in a time unit corresponding to a second position in a macro cycle. In addition, when M is greater than N, since the first service only occupies N time units within one macro cycle, the remaining (M-N) time units can also be configured for other services, thereby reducing resource waste and improving resource utilization.
In an alternative embodiment, the controller determines, according to the request message, the number N of time units for executing the first service in one macrocycle; the controller configures, for a first node, N positions of the N time units within a macro period according to a time domain resource occupation condition of the node in a first transmission path, where an entry of the first transmission path is the first node and an exit is a second node, and the first service enters a first network via the first node and leaves the first network via the second node.
Through the method, the controller firstly determines the number N of the time units for executing the first service, the bandwidth resources corresponding to the N time units meet the bandwidth requirement of the first service, and the N positions of the N time units in a macro period are configured according to the time domain resource occupation condition of the nodes in the first transmission path, so that the time domain resources can be configured for the first node by taking the time unit as the granularity, the time delay of the first node for forwarding the message of the first service can be controlled within a certain index range, and the requirement of a DIP technology for providing deterministic forwarding service is met.
In an optional implementation manner, the first transmission path includes a third node, an H location is a location of the third node corresponding to the N locations in one macro cycle, and a time unit corresponding to at least one of the H locations is occupied by the second service, and the method further includes: and the controller adjusts the time domain resource used for executing the second service in the third node, and after adjustment, the N time units corresponding to the H positions are in an idle state.
By the above method, the time unit corresponding to at least one of the H positions is occupied by the second service, that is, the third node executes the first service and the second service in the time unit corresponding to the at least one position, resulting in the time domain resource conflict of the third node.
In an optional embodiment, the controller adjusts a time domain resource for executing the second service in the third node, including: the controller determines K positions according to a first macro-cycle offset, wherein the K positions are positions corresponding to the H positions of a fourth node in a macro cycle, the second service enters a first network through the fourth node, and the first macro-cycle offset is time delay of transmission of a message from the fourth node to the third node; the controller reconfigures, for the fourth node, Q positions of Q time units within one macro cycle according to a time domain resource occupation situation of a node in a second transmission path, where the Q time units are time domain resources for the fourth node to execute the second service, the Q positions include positions other than the K positions in one macro cycle, and the second transmission path is used to transmit a packet of the second service.
Through the method, the controller can accurately determine K positions corresponding to the H positions in the fourth node in one macro period according to the first macro period offset. Therefore, the controller can re-configure Q positions except the K positions for the fourth node in a macro cycle by using the time units as the granularity, the Q time units corresponding to the Q positions are used for executing the second service, which means that N time units corresponding to the H positions at the third node are in an idle state, and the third node can use the time units corresponding to different positions to respectively execute the first service and the second service, thereby solving the problem of time domain resource conflict of the third node and improving the resource utilization rate.
In an optional embodiment, the method further comprises: the controller configures a channel for executing the first service between every two adjacent nodes in a first transmission path according to the bandwidth resource occupation condition of the nodes in the first transmission path, where the configured channel is used to determine the bandwidth resource corresponding to each time unit, an inlet of the first transmission path is the first node, an outlet is a second node, and the first service enters a first network via the first node and leaves the first network via the second node.
By the above method, the controller configures one channel for executing the first service between every two adjacent nodes in the first transmission path, which means that the bandwidth of the configured channel satisfies the bandwidth resource of the first service. The configured channel may be used to determine the bandwidth resource corresponding to each time unit, for example, the controller configures a first channel for the first node and a next hop node of the first node, where the bandwidth of the first channel is 2.4G bits/s, and then the bandwidth corresponding to each time unit at the first node is 2.4G bits/s. In this way, the controller can determine N time units that satisfy the bandwidth requirement of the first service, thereby enabling allocation of time domain resources with the time units as a granularity.
In an optional embodiment, the method further comprises: the first transmission path comprises a fifth node and a sixth node, and the fifth node is a next hop node of the sixth node; the controller configures a channel between every two adjacent nodes in the first transmission path according to the bandwidth resource occupation condition of the nodes in the first transmission path, including: the controller configures a channel for executing the first service between the fifth node and the sixth node according to the bandwidth resource occupation condition of the fifth node and the bandwidth requirement of the first service; or, the controller determines a channel for executing the first service from at least one configured channel between the fifth node and the sixth node according to the bandwidth resource occupation condition of the fifth node and the bandwidth requirement of the first service.
By the above method, between two adjacent nodes of the first transmission path, the controller may configure a channel for executing the first service, or may determine a channel from at least one configured channel between the two nodes to execute the first service. The controller determines one channel from the configured at least one channel to execute the first service, namely, the first service is executed by using the surplus resources in the configured channel, so that the waste of the surplus resources is avoided, and the resource utilization rate is improved.
In an optional embodiment, the method further comprises: the controller receives a first indication message from a seventh node, wherein the first indication message indicates at least one macro-cycle offset, any one of the at least one macro-cycle offset is a time delay for a packet to be transmitted from a previous hop node of the seventh node to the seventh node, and the seventh node and the previous hop node of the seventh node are two nodes in a first network; the controller updates a macro-cycle entry of the seventh node for storing the at least one macro-cycle offset based on the first indication message. By the method, the controller can acquire the macrocycle offset of each node and update the macrocycle offset table entry of each node, so that the controller can know the time delay among the nodes, further determine which position or positions of each node in a macrocycle to execute the service based on the macrocycle offset table entry, adjust the time domain resources of each node, avoid time domain resource conflict and improve the resource utilization rate.
In an optional implementation manner, the configuration message further includes an identifier of a first channel and/or an identifier of a first service, where the first channel is a bandwidth resource used by the first node and a next hop node of the first node to execute the first service.
In an alternative embodiment, the request message includes one or more of the following information: an identity of the first node, an identity of the second node, or a bandwidth requirement of the first service.
In a second aspect, an embodiment of the present application provides a resource configuration method, where the method includes: the first node receiving a configuration message from a controller, the configuration message indicating N positions of N time units within one macro period; the first node executes the first service in N time units corresponding to the N positions; the N time units are time domain resources for executing the first service, and bandwidth resources corresponding to the N time units meet a bandwidth requirement of the first service, one time unit of the N time units is used for indicating a minimum duration for scheduling the time domain resources, one macrocycle includes M time units, M is an integer greater than or equal to N, and N is an integer greater than or equal to 1.
Through the method, the first node receives a configuration message from the controller, the configuration message is used for indicating N positions of N time units in a macro cycle, and in response, the first node executes the first service by using the N time units corresponding to the N positions in the macro cycle, but does not execute the first service in the time units except the N time units in the macro cycle, so that the controller can control the time delay of the first node for forwarding the message of the first service within a certain index range, and the requirement of the DIP technology for providing the deterministic forwarding service is met.
In an optional embodiment, the method further comprises: the first node sends a second indication message to the controller, where the second indication message indicates at least one macro-cycle offset, so that the controller updates a macro-cycle offset table entry of the first node based on the at least one macro-cycle offset, where the macro-cycle offset table entry is used to store the at least one macro-cycle offset, and any macro-cycle offset in the at least one macro-cycle offset is a delay of a packet transmitted from a last-hop node of the first node to the first node.
By the method, the first node can send the macro-cycle offset to the controller, so that the controller updates the macro-cycle offset table entry of the first node, the controller can know the time delay between the first node and other nodes, and further can determine which position or positions of the first node in a macro cycle to execute the service based on the macro-cycle offset table entry, and can adjust the time domain resource of the first node, thereby avoiding the time domain resource conflict and improving the resource utilization rate.
In an optional embodiment, the previous-hop node of the first node is an eighth node, and the at least one macro-cycle offset includes a second macro-cycle offset; the first node sends a second indication message to the controller, including: the first node receiving a third indication message from the eighth node, the third indication message indicating a first location, the first location being a location of a time unit of the eighth node generating the third indication message within one macro-cycle; the first node determines the second macro-cycle offset according to the first position and a second position, where the second position is a position of a time unit of the eighth node responding to the third indication message in a macro-cycle, and the second macro-cycle offset is a time delay of a message transmitted from the eighth node to the first node; the first node sends the second indication message to the controller.
By the method, the first node can determine the time delay of the message transmitted from the eighth node to the first node through the first position and the second position, and further can send the time delay to the controller through the second macro-cycle offset, so that when the controller determines the position of the time unit of the eighth node or the first node for executing the service in one macro-cycle, the position of the time unit of the other node for executing the service in one macro-cycle can be determined based on the second macro-cycle offset, and the requirement of providing the deterministic forwarding service in the DIP technology is met.
In an optional implementation manner, the next hop node of the first node is a ninth node, and the method further includes: generating, by the first node, a fourth indication message indicating a third location, the third location being a location of a time unit of the first node generating the fourth indication message within one macro-cycle; the first node sends the fourth indication message to the ninth node, where the fourth indication message is used to indicate that the ninth node determines a third macro-cycle offset according to the third location and a fourth location, the fourth location is a location of a time unit, in a macro-cycle, of the ninth node responding to the fourth indication message, and the third macro-cycle offset is a time delay of a packet transmitted from the first node to the ninth node.
By the method, the first node may send the fourth indication message to the next-hop node of the first node, so that the next-hop node of the first node determines the third macro-cycle offset based on the fourth indication message, and thus, the next-hop node of the first node may send the third macro-cycle offset to the controller, so that the controller updates the macro-cycle offset table entry of the next-hop node of the first node.
In an optional implementation manner, the configuration message further includes an identifier of a first channel and/or an identifier of a first service, where the first channel is used to indicate bandwidth resources used for executing the first service between the first node and a next hop node of the first node.
In a third aspect, an embodiment of the present application provides a controller, where the controller has a function of implementing the controller behavior in the above-described method example of the first aspect. The functions can be realized by hardware, and the functions can also be realized by executing corresponding software by hardware. The hardware or the software includes one or more modules corresponding to the above-described functions.
In an optional implementation manner, the structure of the controller includes a processing unit and a transceiver unit, and these units may perform corresponding functions in the foregoing method example, which is specifically referred to for detailed description in the method example, and are not described herein again.
In a fourth aspect, an embodiment of the present application provides a network node, where the network node has a function of implementing the behavior of the first node in the method example in the second aspect. The functions can be realized by hardware, and the functions can also be realized by executing corresponding software by hardware. The hardware or the software includes one or more modules corresponding to the above-described functions.
In an optional implementation manner, the structure of the network node includes a processing unit and a transceiver unit, and these units may perform corresponding functions in the foregoing method example, which is specifically referred to for detailed description in the method example, and are not described herein again.
In a fifth aspect, an embodiment of the present application further provides a controller, where the controller includes a processor, a memory, and a transceiver, where the memory is used to store a software program, and the processor is used to read the software program stored in the memory and implement the method provided in the first aspect or any design of the first aspect.
In a sixth aspect, an embodiment of the present application further provides a network node, where the network node includes a processor, a memory, and a transceiver, where the memory is used to store a software program, and the processor is used to read the software program stored in the memory and implement the method provided in the second aspect or any one of the second aspects.
In a seventh aspect, this embodiment of the present application further provides a computer-readable storage medium, where the computer-readable storage medium is configured to store computer instructions, and when the computer instructions are executed on a computer, the computer is caused to perform the method according to the first aspect or any one of the possible implementation manners of the first aspect.
In an eighth aspect, the present application further provides a computer-readable storage medium for storing computer instructions, which, when executed on a computer, cause the computer to perform the method of the second aspect or any one of the possible implementation manners of the second aspect.
In a ninth aspect, embodiments of the present application provide a computer program product comprising instructions for storing computer instructions that, when executed on a computer, cause the computer to perform the method of the first aspect or any one of the possible implementation manners of the first aspect.
In a tenth aspect, embodiments of the present application provide a computer program product comprising instructions for storing computer instructions that, when executed on a computer, cause the computer to perform the method of the second aspect or any one of the possible implementation manners of the second aspect.
In an eleventh aspect, an embodiment of the present application provides a computer chip, where the chip is connected to a memory, and the chip is configured to read and execute a software program stored in the memory, and perform the method according to the first aspect or any one of the possible implementation manners of the first aspect.
In a twelfth aspect, an embodiment of the present application provides a computer chip, where the chip is connected to a memory, and the chip is configured to read and execute a software program stored in the memory, and execute the method according to the second aspect or any one of the possible implementation manners of the second aspect.
In a thirteenth aspect, an embodiment of the present application provides a chip system, where the chip system includes a processor, and is configured to implement the method according to the first aspect or any one of the possible implementation manners of the first aspect. The chip system may be formed by a chip, and may also include a chip and other discrete devices.
In a fourteenth aspect, an embodiment of the present application provides a chip system, where the chip system includes a processor, and is configured to implement the method according to the second aspect or any one of the possible implementation manners of the second aspect. The chip system may be formed by a chip, and may also include a chip and other discrete devices.
Drawings
Fig. 1 is a schematic structural diagram of a communication system according to an embodiment of the present application;
fig. 2 is a data flow diagram of a resource allocation method according to an embodiment of the present application;
fig. 3 is a data flow diagram of a method for allocating bandwidth resources according to an embodiment of the present application;
fig. 4 is a data flow diagram of a time domain resource adjustment method according to an embodiment of the present application;
fig. 5 is a data flow diagram illustrating a method for determining a macrocycle offset according to an embodiment of the present disclosure;
fig. 6 is a structural diagram of a node reporting a macrocycle offset according to an embodiment of the present disclosure;
fig. 7 is a data flow diagram of another resource allocation method according to an embodiment of the present application;
FIG. 8 is a block diagram of a controller provided in an embodiment of the present application;
fig. 9 is another block diagram of a controller provided in an embodiment of the present application;
fig. 10 is a block diagram of a network node according to an embodiment of the present application;
fig. 11 is another structural diagram of a network node according to an embodiment of the present application;
fig. 12 is a structural diagram of a resource allocation provided in an embodiment of the present application;
fig. 13 is a block diagram of another resource allocation provided in the embodiment of the present application;
fig. 14 is a block diagram of another resource allocation provided in an embodiment of the present application.
Detailed Description
For the purpose of making the objects, technical solutions and advantages of the embodiments of the present application clearer, some terms related to the embodiments of the present application are described below.
(1) The time unit is the minimum scheduling unit in the time domain. For example, a time unit of 10 mus in length means that at least all data traffic within 10 mus needs to be scheduled per scheduling of data traffic.
(2) And a macro period, where M time units may be included in one macro period, where M may be a positive integer preset by the controller, for example, the controller may preset M according to the capability of the node to forward data amount. For another example, the capability of a node to forward data amount is related to the number of gated queues included in the node, and if the node includes 4 gated queues, the value of M may be preset to be an integer multiple of 4, such as 4, 8, 12, etc. The positions of the M time units in one macro cycle may be represented by consecutive sequence numbers, or may be represented in other manners, which is not limited in this embodiment of the present application. For example, the sequence numbers of the M time units are 0, 1, … …, M-1, respectively. For a node, in each time unit in a macro cycle, the maximum data amount capable of being transmitted is the same, for example, the maximum data amount capable of being transmitted by one time unit is 1.2G bits.
(3) The controller may configure a plurality of channels between the two nodes, and a bandwidth of each of the plurality of channels may be the same or different. The previous-hop node of the channel refers to the first node through which the message passes in two nodes at two ends corresponding to the channel. For example, two nodes at two ends corresponding to a first channel are a first node and a second node, respectively, where the first channel is used to execute a first service, and if a packet of the first service is forwarded to the second node via the first node, a previous-hop node of the first channel is the first node; and if the message of the first service is forwarded to the first node through the second node, the last hop node of the first channel is the second node.
(4) Terminal equipment, including devices that provide voice and/or data connectivity to a user, may include, for example, handheld devices with wireless connection capability or processing devices connected to wireless modems. The terminal device may include a User Equipment (UE), a wireless terminal device, a mobile terminal device, a subscriber unit (subscriber unit), a subscriber station (subscriber station), a mobile station (mobile), a remote station (remote station), an Access Point (AP), a remote terminal device (remote terminal), an access terminal device (access terminal), a user terminal device (user terminal), a user agent (user agent), a user equipment (user device), or the like. For example, mobile phones (or so-called "cellular" phones), computers with mobile terminal equipment, portable, pocket, hand-held, computer-included or vehicle-mounted mobile devices, smart wearable devices, and the like may be included. For example, Personal Communication Service (PCS) phones, cordless phones, Session Initiation Protocol (SIP) phones, Wireless Local Loop (WLL) stations, Personal Digital Assistants (PDAs), and the like. Also included are constrained devices, such as devices that consume less power, or devices that have limited storage capabilities, or devices that have limited computing capabilities, etc. Examples of information sensing devices include bar codes, Radio Frequency Identification (RFID), sensors, Global Positioning Systems (GPS), laser scanners, and the like.
By way of example and not limitation, in the embodiments of the present application, the terminal device may also be a wearable device. Wearable equipment can also be called wearable intelligent equipment, is the general term of applying wearable technique to carry out intelligent design, develop the equipment that can dress to daily wearing, like glasses, gloves, wrist-watch, dress and shoes etc.. A wearable device is a portable device that is worn directly on the body or integrated into the clothing or accessories of the user. The wearable device is not only a hardware device, but also realizes powerful functions through software support, data interaction and cloud interaction. The generalized wearable smart device includes full functionality, large size, and can implement full or partial functionality without relying on a smart phone, such as: smart watches or smart glasses and the like, and only focus on a certain type of application functions, and need to be used in cooperation with other devices such as smart phones, such as various smart bracelets, smart helmets, smart jewelry and the like for monitoring physical signs.
(5) A network device, e.g., including a base station (e.g., access point), may refer to a device in an access network that communicates over the air, through one or more cells, with wireless terminal devices. The network device may be configured to interconvert received air frames and Internet Protocol (IP) packets as a router between the terminal device and the rest of the access network, which may include an IP network. The network device may also coordinate attribute management for the air interface. For example, the network device may include an evolved Node B (NodeB or eNB or e-NodeB) in a Long Term Evolution (LTE) system or an evolved LTE system (LTE-Advanced, LTE-a), or may also include a next generation Node B (gNB) in a fifth generation mobile communication technology (5G) New Radio (NR) system, or may also include a Centralized Unit (CU) and a Distributed Unit (DU) in a cloud access network (cloud ran) system, which is not limited in the embodiments of the present application.
(6) The terms "system" and "network" in the embodiments of the present application may be used interchangeably. The "plurality" means two or more, and in view of this, the "plurality" may also be understood as "at least two" in the embodiments of the present application. "at least two" is to be understood as meaning two or more, for example two, three or more. "at least one" is to be understood as meaning one or more, for example one, two or more. Similarly, the understanding of the description of "a plurality" and the like is similar. "and/or" describes the association relationship of the associated objects, meaning that there may be three relationships, e.g., a and/or B, which may mean: a exists alone, A and B exist simultaneously, and B exists alone. In addition, the character "/" generally indicates that the preceding and following related objects are in an "or" relationship, unless otherwise specified.
Unless stated to the contrary, the embodiments of the present application refer to the ordinal numbers "first", "second", etc., for distinguishing between a plurality of objects, and do not limit the sequence, timing, priority, or importance of the plurality of objects.
Embodiments of the present application will be described in further detail below with reference to the accompanying drawings.
Fig. 1 is a schematic structural diagram of a communication system according to an embodiment of the present application. As shown, the communication system may include a controller 110, and a network 130 (also referred to as a first network) covered by the controller 110. Network 130 includes a plurality of nodes interconnected by a plurality of links 131, including, for example, node 121, node 122, node 123, node 124, and node 125. The resources used by each node in the network 130, such as bandwidth resources or time domain resources, may be allocated by the controller 110. Link 131 may be a physical link, such as a fiber optic link, an electrical link, a logical link, or any combination thereof, for transmitting data. Each node in the network 130 (e.g., node 121, node 122, node 123, node 124, and node 125) supports DIP techniques, i.e., the network 130 is a deterministic network, it being understood that the controller 110 may cover multiple deterministic networks, and fig. 1 illustrates only one deterministic network scenario.
Controller 110 may be a Virtual Machine (VM), a virtual machine monitor, or any device and/or system for configuring resources for nodes 121-125. The controller 110 may be a software module running on hardware, for example, may be a software module operating on behalf of a network provider owning the network 130. The controller 110 may perform operations, administration, and maintenance (OAM) operations to enable network operators and/or network providers to solve network problems, monitor network performance, perform network maintenance or allocate network resources, etc. For example, controller 110 may monitor and verify connectivity between nodes 121-125, detect and isolate connectivity failures of link 131, configure resources for nodes 121-125, maintain and monitor resource occupancy of nodes 121-125, and so on.
Any of nodes 121 through 125 may be switches, routers, bridges, gateways, and/or any other network device suitable for forwarding data in network 130.
In one embodiment, the controller 110 is responsible for collecting the full network topology and the parameter information from the node 121 to the node 125, controlling the configuration of the resources for the node 121 to the node 125, maintaining the resource configuration information from the node 121 to the node 125, and issuing the instruction to the node 121 to the node 125.
In one embodiment, the controller 110 is responsible for maintaining edge node entries of the network 130, including parameter information for all edge nodes in the network 130. The edge nodes include an ingress edge node and an egress edge node. An ingress edge node is the first node that a message, packet, or data, etc. enters the network 130. For example, if a packet enters network 130 via node 121, node 121 may be an edge node of the packet in network 130. The egress edge node is the last node that a message, packet, or data, etc. leaves the network 130. For example, if a packet leaves network 130 via node 123, node 123 may be an egress edge node of the packet in network 130.
In one embodiment, the controller 110 is responsible for maintaining port information between two nodes in the network 130. For example, port 1 of node 121 establishes link 131 with port 1 of node 122. As another example, port 1 of node 122 establishes link 131 with port 2 of node 123.
In one embodiment, the controller 110 is used to define and manage the data flows generated in the data plane of the network 130. Controller 110 maintains a full topology view of the infrastructure of network 130, calculates transmission paths of data streams in network 130, and sends information of the transmission paths to at least two of nodes 121 to 125 through an indication message (the indication message may also be a forwarding instruction, etc.). The forwarding instruction may include an identification of a next hop node to forward the data flow. For example, the transmission paths of the data stream in the network 130 are a node 121, a node 122, and a node 123, where an ingress edge node is the node 121 and an egress edge node is the node 123, and the controller 110 sends a forwarding instruction for instructing a next-hop node to the node 121 and the node 122 through the control plane interface 132, respectively. For example, the forwarding instruction sent to node 121 includes the identification of node 122, and the forwarding instruction sent to node 122 includes the identification of node 123. The nodes 121 to 125 may store information of transmission paths indicated by the forwarding instruction, for example, in one or more data flow tables or Forwarding Information Bases (FIBs). Based on the forwarding instructions, each of nodes 121-125 may forward the data stream to a next hop node in network 130. When any of the nodes 121 to 125 receives an unknown packet or determines that the received packet is processed by the controller 110, any of the nodes 121 to 125 may forward the packet to the controller 110.
In one embodiment, controller 110 and/or nodes 121 through 125 may synchronize internal clocks to an accuracy of 1 μ s to 10ns using the IEEE 1588 precision time protocol.
In configuring resources for a node, the controller 110 receives a request message from a service, the request message including a bandwidth requirement of the service, an identification of a first in-edge node and an identification of a first out-edge node. In response, the controller 110 calculates a transmission path of the service in the network 130, where an entry of the service is a first entry edge node and an exit of the service is a first exit edge node, and configures at least one channel for the service on the transmission path according to bandwidth resource allocation conditions of nodes passed by the first transmission path, where a bandwidth of each channel of the at least one channel satisfies a bandwidth requirement of the service. The controller 110 sends a forwarding instruction to each node through which the transmission path passes through, through the control plane interface 132. In addition, the controller 110 sends the channel identification to each node through which the first transmission path passes through via the control plane interface 132. Thus, after receiving the service message, the first ingress edge node forwards the message to the next hop node in the transmission path through the configured channel.
The current resource allocation only needs to ensure that the allocated bandwidth resource meets the bandwidth requirement of the service, that is, only the maximum data volume allowed to be transmitted in a unit time is ensured to meet the actual transmission requirement of the service, but specifically, which time slot to transmit in and how much data volume to transmit in a time slot are uncertain. This may result in different actual bandwidths for different time frames. For example, a bandwidth of 1.2G bits/s is configured, the actual bandwidth in 0.5 second in actual application is 2.4G bits/s, the data amount of 1.2G bits is transmitted, the actual bandwidth in the next 0.5 second is 0, and data transmission is not performed. Since the controller only configures bandwidth resources for the node, and the node forwards the packet in which time period, and does not forward the packet in which time period, and the next-hop node of the node receives the packet in which time period, the controller does not determine, so that the time delay for the node to forward the packet is uncertain for the controller. That is, in the current resource allocation method, the controller cannot control the data amount actually transmitted by the node within a certain period of time within a certain index range, and cannot control the forwarding delay of each node within a certain index range. Obviously, the current resource configuration method does not meet the requirement that the DIP technology provides the deterministic forwarding service. The time delay of the node forwarding message refers to the time length of the node forwarding message.
In view of this, the present application provides a resource allocation method. By the method, the controller configures N positions of N time units in a macro cycle for the first node by taking a time unit as granularity, so that the first node executes the first service by using the fixed N time units, which means that the controller can control the time delay of the forwarding message of the first node within a determined index range by adjusting the positions of the N time units in the macro cycle, thereby meeting the requirement of the DIP technology for providing the deterministic forwarding service.
An embodiment of the present application provides a resource allocation method, please refer to fig. 2, which is a flowchart of the method. The method can be applied to the communication system 100 shown in fig. 1, and in the following description, the method provided by the embodiment of the present application is applied to the communication system 100 shown in fig. 1 as an example.
S201: the controller 110 receives a request message for instructing the controller 110 to configure a time domain resource for performing the first service.
The controller 110 receives a request message, where the request message may be from a network device or a terminal device, and this is not limited in this embodiment of the present application.
Wherein the request message includes one or more of the following information: the identity of the first node, the identity of the second node or the bandwidth requirement of the first service, etc. The first traffic enters the first network (i.e., network 130) via the first node and leaves the network 130 via the second node. When the request message only includes the identifier of the first node, the identifier of the second node, and a part of information in the bandwidth requirement of the first service, the rest of information may be obtained in a preset manner, or may be configured by the controller 110, and the like, which is not limited in this application. For example, the controller 110 may preset a bandwidth requirement of the first service of the device according to a function of the device sending the request message, or preset an identification of an ingress/egress edge node of the first service of the device in the network 130. For example, the controller 110 may configure the identification of the ingress/egress edge node of the first traffic in the network 130 according to the address information (e.g., source address, destination address) of the first traffic. As another example, the controller 110 may determine the bandwidth requirement of the first service according to the function of the device sending the request message.
S202: the controller 110 determines a first transmission path having an entry as the first node and an exit as the second node according to the request message.
The first transmission path comprises i nodes, wherein i is an integer greater than or equal to 2.
The controller 110 determines a transmission path of the first service in the network 130 after receiving the request message. For example, the controller 110 may calculate a first transmission path of the first traffic in the network 130 according to the identification of the first node, the identification of the second node, and the busyness of each node in the network 130. For example, the first node is node 121, the second node is node 123, and the first transmission path may include node 121, node 122, and node 123. The busy degree of a node refers to the amount of traffic executed by the node, and the lower the busy degree, the smaller the amount of traffic executed by the node, and the better the quality of forwarding service provided by the node. The first transmission path may be an optimal transmission path of the first service in the network 130, so that the forwarding delay of the packet of the first service in the network 130 may be reduced. The optimal transmission path is, for example, a transmission path with the shortest transmission distance, or a transmission path with the smallest number of nodes that pass through, or a transmission path with the shortest transmission distance and the smallest number of nodes that pass through.
After determining the first transmission path, the controller 110 may send, to each node in the first transmission path, an identification of a previous-hop node of the node in the first transmission path, or an identification of a next-hop node in the first transmission path, or an identification of a previous-hop node in the first transmission path and an identification of a next-hop node in the first transmission path. For example, the nodes through which the first transmission path passes include node 121, node 122, and node 123, and controller 110 may send the identity of node 122 to node 121, the identity of node 121 and the identity of node 123 to node 122, and the identity of node 121 to node 123.
The controller 110 may also receive a response message from each node in the first transmission path. The response message may indicate that the node has added the identity of the node indicated by controller 110 to a locally stored forwarding table having recorded therein the identity of the previous-hop node, and/or the identity of the next-hop node, at which the node forwarded the packet in network 130.
For convenience of introduction, hereinafter, taking the first transmission path of the first traffic in the network 130 as the node 121, the node 122 and the node 123 as an example, that is, the controller 110 determines that the node 121, the node 122 and the node 123 provide the forwarding service for the first traffic. The edge entry node is node 121, and the edge exit node is node 123, that is, the first node is node 121, and the second node is node 123.
S203: the controller 110 may determine the number N of time units for executing the first service in a macro period according to the resource occupation of the nodes in the first transmission path.
The controller 110 may determine the number N of time units required for executing the first service in one macro cycle according to the maximum data amount (i.e., the bandwidth resource corresponding to each time unit) that the nodes (i.e., the node 121 and the node 122) except the second node in the first transmission path can transmit in each time unit, where the bandwidth resources corresponding to the N time units satisfy the bandwidth requirement of the first service.
One of the N time units is used to indicate a minimum duration for scheduling the time domain resource, that is, the time unit is a minimum scheduling unit in the time domain. For example, a time unit of 10 mus in length means that at least all data traffic within 10 mus needs to be scheduled per scheduling of data traffic.
One macrocycle may include M time units, M may be a positive integer predetermined by controller 110, for example, controller 110 may predetermine M based on the ability of each node in network 130 to forward data amounts. For example, the ability of a node to forward data amount is related to the number of gated queues included in the node, and if each node in the network 130 includes 4 gated queues, M may be preset to be an integer multiple of 4. It should be understood that the controller 110 may also preset M to other values, such as 3, 6, 10, etc. Wherein N is an integer less than or equal to M and greater than or equal to 1.
The controller 110 may obtain the resource occupation status of the node according to the resource occupation table entry maintained by the controller 110, where the resource occupation table entry includes the resource occupation statuses of all nodes in the network 130. For a node, the resource occupation condition of the node may include a bandwidth resource occupation condition of the node, or include a time domain resource occupation condition of the node, or include a bandwidth resource occupation condition and a time domain resource occupation condition of the node. It should be understood that the resource occupation condition may be maintained in a table entry format, that is, in a text format, which is not limited in this embodiment of the present application.
The bandwidth resource occupation condition of a node may include one or more of the number of channels included in the node, service information executed by the channels, the bandwidth of the channels, or identifiers of two nodes at two ends corresponding to each channel in the channels. The service information may include a bandwidth requirement of the service or an identifier of the service, and the controller 110 may determine a transmission path of the service in the network 130 according to the identifier of the service. For example, the bandwidth resource occupation condition of the node 122 in the resource occupation entry may include a first channel and a second channel, where the first channel is used to execute the first service, and the second channel is used to execute the second service; the first channel is the channel between the nodes 122 and 121, and the second channel is the channel between the nodes 122 and 123; the bandwidth of the first channel is 2.4G bits/s, the bandwidth requirement of the first service is 1.4G bits/s, the bandwidth of the second channel is 1.2G bits/s, and the bandwidth requirement of the second service is 1.2G bits/s.
The time domain resource occupation condition of the node may include one or more of service information executed by the node, the number of time units occupied by the node to execute each service, bandwidth resources corresponding to each time unit, and the like. For example, the node 122 in the resource occupation table uses two time units to execute the first service through the first channel, uses two time unit channels to execute the second service through the second channel, the bandwidth corresponding to each time unit executing the first service is 1.4G bits/s, and the bandwidth corresponding to the time unit executing the second service is 1.2G bits/s.
In a possible implementation manner, the controller 110 may configure one channel for executing the first service between every two adjacent nodes in the first transmission path, to obtain (i-1) channels for executing the first service, where the configured channel is used to determine a maximum amount of data (i.e., bandwidth resources corresponding to time units) that the node can transmit in each time unit.
For example, after determining the first transmission path, the controller 110 may configure one channel for executing the first service between every two adjacent nodes in the first transmission path according to the bandwidth resource occupation of the nodes except the second node in the first transmission path and the bandwidth requirement of the first service, so as to obtain (i-1) channels for executing the first service. For example, the controller 110 configures two channels for the first service according to the bandwidth resource occupation of the node 121, the bandwidth resource occupation of the node 122, and the bandwidth requirement of the first service, where the two channels are respectively one channel between the node 121 and the node 122 and one channel between the node 122 and the node 123.
A channel refers to a logical transmission path between two nodes. The bandwidth of each of the (i-1) channels meets the bandwidth requirement of the first service, and the bandwidth of each of the (i-1) channels meets the bandwidth requirement of the first service means that the bandwidth of each of the (i-1) channels is greater than or equal to the bandwidth requirement of the first service. For example, the bandwidth requirement of the first service is 1G bits/S, and the bandwidth of the channel configured between the node 121 and the node 122 by the controller 110 may be 1.2G bits/S, may also be 2.4G bits/S, or may be 1G bits/S, etc., as long as it is greater than or equal to 1G bits/S.
Since the controller 110 may configure a plurality of channels between two nodes, and the bandwidth resource of the channel configured for the service by the controller 110 is often greater than the bandwidth requirement of the service, when the controller 110 configures a channel for executing the first service between two adjacent nodes in the first transmission path, one way may be to directly configure one channel between the two adjacent nodes for executing the first service, and the other way may be to determine one channel from at least one channel configured between the two adjacent nodes for executing the first service.
This means that the (i-1) channels for performing the first service include k channels which are newly configured channels, and (i-k-1) channels which are configured channels, and the (i-k-1) channels are channels other than the k newly configured channels in the (i-1) channels. When the controller 110 configures a plurality of channels between two nodes, each of the plurality of channels may be used to execute different services, and the nodes may simultaneously execute different services through different channels. For example, the controller 110 configures a first path and a second path between the node 121 and the node 122, where the first path may be used to execute a first service, the second path may be used to execute a second service, and the node may execute the first service through the first path and execute the second service through the second path in two time units with sequence numbers 0 and 1 in one macro cycle. k is an integer of 0 or more and (i-1) or less.
It should be noted that, in this embodiment of the present application, a configured channel refers to a bandwidth resource that is configured by the controller 110 for other services, and the bandwidth resource of the current channel may be occupied by the other services or not occupied by the other services, and accordingly, a time domain resource corresponding to the channel may be in an idle state, may be partially occupied, or may be completely occupied, and the other services refer to services other than the first service. For example, the controller 110 configures a first channel for the node 121 to execute the second service, and when the controller 110 configures the channel for the first service, the first channel is a configured channel, and meanwhile, the node 121 may execute the second service through the first channel using all time units in one macro cycle, or the node 121 may execute the second service through the first channel using a part of time units in one macro cycle, or the node 121 does not execute the second service. The newly configured channel (also referred to as a new channel) refers to the channel configuring the controller 110 with bandwidth resources of the first service.
Based on the above two channel configurations, the composition of the (i-1) channels has the following three cases:
case 1: each of the (i-1) channels is a newly configured channel, and the time domain resource corresponding to the newly configured channel is in an idle state, which means that the previous-hop node of the newly configured channel can execute the first service by using any at least one time unit in one macro cycle through the newly configured channel. The previous-hop node of the channel refers to a first node through which the message passes in two nodes at two ends corresponding to the channel. For example, two nodes at two ends corresponding to the first channel are a first node and a second node, respectively, the first channel is used for executing the first service, and if a packet of the first service is forwarded to the second node via the first node, a previous-hop node of the first channel is the first node.
For example, when the priority of the first service is higher, the controller 110 may configure (i-1) new channels for the first service, where the (i-1) new channels are only used for executing the first service, that is, the (i-1) new channels are dedicated channels of the first service in the first transmission path, so as to avoid interference of transmitting other services, and the node may execute the first service using any at least one time unit in one macro cycle, so that the flexibility is higher, and it is ensured that a good forwarding service is provided for the first service.
For another example, when no channel is configured between all adjacent two nodes in the i nodes, or when the bandwidth of each channel in the configured channels between all adjacent two nodes in the i nodes does not satisfy the bandwidth requirement of the first service, or when no channel is configured between a part of adjacent two nodes in the i nodes, and the bandwidth of each channel in the configured channels between the remaining part of adjacent two nodes does not satisfy the bandwidth requirement of the first service, the controller 110 may configure (i-1) new channels for the first service.
Optionally, the bandwidth of each channel of the new configuration may be the same. Thus, the maximum amount of data that can be transmitted by the i nodes in a time unit is equal. For example, the time length of each time unit is 10 μ s, the controller 110 newly configures a first channel with a bandwidth of 1.2G bits/s between the node 121 and the node 122, and newly configures a second channel with a bandwidth of 1.2G bits/s between the node 122 and the node 123, the node 121 may transmit data of 1.5kB at maximum in each time unit through the first channel, and the node 122 may transmit data of 1.5kB at maximum in each time unit through the second channel.
In the above case 1, k is equal to (i-1), the controller 110 configures (i-1) new channels for the first service, where the bandwidth of each channel satisfies the bandwidth requirement of the first service, and the previous-hop node of the newly configured channel can execute the first service by using any at least one time unit in one macro cycle through the newly configured channel, so that flexibility is high, and a good forwarding service can be provided for the first service.
Case 2: and (i-1) part of the channels are newly configured channels, and the rest of the channels are configured channels. Each channel in the newly configured channels and each channel in the configured channels both meet the bandwidth requirement of the first service. That is, the controller 110 configures a new path for performing the first service between two nodes partially adjacent among the i nodes, and determines a path for performing the first service from at least one path configured between the remaining two nodes adjacent among the i nodes.
When there is at least one configured channel between two adjacent nodes, the controller 110 may newly configure a channel for executing the first service between the two adjacent nodes, or may determine one of the channels from the at least one configured channel to be used for executing the first service.
In the following, taking the controller 110 as an example to determine a channel between the node 121 and the node 122 for executing the first service, a detailed description is given of whether a new channel is configured between two adjacent nodes for executing the first service, or a channel is determined from the configured channels for executing the first service. Wherein the packet of the first service is forwarded by the node 121 to the node 122. Referring to fig. 3, a flowchart of a resource allocation method is shown.
S301: controller 110 obtains the bandwidth resource occupancy of node 121.
Controller 110 may obtain the bandwidth resource occupation of node 121 according to the resource occupation table entry maintained by controller 110.
S302: the controller 110 determines whether a configured channel exists between the node 121 and the node 122 according to the bandwidth resource occupation of the node 121. If a configured channel exists between the node 121 and the node 122, S303 is executed; if there is no configured channel between node 121 and node 122, S305 is performed.
For example, the bandwidth resource occupation condition of the node 121 only includes the first channel, the identifiers of the two nodes at the two corresponding ends of the first channel are the identifier of the node 121 and the identifier of the node 124, respectively, and the controller 110 may determine that no configured channel exists between the node 121 and the node 122.
For another example, the bandwidth resource occupation condition of the node 121 includes a first channel and a second channel, the identifiers of two nodes at two ends corresponding to the first channel are the identifier of the node 121 and the identifier of the node 124, respectively, and the identifiers of two nodes at two ends corresponding to the second channel are the identifier of the node 121 and the identifier of the node 122, respectively, and the controller 110 may determine that a configured channel, that is, a second channel, exists between the node 121 and the node 122.
S303: the controller 110 determines whether bandwidth of at least one channel in the configured channels between the nodes 121 and 122 meets the bandwidth requirement of the first service according to the bandwidth requirement of the first service and the bandwidth resource occupation condition of the node 121. If the bandwidth of at least one channel in the configured channels between the node 121 and the node 122 meets the bandwidth requirement of the first service, executing S304; if the bandwidth in all configured channels between node 121 and node 122 does not meet the bandwidth requirement of the first service, S305 is performed.
For example, the bandwidth requirement of the first service is 1.2G bits/s, the configured channels between the node 121 and the node 122 include a first channel and a second channel, the bandwidth of the first channel is 1G bits/s, the bandwidth of the second channel is 1.2G bits/s, and the controller 110 may determine that the bandwidth of the first channel does not satisfy the bandwidth requirement of the first service, and the bandwidth of the second channel satisfies the bandwidth requirement of the first service.
S304: controller 110 determines a path for performing the first service from the configured paths between node 121 and node 122.
If there are multiple configured lanes between node 121 and node 122 for performing the first service, controller 110 may determine one of the multiple configured lanes having the largest bandwidth for performing the first service; alternatively, the controller 110 may determine one of the plurality of configured channels, which has the smallest bandwidth, to be used for performing the first service; alternatively, the controller 110 may determine any one of the plurality of configured channels to be used for executing the first service; the embodiments of the present application do not limit this.
S305: controller 110 configures a new path between node 121 and node 122 for performing the first service.
Through the process shown in S301 to S308, the controller 110 may determine whether to configure a new channel between two adjacent nodes for executing the first service, or determine one of the channels from at least one channel configured between the two nodes for executing the first service.
In case 2, k is an integer greater than 0 and smaller than (i-1), the controller 110 configures k new channels and (i-1-k) configured channels for the first service, where each of the (i-1-k) configured channels meets the bandwidth requirement of the first service, which means that excess resources in the configured channels are reasonably utilized, thereby avoiding waste of resources and improving resource utilization rate.
Case 3: all of the (i-1) channels are configured channels. Wherein each of the configured channels satisfies a bandwidth requirement of the first service. That is, the controller 110 determines, between two nodes adjacent to any one of the i nodes, one configured path from among at least one configured path between the two nodes to perform the first service.
For example, if there is at least one configured channel between each adjacent two of the i nodes and the bandwidth of at least one channel of the at least one configured channel satisfies the bandwidth requirement of the first service, the controller 110 may determine that one configured channel between each adjacent two of the i nodes is used for executing the first service, that is, (i-1) configured channels are used for executing the first service.
In case 3 above, where k is equal to 0, the controller 110 determines (i-1) configured lanes for performing the first service, each lane having a bandwidth that meets the bandwidth requirements of the first service. Since the (i-1) channels for executing the first service are configured channels, it means that the (i-1) channels need to execute not only the first service but also other services, so that a large amount of surplus resources are reasonably utilized, resource waste is avoided, and resource utilization rate is improved.
After determining (i-1) channels, the controller 110 may send to each node in the first transmission path one or more of the following information: the identifier of the channel executing the first service, the bandwidth of the channel executing the first service, or the identifier of the first service, etc. Further, the controller 110 may also receive a response message from each node in the first transmission path. The response message may indicate one or more of an identification of the channel on which the first service is performed, a bandwidth of the channel on which the first service is performed, or an identification of the first service, etc., which is indicated by the node-stored controller 110.
In one possible implementation, the controller 110 may determine the number N of time units for executing the first service in a macrocycle based on the bandwidth of each of the (i-1) channels and the bandwidth requirement of the first service.
If the bandwidth of each of the (i-1) channels is the same, which means that the maximum data amount that i nodes can transmit in one time unit is equal (also referred to as the bandwidth corresponding to each time unit is equal), the controller 110 may determine the bandwidth corresponding to one time unit according to the bandwidth of the channel, and then determine the number N of time units for executing the first service in one macro cycle according to the bandwidth corresponding to one time unit and the bandwidth requirement of the first service. For example, a macro cycle includes 10 time units, each time unit has a time length of 10 μ s, and each of (i-1) channels has the same bandwidth, i.e. 1.2G bits/s, meaning that the corresponding bandwidth for each time unit is 1.2G bits/s. For example, the bandwidth requirement of the first service is 0.6G bits/s, and the controller 110 may determine that the time unit data for executing the first service in one macro cycle is 5.
When the bandwidth of at least one of the (i-1) channels is different from the bandwidths of the rest of the channels, which means that the maximum amount of data that can be transmitted by the i nodes in a time unit is not equal, the controller 110 may determine the minimum bandwidth of the (i-1) bandwidths corresponding to the (i-1) channels. The controller 110 may then determine the number N of time units for executing the first service in a macrocycle based on the minimum bandwidth and the bandwidth requirement of the first service. For example, one macro cycle includes 10 time units, the time length of each time unit is 10 μ S, the bandwidth of the first channel between the node 121 and the node 122 is 1.2G bits/S, the maximum data volume that the node 121 can transmit in one time unit is 1.5kB, the bandwidth of the second channel between the node 122 and the node 123 is 2.4G bits/S, the maximum data volume that the node 122 can transmit in one time unit is 3kB, the minimum bandwidth of the first channel and the second channel is 1.2G bits/S, the bandwidth requirement of the first service is 0.6G bits/S, and the controller 110 can determine that the time unit data for executing the first service in one macro cycle is 5 according to the minimum bandwidth.
S204: the controller 110 configures the first node with N positions of the N time cells within a macrocycle.
After the controller 110 determines the number N of time units for performing the first service, the node 121 (i.e., the first node) is configured with N positions of N time units within one macro period.
If each of the (i-1) channels is a new channel and the time domain resource corresponding to the new channel is in an idle state, the controller 110 may configure any N positions of the N time units in one macro cycle for the first node. For example, a macro cycle includes three time units, the number of time units for executing the first service is two, the controller 110 configures, for the first node, two time units of a first time unit (with sequence number of 0) and a second time unit (with sequence number of 1) in a macro cycle to execute the first service, or two time units of the first time unit (with sequence number of 0) and a third time unit (with sequence number of 2) in a macro cycle to execute the first service, or two time units of the second time unit (with sequence number of 1) and the third time unit (with sequence number of 2) in a macro cycle to execute the first service.
In this case, the controller 110 may configure the same bandwidth for each of the (i-1) channels, so that the maximum amount of data that can be transmitted by the i nodes in one time unit is the same. For example, the time length of each time unit is 10 μ s, the controller 110 newly configures a first channel with a bandwidth of 1.2G bits/s between the node 121 and the node 122, and newly configures a second channel with a bandwidth of 1.2G bits/s between the node 122 and the node 123. Node 121 may transmit a maximum of 1.5kB of data per time unit via the first channel and node 122 may transmit a maximum of 1.5kB of data per time unit via the second channel.
If at least one of the (i-1) channels is a configured channel, which means that a part of time domain resources of a previous hop node of the at least one channel are occupied, and there may be a time domain resource conflict, the controller 110 may configure N positions of N time units in one macro cycle for the node 121, and then adjust a time domain resource allocation condition of the at least one node according to a time domain resource occupation condition of a node other than the node 123 (i.e., the second node) in the first transmission path and the macro cycle offset, so that the time domain resources used for executing the first service by the at least one node in one macro cycle are in an idle state.
The time domain resource conflict means that one channel is required to be used to execute at least one service in one time unit, or one channel is required to be used to execute at least one service in one time unit, and the bandwidth resource in the one time unit does not meet the total bandwidth requirement of the at least one service. For example, the bandwidth resource occupation condition of the node 121 includes a first channel and a second channel, the bandwidth of the first channel and the bandwidth of the second channel both satisfy the bandwidth requirement of the first service, the node 121 executes the second service by using two time units with sequence numbers 0 and 1 in one macro cycle through the first channel, the node 121 executes the third service by using two time units with sequence numbers 3 and 4 in one macro cycle through the second channel, the controller 110 configures two time units with sequence numbers 1 and 2 in one macro cycle for the node 121 to execute the first service, for the first channel, the node 121 needs to execute the first service and the second service simultaneously in a time unit with sequence number 1 in one macro cycle, so that the first channel has a time domain resource conflict; for the second channel, the node 121 executes the first service and the third service in the time units corresponding to two different positions in one macro cycle, so that there is no time domain resource conflict in the second channel. For another example, the bandwidth resource occupation condition of the node 121 includes a first channel and a second channel, the bandwidth requirement of the first service is 1.2G bits/s, the bandwidth requirement of the second service is 1G bits/s, the bandwidth of the first channel is 1.2G bits/s, and the bandwidth of the second channel is 2.4G bits/s; for the first channel, the bandwidth corresponding to one time unit is 1.2G bits/s, and obviously the total bandwidth requirement of the first service and the second service is not met, so that time domain resource conflict exists in the first channel; for the second channel, the corresponding bandwidth in one time unit is 2.4G bits/s, which obviously meets the total bandwidth requirement of the first service and the second service, and the second channel has no time domain resource conflict.
In the following, taking an example that there is a time domain resource conflict when the node 122 performs the first service using the first channel, a detailed description is given of how to adjust the time domain resource of the node 122 to resolve the time domain resource conflict. The first channel is one of configured channels between the node 122 and the node 123, the controller 110 configures, for the node 121, time units corresponding to N positions in a macro cycle to execute the first service, the node 122 executes the first service in H time units corresponding to H time units in a macro cycle, the time unit corresponding to at least one of the H positions is occupied by the second service, or the time unit corresponding to at least one of the H positions is configured for the second service, the size of H is equal to the size of N, and sequence numbers of the H time units may not be the same as sequence numbers of the N time units. Referring to fig. 4, a flowchart of a resource allocation method is shown.
S401: the controller 110 obtains the time domain resource occupancy of the node 122 to determine the identity of the second service and the number Q of time units used by the node 122 to execute the second service.
The controller 110 may obtain the time domain resource occupation condition of the node 122 according to the resource occupation table entry maintained by the controller 110, so that the controller 110 may determine the identifier of the second service, and Q time units within one macro cycle are required for the node 122 to execute the second service, where Q is a positive integer greater than 1.
S402: the controller 110 determines a second transmission path for performing the second service according to the identity of the second service.
The second transmission path includes node 122 and node 124, and the second traffic enters network 130 via node 124.
S403: the controller 110 determines K positions, which are positions of the node 124 corresponding to H positions in one macro cycle, according to the first macro cycle offset.
The controller 110 may obtain the first macrocycle offset according to a macrocycle offset table entry, where the macrocycle offset table entry is used to store the time delay of the packet transmitted between two nodes in the network 130. The first macrocycle offset is the time delay for a message to travel from node 124 to node 122 along the second transmission path. For example, if the node 122 in the second transmission path is the next hop node of the node 124, the controller 110 obtains the macro-cycle offset table entry of the node 122, and determines the delay of the packet transmission from the node 122 to the node 124, that is, the first macro-cycle offset. For another example, the packet of the second service is forwarded by the node 124 to the node 125, and then forwarded by the node 125 to the node 122, the controller 110 determines the transmission delay between the node 124 and the node 125 and the transmission delay between the node 125 and the node 122 according to the macro cycle offset entry of the node 125 and the macro cycle offset entry of the node 122, respectively, where the first macro cycle offset is a sum of the transmission delay between the node 124 and the node 125 and the transmission delay between the node 125 and the node 122.
S404: the controller 110 reconfigures Q positions of Q time units within one macro cycle for the node 124 according to the resource occupation of the nodes in the second transmission path, where the Q positions include positions other than K positions within one macro cycle.
The controller 110 reconfigures Q positions of Q time units within one macro cycle for the node 124 according to the bandwidth resource occupation condition and/or the time domain resource occupation condition of the node in the second transmission path, where the Q positions include positions other than K positions within one macro cycle.
S405: controller 110 sends a reconfiguration message to node 124, the reconfiguration message indicating the Q locations.
After receiving the reconfiguration message, the node 124, in response, will execute the second service in Q time units corresponding to the Q positions, so that since the Q positions are positions other than K positions in one macro cycle, the K time units corresponding to the K positions are in an idle state, and at the node 122, the K positions correspond to H positions, so that the H time units corresponding to the H positions are in an idle state, thereby resolving the time domain resource conflict problem of the node 122.
Through the processes shown in S401 to S405, the controller 110 avoids or resolves time domain resource conflicts at the nodes, so that the excess bandwidth resources are reasonably utilized, and resource waste is reduced, thereby providing resource utilization.
It should be noted that, in the step shown in S404, the controller 110 determines, according to the resource occupation of the node in the second transmission path, that the time domain resource used for executing the second service by the adjusting node 124 cannot make all the K time units corresponding to the K positions in the idle state, which means that all the H time units corresponding to the H positions in one macro cycle cannot be made in the idle state, and then the controller 110 may determine, from the configured channels between the node 122 and the node 123, one channel other than the first channel to execute the first service. Further, if there is a time domain resource conflict between all configured channels of the nodes 122 and 123, and it is unavoidable, the controller 110 may configure a channel for performing the first service at the nodes 122 and 123.
It should be noted that, in the flow shown in fig. 4, the positions of Q time units in the node 124 in one macro cycle are adjusted for the controller 110, so as to achieve the purpose of adjusting the time domain resource used by the node 122 to execute the second service, so that the node 122 uses time units corresponding to different positions to execute the first service and the second service respectively through the first channel. In another example, the controller 110 may adjust the positions of N time units in the node 121 within one macro cycle, so as to adjust the time domain resources used by the node 122 to execute the first service, so that the node 122 executes the first service and the second service respectively through the first channel by using the time units corresponding to different positions.
For example, as shown in fig. 12, when M is 6, the sequence numbers corresponding to 6 time units in one macro period are 0, 1, 2, 3, 4, and 5, respectively, the second service passes through node 121, node 122, and node 125, and the third service passes through node 124, node 122, and node 123. For the second service, the node 121 sends a packet of the second service to the node 122 through a first channel between the node 121 and the node 122 in 3 time units of a first time unit, a second time unit, and a third time unit (i.e., sequence numbers are 0, 1, and 2, respectively) in a macro cycle; the macro-cycle offset between the node 121 and the node 122 is 3 time units, and after receiving the packet of the second service, the node 122 sends the packet of the second service to the node 125 through the second channel between the node 122 and the node 125 in 3 time units of the fourth time unit, the fifth time unit, and the sixth time unit (i.e., sequence numbers are 3, 4, and 5, respectively) in one macro-cycle. For the third service, the node 124 in 3 time units of the first time unit, the fifth time unit and the sixth time unit (i.e. sequence numbers 0, 4 and 5 respectively) in one macro period, a message of a third service is sent to node 122 over a third channel between node 124 and node 122, the macro-period between node 124 and node 122 is offset by 1 time unit, after node 122 receives the message of the third service, in 3 time units of the first time unit, the second time unit and the sixth time unit (i.e. the sequence numbers are 0, 1 and 5, respectively, it should be understood that the message sent by the node 122 in the time unit with the sequence number of 0 is the message sent by the node 124 in the time unit with the sequence number of 5 in the last macro cycle), and sending the message of the third service to the node 123 through a fourth channel between the node 122 and the node 123.
Controller 110 receives a request message indicating that a time domain sub-resource is to be configured for a first service that enters network 130 via node 121 and leaves network 130 via node 123. A channel, i.e., a first channel, is configured between the nodes 121 and 122, and a channel, i.e., a second channel, is configured between the nodes 122 and 123, assuming that 2 time units in a macro cycle are required to perform the first service, and 3 time units of the nodes 121 and 122 are idle in a macro cycle, respectively, so that it may be considered to select the configured channel to perform the first service.
In one embodiment, since the node 121 performs the second service using 3 time units with sequence numbers 0, 1, and 2, and 3 time units with sequence numbers 3, 4, and 5 are in an idle state, the controller 110 may determine that the node 121 performs the first service using 2 time units with sequence numbers 3 and 4, or performs the first service using 2 time units with sequence numbers 3 and 5, or performs the first service using 2 time units with sequence numbers 4 and 5. Assume that controller 110 determines that node 121 performs the first service using 2 time units with sequence numbers 3 and 4, i.e., configures node 121 with a fourth time unit and a fifth time unit within one macro cycle to perform the first service. Since the macro-cycle offset between the node 121 and the node 122 is 2 time units, the node 122 needs to execute the first service using 2 time units with sequence numbers 5 and 0, but 2 time units with sequence numbers 5 and 0 of the node 122 are already configured for the third service, that is, the node 122 needs to forward the packet of the first service and the packet of the third service simultaneously using 2 time units with sequence numbers 5 and 0, and there is a time domain resource conflict.
The node 122 needs to execute the first service using 2 time units with sequence numbers of 5 and 0, the macro-cycle offset between the node 124 and the node 122 is 1 time unit, and when 2 time units for executing the first service by the node 122 correspond to the node 124, the sequence numbers of the 2 time units are 4 and 5. Node 124 has 3 time units in the idle state and controller 110 may configure node 124 to perform the third service for 3 time units except for sequence numbers 4 and 5. Specifically, the controller 110 may configure the node 124 to execute the third service in 3 time units with sequence numbers 1, 2, and 3, or configure 3 time units with sequence numbers 1, 2, and 0 to execute the third service, or configure 3 time units with sequence numbers 1, 3, and 0 to execute the third service, or configure 3 time units with sequence numbers 2, 3, and 0 to execute the third service. All four configurations ensure that 2 time units of the node 122 for performing the first service are idle. If the controller 110 configures the node 124 with 3 time units with sequence numbers 1, 2, and 3 to execute the third service, the controller 110 sends a reconfiguration message to the node 124, so that the node 124 executes the third service using the 3 time units with sequence numbers 1, 2, and 3 in the next macro cycle. Accordingly, the node 122 performs the third service using 3 time units with sequence numbers 2, 3, and 4, and performs the first service using 2 time units with sequence numbers 5 and 0, as shown in fig. 13.
In another embodiment, 3 sequence numbers with sequence numbers 5, 0, and 1 of the node 122 are occupied by the third service, 3 time units with sequence numbers 2, 3, and 4 are in an idle state, and the controller 110 may determine that the node 122 performs the first service using 2 time units with sequence numbers 2 and 3, or performs the first service using 2 time units with sequence numbers 2 and 4, or performs the first service using 2 time units with sequence numbers 3 and 4. Assuming that the controller 110 determines that the node 122 performs the first service using 2 time units with sequence numbers 2 and 3, since the macro cycle offset between the node 121 and the node 122 is 2 time units, the controller 110 needs to configure the node 121 with a first time unit and a second time unit in one macro cycle to perform the first service, that is, the node 121 performs the first service using 2 time units with sequence numbers 0 and 1, and the node 121 has already configured 2 time units with sequence numbers 0 and 1 to the second service, that is, the node 121 needs to perform the first service and the second service simultaneously using 2 time units with sequence numbers 0 and 1, and there is a time domain resource conflict.
The controller 110 needs to configure 2 time units with sequence numbers 0 and 1 for the node 121 to execute the first service, the macro-cycle offset between the node 121 and the node 122 is 3 time units, and when 2 time units for executing the first service of the node 121 correspond to the node 122, the sequence numbers of the 2 time units are 3 and 4. Since the node 122 has 3 time units in the idle state, the controller 110 may configure the node 122 to execute the second service for 3 time units except for sequence numbers 3 and 4. The controller 110 may configure the node 122 with 3 time units with sequence numbers 5, 0, and 1 to execute the second service, or configure 3 time units with sequence numbers 5, 0, and 2 to execute the second service, or configure 3 time units with sequence numbers 5, 1, and 2 to execute the second service, or configure 3 time units with sequence numbers 0, 1, and 2 to execute the second service. All four configurations ensure that 2 time units of node 121 for performing the first service are idle. If node 122 performs the second service using 3 time units with sequence numbers 5, 0, and 1, corresponding to sequence numbers 2, 3, and 4 at node 121, controller 110 sends a reconfiguration message to node 121, so that node 121 performs the second service using 3 time units with sequence numbers 2, 3, and 4 in the next macro cycle. Accordingly, the node 122 performs the second service using 3 time units with sequence numbers 5, 0, 1, and performs the first service using 2 time units with sequence numbers 2, 3, as shown in fig. 14.
S205: the controller 110 sends a configuration message to the first node indicating N positions of the N time units within one macro-period.
The configuration message further indicates an identifier of a first channel and/or an identifier of the first service, where the first channel is used to indicate a bandwidth resource used for executing the first service between the first node and a next hop node of the first node.
In the above embodiment of the present application, the controller 110 configures N time units in a macro cycle for the first node with a time unit as a granularity, so that the first node will execute the first service in the fixed N time units, which means that the controller 110 can control the delay of the first node forwarding the packet of the first service within a certain index range. The controller 110 can grasp the forwarding delay of the packet of the first service at each node according to the N time units configured for the first node and the macro-cycle offset table entry, that is, the forwarding delay of each node for the packet is deterministic for the controller 110, and the requirement of the DIP technology for providing deterministic forwarding service is satisfied. Wherein the macrocycle offset entry comprises the macrocycle offsets for all nodes in the network 130.
In addition, the maximum number of messages allowed to be transmitted in each time unit in a macro-cycle is determined, that is, the controller 110 can strictly control the size of the forwarded messages in a unit time within a range. When the bandwidth resources are excessive, the controller 110 may configure the excessive bandwidth resources to the new service according to the transmission delay between the nodes in the macro-cycle offset table, the time domain resource occupation condition between the nodes, and the bandwidth resource occupation condition between the nodes, so as to reduce resource waste and improve the resource utilization rate.
In one embodiment, the controller 110 may receive a control command from a manager, and the control command is used to adjust the time domain resource usage of each node in the network 130 to improve the resource utilization.
Please refer to fig. 5, which is a flowchart illustrating a method for determining a macrocycle offset according to an embodiment of the present disclosure. The method can be applied to the communication system 100 shown in fig. 1, and in the following description, the method provided by the embodiment of the present application is applied to the communication system 100 shown in fig. 1 as an example.
S501: the third node generates a first indication message and sends a second indication message to the fourth node.
The third node and the fourth node are any two nodes in the network 130, and the sixth node is a next hop node of the seventh node.
The third node may automatically generate the first indication message according to the set frequency, or may be controlled by the controller 110, which is not limited in this embodiment of the application. The first indication message is generated, for example, after the third node receives a control message sent by the controller 110.
S502: the third node sends the first indication message to the fourth node.
The first indication message indicates a first location, which may be a sequence number, in one macro-cycle for the time unit in which the third node generated the first indication message, such that the fourth node determines the second macro-cycle offset. The third node then carries the first location to a first indication message to send to the fourth node.
For example, if the time stamp for generating the first indication message is within a time unit with a sequence number of 1 in one macro cycle, the time unit for generating the first indication message is the time unit with the sequence number of 1. The second macrocycle offset is used to indicate a time delay for the transmission of the message from the third node to the fourth node.
In a specific implementation, the first location may be determined by a time stamp of an internal chip comprised by the third node generating the first indication message and a time stamp of starting the internal chip, wherein the internal chip is configured to determine the macrocycle offset or to generate the first indication message. The internal chip may be a Field Programmable Gate Array (FPGA) chip or other gate control queue chips, which is not limited in this embodiment.
In one embodiment, the first position satisfies the following equation:
X=[floor((t1-t0)T)+1]modT (1)
wherein floor (·) denotes rounding down, mod denotes a remainder operation, T denotes a macrocycle, X denotes a first position, T denotes a first position1Time stamp, t, indicating that the internal chip generated the first indication message0A timestamp indicating the start of the chip inside the third node.
In one embodiment, the first indication message is carried in an interior gateway protocol message or in a user datagram protocol message.
S503: the fourth node receives the first indication message and determines a second macrocycle offset based on the first indication message.
After receiving the first indication message, the fourth node determines a second macrocycle offset in response based on the first location and a second location, the second location being a location in a macrocycle for a time unit of the fourth node in response to the first indication message.
In an implementation, the second location may be determined by a timestamp of the fourth node internal chip receiving the first indication message and a timestamp of the initiating internal chip.
In one embodiment, the fourth sequence number satisfies the following equation:
Y=[floor((t2+Lmax+T-t3)T)+1]modT (2)
wherein, floor (·) represents rounding down, mod represents a remainder operation, and T represents a macrocycle; y represents a second position, t2A time stamp, L, indicating the receipt of the first indication message by the internal chipmaxRepresenting the delay constant, t3A timestamp indicating that the fourth node started the internal chip.
After determining the second location, the fourth node determines a second macrocycle offset based on a difference between the first location and the second location.
In one embodiment, the second macrocycle offset satisfies the following equation:
Macro_Delta=(Y-X+T)modT (3)
wherein floor (·) represents rounding down, mod represents a remainder operation, T represents a macrocycle, X represents a first position, Y represents a second position, and Macro _ Delta represents a second macrocycle offset.
After determining the second macro-cycle offset with the third node, the fourth node sends macro-cycle offset information to the controller 110, where the macro-cycle offset information includes one or more of the third macro-cycle offset, an identifier of the third node, or an identifier of the fourth node. The controller 110 receives the macrocycle offset information and maintains or updates the macrocycle offset entry for the fourth node. The macro cycle offset table entry stores the macro cycle offsets of the nodes in the network 130.
Through the data flow shown in fig. 5, the controller 110 may collect the transmission delay between each node in the network 130, so that, when performing resource configuration, the controller 110 may perform resource configuration for each node reasonably according to the macro-cycle offset table entry, avoid time domain resource collision, and improve the resource utilization rate.
For example, as shown in fig. 6, the nodes passed by the channel include a node 121, a node 122, and a node 123, where the ingress edge node is the node 121 and the egress edge node is the node 123. The node 121 forwards the message to the node 122, the node 122 forwards the message to the node 123 after receiving the message, and the node 123 transmits the message to other networks 130 after receiving the message. Prior to configuring the time domain resources, node 122 determines that a macrocycle offset report is reported to controller 110 from node 121 to node 122; node 123 determines the macrocycle offset from node 122 to node 123 and reports it to controller 110.
In the above embodiment of the present application, the third node sends the first indication message indicating the first position to the fourth node, and after receiving the first indication message, the fourth node determines, according to the first position and the second position, a transmission delay from the third node to the fourth node, that is, a second macrocycle offset, and then sends the second macrocycle offset to the controller 110. In this way, the controller 110 can collect the macro-cycle offsets of the nodes in the network 130, and can more accurately determine the time domain resource occupation of the nodes in the network 130, and when configuring resources for the nodes, the time domain resources can be reasonably configured for the nodes according to the macro-cycle offsets of the nodes, thereby avoiding time domain resource conflicts and improving the resource utilization rate.
An embodiment of the present application provides another resource allocation method, please refer to fig. 7, which is a flowchart illustrating the method. The method can be applied to the communication system 100 shown in fig. 1, and in the following description, the method provided by the embodiment of the present application is applied to the communication system 100 shown in fig. 1 as an example.
S701: the first node receives a configuration message from the controller 110 indicating N positions of N time units within one macro-period.
The first node receives the configuration message from the controller 110, and in response, the first node performs the first service for N time units corresponding to N positions in one macro cycle.
The first node may also receive a first forwarding instruction from the controller 110, the first forwarding instruction indicating an identity of the fifth node. The fifth node is a next hop node of the first node on the first transmission path. Further, after the first node adds the fifth node to the forwarding table, the first node sends a first forwarding response message to the controller 110.
In one embodiment, the first node generates the second indication information, and the second indication information includes a first sequence number, where the first sequence number is a sequence number of a time unit of the first node generating the second indication information in one macro cycle. The first node sends the second indication information to the fifth node, where the second indication information is used to indicate that the fifth node determines a second macro-cycle offset according to the first sequence number and a second sequence number, the second sequence number is a sequence number of a time unit of the fifth node responding to the second indication information in a macro-cycle, and the second macro-cycle offset is used to indicate a time delay of a packet transmitted from the first node to the fifth node.
S702: and the first node executes the first service in N time units corresponding to the N positions.
In a possible embodiment, the first node may perform the procedure performed by the third node in fig. 5, and/or may perform the procedure performed by the fourth node in fig. 5. That is, the first node may generate the first location and instruct the next hop node of the first node through the first indication message to determine the transmission delay between the first node and the next hop node of the first node, may also receive the first indication message from the previous hop node of the first node, determine the transmission delay between the first node and the previous hop node of the first node based on the first indication message, and report the transmission delay to the controller 110. For a specific implementation process, reference may be made to the flow shown in fig. 5, which is not described herein again.
In the above embodiment of the present application, the first node receives the configuration message sent by the controller 110, where the configuration message indicates N positions of N time units in one macro cycle. In response, the first node will use the N time units corresponding to the fixed N positions to execute the first service, and will not use the time units corresponding to the positions other than the N positions in one macro cycle to execute the first service, which means that the first node executes the first service in a certain time range, and meets the requirement of the DIP technology for providing the deterministic forwarding service.
The following describes the apparatus provided in the embodiments of the present application with reference to the drawings.
Based on the same technical concept as the method embodiment, the embodiment of the present application further provides a controller, as shown in fig. 8, the controller includes a transceiver unit 801 and a processing unit 802; the processing unit 801 is configured to receive, through the transceiver unit 801, a request message, where the request message is used to instruct the controller to configure a time domain resource for executing a first service, and send, through the transceiver unit 801, a configuration message to a first node, where the configuration message indicates N positions of N time units within one macro cycle; the N time units are time domain resources for executing the first service, and bandwidth resources corresponding to the N time units meet a bandwidth requirement of the first service, one time unit of the N time units is used for indicating a minimum duration for scheduling the time domain resources, one macrocycle includes M time units, M is an integer greater than or equal to N, and N is an integer greater than or equal to 1.
In the foregoing embodiment of the present application, the controller sends, in response to the request message, a configuration message indicating N positions to the first node, so that the first node will execute the first service in N time units corresponding to the N positions in a macro cycle by using a time unit as a granularity, and will not execute the first service in time units other than the N time units corresponding to the N positions in the macro cycle, which means that the controller may control a delay of forwarding a packet of the first service by the first node within a certain index range, and meet a requirement of the DIP technology for providing a deterministic forwarding service.
In an optional implementation manner, the processing unit 802 is specifically configured to: determining the number N of time units for executing the first service in a macro period according to the request message; and configuring N positions of the N time units in a macro cycle for the first node according to the time domain resource occupation condition of the nodes in a first transmission path, wherein the inlet of the first transmission path is the first node, the outlet of the first transmission path is a second node, and the first service enters a first network through the first node and leaves the first network through the second node.
In an optional implementation manner, the first transmission path includes a third node, an H location is a location of the third node corresponding to the N locations in one macro cycle, and a time unit corresponding to at least one of the H locations is occupied by a second service, where the size of H is equal to the size of N, the processing unit 802 is further configured to: and the controller adjusts the time domain resource used for executing the second service in the third node, and after adjustment, H time units corresponding to the H positions are in an idle state.
In an optional implementation manner, the processing unit 802 is specifically configured to: determining K positions according to a first macro-cycle offset, wherein the K positions are positions corresponding to the H positions of a fourth node in a macro cycle, the second service enters a first network through the fourth node, the first macro-cycle offset is a time delay of a message transmitted from the fourth node to the third node, and the K is equal to the H; according to the time domain resource occupation situation of the nodes in the second transmission path, reconfiguring Q positions of Q time units in a macro cycle for the fourth node, wherein the Q time units are time domain resources for the fourth node to execute the second service, the Q positions comprise positions except the K positions in the macro cycle, and the second transmission path is used for transmitting the messages of the second service.
In an optional implementation manner, the processing unit 802 is specifically configured to: according to the bandwidth resource occupation condition of nodes in a first transmission path, a channel for executing the first service is configured between every two adjacent nodes in the first transmission path, the configured channel is used for determining the bandwidth resource corresponding to each time unit, wherein the inlet of the first transmission path is the first node, the outlet of the first transmission path is a second node, and the first service enters a first network through the first node and leaves the first network through the second node.
In an optional implementation manner, the first transmission path includes a fifth node and a sixth node, and the fifth node is a next hop node of the sixth node; the processing unit 802 is specifically configured to: configuring a channel for executing the first service between the fifth node and the sixth node according to the bandwidth resource occupation condition of the fifth node and the bandwidth requirement of the first service; or, according to the bandwidth resource occupation condition of the fifth node and the bandwidth requirement of the first service, determining a channel for executing the first service from at least one configured channel between the fifth node and the sixth node.
In an optional implementation manner, the transceiver unit 801 is further configured to: receiving a first indication message from a seventh node, wherein the first indication message indicates at least one macro-cycle offset, any macro-cycle offset of the at least one macro-cycle offset is a time delay for a packet to be transmitted from a last-hop node of the seventh node to the seventh node, and the seventh node and the last-hop node of the seventh node are two nodes in a first network; the processing unit 802 is further configured to: updating a macrocycle entry of the seventh node for storing the at least one macrocycle offset based on the first indication message.
In an optional implementation manner, the configuration message further includes an identifier of a first channel and/or an identifier of a first service, where the first channel is a bandwidth resource used by the first node and a next hop node of the first node to execute the first service.
In an alternative embodiment, the request message includes one or more of the following information: an identity of the first node, an identity of the second node, or a bandwidth requirement of the first service.
The functional units in the embodiments of the present application may be integrated in a processor in a software or hardware manner, or may exist alone physically, or two or more functional units are integrated in a module. The integrated functional units can be implemented in the form of hardware or software.
An apparatus according to an embodiment of the present application is further provided, and as shown in fig. 9, the apparatus may be a controller, and includes a processor 901, and the hardware of the entity corresponding to the processing unit 802 may be the processor 901. The controller may further include a transceiver 904, and the hardware of the entity corresponding to the transceiver unit 801 may be the transceiver 904. The processor 901 may be a Central Processing Unit (CPU), or a Digital Signal Processor (DSP). Further comprising: a memory 902 for storing programs executed by the processor 901. The memory 902 may be a nonvolatile memory such as a hard disk (HDD) or a solid-state drive (SSD), and may also be a volatile memory such as a random-access memory (RAM). The memory 902 can also be any other medium that can be used to carry or store desired program code in the form of instructions or data structures and that can be accessed by a computer, but is not limited to such.
The processor 901 is configured to execute the program code stored in the memory 902, and specifically call up the program instructions stored in the memory 902. Specifically, the processor 901 receives the request message of the first service through the transceiver 904, so that the transceiver 904 is configured to receive the request message as a specific execution unit and transfer the request message to the processor 901, so that the processor 901 configures N positions of N time units in one macro cycle for the first node.
The embodiment of the present application does not limit the specific connection medium between the processor 901 and the memory 902. In the embodiment of the present application, the processor 901 and the memory 902 are connected by the bus 903 in fig. 9, the bus is indicated by a thick line in fig. 9, and the connection manner between other components is merely illustrative and not limited thereto. The bus may be divided into an address bus, a data bus, a control bus, etc. For ease of illustration, only one thick line is shown in FIG. 9, but this does not indicate only one bus or one type of bus.
Based on the same technical concept as the method embodiment, an embodiment of the present application further provides a network node, as shown in fig. 10, where the network node is a first node, and the first node includes a transceiver unit 1001 and a processing unit 1002; a transceiver 1001, configured to receive a configuration message from a controller, where the configuration message indicates that N time units are in N positions within one macro-cycle for receiving a resource configuration instruction from the controller; a processing unit 1002, configured to execute the first service in N time units corresponding to the N positions; the N time units are time domain resources for executing the first service, and bandwidth resources corresponding to the N time units meet a bandwidth requirement of the first service, one time unit of the N time units is used for indicating a minimum duration for scheduling the time domain resources, one macrocycle includes M time units, M is an integer greater than or equal to N, and N is an integer greater than or equal to 1.
In the above embodiment of the present application, the first node receives the configuration message, and in response, executes the first service in N time units corresponding to N positions in one macro cycle, so as to meet a requirement of providing a deterministic forwarding service in the DIP technology.
In an optional implementation manner, the transceiver unit 1001 is configured to: sending a second indication message to the controller, where the second indication message indicates at least one macro-cycle offset, so that the controller updates a macro-cycle offset table entry of the first node based on the at least one macro-cycle offset, where the macro-cycle offset table entry is used to store the at least one macro-cycle offset, and where any macro-cycle offset in the at least one macro-cycle offset is a delay of a packet transmitted from a previous-hop node of the first node to the first node.
In an optional implementation manner, a previous-hop node of the first node is an eighth node, where the at least one macro-cycle offset includes a second macro-cycle offset, and the transceiver unit 1001 is further configured to: receiving a third indication message from the eighth node, the third indication message indicating a first location, the first location being a location of a time unit of the eighth node that generated the third indication message within one macro-cycle; the processing unit 1002 is specifically configured to: and determining the second macro-cycle offset according to the first position and a second position, where the second position is a position of a time unit of the eighth node responding to the third indication message in a macro-cycle, and the second macro-cycle offset is a time delay of a packet transmitted from the eighth node to the first node.
In an optional implementation manner, the next-hop node of the first node is a ninth node, and the processing unit 1002 is specifically configured to: generating a fourth indication message, the fourth indication message indicating a third location, the third location being a location within one macrocycle for a time unit at which the first node generated the fourth indication message; the transceiver unit 1001 is specifically configured to: and sending the fourth indication message to the ninth node, where the fourth indication message is used to indicate that the ninth node determines a third macro-cycle offset according to the third position and a fourth position, the fourth position is a position of a time unit, in a macro-cycle, of the ninth node responding to the fourth indication message, and the third macro-cycle offset is a time delay of a packet transmitted from the first node to the ninth node.
In an optional implementation manner, the configuration message further includes an identifier of a first channel and/or an identifier of a first service, where the first channel is used to indicate bandwidth resources used for executing the first service between the first node and a next hop node of the first node.
The functional units in the embodiments of the present application may be integrated in a processor in a software or hardware manner, or may exist alone physically, or two or more functional units are integrated in a module. The integrated functional units can be implemented in the form of hardware or software.
An apparatus is also provided in this embodiment of the present application, as shown in fig. 11, the apparatus may be a network node, and includes a processor 1101, and the hardware of the entity corresponding to the processing unit 1002 may be the processor 1101. The network node may further include a transceiver 1104, and the hardware of the entity corresponding to the transceiver 1001 may be the transceiver 1104. The processor 1101 may be a Central Processing Unit (CPU), a Digital Signal Processor (DSP), or the like. Further comprising: a memory 1102 for storing programs executed by the processor 1101. The memory 1102 may be a nonvolatile memory, such as a hard disk (HDD) or a solid-state drive (SSD), and may also be a volatile memory, such as a random-access memory (RAM). The memory 1102 may also be any other medium that can be used to carry or store desired program code in the form of instructions or data structures and that can be accessed by a computer, but is not limited to such.
The processor 1101 is configured to execute the program code stored in the memory 1102, and specifically call the program instruction stored in the memory 1102. Specifically, the processor 1101 receives, via the transceiver 1104, a configuration message from the controller, the configuration message instructing the processor 1101 to execute the first service using N time units corresponding to N positions within one macro cycle. The processor 1101 executes the first service according to the configuration message by using N time units corresponding to N positions within one macrocycle. The processor 1101 executes the first service with the granularity of time units, so that the time delay of the transceiver 1104 for forwarding the message of the first service is deterministic, and the requirement of providing a deterministic forwarding service in the DIP technology is met.
The specific connection medium between the processor 1101 and the memory 1102 is not limited in the embodiment of the present application. In the embodiment of the present application, the processor 1101 and the memory 1102 are connected by a bus 1103 in fig. 11, the bus is indicated by a thick line in fig. 11, and the connection manner between other components is merely illustrative and not limited thereto. The bus may be divided into an address bus, a data bus, a control bus, etc. For ease of illustration, only one thick line is shown in FIG. 11, but this is not intended to represent only one bus or type of bus.
As will be appreciated by one skilled in the art, embodiments of the present application may be provided as a method, system, or computer program product. Accordingly, the present application may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present application may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
The present application is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (devices), and computer program products according to embodiments of the application. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
It will be apparent to those skilled in the art that various changes and modifications may be made in the embodiments of the present application without departing from the spirit and scope of the embodiments of the present application. Thus, if such modifications and variations of the embodiments of the present application fall within the scope of the claims of the present application and their equivalents, the present application is also intended to encompass such modifications and variations.

Claims (32)

1. A method for resource allocation, the method comprising:
a controller receives a request message, wherein the request message is used for indicating that the controller configures time domain resources for executing a first service;
the controller sending a configuration message to a first node, the configuration message indicating N positions of N time units within a macro period;
the N time units are time domain resources for executing the first service, and bandwidth resources corresponding to the N time units meet a bandwidth requirement of the first service, one time unit of the N time units is used for indicating a minimum duration for scheduling the time domain resources, one macrocycle includes M time units, M is an integer greater than or equal to N, and N is an integer greater than or equal to 1.
2. The method of claim 1, wherein the method further comprises:
the controller determines the number N of time units used for executing the first service in a macro period according to the request message;
the controller configures, for a first node, N positions of the N time units within a macro period according to a time domain resource occupation condition of the node in a first transmission path, where an entry of the first transmission path is the first node and an exit is a second node, and the first service enters a first network via the first node and leaves the first network via the second node.
3. The method of claim 2, wherein the first transmission path includes a third node, H locations are locations of the third node corresponding to the N locations within one macro-cycle, and a time unit corresponding to at least one of the H locations is occupied by a second traffic, the size of the H being equal to the size of the N, the method further comprising:
and the controller adjusts the time domain resource used for executing the second service in the third node, and after adjustment, H time units corresponding to the H positions are in an idle state.
4. The method of claim 3, wherein the controller adjusting time domain resources in the third node for performing the second service comprises:
the controller determines K positions according to a first macro-cycle offset, wherein the K positions are positions corresponding to the H positions of a fourth node in a macro cycle, the second service enters a first network through the fourth node, the first macro-cycle offset is a time delay of a message transmitted from the fourth node to the third node, and the K is equal to the H;
the controller reconfigures, for the fourth node, Q positions of Q time units within one macro cycle according to a time domain resource occupation situation of a node in a second transmission path, where the Q time units are time domain resources for the fourth node to execute the second service, the Q positions include positions other than the K positions in one macro cycle, and the second transmission path is used to transmit a packet of the second service.
5. The method of any one of claims 1 to 6, further comprising:
the controller configures a channel for executing the first service between every two adjacent nodes in a first transmission path according to the bandwidth resource occupation condition of the nodes in the first transmission path, wherein an inlet of the first transmission path is the first node, an outlet of the first transmission path is a second node, and the first service enters a first network through the first node and leaves the first network through the second node.
6. The method of claim 5, wherein the first transmission path includes a fifth node and a sixth node, the fifth node being a next hop node of the sixth node;
the controller configures a channel between every two adjacent nodes in the first transmission path according to the bandwidth resource occupation condition of the nodes in the first transmission path, including:
the controller configures a channel for executing the first service between the fifth node and the sixth node according to the bandwidth resource occupation condition of the fifth node and the bandwidth requirement of the first service; alternatively, the first and second electrodes may be,
and the controller determines a channel for executing the first service from at least one configured channel between the fifth node and the sixth node according to the bandwidth resource occupation condition of the fifth node and the bandwidth requirement of the first service.
7. The method of any one of claims 1 to 6, further comprising:
the controller receives a first indication message from a seventh node, wherein the first indication message indicates at least one macro-cycle offset, any one of the at least one macro-cycle offset is a time delay for a packet to be transmitted from a previous hop node of the seventh node to the seventh node, and the seventh node and the previous hop node of the seventh node are two nodes in a first network;
the controller updates a macro-cycle entry of the seventh node for storing the at least one macro-cycle offset based on the first indication message.
8. The method according to any of claims 1 to 7, wherein the configuration message further comprises an identifier of a first channel, and/or an identifier of a first service, the first channel being a bandwidth resource between the first node and a next hop node of the first node for executing the first service.
9. The method of any one of claims 1-8, wherein the request message includes one or more of the following information: an identity of the first node, an identity of the second node, or a bandwidth requirement of the first service.
10. A method for resource allocation, the method comprising:
the first node receiving a configuration message from a controller, the configuration message indicating N positions of N time units within one macro period;
the first node executes the first service in N time units corresponding to the N positions;
the N time units are time domain resources for executing the first service, and bandwidth resources corresponding to the N time units meet a bandwidth requirement of the first service, one time unit of the N time units is used for indicating a minimum duration for scheduling the time domain resources, one macrocycle includes M time units, M is an integer greater than or equal to N, and N is an integer greater than or equal to 1.
11. The method of claim 10, wherein the method further comprises:
the first node sends a second indication message to the controller, where the second indication message indicates at least one macro-cycle offset, so that the controller updates a macro-cycle offset table entry of the first node based on the at least one macro-cycle offset, where the macro-cycle offset table entry is used to store the at least one macro-cycle offset, and any macro-cycle offset in the at least one macro-cycle offset is a delay of a packet transmitted from a last-hop node of the first node to the first node.
12. The method of claim 11, wherein a last hop node of the first node is an eighth node, the at least one macrocycle offset comprises a second macrocycle offset, the method further comprising:
the first node receiving a third indication message from the eighth node, the third indication message indicating a first location, the first location being a location of a time unit of the eighth node generating the third indication message within one macro-cycle;
the first node determines the second macro-cycle offset according to the first position and a second position, where the second position is a position of a time unit of the eighth node responding to the third indication message in a macro-cycle, and the second macro-cycle offset is a time delay of a packet transmitted from the eighth node to the first node.
13. The method of any one of claims 10-12, wherein the next hop node of the first node is a ninth node, the method further comprising:
generating, by the first node, a fourth indication message indicating a third location, the third location being a location of a time unit of the first node generating the fourth indication message within one macro-cycle;
the first node sends the fourth indication message to the ninth node, where the fourth indication message is used to indicate that the ninth node determines a third macro-cycle offset according to the third location and a fourth location, the fourth location is a location of a time unit, in a macro-cycle, of the ninth node responding to the fourth indication message, and the third macro-cycle offset is a time delay of a packet transmitted from the first node to the ninth node.
14. The method according to any of claims 10 to 13, wherein the configuration message further comprises an identification of a first channel and/or an identification of a first service, the first channel being used to indicate bandwidth resources between the first node and a next hop node of the first node for performing the first service.
15. A controller, characterized in that the controller comprises: a transceiving unit and a processing unit;
the processor unit is configured to receive, by the transceiver unit, a request message, where the request message is used to instruct the controller to configure a time domain resource for executing a first service; and sending a configuration message to the first node via the transceiver unit, the configuration message indicating N positions of the N time units within one macro period;
the N time units are time domain resources for executing the first service, and bandwidth resources corresponding to the N time units meet a bandwidth requirement of the first service, one time unit of the N time units is used for indicating a minimum duration for scheduling the time domain resources, one macrocycle includes M time units, M is an integer greater than or equal to N, and N is an integer greater than or equal to 1.
16. The controller of claim 15, wherein the processing unit is specifically configured to:
determining the number N of time units for executing the first service in a macro period according to the request message;
and configuring N positions of the N time units in a macro cycle for the first node according to the time domain resource occupation condition of the nodes in a first transmission path, wherein the inlet of the first transmission path is the first node, the outlet of the first transmission path is a second node, and the first service enters a first network through the first node and leaves the first network through the second node.
17. The controller of claim 16, wherein the first transmission path includes a third node, wherein H locations are locations of the third node corresponding to the N locations within one macro-cycle, and wherein a time unit corresponding to at least one of the H locations is occupied by a second traffic, wherein the size of H is equal to the size of N, the processing unit further configured to:
and the controller adjusts the time domain resource used for executing the second service in the third node, and after adjustment, H time units corresponding to the H positions are in an idle state.
18. The controller of claim 17, wherein the processing unit is specifically configured to:
determining K positions according to a first macro-cycle offset, wherein the K positions are positions corresponding to the H positions of a fourth node in a macro cycle, the second service enters a first network through the fourth node, the first macro-cycle offset is a time delay of a message transmitted from the fourth node to the third node, and the K is equal to the H;
according to the time domain resource occupation situation of the nodes in the second transmission path, reconfiguring Q positions of Q time units in a macro cycle for the fourth node, wherein the Q time units are time domain resources for the fourth node to execute the second service, the Q positions comprise positions except the K positions in the macro cycle, and the second transmission path is used for transmitting the messages of the second service.
19. The controller according to any one of claims 15 to 18, wherein the processing unit is specifically configured to:
according to the bandwidth resource occupation condition of the nodes in the first transmission path, a channel for executing the first service is configured between every two adjacent nodes in the first transmission path, wherein the inlet of the first transmission path is the first node, the outlet of the first transmission path is the second node, and the first service enters the first network through the first node and leaves the first network through the second node.
20. The controller of claim 19, wherein the first transmission path includes a fifth node and a sixth node, the fifth node being a next hop node of the sixth node;
the processing unit is specifically configured to:
configuring a channel for executing the first service between the fifth node and the sixth node according to the bandwidth resource occupation condition of the fifth node and the bandwidth requirement of the first service; alternatively, the first and second electrodes may be,
and determining a channel for executing the first service from at least one configured channel between the fifth node and the sixth node according to the bandwidth resource occupation condition of the fifth node and the bandwidth requirement of the first service.
21. The controller according to any one of claims 15 to 20, wherein the transceiver unit is further configured to:
receiving a first indication message from a seventh node, wherein the first indication message indicates at least one macro-cycle offset, any macro-cycle offset of the at least one macro-cycle offset is a time delay for a packet to be transmitted from a last-hop node of the seventh node to the seventh node, and the seventh node and the last-hop node of the seventh node are two nodes in a first network;
the processing unit is further configured to:
updating a macrocycle entry of the seventh node for storing the at least one macrocycle offset based on the first indication message.
22. The controller according to any of claims 15 to 21, wherein the configuration message further comprises an identifier of a first channel, and/or an identifier of a first service, the first channel being a bandwidth resource between the first node and a next hop node of the first node for performing the first service.
23. The controller according to any one of claims 15 to 22, wherein the request message comprises one or more of the following information: an identity of the first node, an identity of the second node, or a bandwidth requirement of the first service.
24. A network node, comprising:
a transceiver unit for receiving a configuration message from a controller, the configuration message indicating N positions of N time units within a macrocycle;
a processing unit, configured to execute the first service in N time units corresponding to the N positions;
the N time units are time domain resources for executing the first service, and bandwidth resources corresponding to the N time units meet a bandwidth requirement of the first service, one time unit of the N time units is used for indicating a minimum duration for scheduling the time domain resources, one macrocycle includes M time units, M is an integer greater than or equal to N, and N is an integer greater than or equal to 1.
25. The network node of claim 24, wherein the transceiver unit is to:
sending a second indication message to the controller, where the second indication message indicates at least one macro-cycle offset, so that the controller updates a macro-cycle offset table entry of the first node based on the at least one macro-cycle offset, where the macro-cycle offset table entry is used to store the at least one macro-cycle offset, and where any macro-cycle offset in the at least one macro-cycle offset is a delay of a packet transmitted from a previous-hop node of the first node to the first node.
26. The network node of claim 25, wherein the previous-hop node of the first node is an eighth node, wherein the at least one macro-cycle offset comprises a second macro-cycle offset, and wherein the transceiver unit is further configured to:
receiving a third indication message from the eighth node, the third indication message indicating a first location, the first location being a location of a time unit of the eighth node that generated the third indication message within one macro-cycle;
the processing unit is specifically configured to:
and determining the second macro-cycle offset according to the first position and a second position, where the second position is a position of a time unit of the eighth node responding to the third indication message in a macro-cycle, and the second macro-cycle offset is a time delay of a packet transmitted from the eighth node to the first node.
27. The network node according to any one of claims 24 to 26, wherein the next hop node of the first node is a ninth node, and the processing unit is specifically configured to:
generating a fourth indication message, the fourth indication message indicating a third location, the third location being a location within one macrocycle for a time unit at which the first node generated the fourth indication message;
the transceiver unit is specifically configured to:
and sending the fourth indication message to the ninth node, where the fourth indication message is used to indicate that the ninth node determines a third macro-cycle offset according to the third position and a fourth position, the fourth position is a position of a time unit, in a macro-cycle, of the ninth node responding to the fourth indication message, and the third macro-cycle offset is a time delay of a packet transmitted from the first node to the ninth node.
28. The network node according to any of claims 24 to 27, wherein the configuration message further comprises an identification of a first tunnel and/or an identification of a first service, the first tunnel indicating bandwidth resources between the first node and a next hop node of the first node for performing the first service.
29. A resource allocation apparatus comprising at least one processor; the at least one processor configured to execute a computer program or instructions to cause an apparatus to perform the method of any one of claims 1 to 9.
30. A resource allocation apparatus comprising at least one processor; the at least one processor configured to execute a computer program or instructions to cause an apparatus to perform the method of any one of claims 10 to 14.
31. A computer-readable storage medium for storing computer instructions which, when executed on a computer, cause the computer to perform the method of any one of claims 1 to 9.
32. A computer-readable storage medium for storing computer instructions which, when executed on a computer, cause the computer to perform the method of any one of claims 10 to 14.
CN201911404975.XA 2019-12-30 2019-12-30 Resource allocation method and equipment Pending CN113132268A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201911404975.XA CN113132268A (en) 2019-12-30 2019-12-30 Resource allocation method and equipment
PCT/CN2020/140421 WO2021136213A1 (en) 2019-12-30 2020-12-28 Resource configuration method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911404975.XA CN113132268A (en) 2019-12-30 2019-12-30 Resource allocation method and equipment

Publications (1)

Publication Number Publication Date
CN113132268A true CN113132268A (en) 2021-07-16

Family

ID=76686529

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911404975.XA Pending CN113132268A (en) 2019-12-30 2019-12-30 Resource allocation method and equipment

Country Status (2)

Country Link
CN (1) CN113132268A (en)
WO (1) WO2021136213A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113285844A (en) * 2021-07-23 2021-08-20 浙江国利信安科技有限公司 Method, computing device, and medium for adjusting bandwidth
WO2023019853A1 (en) * 2021-08-19 2023-02-23 北京理工大学深圳汽车研究院(电动车辆国家工程实验室深圳研究院) Dynamically reconfigurable network system and network scheduling method for intelligent vehicle

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114448865B (en) * 2021-12-23 2024-01-02 东莞市李群自动化技术有限公司 Service message processing method, system, equipment and storage medium
CN117278471B (en) * 2023-11-21 2024-01-26 浙江国利信安科技有限公司 Method, computing device and storage medium for network communication time scheduling

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101924702A (en) * 2010-08-26 2010-12-22 华为技术有限公司 Service data transmission method and device
US9608933B2 (en) * 2013-01-24 2017-03-28 Hitachi, Ltd. Method and system for managing cloud computing environment
WO2016107159A1 (en) * 2014-12-31 2016-07-07 华为技术有限公司 Communication method, device and system
US10938736B2 (en) * 2017-10-18 2021-03-02 Futurewei Technologies, Inc. Dynamic allocation of edge computing resources in edge computing centers
CN110149711B (en) * 2018-02-13 2022-09-16 成都华为技术有限公司 Signal transmission method and device

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113285844A (en) * 2021-07-23 2021-08-20 浙江国利信安科技有限公司 Method, computing device, and medium for adjusting bandwidth
CN113285844B (en) * 2021-07-23 2021-10-15 浙江国利信安科技有限公司 Method, computing device, and medium for adjusting bandwidth
WO2023019853A1 (en) * 2021-08-19 2023-02-23 北京理工大学深圳汽车研究院(电动车辆国家工程实验室深圳研究院) Dynamically reconfigurable network system and network scheduling method for intelligent vehicle

Also Published As

Publication number Publication date
WO2021136213A1 (en) 2021-07-08

Similar Documents

Publication Publication Date Title
CN111865830B (en) Processing method, device and system for time delay sensitive network service TSN
CN113132268A (en) Resource allocation method and equipment
CN108418609B (en) System and method for radio bearer management for multipoint transmissions
AU2018315392B2 (en) Physical resource block prb grid indication method and device
US11889342B2 (en) Method and apparatus for quality of service management
US11146984B2 (en) Quality of service implementations for separating user plane
CN108702660A (en) Communication means, terminal device and the network equipment
WO2014086203A1 (en) Method and apparatus for configuring srs resource for cooperating cells
US20210234648A1 (en) Method and apparatus for distribution and synchronization of radio resource assignments in a wireless communication system
CN110661837A (en) Method and device for controlling quality of service
CN116366567A (en) Method, network element, system and storage medium for processing QoS parameters
UA109982C2 (en) METHOD OF DETERMINATION OF TRANSMISSION TIME INTERFACE, BASE STATION AND RADIO CONTROLLER
AU2020255012B2 (en) Communication method and communications apparatus
WO2018202020A1 (en) Method and device for allocating random access resource
Chen et al. Network monitoring information collection in the SDN-enabled airborne tactical network
CN114448566A (en) Data exchange method, exchange device and processing device
CN115119153B (en) Frame header compression method of Ethernet frame, communication node and storage medium
CN110139389B (en) Method and device for reporting buffer status and computer storage medium
CN112087777A (en) Method, device and system for determining MDBV
Wei et al. Dynamic flow rules in software defined networks
CN111132091B (en) Resource allocation method and device
KR102212432B1 (en) Method and apparatus for uplink data manipulation
CN114640634A (en) Communication method and related equipment
CN114793209A (en) Data transmission method and device and SDN (software defined network) equipment
CN114073121A (en) Method and apparatus for flow control

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination