Method for scheduling a data transmission over a multipath connection including at least two transmission paths
Adaptive scheduling in multipath connections optimizes resource use by selecting appropriate schemes based on path similarity and network conditions, improving latency and reliability in dynamic environments.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- ROBERT BOSCH GMBH
- Filing Date
- 2025-11-20
- Publication Date
- 2026-06-25
AI Technical Summary
Existing multi-connectivity protocols for data transmission, such as MPTCP and MPQUIC, suffer from inefficient utilization of transmission paths due to static scheduling schemes, leading to overutilization or underutilization, which results in suboptimal use of system resources.
Adaptive scheduling scheme selection based on similarity values and current network conditions, including channel capacity index, to determine the most suitable scheduling scheme for multipath connections, such as packet duplication, load balancing, or best path scheduling.
Enhances data transmission efficiency by dynamically adjusting to varying network conditions, ensuring low latency and high reliability in dynamic environments.
Smart Images

Figure EP2025083630_25062026_PF_FP_ABST
Abstract
Description
[0001] R.416398
[0002] Description
[0003] Title
[0004] Method for a data transmission over a multipath connection including at least two transmission
[0005] Prior Art
[0006] Various industrial applications, such as wirelessly operated industrial control systems, mobile robots, etc., may require low latency in combination with high reliability. To improve latency and reliability, multi-connectivity (MC) between a transmitter unit and a receiver unit may be used, viz. two or more communication paths may be established between the transmitter unit and the receiver unit at the same time. Exemplary (transport layer) protocols of multi-connectivity are the multipath transmission control protocol (MPTCP) that splits a single application stream on multiple TCP subflows, the multipath quick UDP internet connection (MPQUIC) protocol that multiplexes application streams on multiple user datagram protocol (UDP) subflows, and the multi-connection transport protocol (MCTP) that uses multiple transport sub-flows with synchronized congestion control to manage packet distribution.
[0007] Disclosure of the Invention
[0008] Various aspects relate to a method for scheduling a data transmission over a multipath connection including at least two transmission paths that allows to reduce latency and increase reliability of latency-critical (viz. time-sensitive) applications.
[0009] This is achieved by adaptively switching between different scheduling schemes based on the current conditions of the transmission paths, in particular based on current network conditions and based on a homogeneity or heterogeneity of the at least two transmission paths. This allows to improve latency and reliability in particular in dynamic environments (e.g., including moving robotic devices). R.416398
[0010] -2 -
[0011] Other multi-connectivity protocols, such as MPTCP and MPQUIC, either activate or deactivate a static multi-connectivity scheduling scheme, such as packet duplication (PD) or load balancing (LB). It has been found that such activation / deactivation of a static multiconnectivity scheduling scheme may result in an overutilization or underutilization of transmission paths, thereby leading to an inefficient use of system resources. For example, ac- tivating / deactivating packet duplication as static multi-connectivity scheduling scheme may include a duplication and transmission of packets even if there is a transmission path with low capacity, thereby leading to an unnecessary utilization of the transmission path with low capacity. The method disclosed herein allows to adapt to such scenarios.
[0012] Various aspects relate a method for scheduling a data transmission (of a plurality of data packets) (from a transmitter unit to a receiver unit) over a multipath connection including at least two transmission paths, the method including: determining a similarity value representing a similarity between the at least two transmission paths (according to a predefined similarity metric); selecting a scheduling scheme from a plurality of scheduling schemes using the similarity value and current network conditions of the connection; and scheduling the data transmission according to the (selected) scheduling scheme.
[0013] Illustratively, the similarity value represents whether the at least two transmission paths of the multipath connection are homogeneous or heterogenous for which different scheduling schemes may be suitable. In addition to considering the homogeneity / heterogeneity of the transmission paths, the current network conditions are employed which allows to select the scheduling scheme most suitable in terms of consecutive packet loss, survival time, latency, and reliability. According to various aspects, data transmission rate may serve as a parameter to determine the most suitable MC (Multi-Connectivity) scheduling scheme.
[0014] In the following, various examples are described.
[0015] Example 1 is the method for scheduling the data transmission over the multipath connection as described above.
[0016] In Example 2, the subject matter of Example 1 can optionally include that determining the similarity value includes: determining at least two average data rates by determining a respective average data rate for each of the at least two transmission paths; and determining the similarity value using (at least) a ratio of a smallest average data rate to a greatest R.416398
[0017] -3 - average data rate of the at least two average data rates. As detailed herein, the similarity value may be determined using other parameters in addition to or alternatively to the ratio.
[0018] Illustratively, the similarity value indicates whether the at least two transmission paths of the multipath (e.g., wireless local area network) connection are homogeneous or heterogenous by comparing their average data rate to one another.
[0019] In Example 3, the subject matter of Example 1 or 2 can optionally include that the plurality of scheduling schemes includes at least one of: a packet-duplication-based scheduling scheme (e.g., a selective packet duplication), a load-balancing-based scheduling scheme (e.g., weighted load balancing), and / or a best path scheduling scheme.
[0020] In Example 4, the subject matter of any one of Examples 1 to 3 can optionally include that the current network conditions include a channel capacity index, CCI, determined as a ratio of an average data rate to a channel capacity (viz. a maximum data rate) of the at least two transmission paths.
[0021] The channel capacity index represents the current network performance in terms of bandwidth utilization and allows to select the most suitable scheduling scheme depending on whether there is a high or low (or medium) bandwidth utilization.
[0022] In Example 5, the subject matter of Example 4 can optionally include that the average data rate of the at least two transmission paths is a sum of the at least two average data rates.
[0023] In Example 6, the subject matter of Example 4 or 5 can optionally include that selecting the scheduling scheme from the plurality of scheduling schemes using the similarity value and the current network conditions includes: determining whether the similarity value is equal to or greater than a predefined similarity threshold value; in the case that it is determined that the similarity value is equal to or greater than the predefined similarity threshold value, determining whether the channel capacity index is equal to or greater than a first predefined CCI threshold value; and in the case that it is determined that the channel capacity index is equal to or greater than the first predefined CCI threshold value, selecting (as the scheduling scheme) a packet-duplication-based scheduling scheme (e.g., a selective packet duplication) from the plurality of scheduling schemes. R.416398
[0024] -4 -
[0025] The similarity value equal to or greater than the predefined similarity threshold value indicates that the at least two transmission paths are homogeneous and the channel capacity index equal to or greater than the first predefined CCI threshold value indicates a high bandwidth utilization which allows to use a packet-duplication-based scheduling scheme, such as selective packet duplication, without causing major additional overhead while ensuring redundancy of the transmitted data, and, thus, ensuring reliable and robust data transmission.
[0026] In Example 7, the subject matter of Example 6 can optionally include that selecting the scheduling scheme from the plurality of scheduling schemes using the similarity value and the current network conditions further includes: in the case that it is determined that the channel capacity index is not equal to or greater than the first predefined CCI threshold value, determining whether the channel capacity index is equal to or greater than a second predefined CCI threshold value less than the first predefined CCI threshold value; and in the case that it is determined that the channel capacity index is equal to or greater than the second predefined CCI threshold value, selecting (as the scheduling scheme) a load- balancing-based scheduling scheme (e.g., weighted load balancing) from the plurality of scheduling schemes.
[0027] The channel capacity index between the first predefined CCI threshold value and the second predefined CCI threshold value indicates a medium bandwidth utilization for which the load-balancing-based scheduling scheme is most suitable to allocate time and resources to the at least two transmission paths.
[0028] In Example 8, the subject matter of Example 7 can optionally include that selecting the scheduling scheme from the plurality of scheduling schemes using the similarity value and the current network conditions further includes: in the case that it is determined that the channel capacity index is not equal to or greater than the second predefined CCI threshold value, selecting (as the scheduling scheme) a best path scheduling scheme from the plurality of scheduling schemes.
[0029] The best path scheduling scheme allows the most efficient data transmission in the case that the at least two transmission paths are homogeneous to one another and that the bandwidth utilization is low. R.416398
[0030] -5 -
[0031] In Example 9, the subject matter of any one of Examples 6 to 8 can optionally include that selecting the scheduling scheme from the plurality of scheduling schemes using the similarity value and the current network conditions further includes: in the case that it is determined that the similarity value is not equal to or greater than the predefined similarity threshold value, determining whether the channel capacity index is equal to or greater than a third predefined CCI threshold value; and in the case that it is determined that the channel capacity index is equal to or greater than the third predefined CCI threshold value, selecting (as the scheduling scheme) a packet-duplication-based scheduling scheme (e.g., a selective packet duplication) from the plurality of scheduling schemes.
[0032] In Example 10, the subject matter of Example 9 can optionally include that selecting the scheduling scheme from the plurality of scheduling schemes using the similarity value and the current network conditions further includes: in the case that it is determined that the channel capacity index is not equal to or greater than the third predefined CCI threshold value, selecting (as the scheduling scheme) a load-balancing-based scheduling scheme (e.g., weighted load balancing) from the plurality of scheduling schemes.
[0033] According to Examples 9 and 10, in the case of heterogeneous transmission paths either the packet-duplication-based scheduling scheme or the load-balancing-based scheduling scheme (and not the best path scheduling scheme) are employed to ensure redundancy.
[0034] Example 11 is a (multipath) scheduling unit configured to carry out the method of any one of Examples 1 to 10.
[0035] Example 12 is a transmitter unit including: the scheduling unit according to Example 11 ; and at least two (e.g., wireless local area network) interfaces configured to establish the at least two transmission paths to the receiver unit (e.g., a respective WLAN interface for each transmission path).
[0036] Example 13 is a computer program including instructions which, when executed by a computer, causes the computer to carry out the method according to any one of Examples 1 to 10.
[0037] Example 14 is a computer-readable medium including instructions which, when executed by a computer, causes the computer to carry out the method according to any one of Examples 1 to 10. R.416398
[0038] -6 -
[0039] In the drawings, similar reference characters generally refer to the same parts throughout the different views. The drawings are not necessarily to scale, emphasis instead generally being placed upon illustrating the principles of the invention. In the following description, various aspects are described with reference to the following drawings, in which:
[0040] Figure 1 shows a wireless communication system according to various aspects;
[0041] Figure 2 shows a flow diagram of a method for scheduling a data transmission over a multipath connection according to various aspects;
[0042] Figure 3 shows a flow chart for selecting the scheduling scheme according to various aspects; and
[0043] Figure 4 shows a schematic structure of a scheduling unit according to various aspects.
[0044] The following detailed description refers to the accompanying drawings that show, by way of illustration, specific details and aspects of this disclosure in which the invention may be practiced. Other aspects may be utilized and structural, logical, and electrical changes may be made without departing from the scope of the invention. The various aspects of this disclosure are not necessarily mutually exclusive, as some aspects of this disclosure can be combined with one or more other aspects of this disclosure to form new aspects.
[0045] In the following, various examples will be described in more detail.
[0046] FIG.1 shows wireless communication system 100 according to various aspects. The wireless communication system 100 may include a first station 102 and a second station 104. The first station 102 and the second station 104 may be configured to transmit and receive data packets via a multipath connection. The multipath connection may include at least two transmission paths 106. In some aspects, the at least two transmission paths 106 may be transmission paths using a same communication standard. In other aspects, at least one transmission path of the at least two transmission paths 106 may be a transmission path according to a standard different from one or more other transmission paths of the at least two transmission paths 106. In general, a transmission path may be according to any kind of communication standard (e.g., a short-range communication standard, such as Bluetooth, Zigbee, wireless local area network (WLAN) communication (e.g., WiFi in accordance with an IEEE 802.11 standard), etc., a medium or wide range communication standard, such as a 3G (Universal Mobile Telecommunications System - UMTS), a 4G (Long Term Evolution - LTE), or a 5G (New Radio - NR) mobile radio communication standard in accordance with a 3GPP (3rdGeneration Partnership Project) standard, etc.). R.416398
[0047] -7 -
[0048] In the following, various aspects are detailed for using a (multipath) wireless local area network (WLAN) connection including the at least two transmission paths 106 as at least two WLAN transmission paths 106, for example, using a protocol according to a WiFi (IEEE 802.11) standard. For example, the (upcoming) IEEE 802.11 be standard (or higher) may use the (channel capacity index-aware) adaptive scheduling approach detailed herein. It is understood that this serves for illustration and that the at least two transmission paths 106 may additionally or alternatively include transmission paths according to a different communication scheme (e.g., communication standard). A data packet may represent at least part of any kind of data, such as video data, voice data, measuring data, messages, etc.
[0049] According to various aspects, the wireless communication system 100 may be an industrial wireless communication system, such as a wirelessly operated industrial control system, a system including one or more (e.g., mobile) robots, etc. Thus, one of the stations, may be, for example, a robot device and the other station may be a terminal server or another robot device. A robot device may be an industrial robot in the form of a robot arm for moving, assembling or machining a workpiece, for bin-picking, etc., a manufacturing robot, a maintenance robot, a domestic robot, a medical robot, a vehicle (e.g., an at least partially automated vehicle), a domestic appliance, a production machine, a personal assistant, an access control system, etc., as well as any other type of robot device. It is understood that this serves as examples for illustration and that the first station and the second station may be part of any latency-critical (viz. time-sensitive) application, e.g., in the industrial domain.
[0050] The first station 102 and the second station 104 may be configured to establish at least two transmission paths 106 of the WLAN for transmission and reception of data packets. Hence, a transmission path, as used herein, may also be referred to as WLAN transmission path. The term transmission path, as used herein, may be understood as a communication path (e.g., referred to as communication route) between a transmitter unit and a receiver unit which are able to communicate with one another via the transmission path. A transmission path may also be referred to as communication path, communication link, transmission link, and / or connected link. Hence, a transmission path may be a connected WLAN link. Thus, according to various aspects the first station 102 and the second station 104 may be configured to establish a multipath WLAN connection that includes the at least two transmission paths 106. For illustration and conciseness, in the following the at least two transmission paths 106 are describes as including a first (WLAN) transmission R.416398
[0051] -8 - path 106-1 and a second (WLAN) transmission path 106-2. It is understood that the at least two transmission paths 106 may include more than two transmission paths.
[0052] The first (WLAN) transmission path 106-1 may be associated with a first frequency range (e.g., a first frequency band, e.g., including first frequency channels) and the second (WLAN) transmission path 106-2 may be associated with a second frequency range (e.g., a second frequency band, e.g., including second frequency channels) different from the first frequency range. As an example, the first frequency range may be the 2.4 GHz WiFi frequency band and the second frequency range may be the 5 GHz WiFi frequency band. In the exemplary case of the IEEE 802.11 be standard, the first frequency range and the second frequency range may be different frequency bands from the 2.4 GHz WiFi frequency band, the 5 GHz WiFi frequency band, and the 6 GHz WiFi frequency band. In an example, the at least two transmission paths 106 may further include a third (WLAN) transmission path 106-3 associated with a third frequency range (e.g., a third frequency band, e.g., including third frequency channels); the first frequency range, the second frequency range, and the third frequency range may be the 2.4 GHz WiFi frequency band, the 5 GHz WiFi frequency band, and the 6 GHz WiFi frequency band, respectively, of the IEEE 802.11 be (or higher) standard.
[0053] According to various aspects, the first transmission path 106-1 and the second transmission path 106-2 may be established using a same WLAN protocol according to an IEEE 802.11 standard).
[0054] In the following, for illustration, it is referred to an uplink scenario in which the second station 104 is referred to as receiver unit (short: receiver) 104 and the first station 102 is referred to as transmitter unit (short: transmitter) 102 configured to transmit the data packets to the receiver unit 104.
[0055] The transmitter unit 102 may be or may be part of any kind of device capable to transmit data packets over the multipath WLAN connection. Illustratively, the transmitter unit 102 may be or may be part of a WLAN client (of a station) and / or the transmission node (such as an application). The receiver unit 104 may be or may be part of any kind of device capable to receive data packets via the multipath WLAN connection. For example, the receiver unit 104 may be a WLAN access point (AP). R.416398
[0056] -9 -
[0057] The transmitter unit 102 may include a (multipath) scheduling unit (short: scheduler) 108. The scheduling unit 108 may be configured to schedule the transmission of the data packets via the multipath WLAN connection to the receiver unit 104. The scheduling of the transmission of the data packets may be carried out according to a scheduling scheme.
[0058] A scheduling scheme for transmitting data packets in the multipath wireless communication system 100 defines how the data packets (or their fragments) are transmitted from the transmitter unit 102 over the WLAN connection to the receiver unit 106. Depending on the scheduling scheme, data packets may be transmitted over one or more than one (e.g., when using packet duplication) transmission path of the at least two transmission paths 106.
[0059] According to various aspects, the scheduling unit 108 is configured to dynamically switch between different scheduling schemes (during the data packet transmission) based on the current conditions of the at least two transmission paths 106 (e.g., by carrying out the method 200), thereby reducing latency and increasing reliability of the data transmission. Illustratively, the scheduling unit 108 dynamically adapts the (multi-connectivity) scheduling scheme to the prevalent scenario.
[0060] FIG.2 shows a flow diagram of a method 200 for scheduling a data transmission over a multipath connection including at least two transmission paths according to various aspects.
[0061] The method 200 may include (in 202) determining a similarity value representing a similarity between the at least two transmission paths.
[0062] The method 200 may include (in 204) selecting a scheduling scheme from a plurality of scheduling schemes using the similarity value and current network conditions of the multipath connection.
[0063] The method 200 may include (in 206) scheduling the data transmission according to the (selected) scheduling scheme.
[0064] In the following, various aspects of the method 200 are described in further detail.
[0065] According to various aspects, at least two average data rates may be determined by determining a respective average data rate for each of the at least two transmission paths R.416398
[0066] -10 -
[0067] 106. A transmission data rate (short: data rate) may be a number of data units that are transmitted per time unit For example, the data rate may be a bitrate indicating a number of bits transmitted per second (bit / s).
[0068] The similarity value may be determined (in 202) using (e.g., at least) a ratio of a smallest average data rate to a greatest average data rate of the at least two average data rates. Hence, the similarity value (which may also be referred to as similarity index), SI; may be 57 = mmamx(<i-AADDRRi1’,AADDRR^2) illustratively J,> this equation may J indicate a similarity J metric according O to which the similarity value is determined. For illustration, in the following, the similarity value, SI, is described as being a ratio of a smallest average data rate to a greatest average data rate of the at least two average data rates. It is understood that this serves as an example and that the similarity value, SI, may be determined using one or more other parameters in addition to or as an alternative to the ratio of the smallest average data rate to the greatest average data rate of the at least two average data rates. For example, the one or more parameters may include at least one of: a number of retransmissions, a sig- nal-to-noise ratio (SNR), a modulation and coding scheme (MCS), a signal-to-interfer- ence-plus-noise ratio (SINR), a link quality indicator (LQI), a received signal strength indicator (RSSI), a round trip time (RTT), a latency, a jitter, a packet loss, a queue length / buffer size, a channel utilization, a channel busy ratio (CBR), a bit error rate (BER), a congestion window (CW), etc.
[0069] Hence, in the exemplary case of the first transmission path 106-1 and the second transmission path 106-2, a first average data rate (e.g., bitrate) ADR±of the first transmission path 106-1 and a second average data rate (e.g., bitrate) yWR2°f the second transmission path 106-2 may be determined. The similarity value may then be determined (in 202) according to:
[0070] Illustratively, the similarity value, SI, represents a similarity between the average data rates of the at least two transmission paths 106. Hence, the similarity value, SI, represents a degree of homogeneity of the average data rates, ADRltADR2, of the at least two transmission paths 106. With ADR >Q and ADR2> 0 (since there is data packet transmission over each transmission path), the similarity value, SI, ranges from 0 to 1 (viz. 0 < SI < 1), wherein a similarity value close to zero indicates heterogeneity of the at least two transmission paths 106 and a similarity value close or equal to one indicates homogeneity (with SI = 1 indicating identical data rates) of the at least two transmission paths 106 R.416398
[0071] -11 -
[0072] In 204, the scheduling scheme may be selected using the similarity value, SI, and the current network conditions of the multipath connection.
[0073] The current network conditions of the multipath connection may be or may include a channel capacity index, CCI. The channel capacity index, CCI, may be a ratio of an average data rate to a channel capacity of the at least two transmission paths 106. The channel capacity of the at least two transmission paths 106 may be a maximum data rate of the at least two transmission paths 106. The scheduling unit 108 may be configured to determine the channel capacity using a modulation and coding scheme (MCS) index (look-up) table. The MCS index table indicates a maximum data rate ADRmaxthe network (e.g., WLAN) can support given a specific network configuration. It is understood that the channel capacity index, CCI, serves as an example and that the current network conditions may additionally or alternatively include one or more other network parameters, such as: a number of retransmissions, a signal-to-noise ratio (SNR), a modulation and coding scheme (MCS), a signal-to-interference-plus-noise ratio (SIN R), a link quality indicator (LQI), a received signal strength indicator (RSSI), a round trip time (RTT), a latency, a jitter, a packet loss, a queue length / buffer Size, a channel utilization, a channel busy ratio (CBR), a bit error rate (BER), a congestion window (CW), etc.
[0074] The average data rate of the at least two transmission paths 106 may be a sum of the at least two average data rates. Thus, in the exemplary case of the first transmission path 106-1 and the second transmission path 106-2, the average data rate ADR of the at least two transmission paths 106 may be ADR = ADR±+ ADR2.
[0075] Illustratively, channel capacity index, CCI, may be determined according to: CCI =ADR.
[0076] ADRmax Thus, the channel capacity index, CCI, may indicate a used percentage of the maximum bandwidth. Hence, the channel capacity index, CCI, represents the current network performance in terms of bandwidth utilization. The CCI in an orthogonal frequency-division multiple access (OFDMA-) based channel access scheme is influenced by the transmission rates of individual stations (STA) and other transmitting stations within a same transmission opportunity (TXOP). A higher CCI signifies more bandwidth utilization, leading to enhanced data transmission speeds.
[0077] FIG.3 shows a flow chart illustrating the selection of the scheduling scheme (in 204) according to various aspects. It is understood that the scheduling unit 108 may be configured accordingly to carry out the method 200. FIG.3 shows the selection of the scheduling R.416398
[0078] -12 - scheme (in 204) when using the channel capacity index, CCI, representing the current network conditions.
[0079] The method 200 may include (in 302) determining whether the similarity value, SI, is equal to or greater than a predefined similarity threshold value, SItfl.
[0080] In the case that the similarity value, SI, is equal to or greater than the predefined similarity threshold value, SItfl, (True, “T”, in 302) this may indicate that the at least two transmission paths 106 are homogeneous (viz. similar to one another) 304 (e.g., representing a first category: homogeneous). In the case that the similarity value, SI, is not equal to or greater than the predefined similarity threshold value, SItfl, (False, “F”, in 302) this may indicate that the at least two transmission paths 106 are heterogeneous (viz. different to one another) 306 (e.g., representing a second category: heterogeneous).
[0081] In 308, the channel capacity index, CCI, may be determined.
[0082] In the case that the similarity value, SI, is equal to or greater than the predefined similarity threshold value, SItfl, the method 200 may include (in 310) determining whether the channel capacity index, CCI, is equal to or greater than a first predefined CCI threshold value, cc / thl.
[0083] In the case that the channel capacity index, CCI, is equal to or greater than the first predefined CCI threshold value, CCItfll, (“T” in 310) the method 200 may include selecting a packet-duplication (PD)-based scheduling scheme from the plurality of scheduling schemes.
[0084] Packet duplication (PD) may replicate each data packet and send the data packet and a copy of the data packet on two different transmission paths of the at least two transmission paths 106. In this case, the receiver unit 104 only has to wait for the first one of those data packets (viz. the original data packet and its copy) which allows reduces the latency. Further, in the case that one of the data packets is lost, the other one is still received, thereby increasing reliability. However, PD increases the transmission load since the double amount of data packets has to be transmitted.
[0085] The channel capacity index, CCI, equal to or greater than the first predefined CCI threshold value, CCItfll, indicates a high bandwidth utilization (viz. a bandwidth utilization close R.416398
[0086] -13 - to the maximum data rate ADRmaxof the current network configuration), which allows to increase the transmission load by using PD to reduce latency and increase reliability.
[0087] According to various aspects, the PD-based scheduling scheme may be a selective packet duplication. A selective packet duplication may include that only every n-th data packet is duplicated. The value of n may be adapted dynamically based on a quality of service (QoS). The QoS may indicate a quality of the WLAN connection and may be described based on a set of predefined transmission path parameters. For example, those QoS parameters may include one or more of: a data rate, a transmission capacity, a latency, a transmission bandwidth, a transmission reliability (e.g., maximum frame loss, a maximum number of bit errors, a maximum probability of CRC errors, a necessity of a redundant transmission), a jitter, etc. This allows a tradeoff between additional transmission load, latency, and reliability.
[0088] In the case that the channel capacity index, CCI, is not equal to or greater than the first predefined CCI threshold value, CCIthl, (“F” in 310) the method 200 may include (in 312) determining whether the channel capacity index, CCI, is equal to or greater than a second predefined CCI threshold value, CCItfl2, less than the first predefined CCI threshold value, CC / thl.
[0089] In the case that the channel capacity index, CCI, is equal to or greater than the second predefined CCI threshold value, CCItfl2, (“T” in 312) the method 200 may include selecting a load-balancing (LB)-based scheduling scheme from the plurality of scheduling schemes.
[0090] Load-balancing (LB) may reduce the load per transmission path by distributing the packets over the different transmission paths of the at least two transmission paths 106. Hence, in the case of LB, each data packet is individually transmitted only via one transmission path of the at least two transmission paths 106. This allows to reduce the channel access delay.
[0091] The channel capacity index, CCI, less than the first predefined CCI threshold value, CCItfll, but equal to or greater than the second predefined CCI threshold value, CCIth2, indicates a medium (or intermediate) bandwidth utilization for which it has been found that the load-balancing-based scheduling scheme is most suitable to allocate time and resources to the at least two transmission paths 106. R.416398
[0092] -14 -
[0093] According to various aspects, the LB-based scheduling scheme may be a weighted load balancing. A weighted load-balancing may include that each transmission path of the at least two transmission paths 106 has a respective weight associated therewith and the data packets may be allocated to the at least two transmission paths 106 according to their respective weights. Hence, more data packets may be allocated to a transmission path having a greater weight than another transmission path. This may consider the capacity of each transmission path and, thereby reduce the overall latency.
[0094] In the case that the channel capacity index, CCI, is not equal to or greater than the second predefined CCI threshold value, CCIth2, (“F” in 312) the method 200 may include selecting a best path (BP) scheduling scheme from the plurality of scheduling schemes.
[0095] In this case, the bandwidth utilization is low but the at least two transmission paths 106 are similar to one another (viz. homogeneous according to the SI). Therefore, the best transmission path (viz. the most efficient transmission route) can be selected to reduce the transmission load without losing reliability.
[0096] In the case that the similarity value, SI, is not equal to or greater than the predefined similarity threshold value, SItfl, (“F” in 302) the method 200 may include (in 314) determining whether the channel capacity index, CCI, is equal to or greater than a third predefined CCI threshold value, CCItfl3. In some aspects, the third predefined CCI threshold value, CC / th3, may be equal to the first predefined CCI threshold value, CCItfll. In other aspects, the third predefined CCI threshold value, CCItfl3, may be different from the first predefined CCI threshold value, CCItfll. According to various aspects, the third predefined CCI threshold value, CCItfl3, is less than the first predefined CCI threshold value, CCItfll, to assign a higher priority to (e.g., selective) packet duplication, thereby considering more packet redundancy.
[0097] In the case that the channel capacity index, CCI, is equal to or greater than the third predefined CCI threshold value, CCIth3, (“T” in 314) the method 200 may include selecting the or another (e.g., the) packet-duplication-based scheduling scheme (e.g., the selective packet duplication) from the plurality of scheduling schemes.
[0098] In the case that the channel capacity index, CCI, is not equal to or greater than the third predefined CCI threshold value, CCItfl3, (“F” in 314) the method 200 may include selecting a (e.g., the) or another load-balancing-based scheduling scheme (e.g., the weighted load balancing) from the plurality of scheduling schemes. R.416398
[0099] -15 -
[0100] Illustratively, in the case of a high bandwidth utilization (“T” in 314) of the heterogenous at least two transmission paths 106, the high bandwidth is employed to reduce latency and to increase reliability without causing major additional overhead. Illustratively, the data packets are transmitted reliably and robust with low latency. In the case of a low bandwidth utilization (“F” in 314) of the heterogenous at least two transmission paths 106, the load-balancing is employed to reduce the channel access delay.
[0101] According to various aspects, in the case of heterogeneous (306) at least two transmission paths 106, no BP-based scheduling scheme is selected since the difference in the transmission paths may result in a reduced reliability.
[0102] Hence, according to various aspects, the plurality of scheduling schemes may include the (e.g., selective) packet duplication scheduling scheme, the (e.g., weighted) load-balancing scheduling scheme, and the best path scheduling scheme.
[0103] As an example, the first average data rate ADR±may be 800 Mbps (megabit per second) and the second average data rate ADR2may be 560 Mbps, and the channel capacity of the current network configuration may be 2000 Mbps. Thus, these exemplary data result in:
[0104] With S / th= 0.5, CCItfll= 0.6, CCItfl2= 0.29, and CCItfl3= 0.4, the scheduling unit 108 selects the PD-based scheduling scheme (e.g., the selective PD).
[0105] As detailed herein, the scheduling unit 108 may be configured to adapt the scheduling scheme dynamically during transmission. For example, if the first average data rate ADR±changes to 600 Mbps (megabit per second) and the second average data rate ADR2changes to 400 Mbps, SI and CCI would change according to:
[0106] In this case, the scheduling unit 108 adapts the scheduling scheme from the PD-based scheduling scheme to the LB-based scheduling scheme (e.g., weighted LB). R.416398
[0107] -16 -
[0108] In the exemplary case that the first average data rate ADR±is 800 Mbps and the second average data rate ADR2is 300 Mbps, SI and CCI would be:
[0109] Hence, the similarity value, SI, is less than the predefined similarity threshold value, SItfl, indicating heterogeneous (306) transmission paths and (in 314) the PD-based scheduling scheme (e.g., the selective PD) would be selected.
[0110] If the first average data rate ADR±changes to 600 Mbps and the second average data rate ADR2changes to 100 Mbps, SI and CCI would change according to:
[0111] In this case, the scheduling unit 108 adapts the scheduling scheme from the PD-based scheduling scheme to the LB-based scheduling scheme (e.g., weighted LB).
[0112] The channel capacity index-aware adaptive scheduling approach detailed herein allows to dynamically adjust the scheduling scheme to varying transmission path (link) conditions and channel capacities, thereby enhancing the overall data transmission efficiency and the network robustness.
[0113] Illustratively, the channel capacity index-aware adaptive scheduling approach detailed herein allows an efficient data packet distribution across at least two transmission paths 106 while achieving a low-latency and high-reliable communication, and an efficient link utilization even in dynamic (e.g., challenging) network scenarios. The channel capacity index-aware adaptive scheduling approach detailed herein may be a cross-layer approach with the selection of the scheduling scheme being carried out in the application layer of the WiFi protocol stack.
[0114] FIG.4 shows a schematic structure of the scheduling unit 108 according to various aspects. R.416398
[0115] -17 -
[0116] The selection of the scheduling scheme (in 204) may be carried out in the application layer 402 of the WiFi protocol stack. The data transmission may be according to a multipath protocol 410 (e.g., multipath UDP) with at least the first transmission path 106-1 (e.g., a first UDP subflow) and the second transmission path 106-2 (e.g., a second UDP subflow) in the transport layer 404. In the physical layer 406, the data packets that are allocated to the first transmission path 106-1 are transmitted via a first WLAN interface 412- 1 and the data packets that are allocated to the second transmission path 106-2 are transmitted via a second WLAN interface 412-2.
[0117] The application layer 402 may be configured to retrieve the (transmission) data rate (e.g., bitrate) 414 of each transmission path 106-1 , 106-2 from the physical layer 406. The application layer 402 may be configured to retrieve the (transmission) data rate 414 employing an iw station dump 416. The application layer 402 may be configured to determine, using the retrieved the data rates, the first average data rate ADR±and the second average data rate ADR2over a predefined time period (e.g., data packet window).
[0118] The scheduling unit 108 may be configured to select (in 206) a scheduling scheme of the plurality of scheduling schemes 418 as detailed herein. The application layer 402 may include a (standard socket) application programming interface (API) for allocating data packets according to the selected scheduling scheme to a first data packet queue 420-1 for transmission over the first transmission path 106-1 and to a second data packet queue 420-2 for transmission over the second transmission path 106-2.
[0119] According to various aspects, the scheduling unit 108 may be configured to use a predefined bit in each data packet that indicates which scheduling scheme of the plurality of scheduling schemes 418 was used for transmission thereof. The scheduling unit 108 may be configured to receive a feedback from the receiver unit 104 that indicates a quality (e.g., latency, reliability, etc.) of the transmission of data packets with respect to the selected scheduling scheme. The scheduling unit 108 may be configured to adapt at least one (e.g., each) of the similarity value, 57, the first predefined CCI threshold value, the second first predefined CCI threshold value, CCIth2, and / or the third first predefined CCI threshold value, CCItfl3, based on the received information. This allows to further improve the tradeoff between latency, reliability, redundancy, and load.
[0120] Illustratively, the channel capacity index-aware adaptive scheduling approach detailed herein guarantees the requirements of low latency and high reliability of industrial and / or real-time applications.
Claims
R.416398-18 -Claims1 . A method (200) for scheduling a data transmission over a multipath connection comprising at least two transmission paths (106), the method (200) comprising: determining (202) a similarity value (SI) representing a similarity between the at least two transmission paths (106); selecting (204) a scheduling scheme from a plurality of scheduling schemes (418) using the similarity value (SI) and current network conditions of the multipath connection; and scheduling (206) the data transmission according to the scheduling scheme.
2. The method (200) according to claim 1 , wherein determining (202) the similarity value comprises: determining at least two average data rates (414) by determining a respective average data rate for each of the at least two transmission paths (106); and determining the similarity value (SI) using a ratio of a smallest average data rate to a greatest average data rate of the at least two average data rates (414).
3. The method (200) according to claim 1 or 2, wherein the current network conditions comprise a channel capacity index, CCI, determined as a ratio of an average data rate to a channel capacity of the at least two transmission paths (106).
4. The method (200) according to claim 3, wherein selecting (204) the scheduling scheme from the plurality of scheduling schemes (418) using the similarity value (SI) and the current network conditions comprises: determining (302) whether the similarity value (SI) is equal to or greater than a predefined similarity threshold valuein the case that it is determined that the similarity value (SI) is equal to or greater than the predefined similarity threshold value (SIth), determining (310) whether the channel capacity index (CCI) is equal to or greater than a first predefined CCI threshold value (CCItfll) and in the case that it is determined that the channel capacity index (CCI) is equal to or greater than the first predefined CCI threshold value (CC / thl), selecting aR.416398-19 - packet-duplication-based (PD) scheduling scheme from the plurality of scheduling schemes (418).
5. The method (200) according to claim 4, wherein selecting (204) the scheduling scheme from the plurality of scheduling schemes (418) using the similarity value (SI) and the current network conditions further comprises: in the case that it is determined that the channel capacity index (CCI) is not equal to or greater than the first predefined CCI threshold value (CC / thl), determining (312) whether the channel capacity index is equal to or greater than a second predefined CCI threshold value (CCIth2) less than the first predefined CCI threshold value (CC / thl); and in the case that it is determined that the channel capacity index (SI) is equal to or greater than the second predefined CCI threshold value (CCIth2), selecting a load-balancing-based (LB) scheduling scheme from the plurality of scheduling schemes.
6. The method (200) according to claim 5, wherein selecting (204) the scheduling scheme from the plurality of scheduling schemes (418) using the similarity value and the current network conditions further comprises: in the case that it is determined that the channel capacity index is not equal to or greater than the second predefined CCI threshold value, selecting a best path (BP) scheduling scheme from the plurality of scheduling schemes (418).
7. The method (200) according to any one of claims 4 to 6, wherein selecting (204) the scheduling scheme from the plurality of scheduling schemes (418) using the similarity value and the current network conditions further comprises: in the case that it is determined that the similarity value is not equal to or greater than the predefined similarity threshold value, determining (314) whether the channel capacity index (CCI) is equal to or greater than a third predefined CCI threshold value (CC / th3); and in the case that it is determined that the channel capacity index (CCI) is equal to or greater than the third predefined CCI threshold value (CCItfl3), selecting the or another packet-duplication-based (PD) scheduling scheme from the plurality of scheduling schemes (418).R.416398-20 -8. The method (200) according to claim 7, wherein selecting (204) the scheduling scheme from the plurality of scheduling schemes (418) using the similarity value and the current network conditions further comprises: in the case that it is determined that the channel capacity index (CCI) is not equal to or greater than the third predefined CCI threshold value (CCItfl3), selecting the or another load-balancing-based (LB) scheduling scheme from the plurality of scheduling schemes (418).
9. A scheduling unit (108) configured to carry out the method (200) of any one of claims 1 to 8.
10. A transmitter unit (102), comprising:• the scheduling unit (108) according to claim 9; and• at least two interfaces (412-1 , 412-2) configured to establish the at least two transmission paths (106) to the receiver unit (104).
11. A computer program comprising instructions which, when executed by a computer, causes the computer to carry out the method (200) according to any one of claims 1 to 8.
12. A computer-readable medium comprising instructions which, when executed by a computer, causes the computer to carry out the method (200) according to any one of claims 1 to 8.