Bandwidth allocation method, device and equipment and computer readable storage medium
By monitoring user location and density and dynamically allocating bandwidth resources, the problem of low bandwidth utilization in multi-user scenarios of head-mounted displays is solved, achieving more efficient bandwidth resource management and improved user experience.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-26
- Publication Date
- 2026-03-27
AI Technical Summary
In large-space, multi-user concurrent scenarios, existing head-mounted display devices cannot respond to changes in user density in real time using static bandwidth allocation methods, resulting in unreasonable bandwidth resource allocation and reduced bandwidth utilization.
By monitoring the location of users within the preset network coverage area, the user density within the coverage area of each unit is determined, and bandwidth resources are dynamically allocated based on the user density. The Kalman filter algorithm is used for data analysis, and magnetic field information and infrared information are combined for accurate positioning, optimizing frequency band allocation and traffic control, and adjusting bandwidth resource allocation in real time.
It enables real-time response to changes in user density in head-mounted display devices, dynamically adjusts bandwidth resources, and improves the bandwidth utilization of computer networks and the quality of user experience.
Smart Images

Figure CN121751177A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of head-mounted display technology, and in particular to a bandwidth allocation method, apparatus, device, and computer-readable storage medium. Background Technology
[0002] With the rapid development of AR (Augmented Reality), VR (Virtual Reality), and MR (Mixed Reality) technologies, head-mounted display devices, such as AR / VR / MR devices, have gradually integrated into people's daily lives and become an important part of modern technological experiences. Among these, the proper allocation of network bandwidth is a key factor affecting user experience in the usage scenarios of head-mounted display devices.
[0003] Currently, the common bandwidth allocation method is to statically allocate a fixed network bandwidth based on the load of each head-mounted display device. For example, the greater the load, the greater the network bandwidth. This bandwidth allocation method can maintain the basic operating speed of head-mounted display devices in single-user or low-concurrency scenarios. However, as the number of head-mounted display device users increases, especially in large-space multi-user concurrent scenarios, the static bandwidth allocation method cannot respond to changes in user density in real time and adjust bandwidth resources accordingly, resulting in unreasonable bandwidth resource allocation and thus reducing bandwidth utilization.
[0004] Therefore, how to improve the bandwidth utilization of computer networks is an urgent problem that needs to be solved. Summary of the Invention
[0005] The main objective of this application is to provide a bandwidth allocation method, apparatus, device, and computer-readable storage medium, which aims to improve the bandwidth utilization of computer networks.
[0006] To achieve the above objectives, this application provides a bandwidth allocation method applied to a bandwidth allocation system, the bandwidth allocation system being communicatively connected to multiple head-mounted display devices, the bandwidth allocation method comprising:
[0007] Monitor the location of a target user using a target head-mounted display device within a preset network coverage area, wherein the target head-mounted display device is one of the multiple head-mounted display devices that is in an on state;
[0008] The user density within the coverage area of each unit is determined based on the user's location, wherein each unit coverage area is obtained by dividing the preset network coverage area, and the user density is the density of users using the target head-mounted display device within the unit coverage area;
[0009] corresponding to each of the user densities, and dynamically allocating bandwidth resources to the target head-mounted display devices in the unit coverage ranges corresponding to the user densities based on the target bandwidth resource amounts.
[0010] In an embodiment, the step of monitoring user positions of target users using target head-mounted display devices in a preset network coverage range comprises:
[0011] receiving user magnetic field information and user infrared information transmitted by target head-mounted display devices in the preset network coverage range, wherein the user magnetic field information is magnetic field information collected by magnetometers of the target head-mounted display devices, and the user infrared information is infrared information collected by infrared sensors of the target head-mounted display devices;
[0012] determining user positions of target users using the target head-mounted display devices based on the user magnetic field information and the user infrared information.
[0013] In an embodiment, the step of determining user densities in each unit coverage range based on the user positions comprises:
[0014] obtaining signal strength information and network address information of the target head-mounted display devices;
[0015] respectively pre-processing the user positions, the signal strength information, and the network address information to obtain target data;
[0016] analyzing the target data by a preset Kalman filtering algorithm to obtain user densities in each unit coverage range.
[0017] In an embodiment, the bandwidth allocation system comprises a wireless access point, the bandwidth allocation system is communicatively connected to a plurality of head-mounted display devices through the wireless access point, and the preset network coverage range is a range that can be covered by the wireless access point through wireless signal transmission.
[0018] In an embodiment, downlink transmission of first data generated by the wireless access point is preferentially performed in a first preset frequency band, and uplink transmission of second data generated by the target head-mounted display devices is preferentially performed in a second preset frequency band, wherein a data type of the first data is an audio type or a video type, a data type of the second data is a best-effort type or a background type, and the first preset frequency band is higher than the second preset frequency band.
[0019] In an embodiment, after the step of dynamically allocating bandwidth resources to the target head-mounted display devices in the unit coverage ranges corresponding to the user densities based on the target bandwidth resource amounts, the method further comprises:
[0020] Monitor the data latency of the target head-mounted display device, and when the data latency is greater than a preset duration, pause the transmission of background data until the data latency is less than or equal to the preset duration.
[0021] In one embodiment, after the step of dynamically allocating bandwidth resources to the target head-mounted display device within the unit coverage area corresponding to the user density based on the target bandwidth resource amount, the method further includes:
[0022] The system monitors the data throughput of the target head-mounted display device, and when the data throughput is less than a preset throughput, it dynamically allocates bandwidth resources to the target head-mounted display device based on a preset bandwidth resource amount, until the data throughput is greater than or equal to the preset throughput, wherein the preset bandwidth resource amount is greater than the target bandwidth resource amount.
[0023] Furthermore, to achieve the above objectives, this application also provides a bandwidth allocation device, which is applied to a bandwidth allocation system that is communicatively connected to multiple head-mounted display devices. The bandwidth allocation device includes:
[0024] The detection module is used to monitor the location of a target user using a target head-mounted display device within a preset network coverage area, wherein the target head-mounted display device is one of the multiple head-mounted display devices that is in an on state;
[0025] The determination module is used to determine the user density within the coverage area of each unit based on the user location, wherein each unit coverage area is obtained by dividing the preset network coverage area, and the user density is the density of users using the target head-mounted display device within the unit coverage area;
[0026] The dynamic allocation module is used to determine the preset target bandwidth resource amount corresponding to each user density, and dynamically allocate bandwidth resources to the target head-mounted display device within the unit coverage area corresponding to the user density based on the target bandwidth resource amount.
[0027] In addition, to achieve the above objectives, this application also provides a storage medium, which is a computer-readable storage medium, on which a program implementing the bandwidth allocation method is stored, and the program implementing the bandwidth allocation method is executed by a processor to implement the steps of the bandwidth allocation method as described above.
[0028] In addition, to achieve the above objectives, this application also provides a computer program product, including a computer program that, when executed by a processor, implements the steps of the bandwidth allocation method described above.
[0029] This application provides a bandwidth allocation method. The bandwidth allocation method is applied to a bandwidth allocation system that is communicatively connected to multiple head-mounted display devices. This application monitors the user locations of target users using head-mounted display devices within a preset network coverage area, and determines the user density within each unit coverage area based on the user locations. Each unit coverage area is obtained by segmenting the preset network coverage area, and the user density is the density of users using head-mounted display devices within each unit coverage area. Finally, a preset target bandwidth resource amount is determined for each user density, and bandwidth resources are dynamically allocated to the head-mounted display devices within the unit coverage area corresponding to that user density based on the target bandwidth resource amount.
[0030] In summary, compared to the traditional static bandwidth allocation method, this application monitors the location of users using head-mounted display devices within a preset network coverage area in real time, determines the user density in each small area based on the user location, and dynamically allocates bandwidth resources to head-mounted display devices in the small area corresponding to the user density based on the preset bandwidth resource amount. This achieves real-time response to changes in user density within each unit's coverage area, dynamically adjusting the bandwidth resources of each head-mounted display device, thereby improving the bandwidth utilization of the computer network. Attached Figure Description
[0031] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this application and, together with the description, serve to explain the principles of this application.
[0032] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, for those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0033] Figure 1 This is a flowchart illustrating the first embodiment of the bandwidth allocation method of this application;
[0034] Figure 2 This is a schematic diagram of the user density calculation process involved in an embodiment of the bandwidth allocation method of this application;
[0035] Figure 3 This is a schematic diagram of the frequency band division mechanism involved in an embodiment of the bandwidth allocation method of this application;
[0036] Figure 4 This is a schematic diagram of the bandwidth allocation process involved in one embodiment of the bandwidth allocation method of this application;
[0037] Figure 5This is a schematic diagram of the performance monitoring process involved in one embodiment of the bandwidth allocation method of this application;
[0038] Figure 6 This is a schematic diagram of the module structure of the bandwidth allocation device in this application;
[0039] Figure 7 This is a schematic diagram of the device structure of the hardware operating environment involved in the bandwidth allocation method in the embodiments of this application.
[0040] The purpose, features, and advantages of this application will be further explained in conjunction with the embodiments and with reference to the accompanying drawings. Detailed Implementation
[0041] It should be understood that the specific embodiments described herein are merely illustrative of the technical solutions of this application and are not intended to limit this application.
[0042] To better understand the technical solution of this application, a detailed description will be provided below in conjunction with the accompanying drawings and specific implementation methods.
[0043] The main solution of this application is: monitoring the location of target users using target head-mounted display devices within a preset network coverage area, wherein the target head-mounted display device is an active device among a plurality of head-mounted display devices; determining the user density within each unit coverage area based on the user location, wherein each unit coverage area is obtained by dividing the preset network coverage area, and the user density is the density of users using the target head-mounted display device within the unit coverage area; determining a preset target bandwidth resource amount corresponding to each user density, and dynamically allocating bandwidth resources to the target head-mounted display devices within the unit coverage area corresponding to the user density based on the target bandwidth resource amount.
[0044] Currently, the common bandwidth allocation method is to statically allocate a fixed network bandwidth based on the load of each head-mounted display device. For example, the greater the load, the greater the network bandwidth. This bandwidth allocation method can maintain the basic operating speed of head-mounted display devices in single-user or low-concurrency scenarios. However, as the number of head-mounted display device users increases, especially in large-space multi-user concurrent scenarios, the static bandwidth allocation method cannot respond to changes in user density in real time and adjust bandwidth resources accordingly, resulting in unreasonable bandwidth resource allocation and thus reducing bandwidth utilization.
[0045] This application monitors the location of users using head-mounted display devices within a preset network coverage area in real time, and determines the user density in each small area based on the user location. It then dynamically allocates bandwidth resources to the head-mounted display devices in the small area corresponding to the user density based on a preset amount of bandwidth resources. This achieves real-time response to changes in user density within each unit's coverage area, dynamically adjusting the bandwidth resources of each head-mounted display device, thereby improving the bandwidth utilization of the computer network.
[0046] It should be noted that the execution subject of the bandwidth allocation method in various embodiments of this application can be a bandwidth allocation system, or a computing service device with data processing, network communication, and program execution functions, such as a tablet computer, personal computer, or mobile phone, or a bandwidth allocation device capable of performing the above functions. This embodiment does not specifically limit this. The following uses a bandwidth allocation system as the execution subject as an example to describe this embodiment and the following embodiments.
[0047] Based on this, this application proposes a bandwidth allocation method according to a first embodiment. The bandwidth allocation method is applied to a bandwidth allocation system, which is communicatively connected to multiple head-mounted display devices. Please refer to... Figure 1 The bandwidth allocation method includes steps S10 to S30:
[0048] Step S10: Monitor the location of the target user using the target head-mounted display device within the preset network coverage area, wherein the target head-mounted display device is one of the multiple head-mounted display devices that is in an on state;
[0049] It is worth emphasizing that the head-mounted display devices in this embodiment include, but are not limited to, Mixed Reality (MR) devices (such as MR glasses or MR helmets), Augmented Reality (AR) devices (such as AR glasses or AR helmets), Virtual Reality (VR) devices (such as VR glasses or VR helmets), Extended Reality (XR) devices, or some combination thereof, and other display devices with virtual reality functions.
[0050] It should be noted that the bandwidth allocation method of this application is applied to a bandwidth allocation system that is communicatively connected to multiple head-mounted display devices. The network coverage area managed by the bandwidth allocation system is pre-defined, meaning the system is responsible for bandwidth allocation to each device within that network coverage area. Head-mounted display devices that are communicatively connected to the bandwidth allocation system and are in an on state within the pre-defined network coverage area are referred to as target head-mounted display devices. Users within the pre-defined network coverage area who are using the target head-mounted display devices are referred to as target users.
[0051] Real-time monitoring of the location of the target user (hereinafter referred to as user location) who is using the target head-mounted display device within the preset network coverage area.
[0052] In one feasible implementation, the location of the head-mounted display device is determined by the head-mounted display device that is in the on state within the preset network coverage area, and it is detected whether it is being worn by a user. If it is detected that it is being worn by a user, the location of the head-mounted display device is sent to the bandwidth allocation system. The bandwidth allocation system receives the location information sent by each head-mounted display device and determines the location information as the location of the target user who is using the head-mounted display device. That is, the location of the head-mounted display device worn by the target user is taken as the location of the target user.
[0053] In another feasible embodiment, step S10 may include:
[0054] Step S101: Receive user magnetic field information and user infrared information sent by a target head-mounted display device within a preset network coverage area, wherein the user magnetic field information is the magnetic field information collected by the magnetometer of the head-mounted display device, and the user infrared information is the infrared information collected by the infrared sensor of the head-mounted display device.
[0055] It should be noted that user location information is collected by head-mounted display devices that are in an active state within the preset network coverage area. Specifically, magnetic field information (hereinafter referred to as user magnetic field information) is collected by the magnetometer of the head-mounted display device, and infrared information (hereinafter referred to as user infrared information) is collected by the infrared sensor of the head-mounted display device. That is, the user magnetic field information and user infrared information collected by the head-mounted display device are collectively referred to as user location information.
[0056] While the head-mounted display device, which is in an on state within a preset network range, collects user location information, it also sends the user location information to the bandwidth allocation system in real time. The bandwidth allocation system receives the user's magnetic field information and infrared information sent by the head-mounted display device to monitor the user's location in real time.
[0057] Step S102: Based on the user magnetic field information and the user infrared information, determine the user location of the target user using the target head-mounted display device.
[0058] After receiving the user's magnetic field information and user infrared information collected by the target head-mounted display device, the user's location is determined based on the user's magnetic field information and user infrared information.
[0059] Specifically, the user's magnetic field information and infrared information are first preprocessed, including denoising and filtering. Then, a data fusion algorithm is used to fuse the preprocessed data, and the user's location is calculated based on the fused information. This method of determining user location by combining magnetic field and infrared information ensures both accuracy and robustness in positioning.
[0060] In this embodiment, the bandwidth allocation system includes a wireless access point, which communicates with multiple head-mounted display devices. The preset network coverage area is the range that the wireless access point can cover through wireless signal transmission.
[0061] It should be noted that the bandwidth allocation system includes wireless access points, i.e., APs (Access Points). This bandwidth allocation system communicates with multiple head-mounted display devices through wireless access points, and the range that the wireless access points can cover through wireless signal transmission is used as the preset network coverage area.
[0062] Step S20: Determine the user density within the coverage area of each unit based on the user location, wherein each unit coverage area is obtained by dividing the preset network coverage area, and the user density is the density of users using the target head-mounted display device within the unit coverage area;
[0063] It should be noted that the preset network coverage area is divided into multiple sub-areas (hereinafter referred to as unit coverage areas for distinction). The area of each unit coverage area may be equal or unequal. This application embodiment does not limit the size of the area of each unit coverage area.
[0064] The user density within the coverage area of each unit is determined based on the calculated user location. Here, user density refers to the density of users using the target head-mounted display device within the coverage area of the unit.
[0065] In a specific implementation, step S20 may include:
[0066] Step S201: Obtain the signal strength information and network address information of the target head-mounted display device;
[0067] It should be noted that this application does not limit the specific forms of the signal strength information and network address information mentioned above. In the embodiments of this application, the signal strength information includes, but is not limited to, RSSI (Received Significant Strength Indicator) value, and the network address information includes, but is not limited to, MAC address information.
[0068] Send a request command to the target head-mounted display device to obtain signal strength information and network address information, and receive the signal strength information and network address information fed back by the target head-mounted display device based on the request command.
[0069] Step S202: Perform data preprocessing on the user location, the signal strength information, and the network address information respectively to obtain target data;
[0070] Data preprocessing, such as data cleaning, noise reduction, and calibration, is performed on the user's location and the signal strength and network address information of the target head-mounted display device to obtain preprocessed data (hereinafter referred to as target data for distinction), thereby ensuring the accuracy and reliability of the data.
[0071] Step S203: Analyze the target data using a preset Kalman filter algorithm to obtain the user density within the coverage area of each unit.
[0072] The target data is analyzed using a pre-defined Kalman filter algorithm to obtain the user density within the coverage area of each unit.
[0073] For example, such as Figure 2 The diagram illustrates the user density calculation process. First, magnetic field and infrared information are obtained from the target head-mounted display device. Then, based on the magnetic field and infrared information, the location of the target user using the target head-mounted display device is determined. Next, the RSSI value and MAC address information of the target head-mounted display device are combined to perform data cleaning, noise reduction, and calibration to obtain the target data. Finally, the target data is input into a Kalman filter fusion algorithm to obtain the user density within the coverage area of each unit.
[0074] Step S30: Determine the preset target bandwidth resource amount corresponding to each user density, and dynamically allocate bandwidth resources to the target head-mounted display device within the unit coverage area corresponding to the user density based on the target bandwidth resource amount.
[0075] It should be noted that a mathematical model is pre-established between user density and bandwidth allocation to enable adaptive bandwidth allocation based on user density. Specifically, a mapping relationship between user density and bandwidth resources is set, and head-mounted display devices in areas with higher user density are allocated more bandwidth resources to ensure that high-demand users can obtain sufficient bandwidth resources.
[0076] A preset bandwidth resource amount (hereinafter referred to as the target bandwidth resource amount for distinction) is determined for the user density within each unit coverage area. Then, bandwidth resources are dynamically allocated to the target head-mounted display devices within the unit coverage area corresponding to that user density based on the target bandwidth resource amount. That is, it should be understood that the amount of bandwidth resources allocated to the target head-mounted display devices based on the target bandwidth resource amount is the same as the target bandwidth resource amount, and the bandwidth resources allocated to the target head-mounted display devices within each unit coverage area are equal.
[0077] This application embodiment monitors the location of users using head-mounted display devices within a preset network coverage area in real time, and determines the user density in each small area based on the user location. It then dynamically allocates bandwidth resources to the head-mounted display devices in the small area corresponding to the user density based on a preset amount of bandwidth resources. This achieves real-time response to changes in user density within each unit's coverage area, dynamically adjusting the bandwidth resources of each head-mounted display device, thereby improving the bandwidth utilization of the computer network.
[0078] Based on the first embodiment of this application, in the second embodiment of this application, the same or similar content as in the first embodiment can be referred to the above description and will not be repeated hereafter. On this basis, downlink transmission of the first data generated by the wireless access point is preferentially executed in a first preset frequency band, and uplink transmission of the second data generated by the target head-mounted display device is preferentially executed in a second preset frequency band. The data type of the first data is audio or video, and the data type of the second data is best-effort or background. The first preset frequency band is higher than the second preset frequency band.
[0079] It should be noted that, to address the issue that traditional WiFi frequency band allocation strategies fail to fully utilize the multi-band characteristics of WiFi 7, thus limiting network performance improvements, this application adjusts the priority of WiFi EDCA (Enhanced Distributed Channel Access) parameters based on the characteristics of frequency band transmission data. This includes priority types such as VI (Video), VO (Voice), BE (Best Effort), and BK (Background). Each priority type includes four parameters: CWmin (Content Window Minimum), CWmax (Content Window Maximum), AIFS (Arbitration Inter-Frame Spacing), and TXOP (Transmission Opportunity). In the 2.4GHz band, BE / BK is increased while VI / VO is decreased, optimizing the rapid transmission of sensor data, time synchronization, and other messages. The 5GHz band only requires audio and video streaming, therefore increasing VIVO and decreasing BE / BK ensures the transmission priority of audio and video streams. That is, it should be understood that best-effort data and background stream data transmission is prioritized in the 2.4GHz band, while audio and video streaming data transmission is prioritized in the 5GHz band. Furthermore, it is worth emphasizing that this application does not limit the specific size of the first and second preset frequency bands. In this application embodiment, the first preset frequency band is higher than the second preset frequency band; the first preset frequency band is the 5GHz band, and the second preset frequency band is the 2.4GHz band.
[0080] The audio and video data generated by the wireless access point (hereinafter referred to as the first data for distinction) is preferentially allocated to the first preset frequency band for downlink transmission, and the best-effort data and background stream data generated by the target head-mounted display device (hereinafter referred to as the second data for distinction) are preferentially allocated to the second preset frequency band for uplink transmission.
[0081] For example, such as Figure 3 The diagram illustrates the frequency band allocation mechanism. In the 5GHz band, audio and video stream data generated by the AP (Access Point) is prioritized for transmission to the STA (Site). It should be noted that STA refers to the wireless client device, i.e., the head-mounted display device. In the 2.4GHz band, best-effort data and background stream data generated by the STA are prioritized for transmission, such as user location information, user actions, data feedback, management frames, and control frames collected by the head-mounted display device.
[0082] In one feasible embodiment, the bandwidth allocation system of this application includes a bandwidth intelligent allocation module for executing the bandwidth allocation process, such as... Figure 4 The diagram illustrates the bandwidth allocation process. First, based on the mapping relationship between user density and bandwidth resources within the coverage area of each unit, a pre-established bandwidth allocation model dynamically allocates bandwidth resources to the target head-mounted display device. Then, based on the application type used by the target user, such as audio-visual applications, interactive VR applications, or other VR applications, the 5GHz band is selected to transmit the audio-visual data required by the audio-visual applications, and the 2.4GHz band is selected to transmit the BE or BK data generated by interactive VR applications and other VR applications.
[0083] Thus, this embodiment maximizes the utilization efficiency of frequency band resources through reasonable frequency band allocation and traffic control. It adjusts the priority of WiFi EDCA parameters according to the characteristics of frequency band transmission data, and utilizes the high bandwidth and dual-band concurrency capabilities of WiFi 7. Only downlink transmission of audio and video streams is performed in the 5GHz band, ensuring a smooth multimedia experience. Management frames, control frames, channel monitoring messages, and user operation feedback messages are transmitted in the 2.4GHz band, reducing the burden on the 5GHz band. In other words, this embodiment, through dual-band collaborative optimization, allocates different types of applications to different frequency bands for transmission. This not only avoids interference between different applications but also maximizes the utilization efficiency of frequency band resources, ensuring high-quality audio and video stream transmission and improving the overall system performance. It significantly improves network performance and user experience in multi-user concurrent scenarios, providing strong support for the widespread application of head-mounted display devices.
[0084] Based on the first and / or second embodiments of this application, in the third embodiment of this application, the content that is the same as or similar to the first and / or second embodiments described above can be referred to the above description and will not be repeated hereafter. Furthermore, after step S30, the bandwidth allocation method of this application further includes:
[0085] Step A10: Monitor the data latency of the target head-mounted display device, and when the data latency is greater than a preset duration, pause the transmission of background data until the data latency is less than or equal to the preset duration.
[0086] It should be noted that the embodiments of this application do not limit the specific length of the preset duration. In this embodiment, the preset duration is set to 50ms. It should be understood that if the data latency of the head-mounted display device exceeds 50ms, it is considered that the current network is congested or there is a performance bottleneck.
[0087] The system monitors the data latency of the target head-mounted display device. If the detected data latency exceeds a preset duration, background data transmission is paused to reduce network congestion until the data latency returns to normal. In other words, if the data latency is less than or equal to the preset duration, it is considered normal, and background data transmission resumes. Essentially, the system monitors the data latency of the target head-mounted display device in real time, and triggers the pause of background data transmission once a data latency exceeding the preset duration is detected.
[0088] In this embodiment, after step S30, the bandwidth allocation method of this application further includes:
[0089] Step B10: Monitor the data throughput of the target head-mounted display device, and when the data throughput is less than a preset throughput, dynamically allocate bandwidth resources to the target head-mounted display device based on a preset bandwidth resource amount until the data throughput is greater than or equal to the preset throughput, wherein the preset bandwidth resource amount is greater than the target bandwidth resource amount.
[0090] It should be noted that this application embodiment does not limit the specific size of the preset throughput. In this application embodiment, the preset throughput is set to 25Mbps. That is, it should be understood that when the throughput of the target head-mounted display device is detected to be less than the preset throughput, it is considered that the data transmission capacity of the current network is limited and bandwidth resources need to be increased. Furthermore, in this application embodiment, the preset bandwidth resource amount is set to be greater than the current target bandwidth resource amount of the target head-mounted display device, but this application embodiment does not limit the specific size of the preset bandwidth resource amount; it can be any value greater than the target bandwidth resource amount. It should be understood that before new bandwidth resources are reallocated to the target head-mounted display device, the bandwidth resources allocated to the target head-mounted display device are the target bandwidth resource amount, and the process of reallocating resources can be regarded as a process of increasing bandwidth resources.
[0091] The system monitors the data throughput of the target head-mounted display device. When the data throughput is detected to be less than a preset throughput, bandwidth resources are dynamically allocated to the target head-mounted display device based on a preset bandwidth resource amount to remove the data transmission capacity limitation until the data throughput returns to a normal level. In other words, when the data throughput is greater than or equal to the preset throughput, it is considered normal, and the bandwidth resource amount allocated to the target head-mounted display device is restored to the target bandwidth resource amount. Essentially, the system monitors the data throughput of the target head-mounted display device in real time, and once the data throughput is detected to be less than the preset throughput, the step of increasing bandwidth resources for the target head-mounted display device is triggered.
[0092] For example, the bandwidth allocation system of this application also includes a performance indicator monitoring module for performing a performance monitoring process, such as... Figure 5The diagram shows the performance monitoring process. Based on the preset latency and throughput, the system continuously monitors user performance metrics, namely data latency and data throughput metrics. It then determines whether the monitored performance metrics are abnormal. If the data latency of the head-mounted display device is detected to be greater than the preset latency of 50ms, the BK transmission is paused. If the data throughput of the head-mounted display device is detected to be less than the preset throughput of 25Mbps, the bandwidth resources allocated to the head-mounted display device are increased.
[0093] Thus, by monitoring user latency and throughput metrics in real time, the system can take timely measures when an anomaly is detected, such as suspending BK transmission or increasing user priority (i.e., increasing the amount of bandwidth resources allocated to the head-mounted display device), to ensure the user's experience quality. When normal operation is detected again, the system can restore normal transmission status, ensuring system stability and reliability.
[0094] This application also provides a bandwidth allocation device, please refer to... Figure 6 The bandwidth allocation device is applied to a bandwidth allocation system, which is communicatively connected to multiple head-mounted display devices. The bandwidth allocation device includes:
[0095] Detection module 10 is used to monitor the location of a target user using a target head-mounted display device within a preset network coverage area, wherein the target head-mounted display device is one of the multiple head-mounted display devices that is in an on state;
[0096] The determining module 20 is used to determine the user density within the coverage area of each unit based on the user location, wherein each unit coverage area is obtained by dividing the preset network coverage area, and the user density is the density of users using the target head-mounted display device within the unit coverage area;
[0097] The dynamic allocation module 30 is used to determine the preset target bandwidth resource amount corresponding to each user density, and dynamically allocate bandwidth resources to the target head-mounted display device within the unit coverage area corresponding to the user density based on the target bandwidth resource amount.
[0098] Optionally, the detection module 10 is further configured to:
[0099] Receive user magnetic field information and user infrared information sent by a target head-mounted display device within a preset network coverage area, wherein the user magnetic field information is magnetic field information collected by the magnetometer of the target head-mounted display device, and the user infrared information is infrared information collected by the infrared sensor of the target head-mounted display device;
[0100] Based on the user's magnetic field information and the user's infrared information, the user's location using the target head-mounted display device is determined.
[0101] Optionally, the determining module 20 is further configured to:
[0102] Obtain the signal strength information and network address information of the target head-mounted display device;
[0103] The user location, the signal strength information, and the network address information are preprocessed separately to obtain the target data;
[0104] The target data is analyzed using a preset Kalman filter algorithm to obtain the user density within the coverage area of each unit.
[0105] Optionally, the bandwidth allocation system includes a wireless access point, which communicates with multiple head-mounted display devices. The preset network coverage area is the range that the wireless access point can cover through wireless signal transmission.
[0106] Optionally, downlink transmission of the first data generated by the wireless access point is preferentially performed in a first preset frequency band, and uplink transmission of the second data generated by the target head-mounted display device is preferentially performed in a second preset frequency band. The data type of the first data is audio or video, and the data type of the second data is best-effort or background. The first preset frequency band is higher than the second preset frequency band.
[0107] Optionally, the bandwidth allocation device further includes a performance monitoring module, which is used for:
[0108] Monitor the data latency of the target head-mounted display device, and when the data latency is greater than a preset duration, pause the transmission of background data until the data latency is less than or equal to the preset duration.
[0109] Optionally, the performance monitoring module is further configured to:
[0110] The system monitors the data throughput of the target head-mounted display device, and when the data throughput is less than a preset throughput, it dynamically allocates bandwidth resources to the target head-mounted display device based on a preset bandwidth resource amount, until the data throughput is greater than or equal to the preset throughput, wherein the preset bandwidth resource amount is greater than the target bandwidth resource amount.
[0111] The bandwidth allocation device provided in this application, employing the bandwidth allocation method described in the above embodiments, can solve the technical problem of how to improve the bandwidth utilization of computer networks. Compared with the prior art, the beneficial effects of the bandwidth allocation device provided in this application are the same as those of the bandwidth allocation method provided in the above embodiments, and other technical features in the bandwidth allocation device are the same as those disclosed in the methods of the above embodiments, and will not be repeated here.
[0112] This application provides a bandwidth allocation device, which includes: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, which are executed by the at least one processor to enable the at least one processor to perform the bandwidth allocation method in Embodiment 1 above.
[0113] The following is for reference. Figure 7 It shows a schematic diagram of a bandwidth allocation device suitable for implementing embodiments of this application. Figure 7 The bandwidth allocation device shown is merely an example and should not impose any limitations on the functionality and scope of use of the embodiments of this application.
[0114] like Figure 7 As shown, the bandwidth allocation device may include a processing unit 1001 (e.g., a central processing unit, a graphics processing unit, etc.), which can perform various appropriate actions and processes according to a program stored in read-only memory (ROM) 1002 or a program loaded from storage device 1003 into random access memory (RAM) 1004. The RAM 1004 also stores various programs and data required for the operation of the bandwidth allocation device. The processing unit 1001, ROM 1002, and RAM 1004 are interconnected via a bus 1005. An input / output (I / O) interface 1006 is also connected to the bus. Typically, the following systems can be connected to I / O interface 1006: input devices 1007 including, for example, touchscreens, touchpads, keyboards, mice, image sensors, microphones, accelerometers, gyroscopes, etc.; output devices 1008 including, for example, liquid crystal displays (LCDs), speakers, vibrators, etc.; storage devices 1003 including, for example, magnetic tapes, hard disks, etc.; and communication devices 1009. Communication device 1009 allows the bandwidth allocation device to communicate wirelessly or wiredly with other devices to exchange data. Although bandwidth allocation devices with various systems are shown in the figure, it should be understood that it is not required to implement or possess all the systems shown. More or fewer systems can be implemented alternatively.
[0115] Specifically, according to the embodiments disclosed in this application, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments disclosed in this application include a computer program product comprising a computer program carried on a computer-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via a communication device, or installed from storage device 1003, or installed from ROM 1002. When the computer program is executed by processing device 1001, it performs the functions defined in the methods of the embodiments disclosed in this application.
[0116] The bandwidth allocation device provided in this application, employing the bandwidth allocation method described in the above embodiments, can solve the technical problem of how to improve the bandwidth utilization of computer networks. Compared with the prior art, the beneficial effects of the bandwidth allocation device provided in this application are the same as those of the bandwidth allocation method provided in the above embodiments, and other technical features of the bandwidth allocation device are the same as those disclosed in the previous embodiment method, and will not be repeated here.
[0117] It should be understood that the various parts disclosed in this application can be implemented using hardware, software, firmware, or a combination thereof. In the description of the above embodiments, specific features, structures, materials, or characteristics can be combined in any suitable manner in one or more embodiments or examples.
[0118] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.
[0119] This application provides a computer-readable storage medium having computer-readable program instructions (i.e., a computer program) stored thereon, the computer-readable program instructions being used to execute the bandwidth allocation method in the above embodiments.
[0120] The computer-readable storage medium provided in this application may be, for example, a USB flash drive, but is not limited to, electrical, magnetic, optical, electromagnetic, infrared, or semiconductor systems, devices, or any combination thereof. More specific examples of computer-readable storage media may include, but are not limited to: electrical connections having one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fibers, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof. In this embodiment, the computer-readable storage medium may be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, system, or device. The program code contained on the computer-readable storage medium may be transmitted using any suitable medium, including but not limited to: wires, optical cables, RF (radio frequency), etc., or any suitable combination thereof.
[0121] The aforementioned computer-readable storage medium may be included in the bandwidth allocation device; or it may exist independently and not be assembled into the bandwidth allocation device.
[0122] The aforementioned computer-readable storage medium carries one or more programs that, when executed by a bandwidth allocation device, cause the bandwidth allocation device to: monitor the location of a target user using a target head-mounted display device within a preset network coverage area, wherein the target head-mounted display device is an on device among a plurality of head-mounted display devices; determine the user density within each unit coverage area based on the user location, wherein each unit coverage area is obtained by dividing the preset network coverage area, and the user density is the density of users using the target head-mounted display device within the unit coverage area; determine a preset target bandwidth resource amount corresponding to each user density, and dynamically allocate bandwidth resources to the target head-mounted display device within the unit coverage area corresponding to the user density based on the target bandwidth resource amount.
[0123] Computer program code for performing the operations of this application can be written in one or more programming languages or a combination thereof, including object-oriented programming languages such as Java, Smallport, and C++, and conventional procedural programming languages such as the "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving remote computers, the remote computer can be connected to the user's computer via any type of network—including a local area network (LAN) or a wide area network (WAN)—or can be connected to an external computer (e.g., via the Internet using an Internet service provider).
[0124] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this application. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.
[0125] The modules described in the embodiments of this application can be implemented in software or hardware. The names of the modules do not necessarily limit the functionality of the unit itself.
[0126] The readable storage medium provided in this application is a computer-readable storage medium that stores computer-readable program instructions (i.e., a computer program) for executing the above-described bandwidth allocation method, thereby solving the technical problem of how to improve the bandwidth utilization of computer networks. Compared with the prior art, the beneficial effects of the computer-readable storage medium provided in this application are the same as those of the bandwidth allocation method provided in the above embodiments, and will not be repeated here.
[0127] This application provides a computer program product, including a computer program that, when executed by a processor, implements the steps of the bandwidth allocation method described above.
[0128] The computer program product provided in this application can improve the bandwidth utilization of computer networks. Compared with the prior art, the beneficial effects of the computer program product provided in the embodiments of this application are the same as the beneficial effects of the bandwidth allocation method provided in the above embodiments, and will not be repeated here.
[0129] The above are merely preferred embodiments of this application and do not limit the patent scope of this application. Any equivalent structural or procedural transformations made using the content of this application's specification and drawings, or direct or indirect applications in other related technical fields, are similarly included within the patent scope of this application.
Claims
1. A bandwidth allocation method, characterized in that, The bandwidth allocation method is applied to a bandwidth allocation system, which is communicatively connected to multiple head-mounted display devices. The bandwidth allocation method includes: Monitor the location of a target user using a target head-mounted display device within a preset network coverage area, wherein the target head-mounted display device is one of the multiple head-mounted display devices that is in an on state; The user density within the coverage area of each unit is determined based on the user's location, wherein each unit coverage area is obtained by dividing the preset network coverage area, and the user density is the density of users using the target head-mounted display device within the unit coverage area; A preset target bandwidth resource amount is determined for each user density, and bandwidth resources are dynamically allocated to the target head-mounted display device within the unit coverage area corresponding to the user density based on the target bandwidth resource amount.
2. The method as described in claim 1, characterized in that, The step of monitoring the location of a target user using a target head-mounted display device within the preset network coverage area includes: Receive user magnetic field information and user infrared information sent by a target head-mounted display device within a preset network coverage area, wherein the user magnetic field information is magnetic field information collected by the magnetometer of the target head-mounted display device, and the user infrared information is infrared information collected by the infrared sensor of the target head-mounted display device; Based on the user's magnetic field information and the user's infrared information, the user's location using the target head-mounted display device is determined.
3. The method as described in claim 1, characterized in that, The step of determining the user density within the coverage area of each unit based on the user's location includes: Obtain the signal strength information and network address information of the target head-mounted display device; The user location, the signal strength information, and the network address information are preprocessed separately to obtain the target data; The target data is analyzed using a preset Kalman filter algorithm to obtain the user density within the coverage area of each unit.
4. The method as described in claim 1, characterized in that, The bandwidth allocation system includes a wireless access point, which communicates with multiple head-mounted display devices. The preset network coverage area is the range that the wireless access point can cover through wireless signal transmission.
5. The method as described in claim 4, characterized in that, Downlink transmission of the first data generated by the wireless access point is preferentially performed in the first preset frequency band, and uplink transmission of the second data generated by the target head-mounted display device is preferentially performed in the second preset frequency band. The data type of the first data is audio or video, and the data type of the second data is best-effort or background. The first preset frequency band is higher than the second preset frequency band.
6. The method according to any one of claims 1 to 5, characterized in that, After the step of dynamically allocating bandwidth resources to the target head-mounted display device within the unit coverage area corresponding to the user density based on the target bandwidth resource amount, the method further includes: Monitor the data latency of the target head-mounted display device, and when the data latency is greater than a preset duration, pause the transmission of background data until the data latency is less than or equal to the preset duration.
7. The method according to any one of claims 1 to 5, characterized in that, After the step of dynamically allocating bandwidth resources to the target head-mounted display device within the unit coverage area corresponding to the user density based on the target bandwidth resource amount, the method further includes: The system monitors the data throughput of the target head-mounted display device, and when the data throughput is less than a preset throughput, it dynamically allocates bandwidth resources to the target head-mounted display device based on a preset bandwidth resource amount, until the data throughput is greater than or equal to the preset throughput, wherein the preset bandwidth resource amount is greater than the target bandwidth resource amount.
8. A bandwidth allocation device, characterized in that, The bandwidth allocation device is applied to a bandwidth allocation system, which is communicatively connected to multiple head-mounted display devices. The bandwidth allocation device includes: The detection module is used to monitor the location of a target user using a target head-mounted display device within a preset network coverage area, wherein the target head-mounted display device is one of the multiple head-mounted display devices that is in an on state; The determination module is used to determine the user density within the coverage area of each unit based on the user location, wherein each unit coverage area is obtained by dividing the preset network coverage area, and the user density is the density of users using the target head-mounted display device within the unit coverage area; The dynamic allocation module is used to determine the preset target bandwidth resource amount corresponding to each user density, and dynamically allocate bandwidth resources to the target head-mounted display device within the unit coverage area corresponding to the user density based on the target bandwidth resource amount.
9. A bandwidth allocation device, characterized in that, The bandwidth allocation device includes: a memory, a processor, and a computer program stored in the memory and executable on the processor, the computer program being configured to implement the steps of the bandwidth allocation method as described in any one of claims 1 to 7.
10. A storage medium, characterized in that, The storage medium is a computer-readable storage medium, on which a computer program is stored, and when the computer program is executed by a processor, it implements the steps of the bandwidth allocation method as described in any one of claims 1 to 7.