Slot allocation method and apparatus for optical access network, and system, electronic device and storage medium
By dynamically updating the transmission time slot of the user -end device in the network in the network, the problem of low time and lava distribution efficiency in the traditional light access network, and achieve more efficient data transmission and cache management.
Patent Information
- Application Number
- PCT/CN2024/096065
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-07-27
- Filing Date
- 2024-05-29
- Publication Date
- 2025-01-30
AI Technical Summary
In traditional optical access networks, devices adopt a one-to-one connection method, and spectroscopy cannot be achieved, and spectroscopy schemes based on EPON or GPON protocols have problems with inefficiency in time slot allocation.
Put forward a time slot distribution method for light connecting the network. By receiving the bandwidth demand value of the user -side device, obtaining the unfilled time slot, and dynamically updating the transmission time slot of the user's side device, accurately match the user's data transmission requirements Essence
This method can timely meet the transmission requirements of the user -side device, reduce the cache overflow, and improve the efficiency of the time slot distribution, and avoid delayed transmission delay of other user equipment caused by too long time of the time slot distribution cycle.
Smart Images

Figure CN2024096065_30012025_PF_FP_ABST
Abstract
Description
Time slot allocation method, device, system, electronic device and storage medium for optical access network
[0001] CROSS-REFERENCE TO RELATED APPLICATIONS
[0002] This application claims priority to the Chinese patent application filed with the China Patent Office on July 27, 2023, with application number 202310931553.8 and application name “A method and device for allocating time slots for an optical access network”, the entire contents of which are incorporated by reference into this application. Technical Field
[0003] The present application relates to the field of communication technology, and in particular to a method, device, system, electronic device, and storage medium for allocating time slots in an optical access network. Background Art
[0004] Against the backdrop of the shift from copper to fiber, optical access networks are developing rapidly. Currently, devices in traditional Ethernet all-optical networks utilize a one-to-one connection model. For example, see Figure 1, which illustrates the architecture of a traditional Ethernet all-optical network. As shown in Figure 1, an optical line terminal (OLT) deployed at the central office can only access one optical network unit (ONU), making optical splitting impossible. Traditional optical splitting solutions rely on Ethernet Passive Optical Network (EPON) or Gigabit-Capable Passive Optical Network (GPON) chips. However, in current optical splitting solutions based on EPON or GPON protocols, the OLT allocates data transmission time slots to each ONU based on the collected bandwidth requirements and bandwidth configuration. The transmission time slots of all ONUs constitute a time slot allocation cycle. In any time slot allocation cycle, each ONU transmits data in the occupied time slot. After the time slot allocation cycle ends, the OLT will start again to collect bandwidth requirements of each ONU and re-allocate time slots.
[0005] Summary of the Invention
[0006] Each exemplary embodiment of the present application provides a method, apparatus, system, electronic device, and storage medium for allocating time slots in an optical access network.
[0007] In a first aspect, an embodiment of the present application provides a method for allocating time slots in an optical access network, which is applied to a central office device and includes:
[0008] receiving a first bandwidth requirement value from a first user terminal device; the first bandwidth requirement value is sent by the first user terminal device when it is determined that the allocated bandwidth is less than the bandwidth required for data transmission, and the difference between the allocated bandwidth and the bandwidth required for data transmission is greater than a set threshold; the first bandwidth requirement value is used to represent the size of the bandwidth required for data transmission;
[0009] Obtaining unoccupied time slots in each sub-period included in a first time slot allocation period; wherein the first time slot allocation period is a time slot allocation period during which the user terminal device currently transmits data; or the first time slot allocation period is any one of a plurality of time slot allocation periods of equal duration;
[0010] updating the transmission time slot occupied by the first user terminal device in each sub-period according to the first bandwidth requirement value and the unoccupied time slot;
[0011] Send the updated transmission time slot to the first user terminal equipment.
[0012] In some embodiments, updating the transmission time slot occupied by the first user terminal device in each sub-period according to the first bandwidth requirement value and the unoccupied time slot includes:
[0013] Obtaining a second bandwidth requirement value reported by the first user terminal device at a first historical moment; the first moment being a moment before the start of a first time slot allocation period; the second bandwidth requirement value being used to determine a transmission time slot occupied by the first user terminal device in each sub-period included in the first time slot allocation period; the second bandwidth requirement value being less than the first bandwidth requirement value, and the difference between the first bandwidth requirement value and the second bandwidth requirement value being no less than the set threshold;
[0014] allocating an additional time slot for the first user terminal device from unoccupied time slots included in each sub-cycle according to a difference between the first bandwidth requirement value and the second bandwidth requirement value;
[0015] The transmission time slot occupied by the first user terminal equipment in each sub-period is updated according to the additional time slot.
[0016] Based on the above solution, when allocating additional time slots to user-end devices, the difference between the demand value reported in the current cycle and the demand value reported before the start of the current cycle is used to determine the additional bandwidth required by the user, and then the additional time slots that need to be allocated are determined based on the required additional bandwidth, so that the additionally allocated time slots can accurately match the current data transmission needs of the user end, and there will be no problem of bandwidth waste or the user end's needs still not being met.
[0017] In some embodiments, the first time point is in any one of a plurality of transmission time slots allocated to the first user equipment in a second time slot allocation period, wherein the second time slot allocation period is a time slot allocation period preceding the first time slot allocation period.
[0018] Based on the above solution, the user terminal device can report its own demand in any transmission time slot of the previous cycle, so that the central office device can allocate a transmission time slot of the current cycle to the user terminal device according to the received demand value.
[0019] In some embodiments, the first time instant is located in a last transmission time slot included in the plurality of transmission time slots.
[0020] Based on the above scheme, the present application proposes setting the first user terminal device to report the bandwidth demand in the last transmission time slot occupied in the previous cycle, which can avoid the problem that the amount of data to be transmitted changes after the demand is reported in the previous transmission time slot, resulting in the first user terminal device needing to re-report the bandwidth demand.
[0021] In some embodiments, before obtaining the second bandwidth requirement value, the method further includes:
[0022] receiving a third bandwidth requirement value reported by the first user terminal device before a second time slot allocation period begins, wherein the second time slot allocation period is a time slot allocation period preceding the first time slot allocation period, wherein the second bandwidth requirement value is less than the third bandwidth requirement value and a difference between the second bandwidth requirement value and the third bandwidth requirement value is greater than or equal to a preset value, or the second bandwidth requirement value is greater than the third bandwidth requirement value and a difference between the second bandwidth requirement value and the third bandwidth requirement value is less than the preset value;
[0023] The transmission time slot occupied by the first user terminal equipment in each sub-period included in the second time slot allocation period is determined according to the third bandwidth requirement value.
[0024] Based on the above scheme, this application proposes to dynamically adjust the time interval for the user end to report the bandwidth demand value. If the bandwidth demand value of the current cycle becomes smaller than that of the previous cycle and the degree of change is not large, the bandwidth demand can be not reported, thereby reducing the computing resources consumed by the local equipment to calculate and allocate transmission time slots.
[0025] In some embodiments, allocating an additional time slot to the first user terminal device from unoccupied time slots included in each sub-cycle according to the difference between the first bandwidth requirement value and the second bandwidth requirement value includes:
[0026] determining additional bandwidth required by the first user terminal device according to a difference between the first bandwidth requirement value and the second bandwidth requirement value;
[0027] Determining a portion of the bandwidth borne by each sub-cycle based on the number of sub-cycles included in the first time slot allocation cycle and the additional bandwidth;
[0028] Allocate additional time slots from the unoccupied time slots to the first user terminal device according to the portion of bandwidth undertaken by each sub-period and the bandwidth corresponding to each time slot in the unoccupied time slots.
[0029] This application proposes evenly dividing the additional time slots allocated to the first user terminal device across multiple sub-periods, allowing the first user terminal device to transmit data multiple times within the current time slot allocation period. Based on this solution, even if the first user terminal device transmits a large amount of data, this data will be evenly distributed across multiple sub-periods for transmission, without affecting the data transmission of other user terminal devices.
[0030] In some embodiments, obtaining unoccupied time slots in each sub-period included in the first time slot allocation period includes:
[0031] Obtaining a stored schedule of multiple time slot allocation cycles; wherein the schedule of each time slot allocation cycle includes a transmission time slot allocated to each user terminal device in each time slot allocation cycle;
[0032] Deleting expired schedules from the plurality of schedules, and determining among the remaining schedules that a schedule in the first time slot allocation period has an unoccupied time slot and a time interval between an end time of the first time slot allocation period and a time when the emergency bandwidth request is received is the shortest; wherein the expired schedule is a schedule that has been completely used;
[0033] Unoccupied time slots in each of the sub-cycles are obtained from the schedule of the first time slot allocation cycle.
[0034] Based on the above solution, the central office device will store each calculated schedule, so that when it is necessary to allocate additional time slots for the first user terminal device, it can directly obtain the stored non-expired schedule and determine the additional time slots that need to be allocated, thereby improving the efficiency of allocating additional time slots and allowing the needs of the first user terminal device to be met in a very short time.
[0035] In some embodiments, the interval between the end time of the first time slot allocation period and the time when the first bandwidth requirement value is received is the shortest.
[0036] In some embodiments, the duration of each time slot allocation period is fixed.
[0037] In some embodiments, each sub-cycle includes a transmission time slot allocated to each user equipment.
[0038] In some embodiments, the transmission time slot allocated to each user terminal device in each sub-cycle is determined by:
[0039] Determine the start sending time of each user terminal device according to the distance between each user terminal device and the central office device;
[0040] Determining the number of time slots that each user terminal device needs to occupy according to the bandwidth requirement value of each user terminal device; and
[0041] The specific time slot occupied by each user terminal device in each sub-cycle is determined based on the determined number of time slots and the start transmission time.
[0042] In some embodiments, determining the start transmission time of each user terminal device according to the distance between each user terminal device and the central office device includes:
[0043] Determining the transmission order of each user terminal device according to the distance between each user terminal device and the central office device;
[0044] The start transmission time of each user terminal device is determined based on the transmission sequence and the compensation time.
[0045] In some embodiments, the compensation time is determined as follows:
[0046] The compensation time of the first user terminal device is determined based on the time difference between the first user terminal device and the second user terminal device respectively required to transmit data to the central office device; wherein the second user terminal device is the user terminal device that transmitted data before the first user terminal device.
[0047] In a second aspect, the present application proposes another method for allocating time slots in an optical access network, the method being applied to a first user terminal device, the method comprising:
[0048] During data transmission within the first time slot allocation period, when it is determined that the allocated bandwidth is less than the bandwidth required for data transmission, and the difference between the allocated bandwidth and the bandwidth required for data transmission is greater than a set threshold, sending a first bandwidth requirement value to the central office device;
[0049] Receive the updated transmission time slot sent by the central office device; the updated transmission time slot is determined by the central office device according to the first bandwidth requirement value and the unoccupied time slots in each sub-cycle included in the first time slot allocation cycle.
[0050] In some embodiments, before sending the first bandwidth requirement value, the method further includes:
[0051] Before the first time slot allocation cycle begins, reporting a second bandwidth requirement value to the central office device; the second bandwidth requirement value is less than the first bandwidth requirement value, and the difference between the first bandwidth requirement value and the second bandwidth requirement value is not less than the preset value;
[0052] Receive the transmission time slot occupied by the first user terminal equipment in each sub-period included in the first time slot allocation period, which is sent by the central office equipment.
[0053] In some embodiments, before sending the second bandwidth requirement value to the central office device, the method further includes:
[0054] Before the start of a second time slot allocation cycle, reporting a third bandwidth requirement value to the central office device; the second time slot allocation cycle is a time slot allocation cycle before the first time slot allocation cycle;
[0055] Determine that the second bandwidth requirement value is less than the third bandwidth requirement value, and the difference between the second bandwidth requirement value and the third bandwidth requirement value is greater than or equal to a preset value; or,
[0056] It is determined that the second bandwidth requirement value is greater than the third bandwidth requirement value, and a difference between the second bandwidth requirement value and the third bandwidth requirement value is less than the preset value.
[0057] Also includes:
[0058] Receive the transmission time slot occupied by the first user terminal device in each sub-period included in the second time slot allocation period, which is sent by the central office device, wherein the transmission time slot is determined based on the third bandwidth requirement value.
[0059] In a third aspect, the present application proposes a time slot allocation device for an optical access network, wherein the device is a central office device, or the device is applied to the central office device, and the device includes:
[0060] a communication unit, configured to receive a first bandwidth requirement value from a first user terminal device; the first bandwidth requirement value is sent by the first user terminal device when it is determined that the allocated bandwidth is less than the bandwidth required for data transmission, and the difference between the allocated bandwidth and the bandwidth required for data transmission is greater than a set threshold;
[0061] a processing unit, configured to obtain unoccupied time slots in each sub-cycle included in the first time slot allocation cycle;
[0062] The processing unit is further configured to update the transmission time slot occupied by the first user terminal device in each sub-cycle according to the first bandwidth requirement value and the unoccupied time slot;
[0063] The communication unit is further configured to send the updated transmission time slot to the first user terminal device.
[0064] In some embodiments, the processing unit is specifically configured to:
[0065] Obtaining a second bandwidth requirement value reported by the first user terminal device at a first historical moment; the first moment being a moment before the start of a first time slot allocation period; the second bandwidth requirement value being used to determine a transmission time slot occupied by the first user terminal device in each sub-period included in the first time slot allocation period; the second bandwidth requirement value being less than the first bandwidth requirement value, and the difference between the first bandwidth requirement value and the second bandwidth requirement value being no less than a preset value;
[0066] allocating an additional time slot for the first user terminal device from unoccupied time slots included in each sub-cycle according to a difference between the first bandwidth requirement value and the second bandwidth requirement value;
[0067] The transmission time slot occupied by the first user terminal equipment in each sub-period is updated according to the additional time slot.
[0068] In some embodiments, before obtaining the second bandwidth requirement value, the processing unit is further configured to:
[0069] receiving, by the communication unit, a third bandwidth requirement value reported by the first user terminal device before a second time slot allocation period begins; the second time slot allocation period being a time slot allocation period preceding the first time slot allocation period; wherein the second bandwidth requirement value is less than the third bandwidth requirement value and a difference between the second bandwidth requirement value and the third bandwidth requirement value is not less than a preset value, or the second bandwidth requirement value is greater than the third bandwidth requirement value and a difference between the second bandwidth requirement value and the third bandwidth requirement value is less than the preset value;
[0070] The transmission time slot occupied by the first user terminal equipment in each sub-period included in the second time slot allocation period is determined according to the third bandwidth requirement value.
[0071] In some embodiments, the processing unit is specifically configured to:
[0072] determining additional bandwidth required by the first user terminal device according to a difference between the first bandwidth requirement value and the second bandwidth requirement value;
[0073] Determining a portion of the bandwidth borne by each sub-cycle based on the number of sub-cycles included in the first time slot allocation cycle and the additional bandwidth;
[0074] Allocate additional time slots from the unoccupied time slots to the first user terminal device according to the portion of bandwidth undertaken by each sub-period and the bandwidth corresponding to each time slot in the unoccupied time slots.
[0075] In some embodiments, the processing unit is specifically configured to:
[0076] Obtaining a stored schedule of multiple time slot allocation cycles; wherein the schedule of each time slot allocation cycle includes a transmission time slot allocated to each user terminal device in each time slot allocation cycle;
[0077] Deleting expired schedules from the plurality of schedules, and determining among the remaining schedules that a schedule in the first time slot allocation period has an unoccupied time slot and a time interval between an end time of the first time slot allocation period and a time when the emergency bandwidth request is received is the shortest; wherein the expired schedule is a schedule that has been completely used;
[0078] Unoccupied time slots in each of the sub-cycles are obtained from the schedule of the first time slot allocation cycle.
[0079] In a fourth aspect, the present application proposes another time slot allocation device for an optical access network, wherein the device is a first user terminal device, or the device is applied to the first user terminal device, and the device includes:
[0080] a processing unit configured to, during data transmission within a first time slot allocation period, instruct the communication unit to send a first bandwidth requirement value to the central office device when it is determined that the allocated bandwidth is less than the bandwidth required for data transmission and the difference between the allocated bandwidth and the bandwidth required for data transmission is greater than a set threshold;
[0081] The communication unit is used to receive the updated transmission time slot sent by the central office device; the updated transmission time slot is determined by the central office device according to the first bandwidth requirement value and the unoccupied time slots in each sub-cycle included in the first time slot allocation cycle.
[0082] In some embodiments, before sending the first bandwidth requirement value, the communication unit is further configured to:
[0083] Before the first time slot allocation cycle begins, reporting a second bandwidth requirement value to the central office device; the second bandwidth requirement value is less than the first bandwidth requirement value, and the difference between the first bandwidth requirement value and the second bandwidth requirement value is not less than the preset value;
[0084] Receive the transmission time slot occupied by the first user terminal equipment in each sub-period included in the first time slot allocation period, which is sent by the central office equipment.
[0085] In some embodiments, the processing unit is further configured to:
[0086] Obtaining a third bandwidth requirement value reported at a second historical moment; the second moment is a moment before a second time slot allocation period begins, and the second time slot allocation period is a time slot allocation period before the first time slot allocation period;
[0087] Determine that the second bandwidth requirement value is less than the third bandwidth requirement value, and the difference between the second bandwidth requirement value and the third bandwidth requirement value is greater than a preset value; or,
[0088] It is determined that the second bandwidth requirement value is greater than the third bandwidth requirement value, and a difference between the second bandwidth requirement value and the third bandwidth requirement value is less than the preset value.
[0089] In a fifth aspect, the present application proposes a time slot allocation system for an optical access network, the system comprising a central office device and a plurality of user end devices,
[0090] a first user terminal device, configured to, during data transmission within a first time slot allocation period, send a first bandwidth requirement value to the central office device when determining that the allocated bandwidth is less than the bandwidth required for data transmission and the difference between the allocated bandwidth and the bandwidth required for data transmission is greater than a set threshold; wherein the first user terminal device is any one of the plurality of user terminal devices;
[0091] The central office device is configured to receive the first bandwidth requirement value, obtain unoccupied time slots in each sub-period included in the first time slot allocation period, update the transmission time slots occupied by the first user terminal device in each sub-period based on the first bandwidth requirement value and the unoccupied time slots, and send the updated transmission time slots to the first user terminal device;
[0092] The first user terminal device is further configured to receive the updated transmission time slot sent by the central office device.
[0093] In some embodiments, the first user terminal device is further configured to report a second bandwidth requirement value to the central office device before the first time slot allocation period begins; the second bandwidth requirement value is less than the first bandwidth requirement value, and the difference between the first bandwidth requirement value and the second bandwidth requirement value is not less than the preset value;
[0094] The central office device is further configured to determine, based on the second bandwidth requirement value, a transmission time slot occupied by the first user terminal device in each sub-period included in the first time slot allocation period, and send the determined transmission time slot to the first user terminal device;
[0095] The first user terminal device is further configured to receive, from the central office device, a transmission time slot occupied by the first user terminal device in each sub-period included in the first time slot allocation period.
[0096] In some embodiments, the central office device, when updating the transmission time slot occupied by the first user terminal device in each sub-period, is specifically configured to:
[0097] allocating an additional time slot for the first user terminal device from unoccupied time slots included in each sub-cycle according to a difference between the first bandwidth requirement value and the second bandwidth requirement value;
[0098] The transmission time slot occupied by the first user terminal equipment in each sub-period is updated according to the additional time slot.
[0099] In some embodiments, the central office device, when allocating an additional time slot to the first user terminal device from the unoccupied time slots included in each sub-cycle according to the difference between the first bandwidth requirement value and the second bandwidth requirement value, is specifically configured to:
[0100] determining additional bandwidth required by the first user terminal device according to a difference between the first bandwidth requirement value and the second bandwidth requirement value;
[0101] Determining a portion of the bandwidth borne by each sub-cycle based on the number of sub-cycles included in the first time slot allocation cycle and the additional bandwidth;
[0102] Allocate additional time slots from the unoccupied time slots to the first user terminal device according to the portion of bandwidth undertaken by each sub-period and the bandwidth corresponding to each time slot in the unoccupied time slots.
[0103] In some embodiments, the first user terminal device is further configured to report a third bandwidth requirement value to the central office device before a second time slot allocation period begins; the second time slot allocation period is a time slot allocation period preceding the first time slot allocation period; wherein the second bandwidth requirement value is less than the third bandwidth requirement value and the difference between the second bandwidth requirement value and the third bandwidth requirement value is not less than a preset value, or the second bandwidth requirement value is greater than the third bandwidth requirement value and the difference between the second bandwidth requirement value and the third bandwidth requirement value is less than the preset value;
[0104] The central office device is further configured to determine, based on the third bandwidth requirement value, a transmission time slot occupied by the first user terminal device in each sub-period included in the second time slot allocation period.
[0105] In a sixth aspect, an electronic device is provided, comprising a controller and a memory. The memory is configured to store computer-executable instructions, and the controller executes the computer-executable instructions in the memory to utilize hardware resources in the controller to perform the steps of any possible implementation of the method of the first aspect or the second aspect.
[0106] In a seventh aspect, a computer-readable storage medium is provided, in which instructions are stored. When the computer-readable storage medium is run on a computer, the computer executes the methods in the above aspects.
[0107] In an eighth aspect, a time slot allocation device for an optical access network is further provided, wherein the device is a central office device, or the device is applied to the central office device, and the device includes:
[0108] The communication unit is configured to receive a first bandwidth requirement value from a first user terminal device; the first bandwidth requirement value is sent by the first user terminal device when the first user terminal device determines that the allocated bandwidth is less than the bandwidth required for data transmission, and the difference between the allocated bandwidth and the bandwidth required for data transmission is greater than a set threshold; the first bandwidth requirement value is used to represent the size of the bandwidth required for data transmission;
[0109] a processing unit configured to obtain unoccupied time slots in each sub-period included in the first time slot allocation period, wherein the first time slot allocation period is a time slot allocation period during which the user terminal device currently transmits data; and further configured to update the transmission time slots occupied by the first user terminal device in each sub-period based on the first bandwidth requirement value and the unoccupied time slots; and
[0110] The communication unit is configured to send the updated transmission time slot to the first user terminal device.
[0111] Based on the above solution, the present application proposes that before the end of a time slot allocation cycle, if a user-end device increases the amount of data to be transmitted, it can request additional time slots from the central office device. Based on the user-end device's request, the central office device will determine the additional time slots to allocate to the user-end device from the unallocated time slots in the current time slot allocation cycle, so that the user-end device's transmission needs can be met within the current time slot allocation cycle. Compared to traditional solutions in which user-end devices need to wait for the next time slot allocation cycle to request more time slots, the solution of the present application can ensure that the user-end device's transmission needs are met in a timely manner, reducing the possibility of user-end device buffer overflow. BRIEF DESCRIPTION OF THE DRAWINGS
[0112] The drawings described herein are used to provide a further understanding of the present application and constitute a part of the present application. The illustrative embodiments of the present application and their descriptions are used to explain the present application and do not constitute an improper limitation on the present application. In the drawings:
[0113] FIG1 is a schematic diagram of the architecture of a traditional Ethernet all-optical network.
[0114] Figure 2 is a schematic diagram of the optical splitting system architecture based on the EPON chip.
[0115] FIG3 is a schematic diagram of the architecture of an optical splitting system implemented based on FPGA.
[0116] FIG4 is a schematic diagram of the architecture of a light splitting system provided in an embodiment of the present application.
[0117] FIG5 is a flow chart of a periodic time slot allocation method provided in an embodiment of the present application.
[0118] FIG6 is a schematic diagram of a time slot allocation cycle provided in an embodiment of the present application.
[0119] FIG7 is a schematic diagram of a sub-cycle provided in an embodiment of the present application.
[0120] FIG8 is a schematic diagram of a data transmission scenario provided by an embodiment of the present application.
[0121] FIG9 is a schematic diagram of a data transmission process provided by an embodiment of the present application.
[0122] FIG10 is a schematic diagram showing the time taken for a user terminal device to transmit data provided in an embodiment of the present application.
[0123] FIG11 is a schematic diagram of another process of transmitting data by a user terminal device provided in an embodiment of the present application.
[0124] FIG12 is a flow chart of a method for allocating time slots in an optical access network according to an embodiment of the present application.
[0125] FIG13 is a schematic diagram of an updated sub-cycle provided in an embodiment of the present application.
[0126] FIG14 is a schematic structural diagram of a time slot allocation device for an optical access network provided in an embodiment of the present application.
[0127] FIG15 is a schematic structural diagram of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0128] To make the purpose, technical solutions, and advantages of the embodiments of this application more clear, the technical solutions of this application will be clearly and completely described below in conjunction with the drawings in the embodiments of this application. Obviously, the described embodiments are part of the embodiments of the technical solutions of this application, but not all of them. Based on the embodiments described in this application document, all other embodiments obtained by ordinary technicians in this field without making creative efforts shall fall within the scope of protection of the technical solutions of this application.
[0129] The terms "first," "second," and the like in the description and claims of the present invention and the accompanying drawings are used to distinguish similar objects and are not necessarily used to describe a particular order or precedence. It should be understood that the terms used in this manner are interchangeable where appropriate, such that the embodiments of the present invention described herein can be practiced using orders other than those illustrated or described herein.
[0130] Traditional Ethernet all-optical networks cannot implement optical splitting. The central office equipment (also known as the OLT) and the user-end equipment (also known as the ONU) have a one-to-one relationship. Currently, there are two common optical splitting solutions on the market: one based on EPON or GPON, and the other involves programming field-programmable gate array (FPGA) chips to implement EPON or GPON protocols. The following describes these two common optical splitting solutions with reference to the accompanying figures.
[0131] Refer to Figure 2, which is a schematic diagram of the optical splitting system architecture based on EPON / GPON chips. As shown in Figure 2, in the optical splitting system, a central office device can connect to multiple user-end devices through the Optical Distribution Network (ODN), and the central office uses dynamic bandwidth allocation (DBA) to allocate bandwidth to multiple user-end devices. In the DBA method, bandwidth allocation is periodic. During each cycle, the central office device will allocate time slots for transmission to each user-end device based on the bandwidth requirements reported by the user-end device and the bandwidth configuration of each time slot, until the bandwidth requirements of all user-end devices are met. In the actual allocation process, the central office device divides a cycle into multiple time slots, each time slot corresponds to a fixed bandwidth value, and then allocates transmission time slots to each user end based on the bandwidth requirements of each user end. For example, when user terminal A reports its bandwidth requirements, it can determine the required bandwidth value based on the amount of data it needs to transmit. For example, if user terminal A determines that it generates 100 bits of data per second during operation, it can request 100 bits / second (bit / s) of bandwidth from the central office to transmit its data. Furthermore, when the central office device receives a bandwidth requirement of 100 bits / s from user terminal A, it can obtain the bandwidth corresponding to each time slot configured for it. For example, if the bandwidth of each time slot is 10 bits / s, it can allocate 10 time slots to user terminal A for data transmission. This method can allocate different transmission time slots to each user terminal device, ensuring that each user terminal device can transmit data in its own time slot without conflict.
[0132] However, because the central office allocates transmission time slots to each user-end device based on the bandwidth requirements reported by each user-end device, when a user-end device needs to transmit a large amount of data, the central office allocates more time slots to it, resulting in a longer time slot allocation period and, in turn, longer data transmission delays for other user-end devices. This long delay can cause the traffic of other user-end devices during this extended time slot allocation period to exceed their own buffer capacity, leading to buffer overflows on the user-end devices. Furthermore, this extended time slot allocation period can also result in the bandwidth requirements of some user-end devices with rapidly increasing amounts of data to be transmitted not being met, exacerbating the buffer overflow problem on the user-end devices. As can be seen, when an ONU transmits a large amount of data and occupies a large number of time slots, the time slot allocation period becomes longer, leading to longer data transmission delays for other ONUs. This long delay can cause the traffic of other user-end devices during this extended time slot allocation period to exceed their own buffer capacity, leading to buffer overflows on the user-end devices.
[0133] Furthermore, in scenarios where new user-end devices are online, an excessively long timeslot allocation cycle can also make it difficult for new user-end devices to come online. In known EPON / GPON optical splitting solutions, the central office device broadcasts a gate message at the end of each timeslot allocation cycle. Upon receiving the gate message, the new user-end device sends its own Media Access Control (MAC) address and other information to the central office device. The central office device then registers the new user-end device based on the received information, completing the online process for the new user-end device. However, if the timeslot allocation cycle is too long, the central office device will be unable to broadcast the gate message in a timely manner. Consequently, it will be unable to detect new user-end devices waiting to come online in a timely manner, making it difficult for new user-end devices to come online.
[0134] EPON also uses the 8-byte / 10-byte (8B / 10B) encoding standard, which means that data is encoded in 8-bit units to produce 10-bit data. The original 8-bit data is converted to 10 bits after encoding. Therefore, the encoding process requires 20% of the bandwidth to be used for fixed encoding overhead, resulting in bandwidth loss.
[0135] See Figure 3 for a schematic diagram of the architecture of an FPGA-based optical splitting system. This solution is implemented by the FPGA's hardware support layer and the embedded processor within the chip. It requires the physical layer network interface card chip to support the optical splitting protocol and is a MAC layer technology. In this solution, bandwidth allocation is also performed periodically. However, unlike the periodic reservation-based bandwidth allocation scheme implemented by the aforementioned EPON chip, the FPGA chip calculates uplink traffic volume from the previous cycle and uses a proportional weighted algorithm and bandwidth utilization adjustment algorithm to allocate bandwidth for the next cycle. While this solution avoids the drawbacks of the EPON chip's irregular bandwidth allocation scheme, the traffic volume from the previous cycle has a lag and is affected by the previous bandwidth allocation strategy. Therefore, the traffic volume from the previous cycle does not truly reflect the device's uplink traffic demand. Therefore, using the traffic volume from the previous cycle as a benchmark to determine the bandwidth allocation strategy for the next cycle is not accurate.
[0136] In summary, traditional optical splitting solutions still have significant drawbacks when it comes to allocating bandwidth to user-end devices. Implementing an optical splitting solution requires deploying EPON chips, GPON chips, or FPGA chips, but this incurs significant costs. Therefore, a new optical splitting solution suitable for traditional Ethernet chips is urgently needed.
[0137] The embodiment of the present application proposes a time slot allocation scheme for an optical access network, which uses time division multiplexing to allocate respective transmission time slots to multiple user-end devices. The scheme proposed in the present application is applied to traditional Ethernet chips that use light as the transmission medium, and realizes stable and efficient data transmission of each user-end device through Ethernet Layer 2 protocol message control. In the scheme of the present application, before the end of a time slot allocation cycle, if the amount of data transmitted by a certain user-end device increases, it can request additional time slots from the central office device. The central office device will determine the additional time slots allocated to the user-end device from the unallocated time slots in the current time slot allocation cycle based on the request of the user-end device, so that the transmission requirements of the user-end device can be met within the current time slot allocation cycle. Compared with the traditional scheme in which the user-end device needs to wait for the next time slot allocation cycle to request more time slots, the scheme of the present application can enable the transmission requirements of the user-end device to be met in a timely manner, reducing the situation of user-end device buffer overflow.
[0138] To facilitate understanding of the time slot allocation scheme proposed in this application, the following first introduces the optical splitting system applicable to the scheme. See Figure 4 for a schematic diagram of the architecture of an optical splitting system provided in an embodiment of the present application. As shown in Figure 4, the optical splitting system applicable to the embodiment of the present application includes an Ethernet central office device, multiple Ethernet client devices, and an optical network (ODN). The Ethernet central office device is connected to multiple Ethernet client devices via the ODN. The ODN primarily consists of three components: a light source, optical fiber, and an optical signal receiver. The light source, which can be a laser, generates optical signals, which are transmitted via optical fiber to the Ethernet central office device or multiple Ethernet client devices. The optical signal receiver is used to receive optical signals from the Ethernet central office device or Ethernet client devices. The Ethernet central office device is used to connect to the optical fiber trunk line and serves as an Ethernet entrance and exit point. The Ethernet central office device is used to perform functions such as traffic scheduling and bandwidth allocation. Simply put, the Ethernet central office device is used to provide external Ethernet access and transmit acquired data to multiple downstream Ethernet client devices via the ODN. The Ethernet client devices are used to receive data from the Ethernet central office device and return corresponding responses.
[0139] It should be noted that the optical splitting system shown in FIG4 is merely an example, and the present embodiment does not limit the number of Ethernet client devices included in the optical splitting system. For ease of description, the Ethernet central office device included in FIG4 will be referred to as the central office device, and the Ethernet client device will be referred to as the client device.
[0140] Below, the solution of the present application is specifically introduced in conjunction with the optical splitting system shown in Figure 4. In order to facilitate understanding of the solution proposed in the embodiment of the present application for updating the transmission time slots occupied by the user-end device in the current time slot allocation period according to the bandwidth demand reported by the user-end device before the end of the time slot allocation period, the periodic time slot allocation solution is first introduced. See Figure 5, which is a flow chart of a periodic time slot allocation method provided in the embodiment of the present application. For example, the method flow shown in Figure 5 can be executed by the local end device included in the optical splitting system shown in Figure 4, or it can also be executed by specific components such as the processor, Ethernet chip included in the local end device, and the embodiment of the present application does not limit this. The method flow shown in Figure 5 specifically includes:
[0141] 501 : Receive bandwidth requirement values respectively sent by multiple user equipment before the start of time slot allocation period A.
[0142] The central office device is connected to multiple user end devices via the ODN. The time slot allocation period A is any one of multiple time slot allocation periods set by the central office device, and the duration of each time slot allocation period is equal.
[0143] Optionally, multiple user-end devices connected to the central office device can report their own bandwidth demand values before the start of each time slot allocation cycle. For example, each user-end device can report its bandwidth demand value to the central office in the transmission time slot occupied in the previous time slot allocation cycle of time slot allocation cycle A. Here, the previous time slot allocation cycle of time slot allocation cycle A is defined as time slot allocation cycle B. The first user-end device is allocated three time slots for data transmission in time slot allocation cycle B, namely time slot 1, time slot 2, and time slot 3. In one optional manner, the first user-end device can report its own bandwidth demand value in any of these three time slots, so that the central office can allocate a transmission time slot in time slot allocation cycle A to the first user-end device. In another optional manner, the first user-end device can report its own bandwidth demand value in the last time slot of the three time slots: time slot 1, time slot 2, and time slot 3. This avoids the problem of the first user-end device needing to re-report its bandwidth demand value due to the amount of data to be transmitted changing after reporting in an earlier time slot.
[0144] 502 , determining the transmission time slots occupied by each user terminal device in the time slot allocation period A according to the bandwidth demand value and the bandwidth corresponding to each time slot included in each sub-period in the time slot allocation period A.
[0145] Determining the sub-period occupied by each user terminal device within the time slot allocation period A refers to the transmission time slots occupied by each user terminal device within each sub-period included in the time slot allocation period A, where each sub-period includes the transmission time slot allocated to each user terminal device. It should be noted that the embodiments of the present application do not limit the number of sub-periods included in each time slot allocation period.
[0146] As an example, see Figure 6, which is a schematic diagram of a timeslot allocation cycle provided by an embodiment of the present application. This includes a discovery authorization time and N sub-cycles. The discovery authorization time is used by the central office device to register newly online user-end devices. Furthermore, see Figure 7, which is a schematic diagram of a sub-cycle provided by an embodiment of the present application, including the transmission timeslots allocated by the central office device to each user-end device, as well as the remaining timeslots after allocation. Thus, any user-end device can transmit data N times within a timeslot allocation cycle, avoiding data congestion while not affecting the data transmission of other user-end devices.
[0147] Exemplarily, taking the first user-end device among multiple user-end devices as an example, the process of the central office device periodically allocating transmission time slots to the first user-end device is introduced. The central office device can determine the portion of bandwidth that each sub-period needs to bear based on the bandwidth demand of the first user-end device and the number of sub-periods included in the time slot allocation period to be allocated. For example, the bandwidth demand of the first user-end device is 100 bit / s, and the time slot allocation period to be allocated includes 10 sub-periods, then each sub-period will bear a bandwidth demand of 10 bit / s. Furthermore, the central office device can determine the transmission time slot occupied by the first user-end device in each sub-period based on the bandwidth corresponding to the time slot included in each sub-period and the portion of bandwidth borne by each sub-period. For example, taking the first sub-period of a time slot allocation cycle as an example, the first sub-period includes ten time slots, from time slot A to time slot J. The bandwidth of each time slot is 10 bits / s, and the bandwidth occupied by the first sub-period is 10 bits / s. Therefore, the central office device can allocate one time slot from time slot A to time slot J to the first user terminal device as the first user terminal's transmission time slot, which is used for data transmission by the first user terminal device. Similarly, the transmission time slots occupied by the first user terminal device in each sub-period will be determined according to the above method in other sub-periods. The transmission time slots occupied by the first user terminal device in multiple sub-periods can meet the data transmission needs of the first user terminal device.
[0148] 503 , broadcast the determined transmission time slots occupied by each user terminal device in the time slot allocation period A.
[0149] Compared to traditional EPON / GPON optical splitting solutions that adjust the time slot allocation cycle based on the bandwidth requirements of the user-end device, this application sets a fixed-length time slot allocation cycle as the time slot allocation cycle. This avoids the problem of a time slot allocation cycle being too long due to the large bandwidth requirements of a certain user-end device, which in turn leads to large data transmission delays for other user-end devices and device buffer overflows. At the same time, it also avoids the problem of excessively long time slot allocation cycles causing difficulties in bringing new user-end devices online. In addition, the solution of this application also sets a time slot allocation cycle that includes multiple sub-cycles, and allocates time slots to each user-end device within the sub-cycle, so that the delay in data transmission by each user-end device is controlled within the length of a sub-cycle, further ensuring the real-time nature of data transmission.
[0150] In some embodiments, when determining the transmission time slots for each user-end device within each sub-cycle, the central office device may first determine the start transmission time of each user-end device based on the distance between the user-end device and the central office device. The number of time slots required for each user-end device is further determined based on the bandwidth requirement of each user-end device. Furthermore, the specific time slots to be occupied by each user-end device within each sub-cycle are determined based on the determined number of time slots and the start transmission time. The following describes the process of calculating transmission time slots by the central office device using a specific example.
[0151] See Figure 8, which is a schematic diagram of a data transmission scenario provided by an embodiment of the present application. In Figure 8, taking four user-end devices, user-end device A to user-end device D, as an example, each user-end device transmits data to the central office device through the ODN. The length of the connecting line in Figure 8 represents the distance between each user-end device and the ODN. It can be seen that user-end device A is closest to the central office device, followed by user-end device D, then user-end device B, and the farthest distance is user-end device C. The central office device can first determine the priority of each user-end device for transmitting data based on the distance between each user-end device. For example, in the scenario shown in Figure 8, the priority order is: user-end device A>user-end device D>user-end device B>user-end device C. Therefore, each user-end device can perform data transmission according to this priority order. See Figure 9, which is a schematic diagram of a data transmission process provided by an embodiment of the present application. In Figure 9, the data of user-end device A is first sent to the central office device through the ODN, followed by the data of user-end device D, then the data of user-end device B, and finally the data of user-end device C.
[0152] Optionally, each user-end device can transmit according to the data transmission sequence shown in Figure 9, or the compensation time for each user-end device can be calculated based on the optical path difference between adjacent user-end devices, thereby further improving data transmission efficiency. For example, continuing with the example of Figures 8 and 9 above, during data transmission by user-end device A, before the last message sent reaches the central office device, user-end device D can start sending data without waiting for all messages from user-end device A to arrive at the central office device before starting to send. This early start time is the compensation time for user-end device D. Optionally, the compensation time can also be called the transmission offset time, which is used to represent the time by which the user-end device's initial transmission moment is advanced.
[0153] As an optional solution, when determining the compensation time of each user-end device, the time required for each user-end device to send data to the central office device can be first determined based on the distance between each user-end device and the central office device. For example, see Figure 10, which is a schematic diagram of the time consumption of a user-end device transmitting data provided in an embodiment of the present application. In Figure 10, the time required for user-end device A to transmit data to the central office device is RTT1, and the time required for user-end device D to transmit data to the central office device is RTT4, so the compensation time of user-end device D is: (RTT4-RTT1). Thus, the central office device can determine the starting sending time of each user-end device based on the predetermined transmission order and compensation time of each user-end device, and determine the transmission time slot of each user-end device based on the starting sending time and the number of time slots of each user-end device. See Figure 11, which is another schematic diagram of the process of user-end device transmitting data provided in an embodiment of the present application.
[0154] In some scenarios, when a user-end device periodically reports bandwidth demand values to a central office device, it may use the time slot allocation period as the reporting interval. Alternatively, in some embodiments, the time interval for each user-end device to report bandwidth demand values may be dynamically adjusted. For example, when bandwidth demand does not change significantly, bandwidth demand may be reported at intervals of multiple time slot allocation periods to reduce the computing resources consumed by the central office device to calculate the time slot allocation schedule. The following describes the proposed method for dynamically adjusting the time interval for reporting bandwidth demand values, using the first user-end device among multiple user-end devices as an example.
[0155] In one possible case, when the bandwidth requirement value to be reported in the current time slot allocation period is less than the bandwidth requirement value reported in the previous time slot allocation period, the first user terminal device may report the bandwidth requirement value to the central office device before the current time slot allocation period starts.
[0156] In another possible scenario, the bandwidth requirement value to be reported in the current time slot allocation period is greater than the bandwidth requirement value reported in the previous time slot allocation period, but the difference between the two is less than a preset value. This situation indicates that the bandwidth requirement of the first user terminal device has increased, but the degree of change is small. Therefore, the present application proposes that in this situation, the first user terminal device can report the bandwidth requirement value to the central office device before the start of the current time slot allocation period.
[0157] That is, if the first user terminal device determines that the bandwidth requirement value to be reported this time is the same as the bandwidth requirement value reported last time, the bandwidth requirement value may not be reported this time.
[0158] In some embodiments, when the first user terminal device is transmitting data within a certain time slot allocation period (such as the first time slot allocation period), it is determined that the currently occupied transmission time slot cannot meet the data transmission demand, and the difference between the allocated bandwidth and the required bandwidth is large. In this embodiment of the present application, it is proposed that the first terminal device can directly send an emergency bandwidth allocation request to the central office device when it is determined that the bandwidth demand has increased suddenly. The emergency bandwidth allocation request carries the bandwidth demand value of the first user terminal device when the bandwidth demand has increased suddenly, as well as the emergency identifier. After receiving the emergency bandwidth allocation request, the central office device can determine that it is necessary to immediately allocate the required bandwidth to the first user terminal and device based on the emergency identifier, and reallocate the transmission time slot to the first user terminal device based on the unallocated time slots in the stored time slot allocation schedule, and update the schedule and reissue it. Below, based on the periodic time slot allocation scheme introduced in the above embodiments, the time slot allocation scheme proposed in this application is introduced in detail. See Figure 12, which is a flow chart of a time slot allocation method for an optical access network proposed in this application, specifically including:
[0159] 1201. A central office device receives a first bandwidth requirement value from a first user terminal device.
[0160] The first bandwidth requirement value is sent by the first user terminal device when it determines that the allocated bandwidth is less than the bandwidth required for data transmission, and the difference between the allocated bandwidth and the bandwidth required for data transmission is greater than a set threshold.
[0161] Optionally, the first bandwidth demand value may be carried in an emergency bandwidth request for transmission, and the emergency bandwidth request may also include an emergency identifier. Exemplarily, the emergency identifier may be a characteristic field carried in the emergency bandwidth request message, used to indicate that the data transmission bandwidth demand of the first user terminal device has suddenly increased, requiring additional bandwidth. The first bandwidth demand value is the bandwidth value required by the first user terminal device after the data transmission bandwidth demand has suddenly increased. The first user terminal device is any one of a plurality of user terminal devices connected to the central office device via the ODN. The first time slot allocation period may be any one of a plurality of preset time slot allocation periods of equal duration.
[0162] According to the solutions described in the above embodiments, during the first time slot allocation period, each user-end device will use the transmission time slots allocated by the central office device prior to the start of the first time slot allocation period for data transmission. Therefore, when the first user-end device determines that the difference between the occupied bandwidth and the actual bandwidth required for data transmission is greater than a preset threshold during data transmission using the transmission time slots allocated by the central office device, it can send a first bandwidth requirement value to the central office device. For example, the first user-end device can determine the first bandwidth requirement value based on the amount of cached data when the amount of cached data reaches a threshold.
[0163] 1202. The central office device obtains unoccupied time slots in each sub-period included in the first time slot allocation period.
[0164] Optionally, if there are no unoccupied time slots within each sub-period included in the first time slot allocation period, or if the bandwidth of the unoccupied time slots included in the first time slot allocation period cannot meet the first bandwidth requirement, the central office device may further obtain unoccupied time slots from the time slot allocation period following the first time slot allocation period. Exemplarily, after determining the time slot allocation schedule for each time slot allocation period, the central office device may store the determined schedule. The schedule for any time slot allocation period includes the transmission time slots allocated to each user-end device within that time slot period, as well as the remaining time slots. Optionally, the central office device may mark time slot allocation schedules that have been used by the user-end device as expired, and may then delete the expired schedules. For example, after determining the schedule for time slot allocation period A, the central office device may store the schedule for time slot allocation period A and mark the schedule for time slot allocation period A as expired after time slot allocation period A ends. Optionally, the central office device may also periodically delete time slot allocation schedules marked as expired from the storage space.
[0165] Furthermore, when obtaining unoccupied time slots included in the first time slot allocation period, the central office device may first determine, from among the plurality of stored, unexpired schedules, whether there are unoccupied time slots in the schedule for the first time slot allocation period, and determine which of the first time slot allocation periods is closest to the current time. Furthermore, the central office device may obtain unoccupied time slots within each sub-period of the schedule for the first time slot allocation period.
[0166] 1203. The central office device updates the transmission time slots occupied by the first user terminal device in the first time slot allocation period according to the first bandwidth requirement value and the unoccupied time slots included in the first time slot allocation period.
[0167] Exemplarily, the central office device can determine the additional bandwidth required by the first user terminal device based on the bandwidth demand value last reported by the first user terminal device and the first bandwidth demand value. Further, the central office device can determine the additional transmission time slots that need to be allocated to the first user terminal device from the unoccupied time slots included in the first time slot allocation cycle, thereby updating the transmission time slots occupied by the first user terminal device in the first time slot allocation cycle.
[0168] It should be noted that the central office device determines the additional transmission time slots to be allocated to the first user terminal device from the unoccupied time slots included in the first time slot allocation period. That is, the central office device determines the additional transmission time slots to be allocated to the first user terminal device from the unoccupied time slots in each sub-period included in the first time slot allocation period. For example, see Figure 13, which is a schematic diagram of an updated sub-period.
[0169] 1204. The central office device sends the updated transmission time slot to the first user terminal device to instruct the first user terminal device to use the updated transmission time slot for data transmission within the first time slot allocation period.
[0170] Exemplarily, the updated transmission time slot is used to indicate the transmission time slot of the first user terminal device after the current moment. For example, taking the time slot allocation period shown in FIG6 as an example, if the first bandwidth requirement value sent by the first user terminal device in sub-period M, it means that the first user terminal device uses the pre-updated transmission time slot for data transmission in sub-periods 1 to M. The updated transmission time slot sent by the central office device is used for data transmission by the first user terminal device in sub-period (M+1) to N.
[0171] Based on the above scheme, an embodiment of the present application proposes that before the end of a time slot allocation cycle, if a user-end device increases its data transmission volume, it can request additional time slots from the central office device. Based on the user-end device's request, the central office device determines the additional time slots to allocate to the user-end device from among the unallocated time slots in the current time slot allocation cycle, ensuring that the user-end device's transmission needs are met within the current time slot allocation cycle. Compared to traditional schemes in which user-end devices must wait until the next time slot allocation cycle to request more time slots, the scheme of the present application ensures that the user-end device's transmission needs are met promptly, reducing the risk of user-end device buffer overflows.
[0172] Exemplarily, when executing step 1203 above, the central office device may first obtain a second bandwidth requirement value sent by the first user terminal device before the start of the first time slot allocation cycle. The second bandwidth requirement value is used by the central office device to allocate transmission time slots within the first time slot allocation cycle to the first user terminal device. Furthermore, the central office device may determine the additional bandwidth required by the first user terminal device based on the difference between the first bandwidth requirement value and the second bandwidth requirement value. Thus, the central office device may determine the portion of the additional bandwidth required for each sub-cycle based on the number of sub-cycles included in the first time slot allocation cycle. Furthermore, the central office device may allocate additional transmission time slots to the first user terminal device from unoccupied time slots in each sub-cycle based on the bandwidth values corresponding to the time slots included in each sub-cycle and the portion of bandwidth required. The additional transmission time slots and the transmission time slots allocated by the central office device to the first user terminal device before the start of the first time slot allocation cycle may constitute the updated transmission time slots of the first user terminal device.
[0173] Based on the same concept as the above-mentioned method, FIG14 is a schematic diagram of the structure of a time slot allocation device 1400 provided in an embodiment of the present application. Device 1400 is used to implement each step of the above-mentioned method. To avoid repetition, the following description is omitted here. Device 1400 includes: a communication unit 1410 and a processing unit 1420.
[0174] In one possible scenario:
[0175] Communication unit 1410 is configured to receive a first bandwidth requirement value sent by a first user terminal device before the end of a first time slot allocation period; the first bandwidth requirement value is sent by the first user terminal device when the first user terminal device determines that the allocated bandwidth is less than the bandwidth required for data transmission, and the difference between the allocated bandwidth and the bandwidth required for data transmission is greater than a set threshold;
[0176] The processing unit 1420 is configured to obtain unoccupied time slots in each sub-cycle included in the first time slot allocation cycle;
[0177] The processing unit 1420 is further configured to update the transmission time slot occupied by the first user terminal device in each sub-cycle according to the first bandwidth requirement value and the unoccupied time slot;
[0178] The communication unit 1410 is further configured to send the updated transmission time slot to the first user terminal device.
[0179] In some embodiments, the processing unit 1420 is specifically configured to:
[0180] Obtaining a second bandwidth requirement value reported by the first user terminal device at a first historical moment; the first moment being a moment before the start of a first time slot allocation period; the second bandwidth requirement value being used to determine a transmission time slot occupied by the first user terminal device in each sub-period included in the first time slot allocation period; the second bandwidth requirement value being less than the first bandwidth requirement value, and the difference between the first bandwidth requirement value and the second bandwidth requirement value being no less than a preset value;
[0181] allocating an additional time slot for the first user terminal device from unoccupied time slots included in each sub-cycle according to a difference between the first bandwidth requirement value and the second bandwidth requirement value;
[0182] The transmission time slot occupied by the first user terminal equipment in each sub-period is updated according to the additional time slot.
[0183] In some embodiments, before obtaining the second bandwidth requirement value, the processing unit 1420 is further configured to:
[0184] receiving, through the communication unit 1410, a third bandwidth requirement value reported by the first user terminal device before a second time slot allocation period begins, wherein the second time slot allocation period is a time slot allocation period preceding the first time slot allocation period, wherein the second bandwidth requirement value is less than the third bandwidth requirement value and a difference between the second bandwidth requirement value and the third bandwidth requirement value is not less than a preset value, or the second bandwidth requirement value is greater than the third bandwidth requirement value and a difference between the second bandwidth requirement value and the third bandwidth requirement value is less than the preset value;
[0185] The transmission time slot occupied by the first user terminal equipment in each sub-period included in the second time slot allocation period is determined according to the third bandwidth requirement value.
[0186] In some embodiments, the processing unit 1420 is specifically configured to:
[0187] determining additional bandwidth required by the first user terminal device according to a difference between the first bandwidth requirement value and the second bandwidth requirement value;
[0188] Determining a portion of the bandwidth borne by each sub-cycle based on the number of sub-cycles included in the first time slot allocation cycle and the additional bandwidth;
[0189] Allocate additional time slots from the unoccupied time slots to the first user terminal device according to the portion of bandwidth undertaken by each sub-period and the bandwidth corresponding to each time slot in the unoccupied time slots.
[0190] In some embodiments, the processing unit 1420 is specifically configured to:
[0191] Obtaining a stored schedule of multiple time slot allocation cycles; wherein the schedule of each time slot allocation cycle includes a transmission time slot allocated to each user terminal device in each time slot allocation cycle;
[0192] Deleting expired schedules from the plurality of schedules, and determining among the remaining schedules that a schedule in the first time slot allocation period has an unoccupied time slot and a time interval between an end time of the first time slot allocation period and a time when the emergency bandwidth request is received is the shortest; wherein the expired schedule is a schedule that has been completely used;
[0193] Unoccupied time slots in each of the sub-cycles are obtained from the schedule of the first time slot allocation cycle.
[0194] In another possible scenario:
[0195] The processing unit 1420 is configured to, during data transmission in the first time slot allocation period, instruct the communication unit 1410 to send a first bandwidth requirement value to the central office device when it is determined that the allocated bandwidth is less than the bandwidth required for data transmission and the difference between the allocated bandwidth and the bandwidth required for data transmission is greater than a set threshold;
[0196] The communication unit 1410 is used to receive the updated transmission time slot sent by the central office device; the updated transmission time slot is determined by the central office device based on the first bandwidth requirement value and the unoccupied time slots in each sub-cycle included in the first time slot allocation cycle.
[0197] In some embodiments, before sending the first bandwidth requirement value, the communication unit 1410 is further configured to:
[0198] Before the first time slot allocation cycle begins, reporting a second bandwidth requirement value to the central office device; the second bandwidth requirement value is less than the first bandwidth requirement value, and the difference between the first bandwidth requirement value and the second bandwidth requirement value is not less than the preset value;
[0199] Receive the transmission time slot occupied by the first user terminal equipment in each sub-period included in the first time slot allocation period, which is sent by the central office equipment.
[0200] In some embodiments, the processing unit 1420 is further configured to:
[0201] Obtaining a third bandwidth requirement value reported at a second historical moment; the second moment is a moment before a second time slot allocation period begins, and the second time slot allocation period is a time slot allocation period before the first time slot allocation period;
[0202] Determine that the second bandwidth requirement value is less than the third bandwidth requirement value, and the difference between the second bandwidth requirement value and the third bandwidth requirement value is greater than a preset value; or,
[0203] It is determined that the second bandwidth requirement value is greater than the third bandwidth requirement value, and a difference between the second bandwidth requirement value and the third bandwidth requirement value is less than the preset value.
[0204] Figure 15 shows a schematic diagram of the structure of an electronic device 1500 provided in an embodiment of the present application. The electronic device 1500 in the embodiment of the present application may further include a communication interface 1503, such as a network port, through which the electronic device can transmit data. For example, the communication interface 1503 can implement the functions of the communication unit 1410 described in the above embodiment.
[0205] In an embodiment of the present application, the memory 1502 stores instructions that can be executed by at least one controller 1501. At least one controller 1501 can be used to execute the various steps in the above method by executing the instructions stored in the memory 1502. For example, the controller 1501 can implement the functions of the processing unit 1420 in the above Figure 14.
[0206] Controller 1501 is the control center of the electronic device, connecting various parts of the entire electronic device using various interfaces and lines, and running or executing instructions stored in memory 1502 and accessing data stored in memory 1502. Optionally, controller 1501 may include one or more processing units. Controller 1501 may integrate an application controller and a modem controller, wherein the application controller primarily processes the operating system and application programs, and the modem controller primarily processes wireless communications. It is understood that the modem controller may not be integrated into controller 1501. In some embodiments, controller 1501 and memory 1502 may be implemented on the same chip. In some embodiments, they may also be implemented on separate chips.
[0207] The controller 1501 can be a general controller, such as a central processing unit (CPU), a digital signal controller, an application-specific integrated circuit, a field programmable gate array or other programmable logic device, a discrete gate or transistor logic device, or a discrete hardware component, and can implement or execute the various methods, steps, and logic block diagrams disclosed in the embodiments of the present application. The general controller can be a microcontroller or any conventional controller, etc. The step of adjusting the bandwidth of the data transmission channel during data transmission disclosed in the embodiments of the present application can be directly executed by the hardware controller, or can be executed by a combination of hardware and software modules in the controller.
[0208] The memory 1502 is a non-volatile computer-readable storage medium that can be used to store non-volatile software programs, non-volatile computer executable programs and modules. The memory 1502 may include at least one type of storage medium, such as a flash memory, a hard disk, a multimedia card, a card-type memory, a random access memory (English: Random Access Memory, referred to as RAM), a static random access memory (English: Static Random Access Memory, referred to as SRAM), a programmable read-only memory (English: Programmable Read Only Memory, referred to as PROM), a read-only memory (English: Read Only Memory, referred to as ROM), an electrically erasable programmable read-only memory (English: Electrically Erasable Programmable Read-Only Memory, referred to as EEPROM), a magnetic memory, a disk, an optical disk, etc. The memory 1502 is any other medium that can be used to carry or store a desired program code in the form of an instruction or data structure and can be accessed by a computer, but is not limited thereto. The memory 1502 in the embodiment of the present application can also be a circuit or any other device that can realize a storage function, for storing program instructions and / or data.
[0209] By designing and programming the controller 1501, for example, the code corresponding to the time slot allocation method introduced in the aforementioned embodiment can be solidified into the chip, so that the chip can execute the steps of the aforementioned method during operation. How to design and program the controller 1501 is a technology well known to those skilled in the art and will not be repeated here.
[0210] Those skilled in the art will appreciate that the embodiments of the present application can be provided as methods, systems, or computer program products. Therefore, the present application can adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment in combination with software and hardware. Moreover, the present application can adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to magnetic disk storage, CD-ROM, optical storage, etc.) that contain computer-usable program code.
[0211] The present application is described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the present application. It should be understood that each flow process and / or box in the flow chart and / or block diagram, as well as the combination of the flow processes and / or boxes in the flow chart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a controller of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the controller of the computer or other programmable data processing device produce a device for implementing the function specified in one or more flow processes in the flow chart and / or one or more boxes in the block diagram.
[0212] These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce a manufactured product including an instruction device that implements the functions specified in one or more processes in the flowchart and / or one or more boxes in the block diagram.
[0213] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, whereby the instructions executed on the computer or other programmable device provide steps for implementing the functions specified in one or more processes in the flowchart and / or one or more boxes in the block diagram.
[0214] Although the preferred embodiments of the present application have been described, those skilled in the art may make additional changes and modifications to these embodiments once they have learned the basic creative concept. Therefore, the appended claims are intended to be interpreted as including the preferred embodiments and all changes and modifications that fall within the scope of the present application.
[0215] Obviously, those skilled in the art may make various changes and modifications to this application without departing from the spirit and scope of this application. Thus, if these modifications and variations of this application fall within the scope of the claims of this application and their equivalents, this application is intended to include these modifications and variations.
Claims
1. A time slot allocation method for an optical access network, the method being applied to a central office device, the method comprising: Receiving a first bandwidth requirement value from a first user terminal device; The first bandwidth requirement value is sent by the first user terminal device when it is determined that the allocated bandwidth is less than the bandwidth required for data transmission, and the difference between the allocated bandwidth and the bandwidth required for data transmission is greater than a set threshold; the first bandwidth requirement value is used to represent the size of the bandwidth required for data transmission; Acquire unoccupied time slots in each sub-period included in a first time slot allocation period; the first time slot allocation period is a time slot allocation period for the user terminal device to currently transmit data; updating the transmission time slot occupied by the first user terminal device in each sub-period according to the first bandwidth requirement value and the unoccupied time slot; and Sending the updated transmission time slot to the first user terminal equipment.
2. The method according to claim 1, wherein: The updating, according to the first bandwidth requirement value and the unoccupied time slot, of the transmission time slot occupied by the first user terminal device in each sub-period includes: Obtaining a second bandwidth requirement value reported by the first user terminal device at a first moment; the first moment is a moment before the start of a first time slot allocation cycle; the second bandwidth requirement value is used to determine a transmission time slot occupied by the first user terminal device in each sub-period included in the first time slot allocation cycle; the second bandwidth requirement value is less than the first bandwidth requirement value, and the difference between the first bandwidth requirement value and the second bandwidth requirement value is not less than the set threshold; Allocating an additional time slot for the first user terminal device from unoccupied time slots included in each sub-period according to a difference between the first bandwidth requirement value and the second bandwidth requirement value; and The transmission time slot occupied by the first user terminal equipment in each sub-period is updated according to the additional time slot.
3. The method according to claim 2, wherein: Before obtaining the second bandwidth requirement value, the method further includes: Receive a third bandwidth requirement value reported by the first user terminal device before the start of a second time slot allocation period; the second time slot allocation period is a time slot allocation period before the first time slot allocation period; wherein the second bandwidth requirement value is less than the third bandwidth requirement value and the difference between the second bandwidth requirement value and the third bandwidth requirement value is greater than or equal to a preset value, or the second bandwidth requirement value is greater than the third bandwidth requirement value and the difference between the second bandwidth requirement value and the third bandwidth requirement value is less than the preset value; The transmission time slot occupied by the first user terminal equipment in each sub-period included in the second time slot allocation period is determined according to the third bandwidth requirement value.
4. The method according to claim 2 or 3, wherein: The allocating an additional time slot for the first user terminal device from the unoccupied time slots included in each sub-period according to the difference between the first bandwidth requirement value and the second bandwidth requirement value comprises: Determining additional bandwidth required by the first user terminal device according to a difference between the first bandwidth requirement value and the second bandwidth requirement value; Determine the portion of bandwidth borne by each sub-period in combination with the number of sub-periods included in the first time slot allocation period and the additional bandwidth; and According to the portion of bandwidth undertaken by each sub-period and the bandwidth corresponding to each time slot in the unoccupied time slots, additional time slots are allocated to the first user terminal device from the unoccupied time slots.
5. The method according to any one of claims 1 to 3, wherein: The obtaining of unoccupied time slots in each sub-period included in the first time slot allocation period comprises: Acquire a stored schedule of multiple time slot allocation cycles; wherein each of the time slot allocation cycle schedules includes a transmission time slot allocated to each user terminal device in each time slot allocation cycle; Deleting expired schedules from the plurality of schedules, and determining that a schedule of the first time slot allocation period in the remaining schedules has unoccupied time slots, and the interval between the end time of the first time slot allocation cycle and the time when the first bandwidth requirement value is received is less than a preset interval; wherein the expired schedule is a schedule that has been used up; and The unoccupied time slots in each of the sub-cycles are obtained from the schedule of the first time slot allocation cycle.
6. The method according to claim 5, wherein: The interval between the end time of the first time slot allocation cycle and the time of receiving the first bandwidth requirement value is the shortest.
7. The method according to claim 1, wherein: The duration of each time slot allocation cycle is fixed.
8. The method according to claim 1, wherein: Each sub-cycle includes a transmission time slot allocated to each user terminal device.
9. The method according to claim 8, wherein: The transmission time slot allocated to each user terminal device in each sub-period is determined in the following manner: Determine the start sending time of each user terminal device according to the distance between each user terminal device and the central office device; Determine the number of time slots that each user terminal device needs to occupy according to the bandwidth requirement value of each user terminal device; as well as The specific time slot occupied by each user terminal device in each sub-cycle is determined based on the determined number of time slots and the start transmission time.
10. The method according to claim 9, wherein: The step of determining the start sending time of each user terminal device according to the distance between each user terminal device and the central office device comprises: Determining the transmission order of each user terminal device according to the distance between each user terminal device and the central office device; The start transmission time of each user terminal device is determined based on the transmission sequence and the compensation time.
11. The method according to claim 10, wherein: The compensation time is determined as follows: The compensation time of the first user terminal device is determined according to the time difference between the first user terminal device and the second user terminal device respectively transmitting data to the central office device; wherein the second user terminal device is the user terminal device that transmitted data before the first user terminal device.
12. A time slot allocation method for an optical access network, the method being applied to a first user terminal device, the method comprising: During data transmission in the first time slot allocation period, when it is determined that the allocated bandwidth is less than the bandwidth required for data transmission, and the difference between the allocated bandwidth and the bandwidth required for data transmission is greater than a set threshold, a first bandwidth requirement value is sent to the central office device; as well as Receive an updated transmission time slot sent by the central office device; the updated transmission time slot is determined by the central office device according to the first bandwidth requirement value and unoccupied time slots in each sub-period included in the first time slot allocation period.
13. The method according to claim 12, wherein: Before sending the first bandwidth requirement value, the method further includes: Before the first time slot allocation cycle starts, reporting a second bandwidth requirement value to the central office device; the second bandwidth requirement value is less than the first bandwidth requirement value, and the difference between the first bandwidth requirement value and the second bandwidth requirement value is not less than the preset value; and Receive the transmission time slot occupied by the first user-end device in each sub-period included in the first time slot allocation period, which is sent by the central office device, wherein the transmission time slot is determined based on the second bandwidth requirement value.
14. The method according to claim 13, wherein: Before sending the second bandwidth requirement value to the central office device, the method further includes: Before the start of a second time slot allocation cycle, reporting a third bandwidth requirement value to the central office device; the second time slot allocation cycle is a time slot allocation cycle before the first time slot allocation cycle; wherein the second bandwidth requirement value is less than the third bandwidth requirement value, and the difference between the second bandwidth requirement value and the third bandwidth requirement value is greater than or equal to a preset value; or, the second bandwidth requirement value is greater than the third bandwidth requirement value, and the difference between the second bandwidth requirement value and the third bandwidth requirement value is less than the preset value; and Receive the transmission time slot occupied by the first user terminal device in each sub-period included in the second time slot allocation period, which is sent by the central office device, wherein the transmission time slot is determined based on the third bandwidth requirement value.
15. A time slot allocation device for an optical access network, the device being a central office device, or the device being applied to the central office device, the device comprising: A communication unit, configured to receive a first bandwidth requirement value from a first user terminal device; The first bandwidth requirement value is sent by the first user terminal device when it is determined that the allocated bandwidth is less than the bandwidth required for data transmission, and the difference between the allocated bandwidth and the bandwidth required for data transmission is greater than a set threshold; the first bandwidth requirement value is used to represent the size of the bandwidth required for data transmission; A processing unit, configured to obtain unoccupied time slots in each sub-period included in the first time slot allocation period; The first time slot allocation period is a time slot allocation period for the user terminal device to currently transmit data; and is further configured to update the transmission time slot occupied by the first user terminal device in each sub-period according to the first bandwidth requirement value and the unoccupied time slot; and The communication unit is configured to send an updated transmission time slot to the first user terminal device.
16. A time slot allocation device for an optical access network, the device being a first user terminal device, or the device being applied to the first user terminal device, the device comprising: a processing unit configured to, during data transmission in a first time slot allocation period, instruct the communication unit to send a first bandwidth requirement value to the central office device when it is determined that the allocated bandwidth is less than the bandwidth required for data transmission and the difference between the allocated bandwidth and the bandwidth required for data transmission is greater than a set threshold; and The communication unit is configured to receive an updated transmission time slot sent by the central office device; the updated transmission time slot is determined by the central office device according to the first bandwidth requirement value and the unoccupied time slots in each sub-period included in the first time slot allocation period.
17. A time slot allocation system for an optical access network, the system comprising a central office device and a plurality of user end devices, A first user terminal device is configured to send a first bandwidth requirement value to the central office device during data transmission within a first time slot allocation period when it is determined that the allocated bandwidth is less than the bandwidth required for data transmission and the difference between the allocated bandwidth and the bandwidth required for data transmission is greater than a set threshold; wherein the first user terminal device is any one of the plurality of user terminal devices; The central office device is configured to receive a first bandwidth requirement value sent by a first user terminal device before the end of a first time slot allocation period, obtain unoccupied time slots in each sub-period included in the first time slot allocation period; update a transmission time slot occupied by the first user terminal device in each sub-period according to the first bandwidth requirement value and the unoccupied time slots, and send the updated transmission time slot to the first user terminal device; and The first user terminal device is configured to receive the updated transmission time slot sent by the central office device.
18. An electronic device, comprising a controller and a memory, The memory is used to store computer programs or instructions; The controller is used to execute the computer program or instructions in the memory so that the method of any one of claims 1 to 11 or any one of claims 12 to 14 is executed.
19. A computer-readable storage medium storing computer-executable instructions, wherein when the computer-executable instructions are called by a computer, the computer executes the method according to any one of claims 1 to 11 or any one of claims 12 to 14.
Citation Information
Patent Citations
Method and apparatus for allocating multi-frame dynamic band width
CN101252789A
Bandwidth allocation method and device in Ethernet passive optical network
CN101742368A
Terminal station device and band allocation method
JP2017022456A
Terminal station apparatus and band allocation method
JP2017041700A
Means and method of allocating channel bandwidth
US20070002743A1